/* Partials */

/* 
   Structure
   ========================================================================== */

.container, .wd-ReserveCallout .wd-ReserveCallout--center {
    *zoom: 1;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.container:before, .wd-ReserveCallout .wd-ReserveCallout--center:before {
    content: '';
    display: table;
}

.container:after, .wd-ReserveCallout .wd-ReserveCallout--center:after {
    content: '';
    display: table;
    clear: both;
}

/* Partial Components */

.row-fluid [class*="span"] {
    min-height: 0;
}

.row-fluid [class*="span"]:first-child {
    margin-left: 0;
}
/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;

At the bottom of this section, we provide information about the spritesheet itself
$spritesheet: width height image $spritesheet-sprites;
*/
/* ==========================================================================
   Colors
   ========================================================================== */
/* 
   Keyword colors
   ========================================================================== */
/* 
   Social Colors
   ========================================================================== */
/* 
   Character Colors
   ========================================================================== */
/* 
   Nav Colors
   ========================================================================== */
/*@custom-media --sm-viewport (min-width:320px) and (max-width:640px);
@custom-media --md-viewport (min-width:640px) and (max-width:960px);
@custom-media --lg-viewport (min-width:960px);*/
/*
 Breakpoints
 ========================================================================== */
/*@custom-media --mobileSmall (width >= 320px);
@custom-media --mobile (width >= 480px);
@custom-media --tabletSmall (width >= 568px);
@custom-media --tablet (width >= 768px);
@custom-media --mid (width >= 860px);
@custom-media --midDesktopRetina (width >= 860px) and -webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi);
@custom-media --wide (width >= 1024px);
@custom-media --widest (width >= 1268px);
*/
/* 
   Iframe Breakpoints
   ========================================================================== */
/* reset default ul/ol list styles*/
/*
  Triangles follow same nomenclature as: http://apps.eky.hk/css-triangle-generator/;
========================================================================== */
/* 
   The provided mixins are intended to be used with the array-like variables
   - Requires: postcss-nth-list, postcss-custom-properties, postcss-css-variables
   
   ex: @mixin sprite --logo-white;
   ex: @mixin retina-sprite --logo-white-2x --logo-white;
   ========================================================================== */
/* 
   Typography Related
   ========================================================================== */
/* Convert the PSD's font point size to rems.*/
/* Convert pixels to EM based on the default browser font-size of 16*/
/* Default*/
@function rem($pixels, $context: $browser-context) {

    @return #{$pixels/$context}rem;
}
/* Convert the PSDs leading to line-height*/
/* Convert the PSD's tracking to letter-spacing*/
/* Sets the font size, leading (line-height), and tracking (letter-spacing) in one go.*/
@font-face {
    font-family: 'PexicoMicroMono';
    src: url("wd_PexicoMicro-Normal_ncsa.eot");
    src: url("wd_PexicoMicro-Normal_ncsa.eot?#iefix") format('embedded-opentype'),
       url("wd_PexicoMicro-Normal_ncsa.woff") format('woff'),
       url("wd_PexicoMicro-Normal_ncsa.ttf") format('truetype'),
       url("wd_PexicoMicro-Normal_ncsa.svg") format('svg');
    font-weight: normal;
    font-style: normal;
}
/* 
   Font Family Mixins
   - (N = normal | I = italic | 4 = normal font-weight | 7 = bold font-weight)
   ========================================================================== */
/* Headings*/
h1, .alpha, .gameinfoCallout-content .hero-title, .wd-NewsIntro .hero-title, .wd-MediaIntro .hero-title, .wd-trailerWrap h1, .wd-CultureCallout-title {
    font-size: 3.75rem;
    line-height: 90px;
    letter-spacing: -0.05em;
}
h2, .beta {
    font-size: 3.25rem;
    line-height: 78px;
    letter-spacing: 0em;
}
h3, .gamma, .gameinfoCallout-content .hero-description, .wd-NewsIntro .hero-description, .wd-MediaIntro .hero-description, .ct-pageHeader {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 3rem;
    line-height: 72px;
    letter-spacing: -0.05em;
}
h4, .delta, .ct-regionHeader .lowercase {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 500;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 2.25rem;
    line-height: 54px;
    letter-spacing: 0em;
}
h5, .epsilon, .news-detail .news_title {
    font-size: 2rem;
    letter-spacing: 0em;
}
h6, .zeta {
    font-size: 1.875rem;
    line-height: 50px;
    letter-spacing: 0em;
}
.blockHeadline {
    background: #000;
    color: #fff;
    display: inline-block;
    padding: 0 20px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 2.25rem;
    line-height: 66px;
    letter-spacing: 0em;
}
.blockHeadlineNaked {
    color: #fff;
    display: inline-block;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 2.25rem;
    line-height: 56px;
    letter-spacing: 0em;
}
/* Buttons*/
.btn-test {
    margin: 40px auto;
    width: 500px;
}
.btn, .btn:visited, .newsfilter-pagination .newsfilter-next, .newsfilter-pagination .newsfilter-prev, .newsfilter-pagination .newsfilter-next:visited, .newsfilter-pagination .newsfilter-prev:visited {
    background: #12cffe;
    box-sizing: border-box;
    border: none;
    box-shadow: none;
    border-radius: 0;
    color: #000;
    display: inline-block;
    line-height: 50px;
    font-size: 14px;
    padding: 0 25px;
    position: relative;
    text-transform: uppercase;
    z-index: 5;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
html:not(.is-mobile) .btn:hover, html:not(.is-mobile) .btn:visited:hover {
    background: rgb(18, 177, 217);
}
.btn:active, .btn:visited:active, .newsfilter-pagination .newsfilter-next:active, .newsfilter-pagination .newsfilter-prev:active, .newsfilter-pagination .newsfilter-next:visited:active, .newsfilter-pagination .newsfilter-prev:visited:active {
    top: 1px;
}
.btn--hasArtifacts {
    margin-top: 10px;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}
.btn--hasArtifacts:before, .btn--hasArtifacts:after, .btn--hasArtifacts .btn-text:before, .btn--hasArtifacts .btn-text:after, .btn--hasArtifacts .btn-top-artifacts:before, .btn--hasArtifacts .btn-top-artifacts:after {
    content: '';
    display: block;
    position: absolute;
}
.btn--hasArtifacts .btn-text {
    padding: 4px 10px 4px 5px;
    position: relative;
    text-shadow: none;
    z-index: 5;
}
.btn--hasArtifacts .btn-text:before, .btn--hasArtifacts .btn-text:after {
    left: 0;
}
.btn--hasArtifacts .btn-text:after {
    background: #fff;
    top: 0;
    bottom: 0;
    transition: width 0.1s ease-in-out;
    width: 0;
    z-index: -1;
}
.btn--hasArtifacts .btn-top-artifacts, .btn--hasArtifacts .btn-bottom-artifacts {
    position: absolute;
    left: 0;
    z-index: -1;
}
.btn--hasArtifacts .btn-top-artifacts {
    height: 5px;
    width: 100%;
    bottom: 100%;
}
.btn--hasArtifacts .btn-top-artifacts:before, .btn--hasArtifacts .btn-top-artifacts:after {
    background: #12cffe;
    height: 5px;
}
.btn--hasArtifacts .btn-top-artifacts:before {
    left: 5px;
    width: 25%;
}
.btn--hasArtifacts .btn-top-artifacts:after {
    right: 15px;
    width: 50%;
}
.btn--hasArtifacts .btn-bottom-artifacts {
    background: #12cffe;
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 50px;
    height: 8px;
}
html:not(.is-mobile) .btn--hasArtifacts:hover .btn-text {}
html:not(.is-mobile) .btn--hasArtifacts:hover .btn-text:after {
    width: 100%;
}
html:not(.is-mobile) .btn--hasArtifacts:hover .btn-top-artifacts:before, html:not(.is-mobile) .btn--hasArtifacts:hover .btn-top-artifacts:after, html:not(.is-mobile) .btn--hasArtifacts:hover .btn-bottom-artifacts {
    background: rgb(18, 177, 217);
}
html:not(.is-mobile) .btn--hasArtifacts:hover:before {
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 2px, rgb(18, 177, 217) 2px, rgb(18, 177, 217) 4px);
}
html:not(.is-mobile) .btn--hasArtifacts:hover:after {
    background-image: linear-gradient(45deg, rgb(18, 177, 217) 25%, transparent 25%, transparent 75%, rgb(18, 177, 217) 75%, rgb(18, 177, 217)), 
    linear-gradient(45deg, rgb(18, 177, 217) 25%, transparent 25%, transparent 75%, rgb(18, 177, 217) 75%, rgb(18, 177, 217));
}
.btn--hasArtifacts:before {
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 2px, #12cffe 2px, #12cffe 4px);
    left: -6px;
    bottom: -8px;
    z-index: -1;
    width: 48px;
    height: 48px;
}
.btn--hasArtifacts:after {
    background-image: linear-gradient(45deg, #12cffe 25%, transparent 25%, transparent 75%, #12cffe 75%, #12cffe), 
    linear-gradient(45deg, #12cffe 25%, transparent 25%, transparent 75%, #12cffe 75%, #12cffe);
    background-size: 4px 4px;
    background-position: 0 0, 2px 2px;
    right: -10px;
    bottom: -8px;
    width: 58px;
    height: 48px;
}
/**
 * TODO
 *
 * => Get interpolation working with postcss
 */
@-webkit-keyframes glitchAnim-text {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 100 + 1))px,9999px,resolve(floor(random() * 100))px,0);
    }
  }*/

    0% {
        clip: rect(53px,9999px,34px,0);
    }

    5% {
        clip: rect(99px,9999px,84px,0);
    }

    10% {
        clip: rect(69px,9999px,45px,0);
    }

    15% {
        clip: rect(99px,9999px,36px,0);
    }

    20% {
        clip: rect(78px,9999px,98px,0);
    }

    25% {
        clip: rect(2px,9999px,0px,0);
    }

    30% {
        clip: rect(56px,9999px,66px,0);
    }

    35% {
        clip: rect(65px,9999px,23px,0);
    }

    40% {
        clip: rect(35px,9999px,16px,0);
    }

    45% {
        clip: rect(51px,9999px,40px,0);
    }

    50% {
        clip: rect(82px,9999px,40px,0);
    }

    55% {
        clip: rect(56px,9999px,40px,0);
    }

    60% {
        clip: rect(34px,9999px,90px,0);
    }

    65% {
        clip: rect(46px,9999px,36px,0);
    }

    70% {
        clip: rect(1px,9999px,87px,0);
    }

    75% {
        clip: rect(29px,9999px,41px,0);
    }

    80% {
        clip: rect(84px,9999px,95px,0);
    }

    85% {
        clip: rect(91px,9999px,0px,0);
    }

    90% {
        clip: rect(46px,9999px,29px,0);
    }

    95% {
        clip: rect(71px,9999px,53px,0);
    }

    100% {
        clip: rect(46px,9999px,53px,0);
    }
}
@keyframes glitchAnim-text {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 100 + 1))px,9999px,resolve(floor(random() * 100))px,0);
    }
  }*/

    0% {
        clip: rect(53px,9999px,34px,0);
    }

    5% {
        clip: rect(99px,9999px,84px,0);
    }

    10% {
        clip: rect(69px,9999px,45px,0);
    }

    15% {
        clip: rect(99px,9999px,36px,0);
    }

    20% {
        clip: rect(78px,9999px,98px,0);
    }

    25% {
        clip: rect(2px,9999px,0px,0);
    }

    30% {
        clip: rect(56px,9999px,66px,0);
    }

    35% {
        clip: rect(65px,9999px,23px,0);
    }

    40% {
        clip: rect(35px,9999px,16px,0);
    }

    45% {
        clip: rect(51px,9999px,40px,0);
    }

    50% {
        clip: rect(82px,9999px,40px,0);
    }

    55% {
        clip: rect(56px,9999px,40px,0);
    }

    60% {
        clip: rect(34px,9999px,90px,0);
    }

    65% {
        clip: rect(46px,9999px,36px,0);
    }

    70% {
        clip: rect(1px,9999px,87px,0);
    }

    75% {
        clip: rect(29px,9999px,41px,0);
    }

    80% {
        clip: rect(84px,9999px,95px,0);
    }

    85% {
        clip: rect(91px,9999px,0px,0);
    }

    90% {
        clip: rect(46px,9999px,29px,0);
    }

    95% {
        clip: rect(71px,9999px,53px,0);
    }

    100% {
        clip: rect(46px,9999px,53px,0);
    }
}
/* Alternate glitching so that both glitches don't aniamte the same*/
@-webkit-keyframes glitchAnim-text--2 {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 100 + 1))px,9999px,resolve(floor(random() * 100))px,0);
    }
  }*/

    0% {
        clip: rect(16px,9999px,30px,0);
    }

    5% {
        clip: rect(55px,9999px,45px,0);
    }

    10% {
        clip: rect(1px,9999px,99px,0);
    }

    15% {
        clip: rect(59px,9999px,20px,0);
    }

    20% {
        clip: rect(12px,9999px,25px,0);
    }

    25% {
        clip: rect(83px,9999px,63px,0);
    }

    30% {
        clip: rect(42px,9999px,89px,0);
    }

    35% {
        clip: rect(83px,9999px,29px,0);
    }

    40% {
        clip: rect(6px,9999px,81px,0);
    }

    45% {
        clip: rect(88px,9999px,62px,0);
    }

    50% {
        clip: rect(78px,9999px,46px,0);
    }

    55% {
        clip: rect(24px,9999px,88px,0);
    }

    60% {
        clip: rect(39px,9999px,35px,0);
    }

    65% {
        clip: rect(15px,9999px,91px,0);
    }

    70% {
        clip: rect(21px,9999px,31px,0);
    }

    75% {
        clip: rect(24px,9999px,43px,0);
    }

    80% {
        clip: rect(51px,9999px,84px,0);
    }

    85% {
        clip: rect(40px,9999px,48px,0);
    }

    90% {
        clip: rect(27px,9999px,22px,0);
    }

    95% {
        clip: rect(88px,9999px,84px,0);
    }

    100% {
        clip: rect(45px,9999px,72px,0);
    }
}
@keyframes glitchAnim-text--2 {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 100 + 1))px,9999px,resolve(floor(random() * 100))px,0);
    }
  }*/

    0% {
        clip: rect(16px,9999px,30px,0);
    }

    5% {
        clip: rect(55px,9999px,45px,0);
    }

    10% {
        clip: rect(1px,9999px,99px,0);
    }

    15% {
        clip: rect(59px,9999px,20px,0);
    }

    20% {
        clip: rect(12px,9999px,25px,0);
    }

    25% {
        clip: rect(83px,9999px,63px,0);
    }

    30% {
        clip: rect(42px,9999px,89px,0);
    }

    35% {
        clip: rect(83px,9999px,29px,0);
    }

    40% {
        clip: rect(6px,9999px,81px,0);
    }

    45% {
        clip: rect(88px,9999px,62px,0);
    }

    50% {
        clip: rect(78px,9999px,46px,0);
    }

    55% {
        clip: rect(24px,9999px,88px,0);
    }

    60% {
        clip: rect(39px,9999px,35px,0);
    }

    65% {
        clip: rect(15px,9999px,91px,0);
    }

    70% {
        clip: rect(21px,9999px,31px,0);
    }

    75% {
        clip: rect(24px,9999px,43px,0);
    }

    80% {
        clip: rect(51px,9999px,84px,0);
    }

    85% {
        clip: rect(40px,9999px,48px,0);
    }

    90% {
        clip: rect(27px,9999px,22px,0);
    }

    95% {
        clip: rect(88px,9999px,84px,0);
    }

    100% {
        clip: rect(45px,9999px,72px,0);
    }
}
@-webkit-keyframes glitchAnim-text--small {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 10 + 1))px,9999px,resolve(floor(random() * 10))px,0);
    }
  }*/

    0% {
        clip: rect(10px,9999px,6px,0);
    }

    5% {
        clip: rect(9px,9999px,3px,0);
    }

    10% {
        clip: rect(9px,9999px,7px,0);
    }

    15% {
        clip: rect(3px,9999px,7px,0);
    }

    20% {
        clip: rect(5px,9999px,4px,0);
    }

    25% {
        clip: rect(10px,9999px,4px,0);
    }

    30% {
        clip: rect(2px,9999px,7px,0);
    }

    35% {
        clip: rect(4px,9999px,0px,0);
    }

    40% {
        clip: rect(9px,9999px,9px,0);
    }

    45% {
        clip: rect(6px,9999px,5px,0);
    }

    50% {
        clip: rect(9px,9999px,2px,0);
    }

    55% {
        clip: rect(10px,9999px,5px,0);
    }

    60% {
        clip: rect(8px,9999px,5px,0);
    }

    65% {
        clip: rect(9px,9999px,5px,0);
    }

    70% {
        clip: rect(4px,9999px,8px,0);
    }

    75% {
        clip: rect(9px,9999px,5px,0);
    }

    80% {
        clip: rect(6px,9999px,9px,0);
    }

    85% {
        clip: rect(9px,9999px,9px,0);
    }

    90% {
        clip: rect(9px,9999px,4px,0);
    }

    95% {
        clip: rect(4px,9999px,7px,0);
    }

    100% {
        clip: rect(1px,9999px,4px,0);
    }
}
@keyframes glitchAnim-text--small {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 10 + 1))px,9999px,resolve(floor(random() * 10))px,0);
    }
  }*/

    0% {
        clip: rect(10px,9999px,6px,0);
    }

    5% {
        clip: rect(9px,9999px,3px,0);
    }

    10% {
        clip: rect(9px,9999px,7px,0);
    }

    15% {
        clip: rect(3px,9999px,7px,0);
    }

    20% {
        clip: rect(5px,9999px,4px,0);
    }

    25% {
        clip: rect(10px,9999px,4px,0);
    }

    30% {
        clip: rect(2px,9999px,7px,0);
    }

    35% {
        clip: rect(4px,9999px,0px,0);
    }

    40% {
        clip: rect(9px,9999px,9px,0);
    }

    45% {
        clip: rect(6px,9999px,5px,0);
    }

    50% {
        clip: rect(9px,9999px,2px,0);
    }

    55% {
        clip: rect(10px,9999px,5px,0);
    }

    60% {
        clip: rect(8px,9999px,5px,0);
    }

    65% {
        clip: rect(9px,9999px,5px,0);
    }

    70% {
        clip: rect(4px,9999px,8px,0);
    }

    75% {
        clip: rect(9px,9999px,5px,0);
    }

    80% {
        clip: rect(6px,9999px,9px,0);
    }

    85% {
        clip: rect(9px,9999px,9px,0);
    }

    90% {
        clip: rect(9px,9999px,4px,0);
    }

    95% {
        clip: rect(4px,9999px,7px,0);
    }

    100% {
        clip: rect(1px,9999px,4px,0);
    }
}
/* ==========================================================================
   Nav Triangle Glitch Animation
   ========================================================================== */
@-webkit-keyframes glitchAnim-triangle {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 5 + 1))px,9999px,resolve(floor(random() * 5))px,0);
    }
  }*/

    0% {
        clip: rect(4px,9999px,3px,0);
    }

    5% {
        clip: rect(4px,9999px,0px,0);
    }

    10% {
        clip: rect(1px,9999px,1px,0);
    }

    15% {
        clip: rect(5px,9999px,3px,0);
    }

    20% {
        clip: rect(4px,9999px,2px,0);
    }

    25% {
        clip: rect(3px,9999px,4px,0);
    }

    30% {
        clip: rect(1px,9999px,3px,0);
    }

    35% {
        clip: rect(2px,9999px,3px,0);
    }

    40% {
        clip: rect(2px,9999px,3px,0);
    }

    45% {
        clip: rect(4px,9999px,0px,0);
    }

    50% {
        clip: rect(1px,9999px,2px,0);
    }

    55% {
        clip: rect(2px,9999px,0px,0);
    }

    60% {
        clip: rect(5px,9999px,2px,0);
    }

    65% {
        clip: rect(5px,9999px,0px,0);
    }

    70% {
        clip: rect(5px,9999px,3px,0);
    }

    75% {
        clip: rect(2px,9999px,1px,0);
    }

    80% {
        clip: rect(1px,9999px,2px,0);
    }

    85% {
        clip: rect(1px,9999px,1px,0);
    }

    90% {
        clip: rect(5px,9999px,3px,0);
    }

    95% {
        clip: rect(2px,9999px,0px,0);
    }

    5% {
        clip: rect(1px,9999px,4px,0);
    }
}
@keyframes glitchAnim-triangle {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 5 + 1))px,9999px,resolve(floor(random() * 5))px,0);
    }
  }*/

    0% {
        clip: rect(4px,9999px,3px,0);
    }

    5% {
        clip: rect(4px,9999px,0px,0);
    }

    10% {
        clip: rect(1px,9999px,1px,0);
    }

    15% {
        clip: rect(5px,9999px,3px,0);
    }

    20% {
        clip: rect(4px,9999px,2px,0);
    }

    25% {
        clip: rect(3px,9999px,4px,0);
    }

    30% {
        clip: rect(1px,9999px,3px,0);
    }

    35% {
        clip: rect(2px,9999px,3px,0);
    }

    40% {
        clip: rect(2px,9999px,3px,0);
    }

    45% {
        clip: rect(4px,9999px,0px,0);
    }

    50% {
        clip: rect(1px,9999px,2px,0);
    }

    55% {
        clip: rect(2px,9999px,0px,0);
    }

    60% {
        clip: rect(5px,9999px,2px,0);
    }

    65% {
        clip: rect(5px,9999px,0px,0);
    }

    70% {
        clip: rect(5px,9999px,3px,0);
    }

    75% {
        clip: rect(2px,9999px,1px,0);
    }

    80% {
        clip: rect(1px,9999px,2px,0);
    }

    85% {
        clip: rect(1px,9999px,1px,0);
    }

    90% {
        clip: rect(5px,9999px,3px,0);
    }

    95% {
        clip: rect(2px,9999px,0px,0);
    }

    5% {
        clip: rect(1px,9999px,4px,0);
    }
}
@-webkit-keyframes glitchAnim-triangle--top {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 5 + 1))px,9999px,resolve(floor(random() * 5))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(1px,9999px,4px,0);
    }

    5% {
        -webkit-transform: translateX(4px);
                transform: translateX(4px);
        clip: rect(2px,9999px,4px,0);
    }

    10% {
        -webkit-transform: translateX(12px);
                transform: translateX(12px);
        clip: rect(5px,9999px,0px,0);
    }

    15% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(4px,9999px,2px,0);
    }

    20% {
        -webkit-transform: translateX(12px);
                transform: translateX(12px);
        clip: rect(4px,9999px,1px,0);
    }

    25% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(3px,9999px,0px,0);
    }

    30% {
        -webkit-transform: translateX(4px);
                transform: translateX(4px);
        clip: rect(3px,9999px,3px,0);
    }

    35% {
        -webkit-transform: translateX(6px);
                transform: translateX(6px);
        clip: rect(3px,9999px,2px,0);
    }

    40% {
        -webkit-transform: translateX(10px);
                transform: translateX(10px);
        clip: rect(3px,9999px,0px,0);
    }

    45% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(2px,9999px,3px,0);
    }

    50% {
        -webkit-transform: translateX(2px);
                transform: translateX(2px);
        clip: rect(5px,9999px,0px,0);
    }

    55% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(1px,9999px,1px,0);
    }

    60% {
        -webkit-transform: translateX(3px);
                transform: translateX(3px);
        clip: rect(5px,9999px,1px,0);
    }

    65% {
        -webkit-transform: translateX(15px);
                transform: translateX(15px);
        clip: rect(3px,9999px,1px,0);
    }

    70% {
        -webkit-transform: translateX(1px);
                transform: translateX(1px);
        clip: rect(5px,9999px,3px,0);
    }

    75% {
        -webkit-transform: translateX(11px);
                transform: translateX(11px);
        clip: rect(1px,9999px,2px,0);
    }

    80% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(2px,9999px,1px,0);
    }

    85% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(5px,9999px,3px,0);
    }

    90% {
        -webkit-transform: translateX(11px);
                transform: translateX(11px);
        clip: rect(2px,9999px,0px,0);
    }

    95% {
        -webkit-transform: translateX(11px);
                transform: translateX(11px);
        clip: rect(4px,9999px,4px,0);
    }

    5% {
        -webkit-transform: translateX(4px);
                transform: translateX(4px);
        clip: rect(1px,9999px,2px,0);
    }
}
@keyframes glitchAnim-triangle--top {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 5 + 1))px,9999px,resolve(floor(random() * 5))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(1px,9999px,4px,0);
    }

    5% {
        -webkit-transform: translateX(4px);
                transform: translateX(4px);
        clip: rect(2px,9999px,4px,0);
    }

    10% {
        -webkit-transform: translateX(12px);
                transform: translateX(12px);
        clip: rect(5px,9999px,0px,0);
    }

    15% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(4px,9999px,2px,0);
    }

    20% {
        -webkit-transform: translateX(12px);
                transform: translateX(12px);
        clip: rect(4px,9999px,1px,0);
    }

    25% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(3px,9999px,0px,0);
    }

    30% {
        -webkit-transform: translateX(4px);
                transform: translateX(4px);
        clip: rect(3px,9999px,3px,0);
    }

    35% {
        -webkit-transform: translateX(6px);
                transform: translateX(6px);
        clip: rect(3px,9999px,2px,0);
    }

    40% {
        -webkit-transform: translateX(10px);
                transform: translateX(10px);
        clip: rect(3px,9999px,0px,0);
    }

    45% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(2px,9999px,3px,0);
    }

    50% {
        -webkit-transform: translateX(2px);
                transform: translateX(2px);
        clip: rect(5px,9999px,0px,0);
    }

    55% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(1px,9999px,1px,0);
    }

    60% {
        -webkit-transform: translateX(3px);
                transform: translateX(3px);
        clip: rect(5px,9999px,1px,0);
    }

    65% {
        -webkit-transform: translateX(15px);
                transform: translateX(15px);
        clip: rect(3px,9999px,1px,0);
    }

    70% {
        -webkit-transform: translateX(1px);
                transform: translateX(1px);
        clip: rect(5px,9999px,3px,0);
    }

    75% {
        -webkit-transform: translateX(11px);
                transform: translateX(11px);
        clip: rect(1px,9999px,2px,0);
    }

    80% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(2px,9999px,1px,0);
    }

    85% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(5px,9999px,3px,0);
    }

    90% {
        -webkit-transform: translateX(11px);
                transform: translateX(11px);
        clip: rect(2px,9999px,0px,0);
    }

    95% {
        -webkit-transform: translateX(11px);
                transform: translateX(11px);
        clip: rect(4px,9999px,4px,0);
    }

    5% {
        -webkit-transform: translateX(4px);
                transform: translateX(4px);
        clip: rect(1px,9999px,2px,0);
    }
}
@-webkit-keyframes glitchAnim-triangle--bottom {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 5 + 1))px,9999px,resolve(floor(random() * 5))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(11px);
                transform: translateY(11px);
        clip: rect(5px,9999px,3px,0);
    }

    5% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(1px,9999px,3px,0);
    }

    10% {
        -webkit-transform: translateY(14px);
                transform: translateY(14px);
        clip: rect(4px,9999px,2px,0);
    }

    15% {
        -webkit-transform: translateY(13px);
                transform: translateY(13px);
        clip: rect(4px,9999px,1px,0);
    }

    20% {
        -webkit-transform: translateY(7px);
                transform: translateY(7px);
        clip: rect(3px,9999px,2px,0);
    }

    25% {
        -webkit-transform: translateY(15px);
                transform: translateY(15px);
        clip: rect(4px,9999px,1px,0);
    }

    30% {
        -webkit-transform: translateY(15px);
                transform: translateY(15px);
        clip: rect(4px,9999px,0px,0);
    }

    35% {
        -webkit-transform: translateY(11px);
                transform: translateY(11px);
        clip: rect(5px,9999px,0px,0);
    }

    40% {
        -webkit-transform: translateY(14px);
                transform: translateY(14px);
        clip: rect(2px,9999px,2px,0);
    }

    45% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(1px,9999px,4px,0);
    }

    50% {
        -webkit-transform: translateY(15px);
                transform: translateY(15px);
        clip: rect(5px,9999px,1px,0);
    }

    55% {
        -webkit-transform: translateY(8px);
                transform: translateY(8px);
        clip: rect(3px,9999px,4px,0);
    }

    60% {
        -webkit-transform: translateY(9px);
                transform: translateY(9px);
        clip: rect(3px,9999px,2px,0);
    }

    65% {
        -webkit-transform: translateY(9px);
                transform: translateY(9px);
        clip: rect(3px,9999px,1px,0);
    }

    70% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(2px,9999px,2px,0);
    }

    75% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(5px,9999px,4px,0);
    }

    80% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(2px,9999px,4px,0);
    }

    85% {
        -webkit-transform: translateY(6px);
                transform: translateY(6px);
        clip: rect(3px,9999px,2px,0);
    }

    90% {
        -webkit-transform: translateY(11px);
                transform: translateY(11px);
        clip: rect(3px,9999px,0px,0);
    }

    95% {
        -webkit-transform: translateY(10px);
                transform: translateY(10px);
        clip: rect(3px,9999px,0px,0);
    }

    5% {
        -webkit-transform: translateY(11px);
                transform: translateY(11px);
        clip: rect(3px,9999px,2px,0);
    }
}
@keyframes glitchAnim-triangle--bottom {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 5 + 1))px,9999px,resolve(floor(random() * 5))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(11px);
                transform: translateY(11px);
        clip: rect(5px,9999px,3px,0);
    }

    5% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(1px,9999px,3px,0);
    }

    10% {
        -webkit-transform: translateY(14px);
                transform: translateY(14px);
        clip: rect(4px,9999px,2px,0);
    }

    15% {
        -webkit-transform: translateY(13px);
                transform: translateY(13px);
        clip: rect(4px,9999px,1px,0);
    }

    20% {
        -webkit-transform: translateY(7px);
                transform: translateY(7px);
        clip: rect(3px,9999px,2px,0);
    }

    25% {
        -webkit-transform: translateY(15px);
                transform: translateY(15px);
        clip: rect(4px,9999px,1px,0);
    }

    30% {
        -webkit-transform: translateY(15px);
                transform: translateY(15px);
        clip: rect(4px,9999px,0px,0);
    }

    35% {
        -webkit-transform: translateY(11px);
                transform: translateY(11px);
        clip: rect(5px,9999px,0px,0);
    }

    40% {
        -webkit-transform: translateY(14px);
                transform: translateY(14px);
        clip: rect(2px,9999px,2px,0);
    }

    45% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(1px,9999px,4px,0);
    }

    50% {
        -webkit-transform: translateY(15px);
                transform: translateY(15px);
        clip: rect(5px,9999px,1px,0);
    }

    55% {
        -webkit-transform: translateY(8px);
                transform: translateY(8px);
        clip: rect(3px,9999px,4px,0);
    }

    60% {
        -webkit-transform: translateY(9px);
                transform: translateY(9px);
        clip: rect(3px,9999px,2px,0);
    }

    65% {
        -webkit-transform: translateY(9px);
                transform: translateY(9px);
        clip: rect(3px,9999px,1px,0);
    }

    70% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(2px,9999px,2px,0);
    }

    75% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(5px,9999px,4px,0);
    }

    80% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(2px,9999px,4px,0);
    }

    85% {
        -webkit-transform: translateY(6px);
                transform: translateY(6px);
        clip: rect(3px,9999px,2px,0);
    }

    90% {
        -webkit-transform: translateY(11px);
                transform: translateY(11px);
        clip: rect(3px,9999px,0px,0);
    }

    95% {
        -webkit-transform: translateY(10px);
                transform: translateY(10px);
        clip: rect(3px,9999px,0px,0);
    }

    5% {
        -webkit-transform: translateY(11px);
                transform: translateY(11px);
        clip: rect(3px,9999px,2px,0);
    }
}
/* ==========================================================================
   Nav Container Glitch Animation
   ========================================================================== */
@-webkit-keyframes glitchAnim-box {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 130 + 1))px,9999px,resolve(floor(random() * 130))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(112px,9999px,122px,0);
    }

    5% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(90px,9999px,73px,0);
    }

    10% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(32px,9999px,73px,0);
    }

    30% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(118px,9999px,19px,0);
    }

    20% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(80px,9999px,62px,0);
    }

    25% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(52px,9999px,60px,0);
    }

    30% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(18px,9999px,32px,0);
    }

    35% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(42px,9999px,96px,0);
    }

    40% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(21px,9999px,126px,0);
    }

    45% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(115px,9999px,89px,0);
    }

    50% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(48px,9999px,25px,0);
    }

    55% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(114px,9999px,28px,0);
    }

    60% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(38px,9999px,92px,0);
    }

    65% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(40px,9999px,37px,0);
    }

    70% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(108px,9999px,103px,0);
    }

    75% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(15px,9999px,48px,0);
    }

    80% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(4px,9999px,128px,0);
    }

    85% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(37px,9999px,53px,0);
    }

    90% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(104px,9999px,125px,0);
    }

    95% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(6px,9999px,109px,0);
    }

    100% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(66px,9999px,101px,0);
    }
}
@keyframes glitchAnim-box {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 130 + 1))px,9999px,resolve(floor(random() * 130))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(112px,9999px,122px,0);
    }

    5% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(90px,9999px,73px,0);
    }

    10% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(32px,9999px,73px,0);
    }

    30% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(118px,9999px,19px,0);
    }

    20% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(80px,9999px,62px,0);
    }

    25% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(52px,9999px,60px,0);
    }

    30% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(18px,9999px,32px,0);
    }

    35% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(42px,9999px,96px,0);
    }

    40% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(21px,9999px,126px,0);
    }

    45% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(115px,9999px,89px,0);
    }

    50% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(48px,9999px,25px,0);
    }

    55% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(114px,9999px,28px,0);
    }

    60% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(38px,9999px,92px,0);
    }

    65% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(40px,9999px,37px,0);
    }

    70% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(108px,9999px,103px,0);
    }

    75% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(15px,9999px,48px,0);
    }

    80% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(4px,9999px,128px,0);
    }

    85% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(37px,9999px,53px,0);
    }

    90% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(104px,9999px,125px,0);
    }

    95% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(6px,9999px,109px,0);
    }

    100% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(66px,9999px,101px,0);
    }
}
@-webkit-keyframes glitchAnim-box--2 {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 130 + 1))px,9999px,resolve(floor(random() * 130))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateX(6px);
                transform: translateX(6px);
        clip: rect(16px,9999px,69px,0);
    }

    5% {
        -webkit-transform: translateX(1px);
                transform: translateX(1px);
        clip: rect(96px,9999px,94px,0);
    }

    10% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(113px,9999px,14px,0);
    }

    30% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(91px,9999px,110px,0);
    }

    20% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(2px,9999px,119px,0);
    }

    25% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(105px,9999px,83px,0);
    }

    30% {
        -webkit-transform: translateX(2px);
                transform: translateX(2px);
        clip: rect(62px,9999px,72px,0);
    }

    35% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(105px,9999px,1px,0);
    }

    40% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(1px,9999px,51px,0);
    }

    45% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(113px,9999px,84px,0);
    }

    50% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(11px,9999px,31px,0);
    }

    55% {
        -webkit-transform: translateX(2px);
                transform: translateX(2px);
        clip: rect(124px,9999px,13px,0);
    }

    60% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(119px,9999px,56px,0);
    }

    65% {
        -webkit-transform: translateX(3px);
                transform: translateX(3px);
        clip: rect(128px,9999px,84px,0);
    }

    70% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(124px,9999px,98px,0);
    }

    75% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(8px,9999px,3px,0);
    }

    80% {
        -webkit-transform: translateX(1px);
                transform: translateX(1px);
        clip: rect(117px,9999px,53px,0);
    }

    85% {
        -webkit-transform: translateX(2px);
                transform: translateX(2px);
        clip: rect(104px,9999px,21px,0);
    }

    90% {
        -webkit-transform: translateX(5px);
                transform: translateX(5px);
        clip: rect(57px,9999px,126px,0);
    }

    95% {
        -webkit-transform: translateX(1px);
                transform: translateX(1px);
        clip: rect(20px,9999px,120px,0);
    }

    100% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(55px,9999px,24px,0);
    }
}
@keyframes glitchAnim-box--2 {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 130 + 1))px,9999px,resolve(floor(random() * 130))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateX(6px);
                transform: translateX(6px);
        clip: rect(16px,9999px,69px,0);
    }

    5% {
        -webkit-transform: translateX(1px);
                transform: translateX(1px);
        clip: rect(96px,9999px,94px,0);
    }

    10% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(113px,9999px,14px,0);
    }

    30% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(91px,9999px,110px,0);
    }

    20% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(2px,9999px,119px,0);
    }

    25% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(105px,9999px,83px,0);
    }

    30% {
        -webkit-transform: translateX(2px);
                transform: translateX(2px);
        clip: rect(62px,9999px,72px,0);
    }

    35% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(105px,9999px,1px,0);
    }

    40% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(1px,9999px,51px,0);
    }

    45% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(113px,9999px,84px,0);
    }

    50% {
        -webkit-transform: translateX(9px);
                transform: translateX(9px);
        clip: rect(11px,9999px,31px,0);
    }

    55% {
        -webkit-transform: translateX(2px);
                transform: translateX(2px);
        clip: rect(124px,9999px,13px,0);
    }

    60% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(119px,9999px,56px,0);
    }

    65% {
        -webkit-transform: translateX(3px);
                transform: translateX(3px);
        clip: rect(128px,9999px,84px,0);
    }

    70% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(124px,9999px,98px,0);
    }

    75% {
        -webkit-transform: translateX(7px);
                transform: translateX(7px);
        clip: rect(8px,9999px,3px,0);
    }

    80% {
        -webkit-transform: translateX(1px);
                transform: translateX(1px);
        clip: rect(117px,9999px,53px,0);
    }

    85% {
        -webkit-transform: translateX(2px);
                transform: translateX(2px);
        clip: rect(104px,9999px,21px,0);
    }

    90% {
        -webkit-transform: translateX(5px);
                transform: translateX(5px);
        clip: rect(57px,9999px,126px,0);
    }

    95% {
        -webkit-transform: translateX(1px);
                transform: translateX(1px);
        clip: rect(20px,9999px,120px,0);
    }

    100% {
        -webkit-transform: translateX(8px);
                transform: translateX(8px);
        clip: rect(55px,9999px,24px,0);
    }
}
/* ==========================================================================
   Nav Title Animations
   ========================================================================== */
@-webkit-keyframes glitchNavTitle {

    0% {
        opacity: 0;
        -webkit-transform: scale(0) translateX(0) translate3d(0, 0, 0);
                transform: scale(0) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    5% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    7% {
        opacity: 0;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    13% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    17% {
        opacity: 0;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    22% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    30% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
                transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    40% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
                transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
        width: 110%;
        height: 21px;
    }
}
@keyframes glitchNavTitle {

    0% {
        opacity: 0;
        -webkit-transform: scale(0) translateX(0) translate3d(0, 0, 0);
                transform: scale(0) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    5% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    7% {
        opacity: 0;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    13% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    17% {
        opacity: 0;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    22% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(0) translate3d(0, 0, 0);
                transform: scale(1) translateX(0) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    30% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
                transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
        width: 10px;
        height: 21px;
    }

    40% {
        opacity: 1;
        -webkit-transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
                transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
        width: 110%;
        height: 21px;
    }
}
@-webkit-keyframes glitchNavTitle-text {

    0% {
        visibilty: hidden;
    }

    50% {
        visibilty: visible;
        clip: rect(34px,9999px,27px,0);
    }

    55% {
        clip: rect(33px,9999px,8px,0);
    }

    60% {
        clip: rect(68px,9999px,78px,0);
    }

    65% {
        clip: rect(62px,9999px,91px,0);
    }

    70% {
        clip: rect(31px,9999px,63px,0);
    }

    75% {
        clip: rect(64px,9999px,99px,0);
    }

    80% {
        clip: rect(57px,9999px,54px,0);
    }

    85% {
        clip: rect(1px,9999px,40px,0);
    }

    90% {
        clip: rect(92px,9999px,28px,0);
    }

    95% {
        clip: rect(60px,9999px,41px,0);
    }

    100% {
        clip: rect(9px,9999px,71px,0);
    }
}
@keyframes glitchNavTitle-text {

    0% {
        visibilty: hidden;
    }

    50% {
        visibilty: visible;
        clip: rect(34px,9999px,27px,0);
    }

    55% {
        clip: rect(33px,9999px,8px,0);
    }

    60% {
        clip: rect(68px,9999px,78px,0);
    }

    65% {
        clip: rect(62px,9999px,91px,0);
    }

    70% {
        clip: rect(31px,9999px,63px,0);
    }

    75% {
        clip: rect(64px,9999px,99px,0);
    }

    80% {
        clip: rect(57px,9999px,54px,0);
    }

    85% {
        clip: rect(1px,9999px,40px,0);
    }

    90% {
        clip: rect(92px,9999px,28px,0);
    }

    95% {
        clip: rect(60px,9999px,41px,0);
    }

    100% {
        clip: rect(9px,9999px,71px,0);
    }
}
@-webkit-keyframes glitchNav-flicker {

    0% {
        opacity: 0;
    }

    5% {
        opacity: 1;
    }

    7% {
        opacity: 0;
    }

    13% {
        opacity: 1;
    }

    17% {
        opacity: 0;
    }

    22% {
        opacity: 1;
    }

    30% {
        opacity: 1;
    }

    34% {
        opacity: 0;
    }

    40% {
        opacity: 1;
    }

    47% {
        opacity: 0;
    }

    53% {
        opacity: 1;
    }

    59% {
        opacity: 0;
    }

    64% {
        opacity: 1;
    }

    72% {
        opacity: 1;
    }

    78% {
        opacity: 0;
    }

    85% {
        opacity: 1;
    }

    89% {
        opacity: 0;
    }

    94% {
        opacity: 1;
    }

    97% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}
@keyframes glitchNav-flicker {

    0% {
        opacity: 0;
    }

    5% {
        opacity: 1;
    }

    7% {
        opacity: 0;
    }

    13% {
        opacity: 1;
    }

    17% {
        opacity: 0;
    }

    22% {
        opacity: 1;
    }

    30% {
        opacity: 1;
    }

    34% {
        opacity: 0;
    }

    40% {
        opacity: 1;
    }

    47% {
        opacity: 0;
    }

    53% {
        opacity: 1;
    }

    59% {
        opacity: 0;
    }

    64% {
        opacity: 1;
    }

    72% {
        opacity: 1;
    }

    78% {
        opacity: 0;
    }

    85% {
        opacity: 1;
    }

    89% {
        opacity: 0;
    }

    94% {
        opacity: 1;
    }

    97% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}
@-webkit-keyframes glitchHackers {

    0% {
        opacity: 0;
        -webkit-transform: translate( 4px, -6px);
                transform: translate( 4px, -6px);
    }

    5% {
        opacity: 1;
        -webkit-transform: translate( 11px, -1px);
                transform: translate( 11px, -1px);
    }

    7% {
        opacity: 0;
        -webkit-transform: translate( 1px, -3px);
                transform: translate( 1px, -3px);
    }

    13% {
        opacity: 1;
        -webkit-transform: translate( 16px, -14px);
                transform: translate( 16px, -14px);
    }

    17% {
        opacity: 0;
        -webkit-transform: translate( 7px, -7px);
                transform: translate( 7px, -7px);
    }

    22% {
        opacity: 1;
        -webkit-transform: translate( 3px, -12px);
                transform: translate( 3px, -12px);
    }

    30% {
        opacity: 1;
        -webkit-transform: translate( 9px, -14px);
                transform: translate( 9px, -14px);
    }

    35% {
        opacity: 0;
        -webkit-transform: translate( 15px, -4px);
                transform: translate( 15px, -4px);
    }

    40%, 65% {
        -webkit-transform: translate(0,0);
                transform: translate(0,0);
        opacity: 1;
    }

    65% {
        opacity: 1;
        -webkit-transform: translate( 14px, -9px);
                transform: translate( 14px, -9px);
    }

    72% {
        opacity: 1;
        -webkit-transform: translate( 17px, -9px);
                transform: translate( 17px, -9px);
    }

    78% {
        opacity: 0;
        -webkit-transform: translate( 7px, -11px);
                transform: translate( 7px, -11px);
    }

    85% {
        opacity: 1;
        -webkit-transform: translate( 12px, -11px);
                transform: translate( 12px, -11px);
    }

    89% {
        opacity: 0;
        -webkit-transform: translate( 3px, -10px);
                transform: translate( 3px, -10px);
    }

    94% {
        opacity: 1;
        -webkit-transform: translate( 1px, -11px);
                transform: translate( 1px, -11px);
    }

    97% {
        opacity: 0;
        -webkit-transform: translate( 4px, -10px);
                transform: translate( 4px, -10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translate( 5px, -6px);
                transform: translate( 5px, -6px);
    }
}
@keyframes glitchHackers {

    0% {
        opacity: 0;
        -webkit-transform: translate( 4px, -6px);
                transform: translate( 4px, -6px);
    }

    5% {
        opacity: 1;
        -webkit-transform: translate( 11px, -1px);
                transform: translate( 11px, -1px);
    }

    7% {
        opacity: 0;
        -webkit-transform: translate( 1px, -3px);
                transform: translate( 1px, -3px);
    }

    13% {
        opacity: 1;
        -webkit-transform: translate( 16px, -14px);
                transform: translate( 16px, -14px);
    }

    17% {
        opacity: 0;
        -webkit-transform: translate( 7px, -7px);
                transform: translate( 7px, -7px);
    }

    22% {
        opacity: 1;
        -webkit-transform: translate( 3px, -12px);
                transform: translate( 3px, -12px);
    }

    30% {
        opacity: 1;
        -webkit-transform: translate( 9px, -14px);
                transform: translate( 9px, -14px);
    }

    35% {
        opacity: 0;
        -webkit-transform: translate( 15px, -4px);
                transform: translate( 15px, -4px);
    }

    40%, 65% {
        -webkit-transform: translate(0,0);
                transform: translate(0,0);
        opacity: 1;
    }

    65% {
        opacity: 1;
        -webkit-transform: translate( 14px, -9px);
                transform: translate( 14px, -9px);
    }

    72% {
        opacity: 1;
        -webkit-transform: translate( 17px, -9px);
                transform: translate( 17px, -9px);
    }

    78% {
        opacity: 0;
        -webkit-transform: translate( 7px, -11px);
                transform: translate( 7px, -11px);
    }

    85% {
        opacity: 1;
        -webkit-transform: translate( 12px, -11px);
                transform: translate( 12px, -11px);
    }

    89% {
        opacity: 0;
        -webkit-transform: translate( 3px, -10px);
                transform: translate( 3px, -10px);
    }

    94% {
        opacity: 1;
        -webkit-transform: translate( 1px, -11px);
                transform: translate( 1px, -11px);
    }

    97% {
        opacity: 0;
        -webkit-transform: translate( 4px, -10px);
                transform: translate( 4px, -10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translate( 5px, -6px);
                transform: translate( 5px, -6px);
    }
}
/* ==========================================================================
   Media
   ========================================================================== */
@-webkit-keyframes glitchAnim-media {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 320 + 1))px,9999px,resolve(floor(random() * 320))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(180px,9999px,12px,0);
    }

    5% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(18px,9999px,81px,0);
    }

    10% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(76px,9999px,189px,0);
    }

    30% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(136px,9999px,262px,0);
    }

    20% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(72px,9999px,6px,0);
    }

    25% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(96px,9999px,133px,0);
    }

    30% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(154px,9999px,123px,0);
    }

    35% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(90px,9999px,268px,0);
    }

    40% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(316px,9999px,168px,0);
    }

    45% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(69px,9999px,156px,0);
    }

    50% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(122px,9999px,31px,0);
    }

    55% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(157px,9999px,114px,0);
    }

    60% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(128px,9999px,51px,0);
    }

    65% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(99px,9999px,100px,0);
    }

    70% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(24px,9999px,4px,0);
    }

    75% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(289px,9999px,47px,0);
    }

    80% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(310px,9999px,159px,0);
    }

    85% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(41px,9999px,122px,0);
    }

    90% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(149px,9999px,235px,0);
    }

    95% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(112px,9999px,207px,0);
    }

    100% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(272px,9999px,160px,0);
    }
}
@keyframes glitchAnim-media {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 320 + 1))px,9999px,resolve(floor(random() * 320))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(180px,9999px,12px,0);
    }

    5% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(18px,9999px,81px,0);
    }

    10% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(76px,9999px,189px,0);
    }

    30% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(136px,9999px,262px,0);
    }

    20% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(72px,9999px,6px,0);
    }

    25% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(96px,9999px,133px,0);
    }

    30% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(154px,9999px,123px,0);
    }

    35% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(90px,9999px,268px,0);
    }

    40% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(316px,9999px,168px,0);
    }

    45% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(69px,9999px,156px,0);
    }

    50% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(122px,9999px,31px,0);
    }

    55% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(157px,9999px,114px,0);
    }

    60% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(128px,9999px,51px,0);
    }

    65% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(99px,9999px,100px,0);
    }

    70% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(24px,9999px,4px,0);
    }

    75% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(289px,9999px,47px,0);
    }

    80% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(310px,9999px,159px,0);
    }

    85% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(41px,9999px,122px,0);
    }

    90% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(149px,9999px,235px,0);
    }

    95% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(112px,9999px,207px,0);
    }

    100% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(272px,9999px,160px,0);
    }
}
@-webkit-keyframes glitchAnim-media--2 {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 30 + 1))px,9999px,resolve(floor(random() * 420))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(29px,9999px,249px,0);
    }

    5% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(8px,9999px,131px,0);
    }

    10% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(21px,9999px,310px,0);
    }

    30% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(17px,9999px,235px,0);
    }

    20% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(12px,9999px,345px,0);
    }

    25% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(5px,9999px,236px,0);
    }

    30% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(16px,9999px,233px,0);
    }

    35% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(3px,9999px,268px,0);
    }

    40% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(30px,9999px,151px,0);
    }

    45% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(7px,9999px,114px,0);
    }

    50% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(22px,9999px,27px,0);
    }

    55% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(26px,9999px,102px,0);
    }

    60% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(25px,9999px,147px,0);
    }

    65% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(10px,9999px,411px,0);
    }

    70% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(30px,9999px,291px,0);
    }

    75% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(22px,9999px,45px,0);
    }

    80% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(18px,9999px,89px,0);
    }

    85% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(19px,9999px,9px,0);
    }

    90% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(3px,9999px,152px,0);
    }

    95% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(21px,9999px,389px,0);
    }

    100% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(20px,9999px,67px,0);
    }
}
@keyframes glitchAnim-media--2 {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 30 + 1))px,9999px,resolve(floor(random() * 420))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(29px,9999px,249px,0);
    }

    5% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(8px,9999px,131px,0);
    }

    10% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(21px,9999px,310px,0);
    }

    30% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(17px,9999px,235px,0);
    }

    20% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(12px,9999px,345px,0);
    }

    25% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(5px,9999px,236px,0);
    }

    30% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(16px,9999px,233px,0);
    }

    35% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(3px,9999px,268px,0);
    }

    40% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(30px,9999px,151px,0);
    }

    45% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(7px,9999px,114px,0);
    }

    50% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(22px,9999px,27px,0);
    }

    55% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(26px,9999px,102px,0);
    }

    60% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(25px,9999px,147px,0);
    }

    65% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(10px,9999px,411px,0);
    }

    70% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(30px,9999px,291px,0);
    }

    75% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(22px,9999px,45px,0);
    }

    80% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(18px,9999px,89px,0);
    }

    85% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(19px,9999px,9px,0);
    }

    90% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(3px,9999px,152px,0);
    }

    95% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(21px,9999px,389px,0);
    }

    100% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(20px,9999px,67px,0);
    }
}
/* * * * * * * * * * * * * * * * * * * * *\  
  CSShake :: Package
  v1.5.0
  CSS classes to move your DOM
  (c) 2015 @elrumordelaluz
  http://elrumordelaluz.github.io/csshake/
  Licensed under MIT
\* * * * * * * * * * * * * * * * * * * * */
.shake, .shake-little, .shake-slow, .shake-hard, .shake-horizontal, .shake-vertical, .shake-rotate, .shake-opacity, .shake-crazy, .shake-chunk {
    display: inline-block;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
}
.shake-freeze, .shake-constant.shake-constant--hover:hover, .shake-trigger:hover .shake-constant.shake-constant--hover {
    -webkit-animation-play-state: paused;
            animation-play-state: paused;
}
.shake-freeze:hover, .shake-trigger:hover .shake-freeze, .shake:hover, .shake-trigger:hover .shake, .shake-little:hover, .shake-trigger:hover .shake-little, .shake-slow:hover, .shake-trigger:hover .shake-slow, .shake-hard:hover, .shake-trigger:hover .shake-hard, .shake-horizontal:hover, .shake-trigger:hover .shake-horizontal, .shake-vertical:hover, .shake-trigger:hover .shake-vertical, .shake-rotate:hover, .shake-trigger:hover .shake-rotate, .shake-opacity:hover, .shake-trigger:hover .shake-opacity, .shake-crazy:hover, .shake-trigger:hover .shake-crazy, .shake-chunk:hover, .shake-trigger:hover .shake-chunk {
    -webkit-animation-play-state: running;
            animation-play-state: running;
}
@-webkit-keyframes shake {

    2% {
        -webkit-transform: translate(1.5px, 2.5px) rotate(-0.5deg);
                transform: translate(1.5px, 2.5px) rotate(-0.5deg);
    }

    4% {
        -webkit-transform: translate(1.5px, -1.5px) rotate(0.5deg);
                transform: translate(1.5px, -1.5px) rotate(0.5deg);
    }

    6% {
        -webkit-transform: translate(1.5px, -1.5px) rotate(-0.5deg);
                transform: translate(1.5px, -1.5px) rotate(-0.5deg);
    }

    8% {
        -webkit-transform: translate(0.5px, 2.5px) rotate(0.5deg);
                transform: translate(0.5px, 2.5px) rotate(0.5deg);
    }

    10% {
        -webkit-transform: translate(-0.5px, -0.5px) rotate(1.5deg);
                transform: translate(-0.5px, -0.5px) rotate(1.5deg);
    }

    12% {
        -webkit-transform: translate(-0.5px, -0.5px) rotate(-0.5deg);
                transform: translate(-0.5px, -0.5px) rotate(-0.5deg);
    }

    14% {
        -webkit-transform: translate(2.5px, 0.5px) rotate(-0.5deg);
                transform: translate(2.5px, 0.5px) rotate(-0.5deg);
    }

    16% {
        -webkit-transform: translate(-1.5px, 1.5px) rotate(0.5deg);
                transform: translate(-1.5px, 1.5px) rotate(0.5deg);
    }

    18% {
        -webkit-transform: translate(2.5px, 0.5px) rotate(-0.5deg);
                transform: translate(2.5px, 0.5px) rotate(-0.5deg);
    }

    20% {
        -webkit-transform: translate(-1.5px, 0.5px) rotate(-0.5deg);
                transform: translate(-1.5px, 0.5px) rotate(-0.5deg);
    }

    22% {
        -webkit-transform: translate(2.5px, -1.5px) rotate(-0.5deg);
                transform: translate(2.5px, -1.5px) rotate(-0.5deg);
    }

    24% {
        -webkit-transform: translate(1.5px, 2.5px) rotate(1.5deg);
                transform: translate(1.5px, 2.5px) rotate(1.5deg);
    }

    26% {
        -webkit-transform: translate(-1.5px, -0.5px) rotate(0.5deg);
                transform: translate(-1.5px, -0.5px) rotate(0.5deg);
    }

    28% {
        -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
                transform: translate(1.5px, 1.5px) rotate(-0.5deg);
    }

    30% {
        -webkit-transform: translate(2.5px, -1.5px) rotate(-0.5deg);
                transform: translate(2.5px, -1.5px) rotate(-0.5deg);
    }

    32% {
        -webkit-transform: translate(0.5px, 2.5px) rotate(-0.5deg);
                transform: translate(0.5px, 2.5px) rotate(-0.5deg);
    }

    34% {
        -webkit-transform: translate(-0.5px, 1.5px) rotate(1.5deg);
                transform: translate(-0.5px, 1.5px) rotate(1.5deg);
    }

    36% {
        -webkit-transform: translate(0.5px, 1.5px) rotate(1.5deg);
                transform: translate(0.5px, 1.5px) rotate(1.5deg);
    }

    38% {
        -webkit-transform: translate(1.5px, 1.5px) rotate(0.5deg);
                transform: translate(1.5px, 1.5px) rotate(0.5deg);
    }

    40% {
        -webkit-transform: translate(-0.5px, 1.5px) rotate(0.5deg);
                transform: translate(-0.5px, 1.5px) rotate(0.5deg);
    }

    42% {
        -webkit-transform: translate(-0.5px, 0.5px) rotate(1.5deg);
                transform: translate(-0.5px, 0.5px) rotate(1.5deg);
    }

    44% {
        -webkit-transform: translate(-1.5px, -1.5px) rotate(1.5deg);
                transform: translate(-1.5px, -1.5px) rotate(1.5deg);
    }

    46% {
        -webkit-transform: translate(0.5px, -0.5px) rotate(0.5deg);
                transform: translate(0.5px, -0.5px) rotate(0.5deg);
    }

    48% {
        -webkit-transform: translate(-0.5px, 1.5px) rotate(-0.5deg);
                transform: translate(-0.5px, 1.5px) rotate(-0.5deg);
    }

    50% {
        -webkit-transform: translate(2.5px, -0.5px) rotate(-0.5deg);
                transform: translate(2.5px, -0.5px) rotate(-0.5deg);
    }

    52% {
        -webkit-transform: translate(0.5px, -1.5px) rotate(0.5deg);
                transform: translate(0.5px, -1.5px) rotate(0.5deg);
    }

    54% {
        -webkit-transform: translate(2.5px, -1.5px) rotate(0.5deg);
                transform: translate(2.5px, -1.5px) rotate(0.5deg);
    }

    56% {
        -webkit-transform: translate(-1.5px, -0.5px) rotate(0.5deg);
                transform: translate(-1.5px, -0.5px) rotate(0.5deg);
    }

    58% {
        -webkit-transform: translate(-1.5px, 2.5px) rotate(1.5deg);
                transform: translate(-1.5px, 2.5px) rotate(1.5deg);
    }

    60% {
        -webkit-transform: translate(0.5px, -1.5px) rotate(0.5deg);
                transform: translate(0.5px, -1.5px) rotate(0.5deg);
    }

    62% {
        -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
                transform: translate(-0.5px, 2.5px) rotate(1.5deg);
    }

    64% {
        -webkit-transform: translate(0.5px, 0.5px) rotate(-0.5deg);
                transform: translate(0.5px, 0.5px) rotate(-0.5deg);
    }

    66% {
        -webkit-transform: translate(1.5px, -0.5px) rotate(1.5deg);
                transform: translate(1.5px, -0.5px) rotate(1.5deg);
    }

    68% {
        -webkit-transform: translate(-1.5px, -0.5px) rotate(0.5deg);
                transform: translate(-1.5px, -0.5px) rotate(0.5deg);
    }

    70% {
        -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
                transform: translate(-0.5px, 2.5px) rotate(1.5deg);
    }

    72% {
        -webkit-transform: translate(1.5px, 0.5px) rotate(0.5deg);
                transform: translate(1.5px, 0.5px) rotate(0.5deg);
    }

    74% {
        -webkit-transform: translate(0.5px, -1.5px) rotate(0.5deg);
                transform: translate(0.5px, -1.5px) rotate(0.5deg);
    }

    76% {
        -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
                transform: translate(1.5px, 1.5px) rotate(-0.5deg);
    }

    78% {
        -webkit-transform: translate(2.5px, -1.5px) rotate(0.5deg);
                transform: translate(2.5px, -1.5px) rotate(0.5deg);
    }

    80% {
        -webkit-transform: translate(-1.5px, 1.5px) rotate(0.5deg);
                transform: translate(-1.5px, 1.5px) rotate(0.5deg);
    }

    82% {
        -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
                transform: translate(-0.5px, 2.5px) rotate(1.5deg);
    }

    84% {
        -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
                transform: translate(1.5px, 1.5px) rotate(-0.5deg);
    }

    86% {
        -webkit-transform: translate(2.5px, 0.5px) rotate(1.5deg);
                transform: translate(2.5px, 0.5px) rotate(1.5deg);
    }

    88% {
        -webkit-transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
                transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
    }

    90% {
        -webkit-transform: translate(1.5px, -0.5px) rotate(-0.5deg);
                transform: translate(1.5px, -0.5px) rotate(-0.5deg);
    }

    92% {
        -webkit-transform: translate(0.5px, -1.5px) rotate(1.5deg);
                transform: translate(0.5px, -1.5px) rotate(1.5deg);
    }

    94% {
        -webkit-transform: translate(-0.5px, -0.5px) rotate(0.5deg);
                transform: translate(-0.5px, -0.5px) rotate(0.5deg);
    }

    96% {
        -webkit-transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
                transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
    }

    98% {
        -webkit-transform: translate(-0.5px, -1.5px) rotate(1.5deg);
                transform: translate(-0.5px, -1.5px) rotate(1.5deg);
    }

    0%, 100% {
        -webkit-transform: translate(0, 0) rotate(0);
                transform: translate(0, 0) rotate(0);
    }
}
@keyframes shake {

    2% {
        -webkit-transform: translate(1.5px, 2.5px) rotate(-0.5deg);
                transform: translate(1.5px, 2.5px) rotate(-0.5deg);
    }

    4% {
        -webkit-transform: translate(1.5px, -1.5px) rotate(0.5deg);
                transform: translate(1.5px, -1.5px) rotate(0.5deg);
    }

    6% {
        -webkit-transform: translate(1.5px, -1.5px) rotate(-0.5deg);
                transform: translate(1.5px, -1.5px) rotate(-0.5deg);
    }

    8% {
        -webkit-transform: translate(0.5px, 2.5px) rotate(0.5deg);
                transform: translate(0.5px, 2.5px) rotate(0.5deg);
    }

    10% {
        -webkit-transform: translate(-0.5px, -0.5px) rotate(1.5deg);
                transform: translate(-0.5px, -0.5px) rotate(1.5deg);
    }

    12% {
        -webkit-transform: translate(-0.5px, -0.5px) rotate(-0.5deg);
                transform: translate(-0.5px, -0.5px) rotate(-0.5deg);
    }

    14% {
        -webkit-transform: translate(2.5px, 0.5px) rotate(-0.5deg);
                transform: translate(2.5px, 0.5px) rotate(-0.5deg);
    }

    16% {
        -webkit-transform: translate(-1.5px, 1.5px) rotate(0.5deg);
                transform: translate(-1.5px, 1.5px) rotate(0.5deg);
    }

    18% {
        -webkit-transform: translate(2.5px, 0.5px) rotate(-0.5deg);
                transform: translate(2.5px, 0.5px) rotate(-0.5deg);
    }

    20% {
        -webkit-transform: translate(-1.5px, 0.5px) rotate(-0.5deg);
                transform: translate(-1.5px, 0.5px) rotate(-0.5deg);
    }

    22% {
        -webkit-transform: translate(2.5px, -1.5px) rotate(-0.5deg);
                transform: translate(2.5px, -1.5px) rotate(-0.5deg);
    }

    24% {
        -webkit-transform: translate(1.5px, 2.5px) rotate(1.5deg);
                transform: translate(1.5px, 2.5px) rotate(1.5deg);
    }

    26% {
        -webkit-transform: translate(-1.5px, -0.5px) rotate(0.5deg);
                transform: translate(-1.5px, -0.5px) rotate(0.5deg);
    }

    28% {
        -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
                transform: translate(1.5px, 1.5px) rotate(-0.5deg);
    }

    30% {
        -webkit-transform: translate(2.5px, -1.5px) rotate(-0.5deg);
                transform: translate(2.5px, -1.5px) rotate(-0.5deg);
    }

    32% {
        -webkit-transform: translate(0.5px, 2.5px) rotate(-0.5deg);
                transform: translate(0.5px, 2.5px) rotate(-0.5deg);
    }

    34% {
        -webkit-transform: translate(-0.5px, 1.5px) rotate(1.5deg);
                transform: translate(-0.5px, 1.5px) rotate(1.5deg);
    }

    36% {
        -webkit-transform: translate(0.5px, 1.5px) rotate(1.5deg);
                transform: translate(0.5px, 1.5px) rotate(1.5deg);
    }

    38% {
        -webkit-transform: translate(1.5px, 1.5px) rotate(0.5deg);
                transform: translate(1.5px, 1.5px) rotate(0.5deg);
    }

    40% {
        -webkit-transform: translate(-0.5px, 1.5px) rotate(0.5deg);
                transform: translate(-0.5px, 1.5px) rotate(0.5deg);
    }

    42% {
        -webkit-transform: translate(-0.5px, 0.5px) rotate(1.5deg);
                transform: translate(-0.5px, 0.5px) rotate(1.5deg);
    }

    44% {
        -webkit-transform: translate(-1.5px, -1.5px) rotate(1.5deg);
                transform: translate(-1.5px, -1.5px) rotate(1.5deg);
    }

    46% {
        -webkit-transform: translate(0.5px, -0.5px) rotate(0.5deg);
                transform: translate(0.5px, -0.5px) rotate(0.5deg);
    }

    48% {
        -webkit-transform: translate(-0.5px, 1.5px) rotate(-0.5deg);
                transform: translate(-0.5px, 1.5px) rotate(-0.5deg);
    }

    50% {
        -webkit-transform: translate(2.5px, -0.5px) rotate(-0.5deg);
                transform: translate(2.5px, -0.5px) rotate(-0.5deg);
    }

    52% {
        -webkit-transform: translate(0.5px, -1.5px) rotate(0.5deg);
                transform: translate(0.5px, -1.5px) rotate(0.5deg);
    }

    54% {
        -webkit-transform: translate(2.5px, -1.5px) rotate(0.5deg);
                transform: translate(2.5px, -1.5px) rotate(0.5deg);
    }

    56% {
        -webkit-transform: translate(-1.5px, -0.5px) rotate(0.5deg);
                transform: translate(-1.5px, -0.5px) rotate(0.5deg);
    }

    58% {
        -webkit-transform: translate(-1.5px, 2.5px) rotate(1.5deg);
                transform: translate(-1.5px, 2.5px) rotate(1.5deg);
    }

    60% {
        -webkit-transform: translate(0.5px, -1.5px) rotate(0.5deg);
                transform: translate(0.5px, -1.5px) rotate(0.5deg);
    }

    62% {
        -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
                transform: translate(-0.5px, 2.5px) rotate(1.5deg);
    }

    64% {
        -webkit-transform: translate(0.5px, 0.5px) rotate(-0.5deg);
                transform: translate(0.5px, 0.5px) rotate(-0.5deg);
    }

    66% {
        -webkit-transform: translate(1.5px, -0.5px) rotate(1.5deg);
                transform: translate(1.5px, -0.5px) rotate(1.5deg);
    }

    68% {
        -webkit-transform: translate(-1.5px, -0.5px) rotate(0.5deg);
                transform: translate(-1.5px, -0.5px) rotate(0.5deg);
    }

    70% {
        -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
                transform: translate(-0.5px, 2.5px) rotate(1.5deg);
    }

    72% {
        -webkit-transform: translate(1.5px, 0.5px) rotate(0.5deg);
                transform: translate(1.5px, 0.5px) rotate(0.5deg);
    }

    74% {
        -webkit-transform: translate(0.5px, -1.5px) rotate(0.5deg);
                transform: translate(0.5px, -1.5px) rotate(0.5deg);
    }

    76% {
        -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
                transform: translate(1.5px, 1.5px) rotate(-0.5deg);
    }

    78% {
        -webkit-transform: translate(2.5px, -1.5px) rotate(0.5deg);
                transform: translate(2.5px, -1.5px) rotate(0.5deg);
    }

    80% {
        -webkit-transform: translate(-1.5px, 1.5px) rotate(0.5deg);
                transform: translate(-1.5px, 1.5px) rotate(0.5deg);
    }

    82% {
        -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
                transform: translate(-0.5px, 2.5px) rotate(1.5deg);
    }

    84% {
        -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
                transform: translate(1.5px, 1.5px) rotate(-0.5deg);
    }

    86% {
        -webkit-transform: translate(2.5px, 0.5px) rotate(1.5deg);
                transform: translate(2.5px, 0.5px) rotate(1.5deg);
    }

    88% {
        -webkit-transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
                transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
    }

    90% {
        -webkit-transform: translate(1.5px, -0.5px) rotate(-0.5deg);
                transform: translate(1.5px, -0.5px) rotate(-0.5deg);
    }

    92% {
        -webkit-transform: translate(0.5px, -1.5px) rotate(1.5deg);
                transform: translate(0.5px, -1.5px) rotate(1.5deg);
    }

    94% {
        -webkit-transform: translate(-0.5px, -0.5px) rotate(0.5deg);
                transform: translate(-0.5px, -0.5px) rotate(0.5deg);
    }

    96% {
        -webkit-transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
                transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
    }

    98% {
        -webkit-transform: translate(-0.5px, -1.5px) rotate(1.5deg);
                transform: translate(-0.5px, -1.5px) rotate(1.5deg);
    }

    0%, 100% {
        -webkit-transform: translate(0, 0) rotate(0);
                transform: translate(0, 0) rotate(0);
    }
}
.shake-slow {
    display: inline-block;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
}
.shake-freeze, .shake-constant.shake-constant--hover:hover, .shake-trigger:hover .shake-constant.shake-constant--hover {
    -webkit-animation-play-state: paused;
            animation-play-state: paused;
}
.shake-freeze:hover, .shake-trigger:hover .shake-freeze, .shake-slow:hover, .shake-trigger:hover .shake-slow {
    -webkit-animation-play-state: running;
            animation-play-state: running;
}
@-webkit-keyframes shake-slow {

    2% {
        -webkit-transform: translate(0px, 4px) rotate(-0.5deg);
                transform: translate(0px, 4px) rotate(-0.5deg);
    }

    4% {
        -webkit-transform: translate(-3px, 9px) rotate(-0.5deg);
                transform: translate(-3px, 9px) rotate(-0.5deg);
    }

    6% {
        -webkit-transform: translate(4px, 10px) rotate(-0.5deg);
                transform: translate(4px, 10px) rotate(-0.5deg);
    }

    8% {
        -webkit-transform: translate(0px, -2px) rotate(0.5deg);
                transform: translate(0px, -2px) rotate(0.5deg);
    }

    10% {
        -webkit-transform: translate(9px, -9px) rotate(1.5deg);
                transform: translate(9px, -9px) rotate(1.5deg);
    }

    12% {
        -webkit-transform: translate(-9px, 9px) rotate(1.5deg);
                transform: translate(-9px, 9px) rotate(1.5deg);
    }

    14% {
        -webkit-transform: translate(10px, -1px) rotate(-0.5deg);
                transform: translate(10px, -1px) rotate(-0.5deg);
    }

    16% {
        -webkit-transform: translate(7px, -1px) rotate(0.5deg);
                transform: translate(7px, -1px) rotate(0.5deg);
    }

    18% {
        -webkit-transform: translate(-8px, 8px) rotate(1.5deg);
                transform: translate(-8px, 8px) rotate(1.5deg);
    }

    20% {
        -webkit-transform: translate(1px, -9px) rotate(0.5deg);
                transform: translate(1px, -9px) rotate(0.5deg);
    }

    22% {
        -webkit-transform: translate(7px, -6px) rotate(0.5deg);
                transform: translate(7px, -6px) rotate(0.5deg);
    }

    24% {
        -webkit-transform: translate(-8px, -4px) rotate(-1.5deg);
                transform: translate(-8px, -4px) rotate(-1.5deg);
    }

    26% {
        -webkit-transform: translate(-9px, 5px) rotate(-1.5deg);
                transform: translate(-9px, 5px) rotate(-1.5deg);
    }

    28% {
        -webkit-transform: translate(7px, 3px) rotate(-1.5deg);
                transform: translate(7px, 3px) rotate(-1.5deg);
    }

    30% {
        -webkit-transform: translate(9px, 3px) rotate(2.5deg);
                transform: translate(9px, 3px) rotate(2.5deg);
    }

    32% {
        -webkit-transform: translate(2px, -6px) rotate(-1.5deg);
                transform: translate(2px, -6px) rotate(-1.5deg);
    }

    34% {
        -webkit-transform: translate(10px, -7px) rotate(2.5deg);
                transform: translate(10px, -7px) rotate(2.5deg);
    }

    36% {
        -webkit-transform: translate(-2px, 10px) rotate(-2.5deg);
                transform: translate(-2px, 10px) rotate(-2.5deg);
    }

    38% {
        -webkit-transform: translate(-6px, -8px) rotate(-1.5deg);
                transform: translate(-6px, -8px) rotate(-1.5deg);
    }

    40% {
        -webkit-transform: translate(1px, 0px) rotate(-2.5deg);
                transform: translate(1px, 0px) rotate(-2.5deg);
    }

    42% {
        -webkit-transform: translate(10px, 8px) rotate(3.5deg);
                transform: translate(10px, 8px) rotate(3.5deg);
    }

    44% {
        -webkit-transform: translate(4px, 2px) rotate(2.5deg);
                transform: translate(4px, 2px) rotate(2.5deg);
    }

    46% {
        -webkit-transform: translate(10px, -2px) rotate(-1.5deg);
                transform: translate(10px, -2px) rotate(-1.5deg);
    }

    48% {
        -webkit-transform: translate(10px, 0px) rotate(-2.5deg);
                transform: translate(10px, 0px) rotate(-2.5deg);
    }

    50% {
        -webkit-transform: translate(-2px, 5px) rotate(-0.5deg);
                transform: translate(-2px, 5px) rotate(-0.5deg);
    }

    52% {
        -webkit-transform: translate(4px, 1px) rotate(3.5deg);
                transform: translate(4px, 1px) rotate(3.5deg);
    }

    54% {
        -webkit-transform: translate(-8px, -5px) rotate(2.5deg);
                transform: translate(-8px, -5px) rotate(2.5deg);
    }

    56% {
        -webkit-transform: translate(8px, -8px) rotate(2.5deg);
                transform: translate(8px, -8px) rotate(2.5deg);
    }

    58% {
        -webkit-transform: translate(-3px, -6px) rotate(1.5deg);
                transform: translate(-3px, -6px) rotate(1.5deg);
    }

    60% {
        -webkit-transform: translate(-3px, -5px) rotate(0.5deg);
                transform: translate(-3px, -5px) rotate(0.5deg);
    }

    62% {
        -webkit-transform: translate(-1px, 0px) rotate(-0.5deg);
                transform: translate(-1px, 0px) rotate(-0.5deg);
    }

    64% {
        -webkit-transform: translate(2px, 10px) rotate(3.5deg);
                transform: translate(2px, 10px) rotate(3.5deg);
    }

    66% {
        -webkit-transform: translate(-4px, -1px) rotate(-0.5deg);
                transform: translate(-4px, -1px) rotate(-0.5deg);
    }

    68% {
        -webkit-transform: translate(8px, -5px) rotate(1.5deg);
                transform: translate(8px, -5px) rotate(1.5deg);
    }

    70% {
        -webkit-transform: translate(-3px, 2px) rotate(-1.5deg);
                transform: translate(-3px, 2px) rotate(-1.5deg);
    }

    72% {
        -webkit-transform: translate(9px, -3px) rotate(-0.5deg);
                transform: translate(9px, -3px) rotate(-0.5deg);
    }

    74% {
        -webkit-transform: translate(-2px, 6px) rotate(1.5deg);
                transform: translate(-2px, 6px) rotate(1.5deg);
    }

    76% {
        -webkit-transform: translate(-7px, -8px) rotate(-1.5deg);
                transform: translate(-7px, -8px) rotate(-1.5deg);
    }

    78% {
        -webkit-transform: translate(7px, -4px) rotate(0.5deg);
                transform: translate(7px, -4px) rotate(0.5deg);
    }

    80% {
        -webkit-transform: translate(-4px, -5px) rotate(-1.5deg);
                transform: translate(-4px, -5px) rotate(-1.5deg);
    }

    82% {
        -webkit-transform: translate(8px, 6px) rotate(3.5deg);
                transform: translate(8px, 6px) rotate(3.5deg);
    }

    84% {
        -webkit-transform: translate(0px, -7px) rotate(-1.5deg);
                transform: translate(0px, -7px) rotate(-1.5deg);
    }

    86% {
        -webkit-transform: translate(0px, 1px) rotate(3.5deg);
                transform: translate(0px, 1px) rotate(3.5deg);
    }

    88% {
        -webkit-transform: translate(-6px, -3px) rotate(2.5deg);
                transform: translate(-6px, -3px) rotate(2.5deg);
    }

    90% {
        -webkit-transform: translate(1px, 3px) rotate(-0.5deg);
                transform: translate(1px, 3px) rotate(-0.5deg);
    }

    92% {
        -webkit-transform: translate(-9px, -4px) rotate(-2.5deg);
                transform: translate(-9px, -4px) rotate(-2.5deg);
    }

    94% {
        -webkit-transform: translate(-7px, -6px) rotate(2.5deg);
                transform: translate(-7px, -6px) rotate(2.5deg);
    }

    96% {
        -webkit-transform: translate(5px, -3px) rotate(-1.5deg);
                transform: translate(5px, -3px) rotate(-1.5deg);
    }

    98% {
        -webkit-transform: translate(8px, 4px) rotate(0.5deg);
                transform: translate(8px, 4px) rotate(0.5deg);
    }

    0%, 100% {
        -webkit-transform: translate(0, 0) rotate(0);
                transform: translate(0, 0) rotate(0);
    }
}
@keyframes shake-slow {

    2% {
        -webkit-transform: translate(0px, 4px) rotate(-0.5deg);
                transform: translate(0px, 4px) rotate(-0.5deg);
    }

    4% {
        -webkit-transform: translate(-3px, 9px) rotate(-0.5deg);
                transform: translate(-3px, 9px) rotate(-0.5deg);
    }

    6% {
        -webkit-transform: translate(4px, 10px) rotate(-0.5deg);
                transform: translate(4px, 10px) rotate(-0.5deg);
    }

    8% {
        -webkit-transform: translate(0px, -2px) rotate(0.5deg);
                transform: translate(0px, -2px) rotate(0.5deg);
    }

    10% {
        -webkit-transform: translate(9px, -9px) rotate(1.5deg);
                transform: translate(9px, -9px) rotate(1.5deg);
    }

    12% {
        -webkit-transform: translate(-9px, 9px) rotate(1.5deg);
                transform: translate(-9px, 9px) rotate(1.5deg);
    }

    14% {
        -webkit-transform: translate(10px, -1px) rotate(-0.5deg);
                transform: translate(10px, -1px) rotate(-0.5deg);
    }

    16% {
        -webkit-transform: translate(7px, -1px) rotate(0.5deg);
                transform: translate(7px, -1px) rotate(0.5deg);
    }

    18% {
        -webkit-transform: translate(-8px, 8px) rotate(1.5deg);
                transform: translate(-8px, 8px) rotate(1.5deg);
    }

    20% {
        -webkit-transform: translate(1px, -9px) rotate(0.5deg);
                transform: translate(1px, -9px) rotate(0.5deg);
    }

    22% {
        -webkit-transform: translate(7px, -6px) rotate(0.5deg);
                transform: translate(7px, -6px) rotate(0.5deg);
    }

    24% {
        -webkit-transform: translate(-8px, -4px) rotate(-1.5deg);
                transform: translate(-8px, -4px) rotate(-1.5deg);
    }

    26% {
        -webkit-transform: translate(-9px, 5px) rotate(-1.5deg);
                transform: translate(-9px, 5px) rotate(-1.5deg);
    }

    28% {
        -webkit-transform: translate(7px, 3px) rotate(-1.5deg);
                transform: translate(7px, 3px) rotate(-1.5deg);
    }

    30% {
        -webkit-transform: translate(9px, 3px) rotate(2.5deg);
                transform: translate(9px, 3px) rotate(2.5deg);
    }

    32% {
        -webkit-transform: translate(2px, -6px) rotate(-1.5deg);
                transform: translate(2px, -6px) rotate(-1.5deg);
    }

    34% {
        -webkit-transform: translate(10px, -7px) rotate(2.5deg);
                transform: translate(10px, -7px) rotate(2.5deg);
    }

    36% {
        -webkit-transform: translate(-2px, 10px) rotate(-2.5deg);
                transform: translate(-2px, 10px) rotate(-2.5deg);
    }

    38% {
        -webkit-transform: translate(-6px, -8px) rotate(-1.5deg);
                transform: translate(-6px, -8px) rotate(-1.5deg);
    }

    40% {
        -webkit-transform: translate(1px, 0px) rotate(-2.5deg);
                transform: translate(1px, 0px) rotate(-2.5deg);
    }

    42% {
        -webkit-transform: translate(10px, 8px) rotate(3.5deg);
                transform: translate(10px, 8px) rotate(3.5deg);
    }

    44% {
        -webkit-transform: translate(4px, 2px) rotate(2.5deg);
                transform: translate(4px, 2px) rotate(2.5deg);
    }

    46% {
        -webkit-transform: translate(10px, -2px) rotate(-1.5deg);
                transform: translate(10px, -2px) rotate(-1.5deg);
    }

    48% {
        -webkit-transform: translate(10px, 0px) rotate(-2.5deg);
                transform: translate(10px, 0px) rotate(-2.5deg);
    }

    50% {
        -webkit-transform: translate(-2px, 5px) rotate(-0.5deg);
                transform: translate(-2px, 5px) rotate(-0.5deg);
    }

    52% {
        -webkit-transform: translate(4px, 1px) rotate(3.5deg);
                transform: translate(4px, 1px) rotate(3.5deg);
    }

    54% {
        -webkit-transform: translate(-8px, -5px) rotate(2.5deg);
                transform: translate(-8px, -5px) rotate(2.5deg);
    }

    56% {
        -webkit-transform: translate(8px, -8px) rotate(2.5deg);
                transform: translate(8px, -8px) rotate(2.5deg);
    }

    58% {
        -webkit-transform: translate(-3px, -6px) rotate(1.5deg);
                transform: translate(-3px, -6px) rotate(1.5deg);
    }

    60% {
        -webkit-transform: translate(-3px, -5px) rotate(0.5deg);
                transform: translate(-3px, -5px) rotate(0.5deg);
    }

    62% {
        -webkit-transform: translate(-1px, 0px) rotate(-0.5deg);
                transform: translate(-1px, 0px) rotate(-0.5deg);
    }

    64% {
        -webkit-transform: translate(2px, 10px) rotate(3.5deg);
                transform: translate(2px, 10px) rotate(3.5deg);
    }

    66% {
        -webkit-transform: translate(-4px, -1px) rotate(-0.5deg);
                transform: translate(-4px, -1px) rotate(-0.5deg);
    }

    68% {
        -webkit-transform: translate(8px, -5px) rotate(1.5deg);
                transform: translate(8px, -5px) rotate(1.5deg);
    }

    70% {
        -webkit-transform: translate(-3px, 2px) rotate(-1.5deg);
                transform: translate(-3px, 2px) rotate(-1.5deg);
    }

    72% {
        -webkit-transform: translate(9px, -3px) rotate(-0.5deg);
                transform: translate(9px, -3px) rotate(-0.5deg);
    }

    74% {
        -webkit-transform: translate(-2px, 6px) rotate(1.5deg);
                transform: translate(-2px, 6px) rotate(1.5deg);
    }

    76% {
        -webkit-transform: translate(-7px, -8px) rotate(-1.5deg);
                transform: translate(-7px, -8px) rotate(-1.5deg);
    }

    78% {
        -webkit-transform: translate(7px, -4px) rotate(0.5deg);
                transform: translate(7px, -4px) rotate(0.5deg);
    }

    80% {
        -webkit-transform: translate(-4px, -5px) rotate(-1.5deg);
                transform: translate(-4px, -5px) rotate(-1.5deg);
    }

    82% {
        -webkit-transform: translate(8px, 6px) rotate(3.5deg);
                transform: translate(8px, 6px) rotate(3.5deg);
    }

    84% {
        -webkit-transform: translate(0px, -7px) rotate(-1.5deg);
                transform: translate(0px, -7px) rotate(-1.5deg);
    }

    86% {
        -webkit-transform: translate(0px, 1px) rotate(3.5deg);
                transform: translate(0px, 1px) rotate(3.5deg);
    }

    88% {
        -webkit-transform: translate(-6px, -3px) rotate(2.5deg);
                transform: translate(-6px, -3px) rotate(2.5deg);
    }

    90% {
        -webkit-transform: translate(1px, 3px) rotate(-0.5deg);
                transform: translate(1px, 3px) rotate(-0.5deg);
    }

    92% {
        -webkit-transform: translate(-9px, -4px) rotate(-2.5deg);
                transform: translate(-9px, -4px) rotate(-2.5deg);
    }

    94% {
        -webkit-transform: translate(-7px, -6px) rotate(2.5deg);
                transform: translate(-7px, -6px) rotate(2.5deg);
    }

    96% {
        -webkit-transform: translate(5px, -3px) rotate(-1.5deg);
                transform: translate(5px, -3px) rotate(-1.5deg);
    }

    98% {
        -webkit-transform: translate(8px, 4px) rotate(0.5deg);
                transform: translate(8px, 4px) rotate(0.5deg);
    }

    0%, 100% {
        -webkit-transform: translate(0, 0) rotate(0);
                transform: translate(0, 0) rotate(0);
    }
}
.shake-slow:hover, .shake-trigger:hover .shake-slow, .shake-slow.shake-freeze, .shake-slow.shake-constant {
    -webkit-animation: shake-slow 5s ease-in-out infinite;
            animation: shake-slow 5s ease-in-out infinite;
}
@-webkit-keyframes moveTeethLeft {

    0% {
        -webkit-transform: scaleX(-1) translateX(-100%);
                transform: scaleX(-1) translateX(-100%);
    }

    100% {
        -webkit-transform: scaleX(-1) translateX(100%);
                transform: scaleX(-1) translateX(100%);
    }
}
@keyframes moveTeethLeft {

    0% {
        -webkit-transform: scaleX(-1) translateX(-100%);
                transform: scaleX(-1) translateX(-100%);
    }

    100% {
        -webkit-transform: scaleX(-1) translateX(100%);
                transform: scaleX(-1) translateX(100%);
    }
}
@-webkit-keyframes moveTeethRight {

    0% {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
    }

    100% {
        -webkit-transform: translateX(150%);
                transform: translateX(150%);
    }
}
@keyframes moveTeethRight {

    0% {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
    }

    100% {
        -webkit-transform: translateX(150%);
                transform: translateX(150%);
    }
}
@-webkit-keyframes characterSelect {

    0% {
        opacity: 0;
        -webkit-transform: scale(0) rotate(360deg);
                transform: scale(0) rotate(360deg);
    }

    100% {
        opacity: 1;
        -webkit-transform: scale(1) rotate(45deg);
                transform: scale(1) rotate(45deg);
    }
}
@keyframes characterSelect {

    0% {
        opacity: 0;
        -webkit-transform: scale(0) rotate(360deg);
                transform: scale(0) rotate(360deg);
    }

    100% {
        opacity: 1;
        -webkit-transform: scale(1) rotate(45deg);
                transform: scale(1) rotate(45deg);
    }
}
@-webkit-keyframes float {

    0%, 33% {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }

    34%, 75% {
        -webkit-transform: translate(0, -10px);
                transform: translate(0, -10px);
    }

    76%, 100% {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
}
@keyframes float {

    0%, 33% {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }

    34%, 75% {
        -webkit-transform: translate(0, -10px);
                transform: translate(0, -10px);
    }

    76%, 100% {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
}
@-webkit-keyframes flash-incorrect {

    0% {
        background: #171717;
    }

    25% {
        background: #331111;
    }

    50% {
        background: #171717;
    }

    75% {
        background: #331111;
    }

    100% {
        background: #171717;
    }
}
@keyframes flash-incorrect {

    0% {
        background: #171717;
    }

    25% {
        background: #331111;
    }

    50% {
        background: #171717;
    }

    75% {
        background: #331111;
    }

    100% {
        background: #171717;
    }
}
@-webkit-keyframes flash-correct {

    0% {
        background: #171717;
    }

    25% {
        background: #1D3311;
    }

    50% {
        background: #171717;
    }

    75% {
        background: #1D3311;
    }

    100% {
        background: #171717;
    }
}
@keyframes flash-correct {

    0% {
        background: #171717;
    }

    25% {
        background: #1D3311;
    }

    50% {
        background: #171717;
    }

    75% {
        background: #1D3311;
    }

    100% {
        background: #171717;
    }
}
@-webkit-keyframes navHide {

    0% {
        top: 45px;
        opacity: 1;
    }

    25% {}

    50% {}

    75% {
        opacity: 0;
    }

    100% {
        top: 20px;
    }
}
@keyframes navHide {

    0% {
        top: 45px;
        opacity: 1;
    }

    25% {}

    50% {}

    75% {
        opacity: 0;
    }

    100% {
        top: 20px;
    }
}
@-webkit-keyframes moving-border {

    0% {
        background-position: 0 0, 0 100%, 0 0, 100% 0;
    }

    100% {
        background-position: 30px 0, -30px 100%, 0 -30px, 100% 30px;
    }
}
@keyframes moving-border {

    0% {
        background-position: 0 0, 0 100%, 0 0, 100% 0;
    }

    100% {
        background-position: 30px 0, -30px 100%, 0 -30px, 100% 30px;
    }
}
@-webkit-keyframes ct-moving-border {

    0% {
        background-position: 0 0, 0 100%, 0 0, 100% 0;
    }

    100% {
        background-position: 110px 0, -110px 100%, 0 -110px, 100% 110px;
    }
}
@keyframes ct-moving-border {

    0% {
        background-position: 0 0, 0 100%, 0 0, 100% 0;
    }

    100% {
        background-position: 110px 0, -110px 100%, 0 -110px, 100% 110px;
    }
}
@-webkit-keyframes navHideTransition {

    0% {
        top: 5px;
        opacity: 1;
    }

    25% {}

    50% {}

    75% {
        opacity: 0;
    }

    100% {
        top: -20px;
    }
}
@keyframes navHideTransition {

    0% {
        top: 5px;
        opacity: 1;
    }

    25% {}

    50% {}

    75% {
        opacity: 0;
    }

    100% {
        top: -20px;
    }
}
@-webkit-keyframes playSprite {

    from {
        background-position: 0px;
    }

    to {
        background-position: -3325px;
    }
}
@keyframes playSprite {

    from {
        background-position: 0px;
    }

    to {
        background-position: -3325px;
    }
}
@-webkit-keyframes glitchCharactersShadow {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 130 + 1))px,9999px,resolve(floor(random() * 130))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(381px, 9999px, 3px, 0);
    }

    5% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(114px,9999px,510px, 0);
    }

    10% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(219px,9999px,44px, 0);
    }

    30% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(137px,9999px,40px, 0);
    }

    20% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(327px,9999px,443px, 0);
    }

    25% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(468px,9999px,45px, 0);
    }

    30% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(350px,9999px,180px, 0);
    }

    35% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(60px,9999px,294px, 0);
    }

    40% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(95px,9999px,372px, 0);
    }

    45% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(287px,9999px,379px, 0);
    }

    50% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(373px,9999px,28px, 0);
    }

    55% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(497px,9999px,251px, 0);
    }

    60% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(207px,9999px,245px, 0);
    }

    65% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(492px,9999px,333px, 0);
    }

    70% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(405px,9999px,286px, 0);
    }

    75% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(78px,9999px,198px, 0);
    }

    80% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(432px,9999px,184px, 0);
    }

    85% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(378px,9999px,145px, 0);
    }

    90% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(312px,9999px,400px, 0);
    }

    95% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(491px,9999px,221px, 0);
    }

    100% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(255px,9999px,332px, 0);
    }
}
@keyframes glitchCharactersShadow {/*$steps:20;
  @for $(i) from 0 through $(steps){
    #{percentage($(i)*(1/$(steps)))}{
      clip: rect(resolve(floor(random() * 130 + 1))px,9999px,resolve(floor(random() * 130))px,0);
    }
  }*/

    0% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(381px, 9999px, 3px, 0);
    }

    5% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(114px,9999px,510px, 0);
    }

    10% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(219px,9999px,44px, 0);
    }

    30% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(137px,9999px,40px, 0);
    }

    20% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(327px,9999px,443px, 0);
    }

    25% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(468px,9999px,45px, 0);
    }

    30% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(350px,9999px,180px, 0);
    }

    35% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(60px,9999px,294px, 0);
    }

    40% {
        -webkit-transform: translateY(4px);
                transform: translateY(4px);
        clip: rect(95px,9999px,372px, 0);
    }

    45% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(287px,9999px,379px, 0);
    }

    50% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(373px,9999px,28px, 0);
    }

    55% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(497px,9999px,251px, 0);
    }

    60% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(207px,9999px,245px, 0);
    }

    65% {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        clip: rect(492px,9999px,333px, 0);
    }

    70% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(405px,9999px,286px, 0);
    }

    75% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(78px,9999px,198px, 0);
    }

    80% {
        -webkit-transform: translateY(2px);
                transform: translateY(2px);
        clip: rect(432px,9999px,184px, 0);
    }

    85% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(378px,9999px,145px, 0);
    }

    90% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(312px,9999px,400px, 0);
    }

    95% {
        -webkit-transform: translateY(1px);
                transform: translateY(1px);
        clip: rect(491px,9999px,221px, 0);
    }

    100% {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
        clip: rect(255px,9999px,332px, 0);
    }
}
@font-face {
    font-family: 'icomoon';
    src: url('wd_icomoon_ncsa.eot?nkw42r');
    src: url('wd_icomoon_ncsa.eot?nkw42r#iefix') format('embedded-opentype'),
		url('wd_icomoon_ncsa.woff2?nkw42r') format('woff2'),
		url('wd_icomoon_ncsa.ttf?nkw42r') format('truetype'),
		url('wd_icomoon_ncsa.woff?nkw42r') format('woff'),
		url('wd_icomoon_ncsa.svg?nkw42r#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}
[class^="icon-"], [class*=" icon-"], .icon, .gameinfoOverview-controls .gameinfoOverview-controls-prev:before, .gameinfoOverview-controls .gameinfoOverview-controls-prev:after, .gameinfoOverview-controls .gameinfoOverview-controls-next:before, .gameinfoOverview-controls .gameinfoOverview-controls-next:after, .gameinfoMap .wd-Player .wd-Player-play, .gameinfoCharacters-controls span:before, .gameinfoCharacters-controls span:after, .characterWindow--media .media-item[data-type="video"] a:before, .mediaModal .mediaModal-close:after, .mediaModal .mediaModal-prev:after, .mediaModal .mediaModal-next:after, .mediaModal .mediaModal-prev:before, .mediaModal .mediaModal-next:before, .slideshow .forward:before, .slideshow .backward:before, .gameinfo .carousel .carousel_fullscreen_close:before, .gameinfo .carousel .carousel_container .player_controls .player-play:before, .gameinfo .carousel .carousel_container .player_controls .player-pause:before, .gameinfo .carousel .carousel_container .player_controls .player-sound:before, .gameinfo .carousel .carousel_container .player_controls .player-muted:before, .gameinfo .carousel .carousel_container .player_controls .player-fullscreen:before, .gameinfo .carousel .carousel_container .carousel_thumbnails a:after, .gameinfo .carouselMobile_controls .carouselMobile_prev:after, .gameinfo .carouselMobile_controls .carouselMobile_next:after, .gameinfo .carouselMobile_controls .carouselMobile_prev:before, .gameinfo .carouselMobile_controls .carouselMobile_next:before, .wd-Player-play:before {/* use !important to prevent issues with browser extensions that change ../fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;/* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-forums:before {
    content: "\e96c";
}
.icon-instagram:before {
    content: "\ea92";
}
.icon-tumblr:before {
    content: "\eaba";
}
.icon-reddit:before {
    content: "\eac6";
}
.icon-volume-mute:before, .gameinfo .carousel .carousel_container .player_controls .player-muted:before {
    content: "\e90f";
}
.icon-pause:before, .gameinfo .carousel .carousel_container .player_controls .player-pause:before {
    content: "\e90e";
}
.icon-volume-medium:before, .gameinfo .carousel .carousel_container .player_controls .player-sound:before {
    content: "\e90b";
}
.icon-play:before, .gameinfoMap .wd-Player .wd-Player-play:before, .gameinfo .carousel .carousel_container .player_controls .player-play:before, .wd-Player-play:before {
    content: "\e90c";
}
.icon-youtube:before {
    content: "\e900";
}
.icon-google-plus:before {
    content: "\e901";
}
.icon-facebook:before {
    content: "\e902";
}
.icon-twitter:before {
    content: "\e903";
}
.icon-fullscreen:before, .gameinfo .carousel .carousel_container .player_controls .player-fullscreen:before {
    content: "\e90d";
}
.icon-arrow-thin-left:before, .slideshow .backward:before {
    content: "\e909";
}
.icon-arrow-thin-right:before, .slideshow .forward:before {
    content: "\e90a";
}
.icon-button-x:before, .mediaModal .mediaModal-close:after, .gameinfo .carousel .carousel_fullscreen_close:before {
    content: "\e908";
}
.icon-arrow-down:before {
    content: "\e906";
}
.icon-arrow-up:before {
    content: "\e907";
}
.icon-arrow-left:before, .gameinfoOverview-controls .gameinfoOverview-controls-prev:before, .gameinfoOverview-controls .gameinfoOverview-controls-prev:after, .gameinfoCharacters-controls span[data-dir="prev"]:before, .gameinfoCharacters-controls span[data-dir="prev"]:after, .mediaModal .mediaModal-prev:after, .mediaModal .mediaModal-prev:before, .gameinfo .carousel .carousel_container .carousel_thumbnails a.left:after, .gameinfo .carouselMobile_controls .carouselMobile_prev:after, .gameinfo .carouselMobile_controls .carouselMobile_prev:before {
    content: "\e904";
}
.icon-arrow-right:before, .gameinfoOverview-controls .gameinfoOverview-controls-next:before, .gameinfoOverview-controls .gameinfoOverview-controls-next:after, .gameinfoCharacters-controls span[data-dir="next"]:before, .gameinfoCharacters-controls span[data-dir="next"]:after, .mediaModal .mediaModal-next:after, .mediaModal .mediaModal-next:before, .gameinfo .carousel .carousel_container .carousel_thumbnails a.right:after, .gameinfo .carouselMobile_controls .carouselMobile_next:after, .gameinfo .carouselMobile_controls .carouselMobile_next:before {
    content: "\e905";
}
.wd-globalHeader .nav-reserve:before, .wd-globalHeader .nav-hamburger span:before, .wd-globalHeader:after, .wd-globalHeader.is-open:before, .nav-menu .ui-triangle:before, .nav-menu .ui-triangle .triangle:before, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--top:before, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--top:after, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--bottom:before, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--bottom:after, html:not(.is-mobile) .nav-menu .nav-link:hover:before, html:not(.is-mobile) .nav-menu .nav-link:hover:after, .wd-GameInfoCallout:before, .wd-GameInfoCallout:after, .wd-GameInfoCallout-group:before, .wd-GameInfoCallout-group:after, html:not(.is-mobile) .wd-GameInfoCallout-march:after, .homePromos .container:before, .homePromos:before, .homePromos:after, .wd-newsItems-header:before, .wd-newsItems .wd-newsItem-teaser a:after, .page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a:before, .page-newsdetail .fyre .fyre-comment-article .fyre-moderator:before, .gameinfoOverview:before, .gameinfoOverview:after, .gameinfoOverview-header:before, .gameinfoCharacters-list .character:before, .gameinfoCharacters-list .character:after, .characterWindow:before, .characterWindow--media .media-item[data-type="video"] a:before, .characterWindow--media .media-item[data-type="video"] a:after, .wd-ReserveCallout .reserveCallout-info:before, .wd-ReserveCallout .reserveCallout-info:after, .wd-ReserveCallout .reserveCallout-header:before, .wd-ReserveCallout .reserveCallout-header:after, .wd-ReserveCallout .reserveCallout-body:before, .wd-ReserveCallout .reserveCallout-body:after, .wd-ReserveCallout:before, .wd-ReserveCallout:after, .regionReserve:before, .regionReserve-header span:before, .regionReserve-header span:after, .promoUbiworkshop-content:before, .wd-NewsIntro:before, .wd-NewsIntro:after, .wd-prompt-loader:before, .wd-prompt-loader:after, .wd-newsList .wd-newsItem-teaser a:after, .wd-newsList .wd-newsItem-comments:before, .wd-filter-list a:before, .wd-filter .newsfilter-labellist a:before, .wd-filterMobile:after, .news-detail blockquote:before, .news-detail blockquote:after, .news-detail:before, #main .newsItem-Container:before, #main .newsItem-Container:after, .wd-MediaIntro:before, .wd-MediaIntro:after, .wd-mediaModule-list li[data-type="youtube"] a:before, .wd-mediaModule-list li[data-type="youtube"] a:after, .wd-teeth-loader:before, .wd-teeth-loader:after, .page-404 #main:before, .mediaModal .mediaModal-position:before, .mediaModal .mediaModal-close:before, .age-cont .legal-msg:before, .age-cont .legal-msg:after, .age-cont .age-gate-form:before, .age-cont .age-gate-form:after, .wd-CultureList-item a:before, .ct-navigation .ct-navigationCurrent:after, .ct-navigation a:before, .ct-navigation--overview .ct-navigation--right:after, .ct-landingCallout .ct-landingCallout-content:before, .ct-landingSteps-step a:before, .ct-landingSteps-step:before, .ct-landingSteps-step:after, .ct-landingRewards:before, .ct-landingRewards:after, .ct-landingRewards-reward .ct-landingRewards-rewardContent:after, .ct-footer-navigation a:before, .activity-list li:before, .activity-list li:after, .activity-list .activity:before, .activity-list .activity:after, #activity-list li:before, #activity-list li:after, #activity-list .activity:before, #activity-list .activity:after, .wd-Preloader:before, .slideshow .forward:after, .slideshow .backward:after, .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:before, .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:after, .gameinfo .carousel_item:after, .gameinfo .carouselMobile_controls .carouselMobile_position:before {
    content: '';
    display: block;
}
.wd-globalHeader .nav-reserve:before, .wd-globalHeader .nav-hamburger span:before, .wd-globalHeader:after, .wd-globalHeader.is-open:before, .nav-menu .ui-triangle:before, .nav-menu .ui-triangle .triangle:before, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--top:before, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--top:after, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--bottom:before, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--bottom:after, html:not(.is-mobile) .nav-menu .nav-link:hover:before, html:not(.is-mobile) .nav-menu .nav-link:hover:after, .wd-GameInfoCallout:before, .wd-GameInfoCallout:after, .wd-GameInfoCallout-group:before, .wd-GameInfoCallout-group:after, html:not(.is-mobile) .wd-GameInfoCallout-march:after, .homePromos .container:before, .homePromos:before, .homePromos:after, .wd-newsItems-header:before, .wd-newsItems .wd-newsItem-teaser a:after, .page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a:before, .page-newsdetail .fyre .fyre-comment-article .fyre-moderator:before, .gameinfoOverview:before, .gameinfoOverview:after, .gameinfoCharacters-list .character:before, .gameinfoCharacters-list .character:after, .characterWindow:before, .characterWindow--media .media-item[data-type="video"] a:before, .characterWindow--media .media-item[data-type="video"] a:after, .wd-ReserveCallout .reserveCallout-info:before, .wd-ReserveCallout .reserveCallout-info:after, .wd-ReserveCallout .reserveCallout-header:before, .wd-ReserveCallout .reserveCallout-header:after, .wd-ReserveCallout .reserveCallout-body:before, .wd-ReserveCallout .reserveCallout-body:after, .wd-ReserveCallout:before, .wd-ReserveCallout:after, .regionReserve-header span:before, .regionReserve-header span:after, .promoUbiworkshop-content:before, .wd-NewsIntro:before, .wd-NewsIntro:after, .wd-prompt-loader:before, .wd-prompt-loader:after, .wd-newsList .wd-newsItem-teaser a:after, .wd-newsList .wd-newsItem-comments:before, .wd-filter-list a:before, .wd-filter .newsfilter-labellist a:before, .wd-filterMobile:after, .news-detail blockquote:before, .news-detail blockquote:after, .news-detail:before, #main .newsItem-Container:before, #main .newsItem-Container:after, .wd-MediaIntro:before, .wd-MediaIntro:after, .wd-mediaModule-list li[data-type="youtube"] a:before, .wd-mediaModule-list li[data-type="youtube"] a:after, .wd-teeth-loader:before, .wd-teeth-loader:after, .page-404 #main:before, .mediaModal .mediaModal-position:before, .mediaModal .mediaModal-close:before, .age-cont .legal-msg:before, .age-cont .legal-msg:after, .age-cont .age-gate-form:before, .age-cont .age-gate-form:after, .wd-CultureList-item a:before, .ct-navigation .ct-navigationCurrent:after, .ct-navigation a:before, .ct-navigation--overview .ct-navigation--right:after, .ct-landingCallout .ct-landingCallout-content:before, .ct-landingSteps-step a:before, .ct-landingSteps-step:before, .ct-landingSteps-step:after, .ct-landingRewards:before, .ct-landingRewards:after, .ct-landingRewards-reward .ct-landingRewards-rewardContent:after, .ct-footer-navigation a:before, .activity-list li:before, .activity-list li:after, .activity-list .activity:before, .activity-list .activity:after, #activity-list li:before, #activity-list li:after, #activity-list .activity:before, #activity-list .activity:after, .wd-Preloader:before, .slideshow .forward:after, .slideshow .backward:after, .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:before, .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:after, .gameinfo .carousel_item:after, .gameinfo .carouselMobile_controls .carouselMobile_position:before {
    position: absolute;
}
/* 
   Banner Hero Headers
   - As seen at the top of news and media pages
   ========================================================================== */
.wd-NewsIntro, .wd-MediaIntro {
    background-size: cover;
    border: 14px solid #fff;
    margin: 215px auto 0 auto;
    max-width: 90%;
    position: relative;
    text-align: center;
    width: 1156px;
    height: 425px;
}
.wd-NewsIntro .hero-title, .wd-NewsIntro .hero-description, .wd-MediaIntro .hero-title, .wd-MediaIntro .hero-description {
    background: #000;
    display: inline;
    text-transform: uppercase;
}
.wd-NewsIntro .hero-title, .wd-MediaIntro .hero-title {
    padding: 3px 20px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-NewsIntro .hero-description, .wd-MediaIntro .hero-description {
    color: #fff;
    padding: 10px 50px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
/* 
   Strike-through plain link hover
   ========================================================================== */
/* 
   Carousel Nav
   ========================================================================== */
.mediaModal .mediaModal-position, .gameinfo .carouselMobile_controls .carouselMobile_position {
    color: #fff;
    display: inline-block;
    margin: 0 10px;
    position: relative;
    top: 15px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
/*@mixin size 35px, 35px;*/
.mediaModal .mediaModal-position span, .gameinfo .carouselMobile_controls .carouselMobile_position span {
    display: block;
    position: absolute;
}
/*@mixin font-size 11, 0;*/
.mediaModal .mediaModal-position .top, .mediaModal .mediaModal-position .bottom, .gameinfo .carouselMobile_controls .carouselMobile_position .top, .gameinfo .carouselMobile_controls .carouselMobile_position .bottom {
    text-align: center;
    width: 50%;
}
.mediaModal .mediaModal-position .top, .gameinfo .carouselMobile_controls .carouselMobile_position .top {
    top: 0;
    left: 0;
}
.mediaModal .mediaModal-position .bottom, .gameinfo .carouselMobile_controls .carouselMobile_position .bottom {
    bottom: 0;
    right: 0;
}
.mediaModal .mediaModal-position:before, .gameinfo .carouselMobile_controls .carouselMobile_position:before {
    background: #fff;/*top: 15px;*/
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    width: 100%;
    height: 1px;
}
.mediaModal .mediaModal-prev, .mediaModal .mediaModal-next, .gameinfo .carouselMobile_controls .carouselMobile_prev, .gameinfo .carouselMobile_controls .carouselMobile_next {
    cursor: pointer;
    display: inline-block;
    position: relative;
    top: 10px;/*@mixin font-size 30, 20;*/
}
.mediaModal .mediaModal-prev:before, .mediaModal .mediaModal-next:before, .gameinfo .carouselMobile_controls .carouselMobile_prev:before, .gameinfo .carouselMobile_controls .carouselMobile_next:before {
    color: #12cffe;
    transition: 0.3s;
}
.mediaModal .mediaModal-prev:after, .mediaModal .mediaModal-next:after, .gameinfo .carouselMobile_controls .carouselMobile_prev:after, .gameinfo .carouselMobile_controls .carouselMobile_next:after {
    color: #fff;
    position: absolute;
    top: -1px;
    transition: clip 0.3s ease-in-out;
}
.mediaModal .mediaModal-prev, .gameinfo .carouselMobile_controls .carouselMobile_prev {}
.mediaModal .mediaModal-prev:after, .gameinfo .carouselMobile_controls .carouselMobile_prev:after {
    clip: rect(0, 0, 0, 0);
    left: 0;
}
.mediaModal .mediaModal-next, .gameinfo .carouselMobile_controls .carouselMobile_next {}
.mediaModal .mediaModal-next:after, .gameinfo .carouselMobile_controls .carouselMobile_next:after {
    right: 0;
}
/* Z-Index Scale (private vars)*/
/* --------------------------------------------------*/
/* Z-Index Applications ($zIndex-1--componentName: $zIndex-1;)*/
/* $zIndex-5--globalHeader: $zIndex-5;*/
/* --------------------------------------------------*/
/* 
   Utility Classes
   ========================================================================== */
/* Floats*/
/* --------------------------*/
.u-clear {
    clear: both;
}
.u-pullLeft {
    float: left;
}
.u-pullRight {
    float: right;
}
/* Clearfix*/
/* --------------------------*/
.u-clearfix:before, .u-clearfix:after, .homePromos .container:before, .homePromos .container:after, .wd-newsItems .wd-newsItem:before, .wd-newsItems .wd-newsItem:after, .wd-newsItems-list:before, .wd-newsItems-list:after, .page-newsdetail .fyre .fyre-auth:before, .page-newsdetail .fyre .fyre-auth:after, .page-newsdetail .fyre .fyre-editor:before, .page-newsdetail .fyre .fyre-editor:after, .page-newsdetail .fyre .fyre-stream-header:before, .page-newsdetail .fyre .fyre-stream-header:after, .page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer:before, .page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer:after, .gameinfoMap-wrap:before, .gameinfoMap-wrap:after, .gameinfoCharacters-bio:before, .gameinfoCharacters-bio:after, .regionReserve-platformsList:before, .regionReserve-platformsList:after, .regionReserve-order:before, .regionReserve-order:after, .promoUbiworkshop .container:before, .promoUbiworkshop .container:after, .wd-Culture-filter:before, .wd-Culture-filter:after, .wd-CultureFeatured:before, .wd-CultureList:before, .wd-CultureFeatured:after, .wd-CultureList:after, .wd-Culture-modalWrap .wd-Culture-modalContent:before, .wd-Culture-modalWrap .wd-Culture-modalContent:after, .ct-navigation:before, .ct-navigation:after, .ct-navigation ul:before, .ct-navigation ul:after, .wd-Keypad-input:before, .wd-Keypad-input:after, .wd-Modal:before, .wd-Modal:after {
    content: "";
    display: block;
    overflow: hidden;
}
.u-clearfix:after, .homePromos .container:after, .wd-newsItems .wd-newsItem:after, .wd-newsItems-list:after, .page-newsdetail .fyre .fyre-auth:after, .page-newsdetail .fyre .fyre-editor:after, .page-newsdetail .fyre .fyre-stream-header:after, .page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer:after, .gameinfoMap-wrap:after, .gameinfoCharacters-bio:after, .regionReserve-platformsList:after, .regionReserve-order:after, .promoUbiworkshop .container:after, .wd-Culture-filter:after, .wd-CultureFeatured:after, .wd-CultureList:after, .wd-Culture-modalWrap .wd-Culture-modalContent:after, .ct-navigation:after, .ct-navigation ul:after, .wd-Keypad-input:after, .wd-Modal:after {
    clear: both;
}
.u-clearfix, .homePromos .container, .wd-newsItems .wd-newsItem, .wd-newsItems-list, .page-newsdetail .fyre .fyre-auth, .page-newsdetail .fyre .fyre-editor, .page-newsdetail .fyre .fyre-stream-header, .page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer, .gameinfoMap-wrap, .gameinfoCharacters-bio, .regionReserve-platformsList, .regionReserve-order, .promoUbiworkshop .container, .wd-Culture-filter, .wd-CultureFeatured, .wd-CultureList, .wd-Culture-modalWrap .wd-Culture-modalContent, .ct-navigation, .ct-navigation ul, .wd-Keypad-input, .wd-Modal {
    zoom: 1;
}
/* Visually Hidden*/
/* ---------------------------*/
.u-visuallyhidden, .globalFooter-socialNav a i, .social-list em[class^="icon-"] span, .gameinfoOverview-controls .gameinfoOverview-controls-prev i, .gameinfoOverview-controls .gameinfoOverview-controls-next i, .gameinfoCharacters-controls span i, .newsarticle-shares a span {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* Base */

.slideshow .backward, .slideshow .forward {
    margin: 0;
    background-color: transparent;
    clear: inherit;
    display: inline-block;
    float: none;
}
.dk-select, .dk-select *, .dk-select *:before, .dk-select *:after, .dk-select-multi, .dk-select-multi *, .dk-select-multi *:before, .dk-select-multi *:after {
    box-sizing: border-box;
}
.dk-select, .dk-select-multi {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    line-height: 1.5em;
    cursor: pointer;
    width: 100%;
}
.dk-selected {
    background-color: #12cffe;
    color: #000;
    line-height: 45px;
    padding: 0 20px;
    position: relative;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-align: left;
    text-transform: uppercase;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.dk-selected:before {
    border: solid transparent;
    border-width: 10px 5px 0;
    border-top-color: #000;
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    margin: 0 20px 0 0;
}
.dk-selected-disabled {
    color: #BBBBBB;
}
.dk-select .dk-select-options {
    position: absolute;
    display: none;
    left: 0;
    right: 0;
}
.dk-select-open-up .dk-select-options {
    margin-bottom: -1px;
    bottom: 100%;
}
.dk-select-open-down .dk-select-options {
    margin-top: -1px;
    top: 100%;
}
.dk-select-multi .dk-select-options {
    max-height: 10em;
}
.dk-select-options {
    background-color: #12cffe;
    border-top: 1px solid #000;
    list-style: none;
    margin: 0;
    max-height: 10.5em;
    min-width: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0.25em 0;
    width: auto;
    z-index: 100;
}
.dk-select-options-highlight .dk-option-selected {
    background-color: transparent;
    color: inherit;
}
.dk-option {
    color: #000;
    line-height: 35px;
    padding: 0 20px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.dk-option.dk-option-selected {
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
}
.dk-select-options .dk-option-highlight {
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff;
}
.dk-select-options .dk-option-disabled {
    color: #1C9FBF;
    background-color: transparent;
}
.dk-optgroup {
    border: solid #CCCCCC;
    border-width: 1px 0;
    padding: 0.25em 0;
    margin-top: 0.25em;
}
.dk-optgroup + .dk-option {
    margin-top: 0.25em;
}
.dk-optgroup + .dk-optgroup {
    border-top-width: 0;
    margin-top: 0;
}
.dk-optgroup:nth-child(2) {
    padding-top: 0;
    border-top: none;
    margin-top: 0;
}
.dk-optgroup:last-child {
    border-bottom-width: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}
.dk-optgroup-label {
    padding: 0 0.5em 0.25em;
    font-weight: bold;
    width: 100%;
}
.dk-optgroup-options {
    list-style: none;
    padding-left: 0;
}
.dk-optgroup-options li {
    padding-left: 1.2em;
}
.dk-select-open-up .dk-selected {}
.dk-select-open-down .dk-selected {}
.dk-select-open-up .dk-selected:before, .dk-select-open-down .dk-selected:before {
    border-width: 0 5px 10px;
    border-bottom-color: #000;
}
.dk-select-open-up .dk-selected:after, .dk-select-open-down .dk-selected:after {
    border-left-color: #3297fd;
}
.dk-select-open-up .dk-select-options, .dk-select-open-down .dk-select-options, .dk-select-multi:focus .dk-select-options {
    display: block;
    border-color: #3297fd;
}
html:not(.is-mobile) .dk-select-multi:hover, .dk-select-multi:focus {
    outline: none;
}
html:not(.is-mobile) .dk-selected:hover, .dk-selected:focus {
    outline: none;
}
.dk-select-disabled {
    opacity: 0.6;
    color: #BBBBBB;
    cursor: not-allowed;
}
.dk-select-disabled html:not(.is-mobile) .dk-selected:hover, .dk-select-disabled .dk-selected:focus {
    border-color: inherit;
}
.dk-select-disabled html:not(.is-mobile) .dk-selected:hover:before, .dk-select-disabled .dk-selected:focus:before {
    border-top-color: inherit;
}
.dk-select-disabled html:not(.is-mobile) .dk-selected:hover:after, .dk-select-disabled .dk-selected:focus:after {
    border-left-color: inherit;
}
select[data-dkcacheid] {
    display: none;
}
/* perfect-scrollbar v0.6.11 */
.ps-container {
    -ms-touch-action: none;
    touch-action: none;
    overflow: hidden !important;
    -ms-overflow-style: none;
}
@supports (-ms-overflow-style: none) {

    .ps-container {
        overflow: auto !important;
    }
}
.ps-container.ps-active-x > .ps-scrollbar-x-rail, .ps-container.ps-active-y > .ps-scrollbar-y-rail {
    display: block;
    background-color: transparent;
}
.ps-container.ps-in-scrolling {
    pointer-events: none;
}
.ps-container.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail {}
.ps-container.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x {
    background-color: #12cffe;
}
.ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail {}
.ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y {
    background-color: #12cffe;
}
.ps-container > .ps-scrollbar-x-rail {
    display: none;
    position: absolute;
    bottom: 3px;/* there must be 'bottom' for ps-scrollbar-x-rail */
    height: 8px;
}
.ps-container > .ps-scrollbar-x-rail > .ps-scrollbar-x {
    position: absolute;
    background-color: #12cffe;
    bottom: 0;/* there must be 'bottom' for ps-scrollbar-x */
    height: 8px;
}
.ps-container > .ps-scrollbar-y-rail {
    display: none;
    position: absolute;
    right: 0;/* there must be 'right' for ps-scrollbar-y-rail */
    width: 5px;
}
.ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y {
    position: absolute;
    background-color: #12cffe;
    right: 0;/* there must be 'right' for ps-scrollbar-y */
    width: 5px;
}
.ps-container:hover.ps-in-scrolling {
    pointer-events: none;
}
.ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail {}
.ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x {
    background-color: #12cffe;
}
.ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail {}
.ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y {
    background-color: #12cffe;
}
.ps-container:hover > .ps-scrollbar-x-rail, .ps-container:hover > .ps-scrollbar-y-rail {}
.ps-container:hover > .ps-scrollbar-x-rail:hover {}
.ps-container:hover > .ps-scrollbar-x-rail:hover > .ps-scrollbar-x {
    background-color: #12cffe;
}
.ps-container:hover > .ps-scrollbar-y-rail:hover {}
.ps-container:hover > .ps-scrollbar-y-rail:hover > .ps-scrollbar-y {
    background-color: #12cffe;
}

/* Modules */

/* 
   Global Header
   - As seen on the top of every page
   ========================================================================== */

/**
 * TODO
 *
 * => Convert px to rem
 */

.wd-globalHeader {
    left: 0;
    position: fixed;/* So that content can sit under it;*/
    text-align: center;
    top: 45px;/* Height of desktop ubibar*/
    transition: top 0.7s ease-in-out;
    z-index: 200;
    width: 100%;
    height: 220px;/* Default to mobile nav*/
}

/*pointer-events: none;*/

.wd-globalHeader .wd-globalHeader--center {
    *zoom: 1;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.wd-globalHeader .wd-globalHeader--center:before {
    content: '';
    display: table;
}

.wd-globalHeader .wd-globalHeader--center:after {
    content: '';
    display: table;
    clear: both;
}

.wd-globalHeader .icon-wdLogo, .wd-globalHeader .nav-hamburger-container, .wd-globalHeader .nav-reserve {
    transition: margin 0.7s;
}

.wd-globalHeader .nav-logo {
    display: inline-block;
    width: calc(99.99% * 3/12 - (30px - 30px * 3/12));
    margin-top: 75px;
    position: relative;
    text-align: left;
}

.wd-globalHeader .nav-logo:nth-child(1n) {
    float: left;
    margin-right: 30px;
    clear: none;
}

.wd-globalHeader .nav-logo:last-child {
    margin-right: 0;
}

.wd-globalHeader .nav-logo:nth-child(12n) {
    margin-right: 0;
    float: right;
}

.wd-globalHeader .nav-logo:nth-child(12n + 1) {
    clear: left;
}

.wd-globalHeader .nav-logo .icon-wdLogo {
    display: inline-block;
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -77px -170px;
    width: 75px;
    height: 89px;
}

.wd-globalHeader .nav-logo .icon-wdLogo--dark {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: 0px -170px;
    width: 75px;
    height: 89px;
}

.wd-globalHeader .nav-logo .icon-wdLogo--white {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -77px -170px;
    width: 75px;
    height: 89px;
}

.wd-globalHeader .nav-logo .icon-logoText {
    -webkit-animation-delay: 1.2s;
            animation-delay: 1.2s;
    -webkit-animation: glitchAnim-text 1.2s linear;
            animation: glitchAnim-text 1.2s linear;
    display: inline-block;
    left: 100px;
    position: absolute;
    top: 27px;
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -312px -32px;
    width: 204px;
    height: 30px;
}

/* "Reserve Now" link*/

.wd-globalHeader .nav-reserve {
    background: #000;
    display: inline-block;
    float: right;
    margin-top: 102px;
    padding: 10px 12px;
    position: relative;
}

.wd-globalHeader .nav-reserve * {
    position: relative;
    z-index: 100;
}

.wd-globalHeader .nav-reserve h2, .wd-globalHeader .nav-reserve h3 {
    display: inline-block;
    margin: 0;
    font-size: 0.75rem;
    line-height: 18px;
    letter-spacing: 0.1em;
}

.wd-globalHeader .nav-reserve h2 {
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}

.wd-globalHeader .nav-reserve h3 {
    color: #999999;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}

.wd-globalHeader .nav-reserve .highlight-blue {
    color: #12cffe;
}

.wd-globalHeader .nav-reserve .highlight-white {
    color: #fff;
}

html:not(.is-mobile) .wd-globalHeader .nav-reserve {}

html:not(.is-mobile) .wd-globalHeader .nav-reserve:hover .highlight-white {
    color: #000;
}

html:not(.is-mobile) .wd-globalHeader .nav-reserve:hover:before {
    background: #fff;
    width: 100%;
    height: 100%;
}

.wd-globalHeader .nav-reserve:before {
    transition: 0.3s;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
}

.wd-globalHeader .nav-hamburger-container {/*@extend .icon-hamburger;*/
    color: #12cffe;
    float: right;
    margin-top: 108px;
    padding-left: 35px;
    font-size: 1.625rem;
    line-height: 26px;
    letter-spacing: 0em;
}

.wd-globalHeader .nav-hamburger-container h1 {
    color: #000;
    display: none;
    position: absolute;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 600;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.75rem;
    line-height: 18px;
    letter-spacing: 0em;
}

.wd-globalHeader .nav-hamburger-container .is-desktop {
    display: none;
}

.wd-globalHeader .nav-hamburger-container:before {/*@extend .icon;*/
}

.wd-globalHeader .nav-hamburger {
    position: relative;
    -webkit-transform: rotate(0deg) translate3d(0, 0, 0);
            transform: rotate(0deg) translate3d(0, 0, 0);
    transition: 0.5s ease-in-out;
    width: 40px;
    height: 40px;
}

.wd-globalHeader .nav-hamburger span {
    background: #12cffe;
    display: block;
    left: 0;
    opacity: 1;
    margin: 0;
    position: absolute;
    -webkit-transform: rotate(0deg) translate3d(0, 0, 0);
            transform: rotate(0deg) translate3d(0, 0, 0);
    transition: 0.25s ease-in-out;
    width: 100%;
    height: 5px;
}

.wd-globalHeader .nav-hamburger span:nth-child(1) {
    top: 0px;
}

.wd-globalHeader .nav-hamburger span:nth-child(2), .wd-globalHeader .nav-hamburger span:nth-child(3) {
    top: 11px;
}

.wd-globalHeader .nav-hamburger span:nth-child(4) {
    top: 22px;
}

.wd-globalHeader .nav-hamburger span:nth-child(1):before {
    transition: 0.2s ease-in-out;
}

.wd-globalHeader .nav-hamburger span:nth-child(2):before, .wd-globalHeader .nav-hamburger span:nth-child(3):before {
    transition: 0.3s ease-in-out 0.1s;
}

.wd-globalHeader .nav-hamburger span:nth-child(4):before {
    transition: 0.3s ease-in-out 0.2s;
}

.wd-globalHeader .nav-hamburger span:before {
    background: #fff;
    width: 0;
    height: 100%;
}

html:not(.is-mobile) .wd-globalHeader .nav-hamburger {}

html:not(.is-mobile) .wd-globalHeader .nav-hamburger:hover span {
    margin: 0 -4px;/* inital margin - ((intial margin - width (or height))/2) */
    width: 48px;
}

html:not(.is-mobile) .wd-globalHeader .nav-hamburger:hover span:before {
    width: 100%;
    height: 100%;
}

.wd-globalHeader:after {
    background: transparent;
    opacity: 0;
    transition: background 0.7s;
}

.wd-globalHeader.hasTransitioned {
    height: 110px;
}

/*top: 5px;*/

.wd-globalHeader.hasTransitioned .icon-wdLogo {
    top: 18px;
    transition: top 0.7s;
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -427px -64px;
    width: 47px;
    height: 55px;
}

.wd-globalHeader.hasTransitioned .icon-wdLogo, .wd-globalHeader.hasTransitioned .nav-hamburger-container, .wd-globalHeader.hasTransitioned .nav-reserve {
    position: relative;
    z-index: 300;
}

.wd-globalHeader.hasTransitioned .nav-logo .icon-logoText {
    top: 32px;
    transition: top 0.7s;
    z-index: 300;
}

.wd-globalHeader.hasTransitioned .nav-reserve {
    margin-top: 65px;
}

.wd-globalHeader.hasTransitioned .nav-hamburger-container {
    margin-top: 71px;
}

.wd-globalHeader.hasTransitioned .nav-logo {
    margin-top: 38px;
    transition: margin-top 0.7s;
}

.wd-globalHeader.hasTransitioned.is-open {
    height: 220px;/* Dont' interfere with the height of the open nav*/
}

.wd-globalHeader.nav-down {
    height: 110px;
    top: -7px;
    opacity: 1;
    z-index: 600;/* Hide black bar when nav is opened*/
}

.wd-globalHeader.nav-down .icon-wdLogo {
    top: 18px;
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -427px -64px;
    width: 47px;
    height: 55px;
}

.wd-globalHeader.nav-down .icon-logoText {
    left: 65px;
}

.wd-globalHeader.nav-down:after {
    background: #000;
    bottom: -3px;
    left: 0;
    opacity: 1;
    width: 100%;
    height: 61px;
}

.wd-globalHeader.nav-down.is-open {}

.wd-globalHeader.nav-down.is-open:after {
    z-index: -100;
}

.wd-globalHeader.nav-up {
    -webkit-animation: navHide .7s linear;
            animation: navHide .7s linear;
    opacity: 0;
    pointer-events: none;
    top: 20px;
}

.wd-globalHeader.hasTransitioned.nav-up {/*animation: navHideTransition .7s linear;*/
    -webkit-animation: none;
            animation: none;
    opacity: 0;
    pointer-events: none;
    top: -80px;
    transition: all 0.7s;
}

.wd-globalHeader.is-open {
    position: fixed;
}

.wd-globalHeader.is-open .nav-logo {
    margin-top: 75px;
    margin-right: 75px;
    width: auto;
}

.wd-globalHeader.is-open .nav-logo .icon-wdLogo {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: 0px -170px;
    width: 75px;
    height: 89px;
}

.wd-globalHeader.is-open .nav-logo .icon-logoText {
    display: none;
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -312px 0px;
    width: 204px;
    height: 30px;
}

.wd-globalHeader.is-open .nav-reserve {
    display: none;
}

.wd-globalHeader.is-open .nav-hamburger-container h1 {
    -webkit-animation: glitchAnim-text 1s linear;
            animation: glitchAnim-text 1s linear;
    color: #000;
    left: -17px;
    right: auto;
    transition: right 0.3s ease-in-out;
}

.wd-globalHeader.is-open .nav-hamburger-container .is-desktop {
    display: block;
    left: auto;
    position: absolute;
    right: 0;
}

.wd-globalHeader.is-open .nav-hamburger-container h1 {
    -webkit-animation: glitchAnim-text 1s linear;
            animation: glitchAnim-text 1s linear;
    color: #000;
    left: -17px;
    right: auto;
    transition: right 0.3s ease-in-out;
}

.wd-globalHeader.is-open .nav-hamburger span {
    background: #000;
}

.wd-globalHeader.is-open .nav-hamburger span:nth-child(1) {
    top: 11px;
    width: 0%;
    left: 50%;
}

.wd-globalHeader.is-open .nav-hamburger span:nth-child(2) {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
}

.wd-globalHeader.is-open .nav-hamburger span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
}

.wd-globalHeader.is-open .nav-hamburger span:nth-child(4) {
    top: 11px;
    width: 0%;
    left: 50%;
}

html:not(.is-mobile) .wd-globalHeader.is-open {}

html:not(.is-mobile) .wd-globalHeader.is-open:hover .nav-hamburger span:first-child, html:not(.is-mobile) .wd-globalHeader.is-open:hover .nav-hamburger span:last-child {
    display: none;
}

.wd-globalHeader.is-open:before {
    background: url('wd_bg-nav-tile_ncsa.jpg') repeat-x;
    height: 220px;
    left: 0;
    width: calc(99.99% * 12/12 - (30px - 30px * 12/12));
    top: 0;
    -webkit-transform: translatez(0);
        -ms-transform: translatez(0);
            transform: translatez(0);
}

.wd-globalHeader.is-open:before:nth-child(1n) {
    float: left;
    margin-right: 30px;
    clear: none;
}

.wd-globalHeader.is-open:before:last-child {
    margin-right: 0;
}

.wd-globalHeader.is-open:before:nth-child(12n) {
    margin-right: 0;
    float: right;
}

.wd-globalHeader.is-open:before:nth-child(12n + 1) {
    clear: left;
}

.wd-globalHeader.is-open.is-open.nav-up, .wd-globalHeader.is-open.is-open.nav-down {
    -webkit-animation: none;
            animation: none;
    opacity: 1;
    pointer-events: auto;
    top: 45px;
    z-index: 1000;
}

.wd-globalHeader.is-open.hasTransitioned .nav-hamburger-container {
    margin-top: 108px;
}

.wd-globalHeader.is-open.hasTransitioned .icon-wdLogo {
    top: auto;
}

.nav-menu {
    counter-reset: decoration-counter;
    display: none;
    text-align: left;
    list-style: none outside;
    margin: 0;
    padding: 0;/* Default to mobile nav*/
}

/* Fancy nav open animation will go here*/

.is-open .nav-menu {
    display: block;
}

.nav-menu li {
    display: inline-block;
    margin-top: 27px;
    position: relative;
}

.nav-menu li .ui-decoration:before {
    content: counter(decoration-counter, decimal-leading-zero);
    counter-increment: decoration-counter;
}

.nav-menu .ui-decoration, .nav-menu .nav-title, .nav-menu .ui-triangle, .nav-menu .nav-title--hover {
    position: absolute;
}

.nav-menu .ui-decoration {
    right: 15px;
    top: -14px;
}

.nav-menu .ui-decoration:before {
    display: block;
    color: #000;
    position: absolute;
    z-index: 100;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 0.6875rem;
    line-height: 11px;
    letter-spacing: 0em;
}

.nav-menu .nav-title, .nav-menu .nav-title--hover {
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}

.nav-menu .nav-title {
    border-bottom: 4px solid #000;
    color: #000;
    left: 12px;
    top: 95px;
    font-size: 0.875rem;
    line-height: 18px;
    letter-spacing: 0em;
}

/* Black bar that shows on hover*/

.nav-menu .nav-title--hover {
    background: #000;
    color: #fff;
    left: 0;
    margin: 0;
    opacity: 0;
    padding: 10px 0 8px 14px;
    top: 47px;
    z-index: 100;
    -webkit-transform: scale(0) translate3d(0, 0, 0);
            transform: scale(0) translate3d(0, 0, 0);
    width: 110%;
    height: auto;
    font-size: 1.125rem;
    line-height: 18px;
    letter-spacing: 0em;
}

.nav-menu .nav-title--hover span {
    left: 14px;
    top: 10px;
    position: absolute;
    visibility: hidden;
}

/* Triangle Deocrations*/

.nav-menu .ui-triangle .triangle {
    display: inline-block;
    width: 5px;
    height: 5px;
}

.nav-menu .ui-triangle--top {
    left: 8px;
    top: 8px;
}

/* Needs to be a child element so that we can use the parent for the "Glitch Effect"*/

.nav-menu .ui-triangle--top .triangle:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 5px 0 0;
    border-color: #000 transparent transparent transparent;
}

.nav-menu .ui-triangle--bottom {
    bottom: 12px;
    right: 12px;
}

.nav-menu .ui-triangle--bottom .triangle:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 5px 5px;
    border-color: transparent transparent #000 transparent;
}

.nav-menu .nav-link {
    border: 1px solid #000;
    display: block;
    margin: 20px 10px 0 10px;/* Conver to rem*/
    position: relative;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    width: 130px;
    height: 130px;
}

.nav-menu .nav-link.is-open .nav-title--hover {
    opacity: 1;
    -webkit-transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
            transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
    width: 110%;
    height: 21px;
}

.nav-menu .nav-link.is-open .nav-title--hover span {
    visibility: visible;
}

/* "Glitch" Animations GO!*/

/* Prevent larger iOS devices from triggering :hover on first tap*/

/* UI Decoraiton Number */

html:not(.is-mobile) .nav-menu .nav-link:hover .ui-decoration:after {
    -webkit-animation: glitchAnim-text--small 2s infinite linear alternate-reverse;
            animation: glitchAnim-text--small 2s infinite linear alternate-reverse;
    color: transparent;
    left: 3px;
    top: 1px;
    text-shadow: -1px 0 #ff0000;
}

/* Box Glitch*/

html:not(.is-mobile) .nav-menu .nav-link:hover .ui-decoration span {
    -webkit-animation: glitchNav-flicker 1.2s infinite linear alternate-reverse;
            animation: glitchNav-flicker 1.2s infinite linear alternate-reverse;
    background: rgba(255, 0, 0, 0.3);
    left: 1px;
    top: 9px;
    position: absolute;
    width: 12px;
    height: 12px;
}

/* Small Nav Title Glitch*/

html:not(.is-mobile) .nav-menu .nav-link:hover .ui-decoration:after, html:not(.is-mobile) .nav-menu .nav-link:hover .nav-title:before, html:not(.is-mobile) .nav-menu .nav-link:hover .nav-title:after {
    clip: rect(0,900px,0,0);
    content: attr(data-text);
    overflow: hidden;
    position: absolute;
}

html:not(.is-mobile) .nav-menu .nav-link:hover .nav-title:before {
    -webkit-animation: glitchAnim-text 2s infinite linear alternate-reverse;
            animation: glitchAnim-text 2s infinite linear alternate-reverse;
    border-bottom: 4px solid #ff0000;
    color: transparent;
    left: -6px;
    padding: 10px 5px 0px 5px;
    top: 10px;
    text-shadow: -1px 0 #ff0000;
}

html:not(.is-mobile) .nav-menu .nav-link:hover .nav-title:after {
    -webkit-animation: glitchAnim-text--2 1.4s infinite linear alternate-reverse;
            animation: glitchAnim-text--2 1.4s infinite linear alternate-reverse;
    border-bottom: 4px solid #fff;
    color: transparent;
    left: -10px;
    top: 0px;
    text-shadow: -1px 0 #fff;
}

html:not(.is-mobile) .nav-menu .nav-link:hover .nav-title span {
    -webkit-animation: glitchNav-flicker 1.2s infinite linear alternate-reverse;
            animation: glitchNav-flicker 1.2s infinite linear alternate-reverse;
    background: rgba(255, 0, 0, 0.3);
    left: 1px;
    top: 9px;
    position: absolute;
    width: 87%;
    height: 30px;
}

/* Triangle Animations*/

html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--top:before, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--top:after, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--bottom:before, html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--bottom:after {
    clip: rect(0,5px,0,0);
    overflow: hidden;
}

html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--top:before {
    -webkit-animation: glitchAnim-triangle .8s infinite linear alternate-reverse;
            animation: glitchAnim-triangle .8s infinite linear alternate-reverse;
    left: -3px;
    top: -4px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 5px 0 0;
    border-color: #fff transparent transparent transparent;
}

html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--top:after {
    -webkit-animation: glitchAnim-triangle--top 1s infinite linear alternate-reverse;
            animation: glitchAnim-triangle--top 1s infinite linear alternate-reverse;
    left: 2px;
    top: 4px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 5px 0 0;
    border-color: #ff0000 transparent transparent transparent;
}

/* Bottom Triangle Animations*/

html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--bottom:before {
    -webkit-animation: glitchAnim-triangle .8s infinite linear alternate-reverse;
            animation: glitchAnim-triangle .8s infinite linear alternate-reverse;
    left: 5px;
    top: 4px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 5px 5px;
    border-color: transparent transparent #fff transparent;
}

html:not(.is-mobile) .nav-menu .nav-link:hover .ui-triangle--bottom:after {
    -webkit-animation: glitchAnim-triangle--bottom 1s infinite linear alternate-reverse;
            animation: glitchAnim-triangle--bottom 1s infinite linear alternate-reverse;
    left: -3px;
    top: -10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 5px 5px;
    border-color: transparent transparent #ff0000 transparent;
}

/* Hover Title Animation*/

html:not(.is-mobile) .nav-menu .nav-link:hover .nav-title--hover {
    -webkit-animation: glitchNavTitle 0.8s ease-out;
            animation: glitchNavTitle 0.8s ease-out;
    opacity: 1;
    -webkit-transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
            transform: scale(1) translateX(-40px) translate3d(0, 0, 0);
    width: 110%;
    height: 21px;
}

html:not(.is-mobile) .nav-menu .nav-link:hover .nav-title--hover span {
    -webkit-animation: glitchNavTitle-text .6s ease-out;
            animation: glitchNavTitle-text .6s ease-out;
    -webkit-animation-delay: 0.1s;
            animation-delay: 0.1s;
    visibility: visible;
}

html:not(.is-mobile) .nav-menu .nav-link:hover:before, html:not(.is-mobile) .nav-menu .nav-link:hover:after {
    width: 130px;
    height: 130px;
}

html:not(.is-mobile) .nav-menu .nav-link:hover:before {
    -webkit-animation: glitchAnim-box .8s infinite linear alternate-reverse;
            animation: glitchAnim-box .8s infinite linear alternate-reverse;
    border: 1px solid #fff;
    top: 15px;
    left: -10px;
}

html:not(.is-mobile) .nav-menu .nav-link:hover:after {
    -webkit-animation: glitchAnim-box--2 1.4s infinite linear alternate-reverse;
            animation: glitchAnim-box--2 1.4s infinite linear alternate-reverse;
    border: 1px solid #ff0000;
    top: -2px;
    left: -3px;
}

.nav-menu:after {
    content: "";
    display: table;
    clear: both;
}

.nav-menu.is-open {
    height: 220px;/*lost-column: 3;*/
}
/* 
   Global Footer
   ========================================================================== */
.wd-globalFooter {
    background: #000;
    color: #b0b0b0;
    width: calc(99.99% * 12/12 - (30px - 30px * 12/12));
    padding: 40px 0 100px;
    position: relative;
    text-align: center;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-globalFooter:nth-child(1n) {/*-webkit-backface-visibility: hidden;*//*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    float: left;
    margin-right: 30px;
    clear: none;
}
.wd-globalFooter:last-child {/*-webkit-backface-visibility: hidden;*//*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    margin-right: 0;
}
.wd-globalFooter:nth-child(12n) {/*-webkit-backface-visibility: hidden;*//*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    margin-right: 0;
    float: right;
}
.wd-globalFooter:nth-child(12n + 1) {/*-webkit-backface-visibility: hidden;*//*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    clear: left;
}
.wd-globalFooter .localeSelector {
    margin-bottom: 50px;
}
.wd-globalFooter .anchor-top {
    margin-bottom: 100px;
}
.wd-globalFooter div.footer {
    display: inline-block;
    max-width: 1260px;
    padding: 0;
    left: auto;
    width: auto;
}
.wd-globalFooter div.footer p.legal {
    color: inherit;
    *zoom: 1;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 40px 0;
    text-align: center;
    font-size: 0.75rem;
    line-height: 22.5px;
    letter-spacing: 0.08em;
}
.wd-globalFooter div.footer p.legal:before {
    content: '';
    display: table;
}
.wd-globalFooter div.footer p.legal:after {
    content: '';
    display: table;
    clear: both;
}
.wd-globalFooter .list-footer-links {
    text-align: center;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    list-style: none outside;
    margin: 0;
    padding: 0;
}
.wd-globalFooter .list-footer-links li {
    display: inline-block;
    margin: 0 10px;
}
.wd-globalFooter .list-footer-links a {
    color: inherit;
    text-decoration: underline;
}
.wd-globalFooter .list-footer-links:after {
    content: "";
    display: table;
    clear: both;
}
.footer-items {
    display: inline-block;
    max-width: 1020px;
}
html:not(.is-mobile) .footer-items:hover .footer-item {
    opacity: 0.5;
}
html:not(.is-mobile) .footer-items:hover .footer-item:hover {
    opacity: 1;
}
.footer-items .footer-item {
    display: inline-block;
    margin: 0 15px;
    transition: opacity 0.2s ease-in-out;
    vertical-align: middle;
    width: auto;
    height: auto;
}
.footer-items a {
    display: inline-block;
    outline: none;
}
.footer-items .partnersRatingBox {
    display: block;
    position: relative;
    top: 40px;
}
.footer-items .logo-ubisoft {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -124px 0px;
    width: 186px;
    height: 56px;
}
.footer-items .logo-uplay {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -124px -58px;
    width: 145px;
    height: 59px;
}
.footer-items .logo-ps4 {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: 0px -261px;
    width: 177px;
    height: 36px;
}
.footer-items .logo-xboxone {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: 0px -124px;
    width: 220px;
    height: 44px;
}
.footer-items .logo-pc {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -312px -130px;
    width: 51px;
    height: 77px;
}
.globalFooter-socialNav {
    margin: 0 auto 50px;
    text-align: center;
    font-size: 1.625rem;
    letter-spacing: 0em;
}
.globalFooter-socialNav li {
    display: inline-block;
    margin: 0 30px;
}
.globalFooter-socialNav a {
    color: #fff;
    text-decoration: none;
}
body.agegate-passed .footer-items a:hover {
    cursor: pointer;
}
/* 
   Language Selector
   - As seen in footer
   ========================================================================== */
/**
 * TODO
 *
 * => Finish converting this from sigma
 */
.language-selector {
    box-sizing: border-box;
    margin: 20px auto;
    position: relative;
    width: 90%;
    z-index: 500;
    zoom: 1;
}
/* Current/Toggle*/
.language-selector .language-current {
    text-align: center;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.9375rem;
    line-height: 15px;
    letter-spacing: 0em;
}
.language-selector .language-current .language-toggle {
    background: #000;
    color: rgba(255, 255, 255, 0.75);
    display: inline-block;
    padding: 5px 10px;
}
.language-selector .language-current .language-toggle:after {
    color: rgba(255, 255, 255, 0.75);
    content: "\e907";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-size: 6px;
    margin-left: 5px;
    position: relative;
    top: -2px;
    vertical-align: middle;
}
.language-selector .language-regions {
    background: #000;
    display: none;
    padding: 20px 10px;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    text-align: left;
}
.language-selector .language-region {
    box-sizing: border-box;
    float: left;
    padding: 0 10px;
    width: 25%;
}
.language-selector .language-region strong {
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    color: rgba(255, 255, 255, 0.75);
    display: block;
    padding: 0 5px 5px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.8125rem;
    line-height: 13px;
    letter-spacing: 0em;
}
.language-selector .language-list {
    margin: 10px 0;
    font-size: 0.75rem;
    line-height: 12px;
    letter-spacing: 0em;
    list-style: none outside;
    margin: 0;
    padding: 0;
}
.language-selector .language-list .flag {
    margin-right: 5px;
}
.language-selector .language-list li {
    margin: 2px 0 3px;
}
.language-selector .language-list li.active a {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}
.language-selector .language-list a {
    color: rgba(255, 255, 255, 0.55);
    display: block;
    padding: 3px 5px;
    transition: all 0.2s ease-in-out;
}
html:not(.is-mobile) .language-selector .language-list a:hover {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}
.language-selector .language-list:after {
    content: "";
    display: table;
    clear: both;
}
.language-selector:before, .language-selector:after {
    content: "";
    display: block;
    overflow: hidden;
}
.language-selector:after {
    clear: both;
}
.language-selector.is-open .language-current .language-toggle:after {
    content: "\e906";
}
.language-selector.is-open .language-regions {
    display: block;
}
.social-list {
    list-style: none outside;
    margin: 0;
    padding: 0;
}
.social-list li {
    margin: 0 30px;
}
.social-list li:first-child {
    margin-left: 0;
}
.social-list li:last-child {
    margin-right: 0;
}
.social-list a {
    color: #fff;
    line-height: 28px;
    width: auto;
    height: auto;
    font-size: 1.75rem;
    line-height: 28px;
    letter-spacing: 0em;
}
.social-list a em {
    transition: color 0.2s ease-in-out;
}
html:not(.is-mobile) .social-list a:hover em.icon-twitter {
    color: #55ACEE;
}
html:not(.is-mobile) .social-list a:hover em.icon-facebook {
    color: #3B5998;
}
html:not(.is-mobile) .social-list a:hover em.icon-googleplus {
    color: #DC4E41;
}
html:not(.is-mobile) .social-list a:hover em.icon-youtube {
    color: #CD201F;
}
html:not(.is-mobile) .social-list a:hover em.icon-instagram {
    color: #125688;
}
html:not(.is-mobile) .social-list a:hover em.icon-tumblr {
    color: #36465D;
}
.social-list a:before, .social-list a:after {
    display: none;
}
.social-list em[class^="icon-"] {
    position: relative;
    top: 4px;
    left: 2px;
    z-index: 5;
}
.social-list em[class^="icon-"].icon-facebook {
    top: 2px;
    left: -2px;
}
.social-list:after {
    content: "";
    display: table;
    clear: both;
}
/* Homepage - Game Info Module*/
.wd-GameInfoCallout {
    background: url('wd_homepage-gameinfo-bg_ncsa.png') 0 0 repeat-x;
    box-sizing: border-box;
    height: 100%;
    margin: 0 auto 40px;
    padding-top: 200px;
    position: relative;
    z-index: 5;
}
.wd-GameInfoCallout .container {
    position: relative;
}
.wd-GameInfoCallout:before {
    background: url('wd_homepage-gameinfo-rip-before_ncsa.png') 0 0 no-repeat;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 381px;
    height: 555px;
}
.wd-GameInfoCallout:after {
    background: url('wd_homepage-gameinfo-rip-after_ncsa.png') 0 0 no-repeat;
    top: 10%;
    right: 0;
    width: 441px;
    height: 559px;
}
.wd-GameInfoCallout-group {
    float: left;
    margin-left: -200px;
    position: relative;
    z-index: 5;
}
.wd-GameInfoCallout-group img {
    max-width: 100%;
}
.wd-GameInfoCallout-group:before {
    background: url('wd_homepage-gameinfo-rip_ncsa.png') 50% 0 no-repeat;
    top: 100px;
    left: 60%;
    z-index: -1;
    width: 368px;
    height: 392px;
}
.wd-GameInfoCallout-group.glitchHackers:after {
    -webkit-animation: glitchHackers 0.5s;
            animation: glitchHackers 0.5s;
}
.wd-GameInfoCallout-blurb {
    float: left;
    padding-top: 110px;
    position: relative;
    z-index: 5;
    width: 30%;
}
.wd-GameInfoCallout-blurb .blockHeadline {
    display: block;
    margin-bottom: 35px;
}
.wd-GameInfoCallout-blurb-content {
    background: #000;
    box-sizing: border-box;
    color: #fff;
    padding: 25px;
    text-transform: uppercase;
    font-size: 0.6875rem;
    line-height: 23.5px;
    letter-spacing: 0em;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
}
.wd-GameInfoCallout-blurb-content .btn {
    margin-top: 30px;
}
.wd-GameInfoCallout-march {
    position: absolute;
    z-index: -1;
    margin-top: -200px;
    left: 0;
}
html:not(.is-mobile) .wd-GameInfoCallout-march {}
html:not(.is-mobile) .wd-GameInfoCallout-march:after {
    position: absolute;
    height: 377px;
    width: 100%;
    bottom: 0;/* autoprefixer: off */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);/* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);/* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ *//* autoprefixer: on */
}
.wd-GameInfoCallout-texture {
    background: url('wd_home-gameinfo-texture_ncsa.png');
    background-repeat: repeat-x;
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    opacity: .8;
}
/* Reserve Page Promos*/
.homePromos {
    background-color: #12cffe;
    background-image: url('wd_home-promo-bg_ncsa.png'), url('wd_digital-wave-before_ncsa.png');
    background-position: 75% 400px, 0 0;
    background-repeat: no-repeat, repeat-x;
    background-size: auto, auto;
    position: relative;
    overflow: hidden;
    z-index: 5;
}
.homePromos .container {
    padding: 200px 0 190px;
    position: relative;
    z-index: 5;
}
.homePromos .container:before {
    background: url('wd_home-promo-mummy_ncsa.png') 0 0 no-repeat;
    background-size: 373px 450px;
    bottom: -20px;
    left: -290px;
    width: 373px;
    height: 450px;
}
.homePromos:before {
    background: url('wd_home-promo-before_ncsa.png') 0 0 no-repeat;
    background-size: 464px 873px;
    bottom: -130px;
    left: 50%;
    -webkit-transform: translate(calc(-50% - (464px + 175px) ), 0);
        -ms-transform: translate(calc(-50% - (464px + 175px) ), 0);
            transform: translate(calc(-50% - (464px + 175px) ), 0);
    z-index: -1;
    width: 464px;
    height: 873px;
}
.homePromos:after {
    background: url('wd_home-promo-after_ncsa.png') 0 0 no-repeat;
    background-size: 587px 806px;
    bottom: -160px;
    left: 50%;
    -webkit-transform: translate(calc(50% - 70px), 0);
        -ms-transform: translate(calc(50% - 70px), 0);
            transform: translate(calc(50% - 70px), 0);
    z-index: -1;
    width: 587px;
    height: 806px;
}
.homePromos-promo {
    background: #000;
    float: left;
    margin: 0 25px;
    transition: all 0.2s ease-in-out;
    width: calc(33.33% - 50px);
}
html:not(.is-mobile) .homePromos-promo:hover {
    background: #353535;
}
.homePromos-promo a {
    display: block;
    height: 100%;
}
.homePromos-promoMedia, .homePromos-promoContent {
    box-sizing: border-box;
}
.homePromos-promoMedia {
    padding: 10px;
    text-align: center;
}
.homePromos-promoMedia img {
    max-width: 100%;
    width: 100%;
    height: auto;
}
.homePromos-promoContent {
    color: #fff;
    padding: 30px;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 0.875rem;
    line-height: 26px;
    letter-spacing: 0em;
}
.homePromos-promoContent p {
    margin: 0;
}
/* News Styles*/
/* Homepage News List */
.wd-newsItems-wrap {
    background: url('wd_home-news-bg_ncsa.png') calc(100% + 100px) 0 no-repeat;
    min-height: 420px;
    padding: 0 0 90px;
    text-align: center;
}
.wd-newsItems-wrap .actions, .wd-newsItems-wrap .contentsummary-scrollable.vertical {
    display: none;
}
.wd-newsItems-header {
    box-sizing: border-box;
    color: #fff;
    margin: 0 auto 25px;
    max-width: 1200px;
    padding: 90px 10px 10px;
    position: relative;
    z-index: 5;
}
.wd-newsItems-header h2 {
    background: #000;
    display: inline-block;
    margin: 60px 0 0 25px;
    padding: 0 20px;
    text-transform: uppercase;
    font-size: 2.25rem;
    line-height: 68.5px;
    letter-spacing: 0em;
}
.wd-newsItems-header:before {
    background-image: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.15) 2px, transparent 2px, transparent 11px);
    z-index: -1;
    width: 150px;
    height: 150px;
}
.wd-newsItems {
    *zoom: 1;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    width: auto;
}
.wd-newsItems:before {
    content: '';
    display: table;
}
.wd-newsItems:after {
    content: '';
    display: table;
    clear: both;
}
.wd-newsItems .wd-newsItem {
    color: #fff;
    float: left;
    margin: 25px 0;
    position: relative;
    width: 100%;
}
.wd-newsItems .wd-newsItem-media, .wd-newsItems .wd-newsItem-meta {
    box-sizing: border-box;
    width: 50%;
}
.wd-newsItems .wd-newsItem-media {
    background: #fff;
    float: left;
    padding: 10px;
    position: relative;
    text-align: center;
}
.wd-newsItems .wd-newsItem-media img {
    max-width: 100%;
}
.wd-newsItems .wd-newsItem-meta {
    color: #999999;
    clear: left;
    float: right;
    padding: 0 20px;
    font-size: 0.75rem;
    line-height: 19px;
    letter-spacing: 0em;
}
.wd-newsItems .wd-newsItem-meta h6 {
    color: #fff;
    line-height: 30px;
    margin: 0;
}
.wd-newsItems .wd-newsItem-meta .wd-newsItem-tag, .wd-newsItems .wd-newsItem-meta .wd-newsItem-author {
    display: none;
}
.wd-newsItems .wd-newsItem-teaser {
    background: #fff;
    box-sizing: border-box;
    color: #6d6d6d;
    padding: 25px;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 50%;
    font-size: 0.875rem;
    line-height: 25px;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-newsItems .wd-newsItem-teaser p {
    margin: 0 0 25px;
}
.wd-newsItems .wd-newsItem-teaser a {
    box-sizing: border-box;
    color: #000;
    display: inline-block;
    max-height: 30px;/* required for hover animation*/
    padding: 2px 5px 3px;
    position: relative;
    overflow: hidden;
    text-transform: lowercase;
    z-index: 5;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 600;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
html:not(.is-mobile) .wd-newsItems .wd-newsItem-teaser a:hover {
    color: #fff;
}
html:not(.is-mobile) .wd-newsItems .wd-newsItem-teaser a:hover:before {
    color: #fff;
}
html:not(.is-mobile) .wd-newsItems .wd-newsItem-teaser a:hover:after {
    width: 100%;
}
.wd-newsItems .wd-newsItem-teaser a:before {
    color: #12cffe;
    content: '/';
    display: inline-block;
    margin-right: 5px;
    transition: color 0.1s ease-in-out;
}
.wd-newsItems .wd-newsItem-teaser a:after {
    background: #12cffe;
    top: 0;
    left: 0;
    transition: width 0.1s ease-in-out;
    z-index: -1;
    width: 0;
    height: 100%;
}
.wd-newsItems .wd-newsItem:nth-child(even) .wd-newsItem-media {
    float: right;
}
.wd-newsItems .wd-newsItem:nth-child(even) .wd-newsItem-meta, .wd-newsItems .wd-newsItem:nth-child(even) .wd-newsItem-teaser {
    text-align: right;
}
.wd-newsItems .wd-newsItem:nth-child(even) .wd-newsItem-meta {
    clear: right;
    float: left;
}
.wd-newsItems .wd-newsItem:nth-child(even) .wd-newsItem-teaser {
    left: 0;
    right: auto;
}
.wd-newsItems-list {
    margin: 25px auto;
    padding: 0;
    list-style-type: none;
}
/* Comments*/
.page-newsdetail .fyre-hovercard {
    display: none !important;
}
.page-newsdetail .lf-comments-box {
    box-sizing: border-box;
}
.page-newsdetail .fyre-stream-stats {
    display: none;
}
.page-newsdetail .fyre {
    clear: both;
    margin-left: auto;
    margin-right: auto;
}
.page-newsdetail .fyre .fyre-box-wrapper .fyre-user-profile-link {
    display: none;
}
.page-newsdetail .fyre .fyre-box-wrapper .fyre-box-list {
    margin-top: 10px !important;
}
.page-newsdetail .fyre .fyre-box-wrapper .fyre-box-list li {
    border-bottom: 0;
}
html:not(.is-mobile) .page-newsdetail .fyre .fyre-box-wrapper .fyre-box-list li a:hover {
    background: transparent;
}
.page-newsdetail .fyre .fyre-box-wrapper .fyre-box-list li:first-child {
    border-top: 0;
}
.page-newsdetail .fyre .fyre-user-loggedout {
    color: #fff;
    display: block;
    line-height: 50px;
    padding: 0 15px;
}
html:not(.is-mobile) .page-newsdetail .fyre .fyre-user-loggedout:hover {
    background: #2ff5d7;
    color: #fff;
}
.page-newsdetail .fyre .fyre-stream-livecount {
    display: none;
}
.page-newsdetail .fyre .fyre-auth .fyre-box-list {
    float: right;
    padding: 0 15px 0 0;
    text-transform: uppercase;
}
.page-newsdetail .fyre .fyre-auth .fyre-box-list li {
    float: left;
}
.page-newsdetail .fyre .fyre-auth .fyre-box-list li:not(:last-child) {
    border-right: 1px solid #4d4b4b;
    margin-right: 10px;
    padding-right: 10px;
}
.page-newsdetail .fyre .fyre-auth .fyre-livecount {
    margin-top: 5px;
}
.page-newsdetail .fyre .fyre-auth .fyre-listener-avatars {
    display: none;
}
.page-newsdetail .fyre .fyre-editor {
    margin-left: auto;
    margin-right: auto;
    padding: 10px 0;
}
.page-newsdetail .fyre .fyre-editor .fyre-editor-field {
    background: #fff;
    box-sizing: border-box;
    border: 1px solid #ededed;
    min-height: 100px;
    padding: 10px 15px;
}
.page-newsdetail .fyre .fyre-editor .fyre-editor-field p {
    margin: 0 0 1.5em;
}
.page-newsdetail .fyre .fyre-editor .fyre-follow-button, .page-newsdetail .fyre .fyre-editor .fyre-share-button {
    float: left;
}
.page-newsdetail .fyre .fyre-editor .fyre-post-button {
    color: #12cffe;
    cursor: pointer;
    float: right;
    margin-right: 15px;
    text-transform: uppercase;
    font-size: 0.875rem;
    line-height: 25px;
    letter-spacing: 0.05em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
html:not(.is-mobile) .page-newsdetail .fyre .fyre-editor .fyre-post-button:hover {
    color: rgb(18, 146, 179);
}
.page-newsdetail .fyre .fyre-stream-header {
    text-align: left;
}
.page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a {
    background: transparent;
    color: #4f4f4f;
    display: inline-block;
    margin: 0 10px;
    padding: 0 10px;
    position: relative;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    line-height: 28px;
    letter-spacing: 0em;
}
html:not(.is-mobile) .page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a:hover {
    color: #12cffe;
}
html:not(.is-mobile) .page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a:hover:before {
    opacity: 1;
}
.page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a.fyre-stream-sort-selected, html:not(.is-mobile) .page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a.fyre-stream-sort-selected:hover {
    background: #000;
    color: #12cffe;
}
.page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a.fyre-stream-sort-selected:before, html:not(.is-mobile) .page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a.fyre-stream-sort-selected:hover:before {
    opacity: 0;
}
.page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort a:before {
    background: #12cffe;
    height: 2px;
    bottom: 2px;
    left: 10px;
    right: 10px;
    opacity: 0;
    transition: opacity 0.3s;
}
.page-newsdetail .fyre .fyre-stream-header .fyre-stream-sort-bar {
    display: none;
}
.page-newsdetail .fyre .fyre-comment-article {
    margin-bottom: 10px;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-wrapper {
    border: 1px solid #e1e1e1;
    box-sizing: border-box;
    padding: 30px 30px 30px 105px;
    position: relative;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-wrapper p {
    padding-left: 0;
    padding-right: 0;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-wrapper.moderator-wrapper {
    background: #222;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-wrapper.moderator-wrapper .fyre-comment-head {
    border-bottom-color: #595959;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-wrapper.moderator-wrapper .fyre-comment-username {
    color: #9be829;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-wrapper.moderator-wrapper .fyre-comment-body a {
    color: rgb(131, 191, 41);
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-replies {
    margin-top: 10px;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-replies-indent {
    margin-left: 40px;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-user {
    position: absolute;
    top: 30px;
    left: 30px;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-head {
    border-bottom: 1px solid #d7d7d7;
    padding-bottom: 20px;
    text-align: left;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-username, .page-newsdetail .fyre .fyre-comment-article .fyre-comment-date {
    display: block;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-username {
    cursor: default;
    display: inline-block;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.125rem;
    line-height: 30px;
    letter-spacing: 0.05em;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-moderator {
    background: #9be829;
    border: 2px solid #222;
    color: #000;
    display: inline-block;
    margin-left: 5px;
    padding: 0 5px;
    position: relative;
    text-transform: lowercase;
    font-size: 0.6875rem;
    line-height: 21px;
    letter-spacing: 0em;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-moderator:before {
    border: 1px solid #9be829;
    top: -3px;
    right: -3px;
    bottom: -3px;
    left: -3px;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-date {
    color: #5f5f5f;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-body {}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer {
    margin-top: 20px;
    text-transform: uppercase;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer a {
    cursor: pointer;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
html:not(.is-mobile) .page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer a:hover {
    color: rgb(18, 146, 179);
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer .fyre-comment-actions {
    float: left;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer .fyre-flag-link {
    margin-right: 20px;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer .fyre-comment-like {
    margin-left: 20px;
}
.page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer > span, .page-newsdetail .fyre .fyre-comment-article .fyre-comment-footer > a {
    float: right;
}
.page-newsdetail .fyre .fyre-comment-divider.fyre-comment-collapse > a, .page-newsdetail .fyre .fyre-comment-divider.fyre-divider-active > a {
    display: none !important;
}
.page-newsdetail .fyre .fyre-comment-divider > div.fyre-comment-divider {
    background: #939596 !important;
}
body.agegate-passed .fyre .fyre-editor .fyre-post-button, body.agegate-passed .fyre .fyre-comment-article .fyre-comment-footer a {
    cursor: url('wd_middle-finger-cursor_ncsa.cur'), pointer;
}
/* Game Info Callout*/
.gameinfoCallout {
    background: url('wd_gameinfo-callout-bg_ncsa.png') 50% 0 no-repeat;
    max-height: 876px;
    position: relative;
    width: 100vw;
    height: 100vh;
}
.gameinfoCallout-content {
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    text-transform: uppercase;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 90%;
}
.gameinfoCallout-content .hero-title, .gameinfoCallout-content .hero-description {
    background: #000;
    display: inline;
    text-transform: uppercase;
}
.gameinfoCallout-content .hero-title {
    color: #12cffe;
    padding: 3px 20px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.gameinfoCallout-content .hero-description {
    color: #fff;
    padding: 10px 50px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
/* Game Info Overview*/
.gameinfoOverview {
    margin: 0 auto 120px;
    padding: 0 0 220px;
    position: relative;
    z-index: 5;
}
.gameinfoOverview .gameinfoOverview-left, .gameinfoOverview .gameinfoOverview-right {
    display: block;
    position: absolute;
    bottom: 220px;
}
.gameinfoOverview .gameinfoOverview-left {
    background: url('wd_gameinfo-overview-lefthand-over_ncas.png') 0 0 no-repeat;
    margin-left: -525px;
    left: 50%;
    width: 241px;
    height: 66px;
}
.gameinfoOverview .gameinfoOverview-right {
    background: url('wd_gameinfo-overview-righthand-over_ncas.png') 0 0 no-repeat;
    margin-right: -525px;
    right: 50%;
    width: 239px;
    height: 76px;
}
.gameinfoOverview:before, .gameinfoOverview:after {
    bottom: 0;
    left: 50%;
    z-index: -1;
}
.gameinfoOverview:before {
    background: url('wd_gameinfo-overview-lefthand_ncas.png') 0 0 no-repeat;
    background-size: contain;
    margin-left: -414px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 828px;
    height: 825px;
}
.gameinfoOverview:after {
    background: url('wd_gameinfo-overview-righthand_ncas.png') 0 0 no-repeat;
    background-size: contain;
    margin-left: 415px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 830px;
    height: 827px;
}
.gameinfoOverview-header {
    text-align: center;
    text-transform: uppercase;
}
.gameinfoOverview-header h4 {
    background: #000;
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    line-height: 1;
    min-height: 116px;
    padding: 40px 70px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.gameinfoOverview-header h4 span {
    color: #999999;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.gameinfoOverview-header:before {
    background: url('wd_gameinfo-overview-title_ncsa.png') 0 0 no-repeat;
    background-size: 272px 179px;
    margin: 0 auto -20px;
    position: relative;
    width: 272px;
    height: 179px;
}
.gameinfoOverview-content {
    background: #000;
    box-sizing: border-box;
    color: #fff;
    margin: 15px auto 0;
    max-width: 1050px;
    min-height: 310px;
    position: relative;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 0.6875rem;
    line-height: 23px;
    letter-spacing: 0em;
}
.gameinfoOverview-slides {
    box-sizing: border-box;
    padding: 50px;
    text-align: center;
    width: 100%;
}
.gameinfoOverview-slides li {
    display: none;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0em;
}
.gameinfoOverview-slides li h4 {
    text-transform: none;
}
.gameinfoOverview-slides li.is-active {
    display: block;
}
.gameinfoOverview-controls .gameinfoOverview-controls-prev, .gameinfoOverview-controls .gameinfoOverview-controls-next {
    color: #12cffe;
    cursor: pointer;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    font-size: 2rem;
    letter-spacing: 0em;
}
.gameinfoOverview-controls .gameinfoOverview-controls-prev:before, .gameinfoOverview-controls .gameinfoOverview-controls-next:before {
    color: #12cffe;
    transition: 0.3s;
}
.gameinfoOverview-controls .gameinfoOverview-controls-prev:after, .gameinfoOverview-controls .gameinfoOverview-controls-next:after {
    color: #fff;
    position: absolute;
    top: -1px;
    transition: clip 0.3s ease-in-out;
}
.gameinfoOverview-controls .gameinfoOverview-controls-prev {
    left: 20px;
}
html:not(.is-mobile) .gameinfoOverview-controls .gameinfoOverview-controls-prev:hover:after {
    clip: rect(0, 30px, 36px, 0);
}
.gameinfoOverview-controls .gameinfoOverview-controls-prev:after {
    clip: rect(0, 0, 0, 0);
    left: 0;
}
.gameinfoOverview-controls .gameinfoOverview-controls-next {
    right: 20px;
}
html:not(.is-mobile) .gameinfoOverview-controls .gameinfoOverview-controls-next:hover:after {
    clip: rect(0, 36px, 36px, 5px);
}
.gameinfoOverview-controls .gameinfoOverview-controls-next:after {
    clip: rect(0, 36px, 36px, 27px);
    right: 0;
}
.gameinfoOverview-bullets {
    margin: 20px auto;
    position: absolute;
    left: 50%;
    text-align: center;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 90%;
}
.gameinfoOverview-bullets li {
    display: inline-block;
    margin: 0 10px;
}
.gameinfoOverview-bullets a, .gameinfoOverview-bullets span {
    background: #fff;
    border: 3px solid #fff;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
    text-indent: -20px;
    transition: all 0.2s ease-in-out;
    -webkit-transform: translateZ(1px) rotate(45deg);
            transform: translateZ(1px) rotate(45deg);
    width: 15px;
    height: 15px;
}
html:not(.is-mobile) .gameinfoOverview-bullets a:hover, html:not(.is-mobile) .gameinfoOverview-bullets span:hover {
    background: #6d6d6d;
    border-color: #6d6d6d;
}
.gameinfoOverview-bullets li.is-active a, .gameinfoOverview-bullets li.is-active span {
    background: #000;
    border: 3px solid #12cffe;
}
body.agegate-passed .gameinfoOverview .gameinfoOverview-controls .gameinfoOverview-controls-prev, body.agegate-passed .gameinfoOverview .gameinfoOverview-controls .gameinfoOverview-controls-next {
    cursor: url('wd_middle-finger-cursor_ncsa.cur'), pointer;
}
/* Map Module*/
.gameinfoMap {
    background: url('wd_gameinfo-map-bolts-1_ncsa.png') 10px 50% no-repeat, url('wd_gameinfo-map-bolts-2_ncsa.png') calc(100% + 40px) 0 no-repeat;
    padding: 160px 0;
}
.gameinfoMap h4, .gameinfoMap-content {
    background: #000;
    box-sizing: border-box;
    color: #fff;
    clear: right;
    float: right;
    margin: 20px 0;
    padding: 15px;
    text-transform: uppercase;
    width: 30%;
}
.gameinfoMap h4 {
    box-sizing: border-box;
    line-height: 1;
    min-height: 66px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.gameinfoMap .wd-Player {
    bottom: 0;
    position: absolute;
}
.gameinfoMap .wd-Player .wd-Player-play:before {
    color: #12cffe;
    position: absolute;
    left: -3px;
    top: -8px;
    transition: color 0.2s ease-in-out;
    font-size: 1.375rem;
    line-height: 32px;
    letter-spacing: 0em;
}
.gameinfoMap-wrap {
    background: url('wd_gameinfo-map-bg_ncsa.jpg') 0 0 no-repeat;
    background-size: cover;
    border: 15px solid #fff;
    box-sizing: border-box;
    margin: 0 auto;
    min-width: 660px;
    padding: 30px 0;
    max-width: 1180px;
}
.gameinfoMap-content {
    font-size: 0.75rem;
    line-height: 24px;
    letter-spacing: 0em;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
}
.gameinfoMap-content .btn {
    margin: 40px 10px;
}
/* Gameinfo Characters*/
.gameinfoCharacters {
    position: relative;
}
.gameinfoCharacters.has-files-open .gameinfoCharacters-controls, .gameinfoCharacters.is-single .gameinfoCharacters-controls {
    display: none;
}
.gameinfoCharacters.has-files-open .gameinfoCharacters-bg {
    -webkit-filter: grayscale(1) brightness(0.65);
            filter: grayscale(1) brightness(0.65);
}
.gameinfoCharacters.has-files-open .gameinfoCharacters-list .character.is-active:before {
    background-image: url(wd_gameinfo-characters-close-x_ncsa.png);
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-animation: characterSelect 0.2s 1 forwards;
            animation: characterSelect 0.2s 1 forwards;
    background-size: auto auto;
}
.gameinfoCharacters.has-files-open .gameinfoCharacters-list .character--wrench.is-active:before {
    background-color: #ff7b21;
}
.gameinfoCharacters.has-files-open .gameinfoCharacters-list .character--marcus.is-active:before {
    background-color: #00bdff;
}
.gameinfoCharacters.has-files-open .gameinfoCharacters-list .character--sitara.is-active:before {
    background-color: #95e833;
}
.gameinfoCharacters.has-files-open .gameinfoCharacters-list .character--josh.is-active:before {
    background-color: #aa1000;
}
.gameinfoCharacters-bg {
    background: url('wd_gameinfo-characters-bg_ncsa.png') 50% 0 no-repeat;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    z-index: -1;
    width: 3454px;
    height: 838px;
}
.gameinfoCharacters-name {
    box-sizing: border-box;
    color: #fff;
    display: block;
    line-height: 1;
    margin-bottom: 5px;
    text-transform: uppercase;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
}
.gameinfoCharacters-modal {
    box-sizing: border-box;
    height: 340px;
    margin: 0 auto;
    max-width: 920px;
    position: relative;
    z-index: 100;
}
.gameinfoCharacters-controls span {
    cursor: pointer;
    position: absolute;
    top: 50%;
    overflow: hidden;
    font-size: 2.25rem;
    letter-spacing: 0em;
}
.gameinfoCharacters-controls span:before {
    color: #12cffe;
    transition: 0.3s;
}
.gameinfoCharacters-controls span:after {
    color: #fff;
    position: absolute;
    top: -1px;
    transition: clip 0.3s ease-in-out;
}
.gameinfoCharacters-controls span[data-dir="prev"] {
    left: -45px;
}
html:not(.is-mobile) .gameinfoCharacters-controls span[data-dir="prev"]:hover:after {
    clip: rect(0, 30px, 36px, 0);
}
.gameinfoCharacters-controls span[data-dir="prev"]:after {
    clip: rect(0, 0, 0, 0);
    left: 0;
}
.gameinfoCharacters-controls span[data-dir="next"] {
    right: -45px;
}
html:not(.is-mobile) .gameinfoCharacters-controls span[data-dir="next"]:hover:after {
    clip: rect(0, 36px, 36px, 5px);
}
.gameinfoCharacters-controls span[data-dir="next"]:after {
    clip: rect(0, 36px, 36px, 27px);
    right: 0;
}
.gameinfoCharacters-bio {
    -webkit-animation: moving-border 2s linear infinite;
            animation: moving-border 2s linear infinite;
    background-image: linear-gradient(to right, #fff 50%, transparent 50%),
                      linear-gradient(to right, #fff 50%, transparent 50%),
                      linear-gradient(to bottom, #fff 50%, transparent 50%),
                      linear-gradient(to bottom, #fff 50%, transparent 50%);
    background-size: 10px 1px, 10px 1px, 1px 10px, 1px 10px;
    background-position: 0 0, 0 100%, 0 0, 100% 0;
    background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
    box-sizing: border-box;
    clear: both;
    padding: 15px;
    position: relative;
    width: 100%;
    height: 100%;
}
.gameinfoCharacters-media, .gameinfoCharacters-keywords, .gameinfoCharacters-summary {
    box-sizing: border-box;
    float: left;
    width: 50%;
}
.gameinfoCharacters-media {
    border: 10px solid #000;
    position: relative;
}
.gameinfoCharacters-media img {
    display: block;
    margin: -50px auto 0;
    max-width: 100%;
}
.gameinfoCharacters-media canvas {
    position: absolute;
    bottom: 0;
    left: 0;
}
.gameinfoCharacters-keywords {
    color: #fff;
    padding: 20px 10px 10px 20px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 2rem;
    letter-spacing: 0em;
}
.gameinfoCharacters-keywords p {
    background: #000;
    display: inline-block;
    line-height: 1;
    margin: 0;
    padding: 2px 5px 3px;
}
.gameinfoCharacters-details {
    float: left;
    width: calc(50% - 15px);
}
.gameinfoCharacters-summary, .gameinfoCharacters-file {
    box-sizing: border-box;
    clear: both;
    padding: 25px;
    width: 100%;
}
.gameinfoCharacters-summary {
    background: #000;
    color: #fff;
    font-size: 0.6875rem;
    letter-spacing: 0em;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
}
.gameinfoCharacters-summary p:not(:last-of-type) {
    margin-bottom: 5px;
}
.gameinfoCharacters-modal {}
.gameinfoCharacters-modal.character--the-wrench .gameinfoCharacters-name {
    color: #ff7b21;
}
.gameinfoCharacters-modal.character--the-wrench .gameinfoCharacters-media {
    background: url('wd_character-mug-bg-wrench_ncsa.jpg') 50% 0 no-repeat;
    background-size: cover;
}
.gameinfoCharacters-modal.character--the-wrench .gameinfoCharacters-controls span:before {
    color: #ff7b21;
}
.gameinfoCharacters-modal.character--josh .gameinfoCharacters-name {
    color: #aa1000;
}
.gameinfoCharacters-modal.character--josh .gameinfoCharacters-media {
    background: url('wd_character-mug-bg-josh_ncsa.jpg') 50% 0 no-repeat;
    background-size: cover;
}
.gameinfoCharacters-modal.character--josh .gameinfoCharacters-controls span:before {
    color: #aa1000;
}
.gameinfoCharacters-modal.character--marcus-holloway .gameinfoCharacters-name {
    color: #00bdff;
}
.gameinfoCharacters-modal.character--marcus-holloway .gameinfoCharacters-media {
    background: url('wd_character-mug-bg-marcus_ncsa.jpg') 50% 0 no-repeat;
    background-size: cover;
}
.gameinfoCharacters-modal.character--marcus-holloway .gameinfoCharacters-controls span:before {
    color: #00bdff;
}
.gameinfoCharacters-modal.character--sitara .gameinfoCharacters-name {
    color: #95e833;
}
.gameinfoCharacters-modal.character--sitara .gameinfoCharacters-media {
    background: url('wd_character-mug-bg-sitara_ncsa.jpg') 50% 0 no-repeat;
    background-size: cover;
}
.gameinfoCharacters-modal.character--sitara .gameinfoCharacters-controls span:before {
    color: #95e833;
}
.gameinfoCharacters-list {
    clear: both;
    margin: 20px auto 60px;
    padding: 0;
    list-style-type: none;
    text-align: center;
    vertical-align: bottom;
}
.gameinfoCharacters-list .character {
    cursor: pointer;
    display: inline-block;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
    margin-left: -4px;
    min-width: 200px;
    position: relative;
    -webkit-transform: scale(0.95);
        -ms-transform: scale(0.95);
            transform: scale(0.95);
    transition: all 0.35s ease-in-out;
    vertical-align: bottom;
}
.gameinfoCharacters-list .character:before {/* border: 3px dashed $color-white;*/
    background-image: linear-gradient(to right, #fff 50%, transparent 50%), linear-gradient(to right, #fff 50%, transparent 50%), linear-gradient(to bottom, #fff 50%, transparent 50%), linear-gradient(to bottom, #fff 50%, transparent 50%);
    background-size: 10px 2px, 10px 2px, 2px 10px, 2px 10px;
    background-position: 0 0, 0 100%, 0 0, 100% 0;
    background-repeat: repeat-x,  repeat-x,  repeat-y,  repeat-y;
    display: block;
    margin-left: -16px;
    top: 25%;
    left: 50%;
    opacity: 0;
    -webkit-transform: rotate(45deg) scale(0);
        -ms-transform: rotate(45deg) scale(0);
            transform: rotate(45deg) scale(0);
    width: 38px;
    height: 38px;
}
.gameinfoCharacters-list .character:after {
    background-position: 0 0;
    background-repeat: no-repeat;
    opacity: 0;
    top: -5px;
    right: -20px;
    bottom: 0;
    left: -15px;
    transition: opacity 0.2s ease-in-out;
    z-index: -1;
}
.gameinfoCharacters-list .character.is-active {
    -webkit-filter: grayscale(0);
            filter: grayscale(0);
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
}
.gameinfoCharacters-list .character.is-active:before {
    -webkit-animation: characterSelect 0.2s 1 forwards, moving-border 3s 0.25s linear infinite;
            animation: characterSelect 0.2s 1 forwards, moving-border 3s 0.25s linear infinite;
}
.gameinfoCharacters-list .character.is-active:after {
    -webkit-animation: glitchCharactersShadow .8s 2 linear alternate-reverse;
            animation: glitchCharactersShadow .8s 2 linear alternate-reverse;
    opacity: 1;
}
.gameinfoCharacters-list .character--wrench:after {
    background-image: url('wd_character-wrench-silo-v2_ncsa.png');
    background-size: contain;
}
.gameinfoCharacters-list .character--josh:after {
    background-image: url('wd_character-josh-silo_ncsa.png');
    background-size: contain;
}
.gameinfoCharacters-list .character--marcus:after {
    background-image: url('wd_character-marcus-silo-v2_ncsa.png');
    background-size: contain;
}
.gameinfoCharacters-list .character--sitara:after {
    background-image: url('wd_character-sitara-silo-v2_ncsa.png');
    background-size: contain;
}
.gameinfoCharacters-list .character-bio, .gameinfoCharacters-list .character-dossier {
    display: none;
}
.gameinfoCharacters-list img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
}
.gameInfoCharacters-dossier {
    display: none;
}
.has-files-open .gameInfoCharacters-dossier {
    display: block;
}
.characterWindow {
    background: #000;
    border: 13px solid #12cffe;
    box-sizing: border-box;
    color: #fff;
    max-width: 920px;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    z-index: 100;
    width: 100%;
    height: 340px;
}
/* Window Themes*/
.character--the-wrench .characterWindow {
    border-color: #ff7b21;
}
.character--the-wrench .characterWindow .ps-container > .ps-scrollbar-x-rail > .ps-scrollbar-x, .character--the-wrench .characterWindow .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .character--the-wrench .characterWindow .ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y, .character--the-wrench .characterWindow .ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x, .character--the-wrench .characterWindow-close {
    background: #ff7b21;
}
.character--josh .characterWindow {
    border-color: #aa1000;
}
.character--josh .characterWindow .ps-container > .ps-scrollbar-x-rail > .ps-scrollbar-x, .character--josh .characterWindow .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .character--josh .characterWindow .ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y, .character--josh .characterWindow .ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x, .character--josh .characterWindow-close {
    background: #aa1000;
}
.character--sitara .characterWindow {
    border-color: #95e833;
}
.character--sitara .characterWindow .ps-container > .ps-scrollbar-x-rail > .ps-scrollbar-x, .character--sitara .characterWindow .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .character--sitara .characterWindow .ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y, .character--sitara .characterWindow .ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x, .character--sitara .characterWindow-close {
    background: #95e833;
}
.character--marcus .characterWindow {
    border-color: #00bdff;
}
.character--marcus .characterWindow .ps-container > .ps-scrollbar-x-rail > .ps-scrollbar-x, .character--marcus .characterWindow .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .character--marcus .characterWindow .ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y, .character--marcus .characterWindow .ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x, .character--marcus .characterWindow-close {
    background: #00bdff;
}
.characterWindow:before {
    border: 1px solid #fff;
    pointer-events: none;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 50;
}
.characterWindow--half {
    width: 50%;
}
.characterWindow-header, .characterWindow-content {
    box-sizing: border-box;
}
.characterWindow-header {
    border-bottom: 1px solid #fff;
    cursor: -webkit-grab;
    cursor: grab;
    line-height: 50px;
    padding: 0 15px;
    position: relative;
    text-transform: uppercase;
    width: 100%;
    height: 50px;
}
.characterWindow-header strong {
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 0.875rem;
    letter-spacing: 0em;
}
.characterWindow-header:active {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}
.characterWindow-close {
    background: #12cffe;
    color: #000;
    cursor: pointer;
    line-height: 26px;
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    text-align: center;
    font-size: 1rem;
    letter-spacing: 0em;
    width: 26px;
    height: 26px;
}
.characterWindow-content {
    height: calc(100% - 90px);/* header height + margin top/bottom*/
    margin: 20px 30px;
    padding-right: 15px;
    position: relative;
    overflow: hidden;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.8125rem;
    line-height: 22px;
    letter-spacing: 0em;
}
.characterWindow-content p:not(:last-of-type) {
    margin-bottom: 15px;
}
.characterWindow--media {
    height: auto;
    top: 360px;
    right: 0;
    left: auto;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
}
.characterWindow--media .characterWindow-content {
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: hidden;
    width: 100%;
}
.characterWindow--media .media-item {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    width: 100%;
}
.characterWindow--media .media-item.is-active {
    opacity: 1;
    visibility: visible;
}
.characterWindow--media .media-item[data-type="video"] a {}
.characterWindow--media .media-item[data-type="video"] a:before, .characterWindow--media .media-item[data-type="video"] a:after {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
.characterWindow--media .media-item[data-type="video"] a:before {
    color: #fff;
    content: "\e90c";
    margin-left: 3px;
    z-index: 2;
    font-size: 2.375rem;
    letter-spacing: 0em;
}
.characterWindow--media .media-item[data-type="video"] a:after {
    background: rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    z-index: 1;
    width: 56px;
    height: 56px;
}
.characterWindow--media img {
    width: 100%;
}
.characterWindow--media:hover .characterWindow--mediaControls {
    opacity: 1;
}
.characterWindow--mediaControls {
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}
.is-mobile .characterWindow--mediaControls {
    opacity: 1;
}
.characterWindow--mediaControls .mediaControls-prev, .characterWindow--mediaControls .mediaControls-next {
    cursor: pointer;
    color: #fff;
    display: block;
    position: absolute;
    top: 50%;
    text-shadow: rgba(0, 0, 0, 0.3) 0 1px 2px;
    transition: opacity 0.2s ease-in-out;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 22px;
    height: 28px;
    font-size: 1.75rem;
    letter-spacing: 0em;
}
.characterWindow--mediaControls .mediaControls-prev {
    left: 10px;
}
.characterWindow--mediaControls .mediaControls-next {
    right: 10px;
}
body.agegate-passed .gameinfoCharacters .gameinfoCharacters-controls span, body.agegate-passed .gameinfoCharacters-list .character, body.agegate-passed .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item, body.agegate-passed .characterWindow .characterWindow-close, body.agegate-passed .characterWindow--mediaControls .mediaControls-prev, body.agegate-passed .characterWindow--mediaControls .mediaControls-next {
    cursor: url('wd_middle-finger-cursor_ncsa.cur'), pointer;
}
.wd-ReserveCallout {
    background: url('wd_digital-wave-before_ncsa.png') 0 0 repeat-x, #12cffe;
    background-size: auto;
    box-sizing: border-box;
    overflow: hidden;
    padding: 200px 0;
    position: relative;
    z-index: 5;
}
.wd-ReserveCallout .reserveCallout-boxart {
    float: left;
    position: relative;
    width: 33%;
    z-index: 200;
}
.wd-ReserveCallout .reserveCallout-info {
    float: left;
    position: relative;
    width: 45%;
}
.wd-ReserveCallout .reserveCallout-info:before {
    background: url('wd_gameinfo-reserve-skull_ncsa.png') 210px 45px no-repeat, url('wd_gameinfo-reserve-deadsec_ncsa.png') 0 0 no-repeat;
    left: -140px;
    top: 70px;
    z-index: 100;
    width: 970px;
    height: 745px;
}
.wd-ReserveCallout .reserveCallout-header, .wd-ReserveCallout .reserveCallout-body {
    background: #000;
}
.wd-ReserveCallout .reserveCallout-header {
    padding: 20px 25px 5px 25px;
    position: relative;
    z-index: 300;
}
.wd-ReserveCallout .reserveCallout-header h5, .wd-ReserveCallout .reserveCallout-header h1 {
    margin: 0;
}
.wd-ReserveCallout .reserveCallout-header h5 {
    color: #12cffe;
    margin-bottom: -5px;
    padding-left: 22px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.75rem;
    line-height: 18px;
    letter-spacing: 0.2em;
}
.wd-ReserveCallout .reserveCallout-header:before {
    background: url('wd_gameinfo-reserve-reaper_ncsa.png') 0 0 no-repeat;
    right: -203px;
    top: -114px;
    width: 352px;
    height: 568px;
}
.wd-ReserveCallout .reserveCallout-body {
    margin-top: 10px;
    padding: 25px 25px 40px 25px;
    position: relative;
    z-index: 200;
}
.wd-ReserveCallout .reserveCallout-body p {
    color: #fff;
    margin: 0;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 0.6875rem;
    line-height: 23px;
    letter-spacing: 0em;
}
.wd-ReserveCallout .reserveCallout-body .btn {
    margin-top: 40px;
}
.wd-ReserveCallout .reserveCallout-more {
    position: absolute;
    right: -274px;
    top: -48px;
    z-index: 200;
    width: 175px;
    height: 455px;
}
.wd-ReserveCallout .reserveCallout-more.showHand {
    background: url('wd_gameinfo-sprite-I-reserve_ncsa.png') -3325px 0 no-repeat;
    -webkit-animation: playSprite 0.8s steps(19, end) 1;
            animation: playSprite 0.8s steps(19, end) 1;
    width: 170px;
    height: 455px;
}
.wd-ReserveCallout .reserveCallout-more.showing {
    background: url('wd_gameinfo-sprite-II-reserve_ncsa.png') 5px 0 no-repeat;
}
.wd-ReserveCallout .reserveCallout-more.hideHand {
    background: url('wd_gameinfo-sprite-II-reserve_ncsa.png') -3500px 0 no-repeat;
    -webkit-animation: playSprite 0.6s steps(19, end) 1;
            animation: playSprite 0.6s steps(19, end) 1;
    width: 170px;
    height: 455px;
}
.wd-ReserveCallout:before {
    background: url('wd_gameinfo-reserve-skulls_ncsa.png') 0 0 no-repeat;
    background-size: contain;
    bottom: -50px;
    left: 50%;
    margin-left: -490px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    z-index: 200;
    width: 489px;
    height: 232px;
}
.wd-ReserveCallout:after {
    background: url('wd_gameinfo-reserve-ghost_ncsa.png') 0 0 no-repeat;
    background-size: contain;
    top: 25%;
    left: 50%;
    margin-top: -50px;
    margin-left: -240px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    z-index: 100;
    width: 158px;
    height: 153px;
}
/* Buy Page*/
.page-reserve #main {
    padding-top: 500px;
}
.regionReserve {
    border: 15px solid #fff;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 980px;
    padding: 100px 50px 50px;
    position: relative;
    width: 100%;
}
.regionReserve .regionReserve-heading {
    position: absolute;
    bottom: calc(100% + 25px);
    left: 50%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    text-align: center;
    text-transform: uppercase;
}
.regionReserve .regionReserve-heading h1, .regionReserve .regionReserve-heading h3 {
    background: #000;
    display: inline-block;
    line-height: 1;
}
.regionReserve .regionReserve-heading h1 {
    color: #9be829;
    padding: 15px 25px 0;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.regionReserve .regionReserve-heading h3 {
    color: #fff;
    padding: 10px 40px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.regionReserve .custom-dropdown {
    display: none;
}
.regionReserve:before {
    background: url('wd_reserve-header_ncsa.png') 0 0 no-repeat;
    background-size: 1161px 573px;
    position: absolute;
    left: 50%;
    bottom: calc(100% - 122px);
    pointer-events: none;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 1161px;
    height: 573px;
}
.regionReserve-header {
    color: #999999;
    margin: 20px auto;
    overflow: hidden;
    text-align: center;
    font-size: 0.875rem;
    line-height: 24px;
    letter-spacing: 0em;
}
.regionReserve-header strong {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.regionReserve-header span {
    display: inline-block;
    position: relative;
}
.regionReserve-header span:before, .regionReserve-header span:after {
    background: rgba(109, 109, 109, 0.5);
    height: 1px;
    position: absolute;
    top: 50%;
    width: 500px;
}
.regionReserve-header span:before {
    left: calc(100% + 15px);
}
.regionReserve-header span:after {
    right: calc(100% + 15px);
}
.regionReserve-boxart {
    border: 2px solid #12cffe;
    margin-bottom: 60px;
    padding: 0;
    text-align: center;
}
.regionReserve-boxart-content {
    min-height: 270px;
    padding: 60px 0;
}
.regionReserve-boxart-content img {
    max-width: 100%;
}
.regionReserve-mobileBoxart {
    color: #fff;
    display: none;
    margin: 10px auto 30px;
    text-align: center;
    width: 95%;
}
.regionReserve-mobileBoxart img {
    max-width: 100%;
}
.regionReserve-mobileBoxart .regionReserve-mobilePromo p {
    padding: 20px;
    display: none;
}
.regionReserve-mobileBoxart .regionReserve-mobilePromo.is-hidden {
    display: none;
}
.regionReserve-description {
    background: #12cffe;
    box-sizing: border-box;
    color: #000;
    padding: 0;
}
.regionReserve-description p {
    padding: 20px;
    display: none;
}
.regionReserve-description.is-hidden {
    display: none;
}
.regionReserve-editionsList, .regionReserve-platformsList {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.regionReserve-editionsList {
    text-align: center;
}
.regionReserve-editionsList li {
    display: inline-block;
    margin: 5px 5px 0;
    width: calc(33.33% - 10px);
}
.regionReserve-editionsList a {
    background: transparent;
    color: #fff;
    display: block;
    padding: 5px 0;
    position: relative;
    text-align: center;
    transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.125rem;
    line-height: 40.5px;
    letter-spacing: 0em;
}
.regionReserve-editionsList a span {
    border-bottom: 2px solid transparent;
    line-height: 1;
    display: inline-block;
    padding-bottom: 3px;
    transition: border 0.3s;
}
html:not(.is-mobile) .regionReserve-editionsList a:hover {
    color: #12cffe;
}
html:not(.is-mobile) .regionReserve-editionsList a:hover span {
    border-color: #12cffe;
}
html:not(.is-mobile) .regionReserve-editionsList a.is-active:hover, .regionReserve-editionsList a.is-active {
    background: #12cffe;
    color: #000;
}
.regionReserve-platforms, .regionReserve-order {
    float: left;
}
.regionReserve-platforms {
    margin-bottom: 30px;
    margin-right: 30px;
    text-align: center;
    width: calc(60% - 30px);
}
.regionReserve-platformsList {
    color: #fff;
    margin-bottom: 30px;
}
.regionReserve-platformsList li {
    float: left;
    margin: 0 5px;
    width: calc(33.33% - 10px);
}
.regionReserve-platformsList a {
    background: transparent;
    border: 2px solid #12cffe;
    box-sizing: border-box;
    display: block;
    line-height: 50px;
    transition: background 0.2s ease-in-out;
}
html:not(.is-mobile) .regionReserve-platformsList a:hover {
    background: rgba(18, 207, 254, 0.5);
}
.regionReserve-platformsList a span {
    background-image: url('wd_reserve-platforms-sprite_ncsa.png');
    background-repeat: no-repeat;
    background-position: 0 0;
    display: inline-block;
    text-indent: -999px;
    overflow: hidden;
    vertical-align: middle;
}
.regionReserve-platformsList a.is-active, .regionReserve-platformsList a.is-active:hover {
    background: #12cffe;
}
.regionReserve-platformsList a.is-disabled, .regionReserve-platformsList a.is-disabled:hover {
    background: transparent;
    cursor: disabled;
    pointer-events: none;
    opacity: 0.5;
}
.regionReserve-platformsList a.ps4 span {
    background-position: 0 -50px;
    width: 98px;
    height: 23px;
}
.regionReserve-platformsList a.xbox-one span {
    background-position: 0 -26px;
    width: 97px;
    height: 23px;
}
.regionReserve-platformsList a.pc span {
    background-position: 0 0;
    width: 28px;
    height: 23px;
}
.regionReserve-order {
    margin-left: 30px;
    text-align: center;
    width: calc(40% - 30px);
}
.regionReserve-order a {
    display: block;
}
.regionReserve-order a.is-disabled {
    cursor: not-allowed;
    opacity: 0.5;
}
.regionReserve-order .btn-addToCart {
    margin: 0 auto 30px;
    max-width: 75%;
    line-height: 16px;
}
.regionReserve-order .btn-addToCart .btn-text {
    box-sizing: border-box;
    display: inline-block;/* fix for IE, has to be inline box or hover effect bugs out*/
    height: 24px;
    margin: 10px auto;
}
.regionReserve-order .uplay-cart {
    color: #12cffe;
    text-decoration: underline;
    font-size: 0.875rem;
    letter-spacing: 0em;
}
.regionReserve-retailers {
    clear: both;
}
.regionReserve-retailers ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    text-align: center;
}
html:not(.is-mobile) .regionReserve-retailers ul:hover li {
    opacity: 0.65;
}
html:not(.is-mobile) .regionReserve-retailers ul:hover li:hover {
    opacity: 1;
}
.regionReserve-retailers li {
    display: inline-block;
    margin: 10px;
    transition: opacity 0.2s ease-in-out;
    width: 20%;
}
.regionReserve-retailers img {
    max-width: 100%;
}
.modal-buyWrap {
    background: rgba(0, 0, 0, 0.85);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 900;
    width: 100%;
    height: 100%;
}
.modal-buyWrap .close {
    background: url('wd_buy_close_ncsa.gif');
    width: 18px;
    height: 18px;
    position: absolute;
    top: 50px;
    left: calc(50% + 452px);
}
.modal-buyWrap .focus {
    background: url('wd_buy_focus_ncsa.gif');
    width: 18px;
    height: 18px;
    position: absolute;
    top: 50px;
    left: calc(50% + 429px);
}
.modal-buyWrap iframe {
    position: absolute;
    top: 75px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 940px;
    height: 560px;
}
/* Reserve Page Promos*/
.regionReservePromos {
    *zoom: 1;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin: 90px auto 50px;
}
.regionReservePromos:before {
    content: '';
    display: table;
}
.regionReservePromos:after {
    content: '';
    display: table;
    clear: both;
}
.regionReservePromos .span6 {
    width: calc(99.99% * 1/2 - (80px - 80px * 1/2));
    margin-left: 0;/* override inherited layout styles*/
}
.regionReservePromos .span6:nth-child(1n) {/* override inherited layout styles*/
    float: left;
    margin-right: 80px;
    clear: none;
}
.regionReservePromos .span6:last-child {/* override inherited layout styles*/
    margin-right: 0;
}
.regionReservePromos .span6:nth-child(2n) {/* override inherited layout styles*/
    margin-right: 0;
    float: right;
}
.regionReservePromos .span6:nth-child(2n + 1) {/* override inherited layout styles*/
    clear: left;
}
.regionReservePromos-promo {
    color: #fff;
    font-size: 0.875rem;
    line-height: 26px;
    letter-spacing: 0em;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
}
.regionReservePromos-promoMedia {
    text-align: center;
}
.regionReservePromos-promoMedia img {
    max-width: 100%;
    width: 100%;
    height: auto;
}
.regionReservePromos-promoContent {
    margin: 10px auto;
    padding: 0 5px;
}
.promoUbiworkshop {
    background-color: #12cffe;
    background-image: url('wd_promo-ubiworkshop-bg_ncsa.png'), url('wd_digital-wave-before_ncsa.png');
    background-position: calc(50% + 410px) 100%, 0 0;
    background-repeat: no-repeat, repeat-x;
}
.promoUbiworkshop .container {
    padding: 200px 0 120px;
    position: relative;
}
.promoUbiworkshop .container:before {
    background: url('wd_promo-skeleton_ncsa.png') 0 0 no-repeat;
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    right: -260px;
    z-index: 10;
    width: 463px;
    height: 499px;
}
.promoUbiworkshop.is-hovering .container:before {
    background-position: 0 -499px;
}
.promoUbiworkshop.is-hovering .promoUbiworkshop-content:before {
    top: -90px;
    opacity: 1;
}
.promoUbiworkshop-media, .promoUbiworkshop-content {
    box-sizing: border-box;
    float: left;
}
.promoUbiworkshop-media {
    margin-right: 30px;
    text-align: center;
    width: calc(50% - 30px);
}
.promoUbiworkshop-media img {
    max-width: 100%;
}
.promoUbiworkshop-content {
    position: relative;
    width: 40%;
    z-index: 5;
}
.promoUbiworkshop-content h4 {
    background: #000;
    color: #fff;
    display: block;
    line-height: 1;
    padding: 20px 30px 30px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.promoUbiworkshop-content h4 span {
    color: #9be829;
    display: block;
    font-size: 0.75rem;
    line-height: 27px;
    letter-spacing: 0em;
}
.promoUbiworkshop-content:before {
    background: url('wd_ubiworkshop-cat_ncas.png') 0 0 no-repeat;
    opacity: 0;
    top: 0;
    right: 10%;
    transition: top 0.1s, opacity 0.1s;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    z-index: -1;
    width: 89px;
    height: 90px;
}
.promoUbiworkshop-blurb {
    background: #000;
    color: #fff;
    margin-top: 10px;
    padding: 35px;
    font-size: 0.6875rem;
    line-height: 23px;
    letter-spacing: 0em;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
}
.promoUbiworkshop-blurb p {
    margin-bottom: 20px;
}
.promoUbiworkshop-blurb .btn {
    margin-top: 30px;
}
.wd-NewsIntro {
    background: url('wd_news-intro_ncsa.png') 0 0 no-repeat;
}
.wd-NewsIntro .hero-title {
    color: #ff730e;
}
.wd-NewsIntro .alignCenter {
    height: 425px;
    padding-top: 125px;
}
.wd-NewsIntro:before {
    background: url('wd_news-intro-before_ncsa.png') 0 0 no-repeat;
    left: -28px;
    top: 291px;
    width: 96px;
    height: 64px;
}
.wd-NewsIntro:after {
    background: url('wd_news-intro-after_ncsa.png') 0 0 no-repeat;
    right: -62px;
    top: 198px;
    width: 153px;
    height: 102px;
}
.wd-newsLanding {
    background: #fff;
    *zoom: 1;
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 70px;
    margin-bottom: 36px;
    position: relative;
}
.wd-newsLanding:before {
    content: '';
    display: table;
}
.wd-newsLanding:after {
    content: '';
    display: table;
    clear: both;
}
.wd-newsLanding .newsLanding-newslist {
    float: left;
    width: 70%;
}
.wd-newsLanding .newsLanding-ads {
    box-sizing: border-box;
    float: left;
    margin: 40px 0 0 0;/* 130px 0 0 0 with filter items*/
    padding-right: 40px;
    text-align: right;
    width: 30%;
}
.wd-newsLanding .item.custom-class {
    display: none;
}
.wd-newsLanding.is-loading {
    -webkit-animation: shake-slow 5s ease-in-out infinite;
            animation: shake-slow 5s ease-in-out infinite;
}
.wd-prompt-loader {
    display: block;
    position: fixed;
    top: 250px;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
}
.wd-prompt-loader:before, .wd-prompt-loader:after {
    width: 100%;
    height: 100%;
}
.wd-prompt-loader:before {/*background: url('wd_meda-preloader-teeth_ncsa.gif') 0 10% no-repeat, url('wd_meda-preloader-teeth_ncsa.gif') 0 60% no-repeat;*/
    background: url('wd_news-preloader_ncsa.gif') -7% -7%no-repeat, url('wd_news-preloader_ncsa.gif') 17% 71% no-repeat, url('wd_news-preloader_ncsa.gif') 108% 53% no-repeat;
}
.wd-prompt-loader:after {
    background: url('wd_news-preloader_ncsa.gif') 14% 100% no-repeat;
    -webkit-transform: rotate(186deg);
        -ms-transform: rotate(186deg);
            transform: rotate(186deg);
}
.wd-prompt-loader.is-hidden {
    opacity: 0;
    z-index: -100;
}
.newsfilter-newslist .item {
    display: none;
}
.wd-newsList {
    box-sizing: border-box;
    padding: 40px 40px 0 40px;
}
/* 130px 40px 0 40px for filter items*/
.wd-newsList .newsList-item {
    border-bottom: 1px dotted #cccccc;
    margin-bottom: 28px;
    padding-bottom: 28px;
}
.wd-newsList h3 {
    display: block;
    line-height: 0;
    margin: 0;
}
.wd-newsList h3 span {
    background: #000;
    color: #fff;
    display: inline;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 2rem;
    line-height: 37px;
    letter-spacing: 0em;
}
.wd-newsList .wd-newsItem-media img {
    width: 100%;
}
.wd-newsList .wd-newsItem-date, .wd-newsList .wd-newsItem-teaser p {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-newsList .wd-newsItem-date {
    color: #6d6d6d;
    display: inline-block;
    padding: 5px 0;
    font-size: 0.6875rem;
    line-height: 30px;
    letter-spacing: 0.05em;
}
.wd-newsList .wd-newsItem-date span {
    margin-left: 10px;
}
.wd-newsList .wd-newsItem-teaser {
    margin-top: 20px;
}
.wd-newsList .wd-newsItem-teaser p {
    color: #4f4f4f;
    font-size: 0.875rem;
    line-height: 21px;
    letter-spacing: 0em;
}
.wd-newsList .wd-newsItem-teaser a {
    box-sizing: border-box;
    color: #000;
    display: inline-block;
    line-height: 25px;
    margin-top: 30px;
    max-height: 30px;/* required for hover animation*/
    padding: 2px 5px 3px;
    position: relative;
    overflow: hidden;
    transition: color 0.1s ease-in-out;
    text-transform: lowercase;
    z-index: 5;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 600;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
html:not(.is-mobile) .wd-newsList .wd-newsItem-teaser a:hover {
    color: #fff;
}
html:not(.is-mobile) .wd-newsList .wd-newsItem-teaser a:hover:before {
    color: #fff;
}
html:not(.is-mobile) .wd-newsList .wd-newsItem-teaser a:hover:after {
    width: 100%;
}
.wd-newsList .wd-newsItem-teaser a:before {
    color: #12cffe;
    content: '/';
    display: inline-block;
    margin-right: 5px;
    transition: color 0.1s ease-in-out;
}
.wd-newsList .wd-newsItem-teaser a:after {
    background: #12cffe;
    top: 0;
    left: 0;
    transition: width 0.1s ease-in-out;
    z-index: -1;
    width: 0;
    height: 100%;
}
.wd-newsList .wd-newsItem-meta {
    position: relative;
}
.wd-newsList .wd-newsItem-comments {
    background: #12cffe;/*padding: 9px;*/
    min-width: 31px;
    position: absolute;
    right: 0;
    text-align: center;
    top: 40px;
    width: auto;
    height: 26px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    line-height: 24px;
    letter-spacing: 0em;
}
.wd-newsList .wd-newsItem-comments:before {
    bottom: -5px;
    left: 50%;
    margin-left: -4px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 4px 0 4px;
    border-color: #12cffe transparent transparent transparent;
}
.wd-filter {/* For News Landing since it has to span two columns*/
}
.wd-filter-list, .wd-filter .newsfilter-labellist {
    border-bottom: 1px dotted #cccccc;
    box-sizing: border-box;
    padding: 40px 0;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    line-height: 27px;
    letter-spacing: 0em;
    width: 100%;
    height: auto;
}
.wd-filter-list a, .wd-filter .newsfilter-labellist a {
    color: #4f4f4f;
    display: inline-block;
    height: 28px;
    padding: 0 12px;
    position: relative;
    transition: 0.3s;
}
html:not(.is-mobile) .wd-filter-list a:hover, html:not(.is-mobile) .wd-filter .newsfilter-labellist a:hover {
    color: #12cffe;
}
html:not(.is-mobile) .wd-filter-list a:hover:before, html:not(.is-mobile) .wd-filter .newsfilter-labellist a:hover:before {
    opacity: 1;
}
html:not(.is-mobile) .wd-filter-list a.clicked:hover, html:not(.is-mobile) .wd-filter .newsfilter-labellist a.clicked:hover {}
html:not(.is-mobile) .wd-filter-list a.clicked:hover:before, html:not(.is-mobile) .wd-filter .newsfilter-labellist a.clicked:hover:before {
    opacity: 0;
}
.wd-filter-list a:before, .wd-filter .newsfilter-labellist a:before {
    background: #12cffe;
    height: 2px;
    bottom: 2px;
    left: 12px;
    right: 12px;
    opacity: 0;
    transition: opacity 0.3s;
}
.wd-filter-list a.clicked, .wd-filter-list a.clicked:hover, .wd-filter .newsfilter-labellist a.clicked, .wd-filter .newsfilter-labellist a.clicked:hover {
    background: #000;
    color: #12cffe;
}
.wd-filter-list a.clicked:before, .wd-filter-list a.clicked:hover:before, .wd-filter .newsfilter-labellist a.clicked:before, .wd-filter .newsfilter-labellist a.clicked:hover:before {
    opacity: 0;
}
.wd-filter.wd-filter-absolute .newsfilter-labellist {
    background: #fff;
    display: none;/* hidden until client wants visible*/
    left: 40px;
    position: absolute;
    width: calc(100% - 80px);
}
.newsfilter-pagination {
    margin-top: 60px;
    overflow: auto;
}
.newsfilter-pagination .newsfilter-next, .newsfilter-pagination .newsfilter-prev {
    margin-bottom: 40px;
}
.newsfilter-pagination .newsfilter-next:active, .newsfilter-pagination .newsfilter-prev:active {
    top: 0;
}
.newsfilter-pagination .newsfilter-prev {
    float: left;
    margin-left: 40px;
}
.newsfilter-pagination .newsfilter-next {
    float: right;
    margin-right: 40px;
}
.wd-filterMobile {
    background: #000;
    display: none;
    position: relative;
    width: 100%;
    height: 34px;
}
.wd-filterMobile select {
    background: transparent;
    border: none;
    border-radius: 0;
    box-sizing: border-box;
    color: #12cffe;
    padding-left: 20px;
    -moz-appearance: none;
    -webkit-appearance: none;
    -webkit-border-radius: none;
    width: 100%;
    height: 100%;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.125rem;
    line-height: 27px;
    letter-spacing: 0em;
}
.wd-filterMobile option {
    background-color: #000;
}
.wd-filterMobile select::-ms-expand {
    display: none;
}
.wd-filterMobile:after {
    right: 15px;
    top: 10px;
    pointer-events: none;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 13px 6.5px 0 6.5px;
    border-color: #12cffe transparent transparent transparent;
}
.news-detail {
    margin: 0 auto;
    background: #fff;
    padding: 37px;
    position: relative;
}
.news-detail .thumb_news {
    max-width: 100%;
    width: 100%;
}
.news-detail .news_title {
    display: block;
    line-height: 36px;
    margin: 15px auto;
    max-width: 65%;
}
.news-detail .news_title span {
    background: #000;
    color: #fff;
    display: inline;
    line-height: 18px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.news-detail .news_date-clone {
    color: #6d6d6d;
    display: inline-block;
    margin: 20px auto 10px auto;
    text-align: left;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    line-height: 21px;
    letter-spacing: 0.05em;
}
.news-detail p {
    color: #6d6d6d;
    margin: 17px 0;
    text-align: left;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    line-height: 26px;
    letter-spacing: 0em;
}
.news-detail img {
    max-width: 100%;
}
.news-detail a {/*@extend %strikethrough-basic;*/
    color: #12cffe;
    transition: color 0.2s ease-in-out;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
html:not(.is-mobile) .news-detail a:hover {
    color: #2ff5d7;
}
.news-detail blockquote {
    box-sizing: border-box;
    color: #6d6d6d;
    margin: 35px 0;
    padding: 35px 10%;
    position: relative;
    text-align: center;
    width: 100%;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.375rem;
    line-height: 37px;
    letter-spacing: 0em;
}
.news-detail blockquote:before, .news-detail blockquote:after {
    left: 0;
    width: 100%;
}
.news-detail blockquote:before {
    border-top: 1px solid #ededed;
    top: 0;
}
.news-detail blockquote:after {
    border-bottom: 1px solid #ededed;
    bottom: 0;
}
.news-detail h1, .news-detail h2, .news-detail h3, .news-detail h4, .news-detail h5, .news-detail h6 {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.news-detail:before {
    background: url('wd_newsdetail-ear-before_ncsa.png') no-repeat 0 0;
    left: -63px;
    top: 49px;
    width: 86px;
    height: 158px;
}
#main .newsItem-Container {
    background: #fff;
    box-sizing: border-box;
    float: none;
    margin: 250px auto 0 auto;
    max-width: 90%;
    padding-bottom: 50px;
    position: relative;
    text-align: center;
    width: 1180px;
    z-index: 100;
}
#main .newsItem-Container:before, #main .newsItem-Container:after {
    z-index: -100;
}
#main .newsItem-Container:before {
    background: url('wd_newsdetail-before_ncsa.png') no-repeat 0 0;
    left: -278px;
    top: -78px;
    width: 898px;
    height: 1024px;
}
#main .newsItem-Container:after {
    background: url('wd_newsdetail-after_ncsa.png') no-repeat 0 0;
    right: -140px;
    top: 100px;
    width: 732px;
    height: 1024px;
}
.share_twitter, .share_facebook, .share_google {
    margin: 0 10px;
    display: inline-block;
}
.share_twitter iframe, .share_facebook iframe, .share_google iframe {/*opacity: 0;*/
}
.newsarticle-shares {
    padding: 20px 0 40px;
    text-align: center;
}
.newsarticle-shares > span {
    display: block;
    margin-bottom: 15px;
}
.newsarticle-shares a {
    color: #12cffe;
    margin: 0 10px;
    font-size: 1.125rem;
    letter-spacing: 0em;
}
html:not(.is-mobile) .newsarticle-shares a:hover {
    color: #1fb1d5;
}
/*
.share_twitter,
.share_facebook,
.share_google {
	color: $color-blue;
	margin: 0 10px;
	position: relative;
	@mixin share;
	@mixin size 17px, 17px;

	&:before {
		@extend %pseudoElementAbsolute;
		@extend .icon;
		@mixin font-size 18, 16, 0;
	}
}

.share_twitter {
	&:before {
		@extend .icon-twitter:before;
	}
}

.share_facebook {
	&:before {
		@extend .icon-facebook:before;
	}
}

.share_google {
	&:before {
		@extend .icon-google-plus:before;
	}
}
*/
.user_comment {
    display: block !important;
}
.user_comment_entry {
    border: 1px solid #ededed;
    box-sizing: border-box;
    color: #6d6d6d;
    padding: 10px;
    font-size: 0.875rem;
    line-height: 24px;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    width: 100%;
    height: 100px;
}
.user_comment_entry:focus {
    outline: none;
}
.addUserEntry {
    background: transparent;
    border: none;
    color: #12cffe;
    cursor: pointer;
    float: right;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    line-height: 25px;
    letter-spacing: 0.05em;
    -webkit-appearance: none;
}
.agegate-passed .addUserEntry {
    cursor: url('wd_middle-finger-cursor_ncsa.cur'), pointer;
}
.wd-author {
    max-width: 575px;
    margin: 55px auto;
    overflow: auto;
    width: 100%;
    height: auto;
}
.wd-author .wd-author--left {
    float: left;
    text-align: left;
    width: 25%;
}
.wd-author .wd-author--right {
    color: #6d6d6d;
    float: right;
    text-align: left;
    width: 75%;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-author h3 {
    font-weight: normal;
    font-size: 0.875rem;
    line-height: 19px;
    letter-spacing: 0.05em;
}
.wd-author h3 span {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-author p {
    font-size: 0.75rem;
    line-height: 18px;
    letter-spacing: 0em;
}
.relatednews .contentsummary-scrollable {
    height: auto !important;/* Override inline style*/
    position: static;
    width: 100%;
}
.relatednews .items {
    position: relative;
    height: auto;
}
.relatednews .item {
    border: none;
    box-sizing: border-box;
    float: left;
    height: auto;
    width: 33.33%;
}
.relatednews .item img {
    height: auto;
}
.relatednews .page {
    height: auto !important;/* Override inline style*/
    overflow: auto;
}
.relatednews.contentsummary .vertical {
    border-top: none;
}
.wd-relatedNews {
    background: #f2f2f2;
    margin: 0 auto 18px;
    max-width: 90%;
    position: relative;
    width: 1180px;
}
.wd-relatedNews .wd-relatedNews-headline {
    color: #ff730e;
    display: block;
    margin: 0 auto;
    padding: 35px 0 15px 0;
    text-transform: uppercase;
    width: 92%;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.375rem;
    line-height: 32px;
    letter-spacing: 0em;
}
.wd-relatedNews .page {
    margin: 0 auto;
    width: 83%;
}
.wd-relatedNews .item {
    transition: 0.4s ease-in-out;
}
.wd-relatedNews .item a {
    display: block;
}
.wd-relatedNews .item img {
    display: block;
    float: none;
    margin: 0 auto;
    max-width: 310px;
    width: 100%;
}
.wd-relatedNews .item h3 {
    clear: both;
    display: block;
    min-height: 42px;
    line-height: 0;
    margin: 16px auto 12px auto;
}
.wd-relatedNews .item h3 a {
    background: #000;
    color: #fff;
    display: inline;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.125rem;
    line-height: 21px;
    letter-spacing: 0em;
}
/* Read more link*/
.wd-relatedNews .item p a {
    color: #12cffe;
    padding-left: 10px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.8125rem;
    line-height: 16px;
    letter-spacing: 0em;
}
.wd-relatedNews .item strong, .wd-relatedNews .item .news_date {
    display: none;
}
html:not(.is-mobile) .wd-relatedNews .item:hover {
    background: #fff;
}
.wd-MediaIntro {
    background: url('wd_media-intro_ncsa.jpg') 0 0 no-repeat;
}
.wd-MediaIntro .hero-title {
    color: #2ff5d7;
}
.wd-MediaIntro .alignCenter {
    height: 425px;
    padding-top: 125px;
}
.wd-MediaIntro:before {
    background: url('wd_media-intro-before_ncsa.png') 0 0 no-repeat;
    left: -25px;
    top: 233px;
    width: 54px;
    height: 105px;
}
.wd-MediaIntro:after {
    background: url('wd_media-intro-after_ncsa.png') 0 0 no-repeat;
    right: -50px;
    top: 213px;
    width: 77px;
    height: 142px;
}
.wd {}
#main .wd-mediaModule {
    background: #fff;
    box-sizing: border-box;
    float: none;
    margin: 70px auto 20px auto;
    max-width: 90%;
    min-height: 700px;
    padding: 0 40px;
    position: relative;
    width: 1180px;
}
#main .wd-mediaModule.is-loading {
    -webkit-animation: shake 0.1s ease-in-out infinite;
            animation: shake 0.1s ease-in-out infinite;
}
.wd-mediaModule #player {
    display: none;
}
.wd-mediaModule .wd-Player {
    bottom: 0;
    display: none;
    position: absolute;
}
.wd-mediaModule-video {
    height: 400px;
}
.wd-mediaModule-list {
    margin-top: 20px;
    text-align: left;
}
html:not(.is-mobile) .wd-mediaModule-list:hover .list-item span {
    background: rgba(0, 0, 0, 0.6);
    z-index: 1;
    width: 100%;
    height: 100%;
}
html:not(.is-mobile) .wd-mediaModule-list:hover .list-item:hover {
    outline: 10px solid #12cffe;
}
html:not(.is-mobile) .wd-mediaModule-list:hover .list-item:hover span {
    background: transparent;
}
.wd-mediaModule-list li {
    box-sizing: border-box;
    display: inline-block;
    line-height: 0;
    margin: 0 0.66% 1.33% 0.66%;
    position: relative;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    transition: opacity 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
    transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
    transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
    width: 32%;
}
.wd-mediaModule-list li span {
    background: transparent;
    display: block;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    transition: background 0.2s ease-in-out;
    width: 0;
    height: 0;
}
.wd-mediaModule-list li a {
    display: inline-block;
    background-size: cover;
    background-position: center;
    position: relative;
    padding-top: 56%;
    width: 100%;
    height: 0;
}
.wd-mediaModule-list li.is-hidden {
    margin: 0;
    opacity: 0;
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
    position: absolute;
    width: 0;
    height: 0;
}
.wd-mediaModule-list li.is-hidden a:before, .wd-mediaModule-list li.is-hidden a:after {
    display: none;
    transition: none;
}
/*li:nth-child(3n+3) { margin-right: 0; }*/
.wd-mediaModule-list li[data-type="youtube"] a {}
.wd-mediaModule-list li[data-type="youtube"] a:before {
    background: #12cffe;
    border-radius: 50%;
    left: 50%;
    top: 50%;
    margin: -24px 0 0 -24px;
    z-index: 1;
    width: 57px;
    height: 57px;
}
.wd-mediaModule-list li[data-type="youtube"] a:after {
    left: 50%;
    top: 50%;
    margin: -9px 0 0 -5px;
    -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
            transform: rotate(0);
    -webkit-transform-origin: 35% 50%;
        -ms-transform-origin: 35% 50%;
            transform-origin: 35% 50%;
    transition: 0.3s cubic-bezier(0.350, 0.005, 0.920, 0.170);
    z-index: 2;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 0 14px 25px;
    border-color: transparent transparent transparent #fff;
}
.wd-teeth-loader {
    left: 0;
    top: 0;
    position: absolute;
    transition: opacity 0.4s ease-in-out;
    width: 100%;
    height: 100%;
}
.wd-teeth-loader:before, .wd-teeth-loader:after {
    width: 100%;
    height: 100%;
}
.wd-teeth-loader:before {/*background: url('wd_meda-preloader-teeth_ncsa.gif') 0 10% no-repeat, url('wd_meda-preloader-teeth_ncsa.gif') 0 60% no-repeat;*/
    -webkit-animation: moveTeethLeft 3s infinite;
            animation: moveTeethLeft 3s infinite;
    background: url('wd_meda-preloader-teeth_ncsa.gif') 90% 10% no-repeat,  url('wd_meda-preloader-teeth_ncsa.gif') 70% 100% no-repeat;
    -webkit-transform: scaleX(-1) translateX(-100%);
        -ms-transform: scaleX(-1) translateX(-100%);
            transform: scaleX(-1) translateX(-100%);
    overflow: visible;
    -webkit-filter: flipH;
            filter: flipH;
}
.wd-teeth-loader:after {
    background: url('wd_meda-preloader-teeth_ncsa.gif') 20% 10% no-repeat, url('wd_meda-preloader-teeth_ncsa.gif') -5% 60% no-repeat;
    -webkit-animation: moveTeethRight 3s infinite;
            animation: moveTeethRight 3s infinite;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%);
}
.wd-teeth-loader.is-hidden {
    opacity: 0;
    z-index: -100;
}
.wd-MediaList {
    background: #fff;
    *zoom: 1;
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 70px;
    position: relative;
}
.wd-MediaList:before {
    content: '';
    display: table;
}
.wd-MediaList:after {
    content: '';
    display: table;
    clear: both;
}
/* 404 Styles*/
.page-404 #main {
    padding-top: 220px;
    position: relative;
}
.page-404 #main:before {
    background: url('wd_error-body-before_ncsa.png') 0 0 no-repeat;
    left: 0;
    top: 10%;
    opacity: 0.75;
    width: 130px;
    height: 157px;
}
.error404 {
    background: url('wd_error-404-bg_ncsa.png') 50% 50% no-repeat;
    background-size: contain;
    color: #fff;
    position: relative;
    text-align: center;
    width: 100vw;
    height: 50vh;
}
.error404 h1, .error404 h3 {
    line-height: 1;
}
.error404 h1 {
    font-size: 12.5rem;
    letter-spacing: 0em;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
}
.error404 h3 {
    text-transform: uppercase;
}
.error404-message {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
/* Trailer Page Styles*/
.page-trailer #main {
    background: url('wd_gameinfo-map-bolts-1_ncsa.png') 10px 50% no-repeat, url('wd_gameinfo-map-bolts-2_ncsa.png') calc(100% + 40px) 0 no-repeat;
    padding: 270px 0;
}
.wd-trailerWrap {
    color: #fff;
    *zoom: 1;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 120px;
    text-align: center;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 600;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-trailerWrap:before {/*-webkit-backface-visibility: hidden;*//*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    content: '';
    display: table;
}
.wd-trailerWrap:after {/*-webkit-backface-visibility: hidden;*//*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    content: '';
    display: table;
    clear: both;
}
.wd-trailerWrap h1 {
    background: #000;
    display: inline-block;
    color: #12cffe;
    padding: 3px 20px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-trailer {
    margin: 0 auto 30px;
    max-width: 75%;
}
.mediaModal {
    background: #000;
    position: fixed;
    transition: all 0.2s ease-in-out;
    top: -100%;
    left: 0;
    opacity: 0;
    z-index: -100;
    width: 100%;
    height: 100vh;
}
.mediaModal .mediaModal-header {
    background: rgba(0, 0, 0, 0.8);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 500;
    width: 100%;
    height: 60px;
}
.mediaModal .mediaModal-meta {
    line-height: 60px;
    padding: 0 20px;
    -webkit-transform: translate(0, -100%);
        -ms-transform: translate(0, -100%);
            transform: translate(0, -100%);
    transition: -webkit-transform 0.3s ease-in-out 0.4s;
    transition: transform 0.3s ease-in-out 0.4s;
    transition: transform 0.3s ease-in-out 0.4s, -webkit-transform 0.3s ease-in-out 0.4s;
}
.mediaModal .mediaModal-meta > * {
    display: inline-block;
}
.mediaModal .mediaModal-meta .list-social li {
    display: inline-block;
    margin: 0 10px;
}
.is-active.mediaModal .mediaModal-meta {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
}
.mediaModal .mediaModal-position, .mediaModal .mediaModal-download {
    position: relative;
}
.mediaModal .mediaModal-position {
    font-size: 0.6875rem;
    line-height: 11px;
    letter-spacing: 0em;
    width: 35px;
    height: 35px;
}
.mediaModal .mediaModal-position:before {
    top: 15px;
}
.mediaModal .mediaModal-title {}
.mediaModal .mediaModal-download {}
.mediaModal .mediaModal-close {
    background: #12cffe;
    color: #000;
    cursor: pointer;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translate(0, -200%);
        -ms-transform: translate(0, -200%);
            transform: translate(0, -200%);
    transition: ransform 0.3s ease-in-out 0.4s;
    width: 30px;
    height: 30px;
}
html:not(.is-mobile) .mediaModal .mediaModal-close:hover {}
html:not(.is-mobile) .mediaModal .mediaModal-close:hover:before {
    width: 100%;
    height: 100%;
}
.is-active.mediaModal .mediaModal-close {
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
}
.mediaModal .mediaModal-close:after {
    color: #000;
    font-size: 30px;
    line-height: 0;
    left: -1px;
    top: 16px;
    position: absolute;
    transition: 0.3s;
    width: 30px;
    height: 30px;
}
.mediaModal .mediaModal-close:before {
    background: #fff;
    transition: width 0.2s ease-in-out;
    width: 0;
    height: 100%;
}
.mediaModal .mediaModal-controls {}
.mediaModal .mediaModal-prev, .mediaModal .mediaModal-next {
    font-size: 1.875rem;
    line-height: 40px;
    letter-spacing: 0em;
}
html:not(.is-mobile) .mediaModal .mediaModal-prev:hover:after {
    clip: rect(0, 30px, 35px, 0);
}
html:not(.is-mobile) .mediaModal .mediaModal-next:hover:after {
    clip: rect(0, 35px, 35px, 5px);
}
.mediaModal .mediaModal-next:after {
    clip: rect(0, 35px, 35px, 25px);
}
.mediaModal .mediaModal-content {
    position: relative;
    height: 100%;
    text-align: center;
}
.mediaModal .mediaModal-content img {
    display: block;
    margin: 0 auto;
    position: relative;
    top: 50%;
    max-width: 100%;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
}
.mediaModal .mediaModal-content .wd-Player {
    margin: 0 auto 0;
}
.mediaModal.is-active {
    top: 0;
    opacity: 1;
    z-index: 9999;
}
.page-gameinfo .mediaModal .mediaModal-controls {
    display: none;
}
.page-gameinfo .mediaModal .mediaModal-content .wd-Player {
    top: -51px;
}
/* Agegate Styles*/
/* Shared*/
.verify {
    position: relative;/* @media screen and (max-height: 780px) {*//*   .esrb_pc {*//*     top: 10px; bottom: auto; left: 10px; right: auto;*//*     transform: none;*//*   }*//* }*//* @media screen and (max-width: 736px) and (orientation: landscape) {*//*   .esrb_pc {*//*     top: 10px; bottom: auto; left: 10px; right: auto;*//*     transform: none;*//*   }*//* }*//* @media screen and (max-width: 568px) and (orientation: landscape) {*//*   .esrb_pc {*//*     top: auto; bottom: 10px; left: auto; right: 10px;*//*     transform: none;*//*   }*//* }*/
}
.verify .esrb_pc {
    position: absolute;
    bottom: 10px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
}
.verify .error {
    background: #fff;
}
.verify .error span {
    display: inline-block;
    padding: 20px 0;
}
/* Full Page Agegate*/
.hide-body, .wd-Fullscreen .verify[class^="hide-comp"], .wd-Fullscreen .verify[class*=" hide-comp"] {
    background: #000 url('wd_agegate-bg_ncsa.jpg') 50% 0 no-repeat;
    background-size: cover;
    overflow: hidden;
}
.js-agegate-return {
    color: #12cffe;
    cursor: pointer;
    position: absolute;
    top: 10px;
    right: 10px;
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.js-agegate-return i {
    position: relative;
    top: 4px;
    font-size: 1.5rem;
    letter-spacing: 0em;
}
/* Asset Level Agegates*/
.verify[class^="hide-comp"], .verify[class*=" hide-comp"] {
    background: #000 url('wd_agegate-asset-bg_ncsa.jpg') 50% 0  repeat;
    width: 100% !important;/* .esrb_pc {*//*   bottom: auto; left: auto; top: 10px; right: 10px;*//*   transform: none;*//* }*/
}
/* Inners*/
.age-cont {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 50%;
}
.age-cont .age-gate-link {
    display: none;
}
.age-cont .logo {
    background: url('wd_agegate-logo_ncsa.png') 50% 0 no-repeat;
    background-size: contain;
    display: block;
    margin: 0 auto 80px;
    width: 180px;
    height: 210px;
}
.age-cont .legal-msg, .age-cont .age-gate-form {
    background: #fff;
    box-sizing: border-box;
    width: 100%;
}
.age-cont .legal-msg:before, .age-cont .legal-msg:after, .age-cont .age-gate-form:before, .age-cont .age-gate-form:after {
    background-image: url('wd_agegate-artifacts_ncsa.png');
    background-repeat: no-repeat;
    background-position: 0 0;
}
.age-cont .legal-msg {
    color: #000;
    margin-bottom: -1px;/* just to avoid a line through the content*/
    padding: 40px 0 30px;
    position: relative;
    font-size: 1.375rem;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.age-cont .legal-msg:before {
    background-position: 0 -25px;
    bottom: 100%;
    right: 0;
    width: 254px;
    height: 17px;
}
.age-cont .legal-msg:after {
    background-position: 0 -52px;
    top: 0;
    left: calc(100% - 2px);
    width: 56px;
    height: 154px;
}
.age-cont .age-gate-form {
    position: relative;
}
.age-cont .age-gate-form:before {
    background-position: -59px -158px;
    right: calc(100% - 2px);
    top: 50%;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 10px;
    height: 48px;
}
.age-cont .age-gate-form:after {
    background-position: 0 0;
    left: 20px;
    top: calc(100% - 2px);
    width: 400px;
    height: 15px;
}
.age-cont .birthday-picker select {
    background: #000 url('wd_agegate-dropdown-arrow_ncsa.png') calc(100% - 15px) 50% no-repeat;
    border: 2px solid #12cffe;
    border-radius: 0;
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    height: 40px;
    line-height: 40px;
    margin: 0 10px;
    padding: 0 15px;
    outline: none;
    width: calc(30% - 20px);
    -moz-appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    font-size: 0.875rem;
    letter-spacing: 0em;
}
.age-cont .birthday-picker select::-ms-expand {
    display: none;
}
.age-cont .submit {
    background: #12cffe;
    border: 0;
    border-radius: 0;
    color: #000;
    cursor: pointer;
    display: inline-block;
    line-height: 40px;
    margin: 15px auto 20px;
    text-transform: uppercase;
    width: 140px;
    -webkit-appearance: none;
    font-size: 0.875rem;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.age-cont .submit:hover {
    background: rgb(18, 177, 217);
}
@-webkit-keyframes cursor {

    0% {
        opacity: 0;
    }

    40% {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    90% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}
@keyframes cursor {

    0% {
        opacity: 0;
    }

    40% {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    90% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}
.command-list {
    display: none;
}
.wd {}
.wd-Terminal {
    padding: 0;
    width: 50%;
    height: 50%;
    min-width: 320px;
    max-width: 640px;
    position: absolute;/*height: 100vh;*/
    background: #000;
    overflow: auto;
    z-index: 10000;
    left: 25%;
    top: 25%;
    box-shadow: 10px 10px 5px rgba(0,0,0,0.3);
    border: 5px solid white;
}
.wd-Terminal-header {
    position: fixed;
    height: 25px;
    width: 100%;
    background-color: white;
    top: 0;
}
.wd-Terminal-cmd {
    padding: 25px;
}
.wd-Terminal-line {
    width: 100%;
}
.wd-Terminal-line img {
    width: 100%;
}
.wd-Terminal-prefix {
    color: red;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 9px;
}
.wd-Terminal-input {
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 9px;
    color: #fff;
    white-space: pre;
}
.wd-Terminal-inputHidden {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    background: transparent;
    border: none;
}
.wd-Terminal--active .wd-Terminal-input {}
.wd-Terminal--active .wd-Terminal-input:after {
    content: "_";
    opacity: 0;
    -webkit-animation: cursor 1s infinite;
            animation: cursor 1s infinite;
}
/* Culture Styles
----------------------------------------------------------- */
.page-culture .wd-globalFooter {
    background: #000;
    position: relative;
    z-index: 10;
}
.wd-CultureCallout {
    padding: 240px 0 20px;
    position: relative;
    text-align: center;
    z-index: 10;
}
.wd-CultureCallout .dedsec-character {
    display: block;
    position: absolute;
    overflow: hidden;
}
.wd-CultureCallout .dedsec-character img, .wd-CultureCallout .dedsec-character canvas {
    opacity: 0;
}
.wd-CultureCallout .dedsec-character canvas {
    position: absolute;
    top: 0;
    left: 0;
}
.wd-CultureCallout .dedsec-character.is-visible img, .wd-CultureCallout .dedsec-character.is-visible canvas {
    opacity: 1;
}
.wd-CultureCallout .dedsec-character.dedsec-character-1 {
    top: 240px;
    left: 0;
    width: 174px;
    height: 421px;
}
.wd-CultureCallout .dedsec-character.dedsec-character-2 {
    top: 220px;
    right: 0;
    width: 87px;
    height: 298px;
}
.wd-CultureCallout .dedsec-character.dedsec-character-3 {
    top: 260px;
    left: 25%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 88px;
    height: 262px;
}
.wd-CultureCallout-title {
    background: #000;
    color: #fe0c6c;
    display: inline;
    line-height: 1;
    margin: 0;
    text-transform: uppercase;
    padding: 3px 20px;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-CultureCallout-backdrop {
    background: url('wd_culture-bg_ncsa.png') 50% 0 no-repeat;
    position: absolute;
    pointer-events: none;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: -1;
    width: 1748px;
    height: 1000px;
}
.wd-CultureCallout-backdrop .container {
    height: 100%;
    position: relative;
}
.wd-Culture {
    background: linear-gradient(to top, rgba(70, 70, 70, 0.5) 0%, transparent 50%, transparent 100%);
    padding: 0 0 40px;
    position: relative;
    z-index: $zIndex-5--culture;
}
.wd-Culture .wd-filterMobile {
    box-sizing: border-box;
    margin: 0 auto;
    width: 97%;
}
.wd-Culture .wd-filterMobile select {
    outline: none;
}
.wd-Culture-filterWrap {
    clear: both;
    display: block;
    margin: 20px auto;
    position: relative;
    text-align: center;
    z-index: 100;
}
.wd-Culture-filter {
    background: #000;
    display: inline-block;
    margin: 0;
    padding: 0;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-Culture-filter li {
    float: left;
    margin: 10px;
}
.wd-Culture-filter a {
    color: #fff;
    display: block;
    line-height: 30px;
    padding: 0 10px;
    transition: all 0.2s ease-in-out;
    text-transform: uppercase;
}
.wd-Culture-filter a:hover, .wd-Culture-filter a.is-active {
    background: #12cffe;
    color: #000;
}
.wd-CultureFeatured-item, .wd-CultureList-item {
    background: #fff;
    border: 15px solid #000;
    box-sizing: border-box;
    float: left;
    position: relative;
    overflow: hidden;
}
.wd-CultureFeatured, .wd-CultureList {
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 10;
}
.wd-CultureFeatured img, .wd-CultureList img {
    max-width: 100%;
}
.wd-CultureFeatured a, .wd-CultureList a {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.wd-itemContents {
    display: none;
}
.wd-itemSummary {
    background: #000;
    box-sizing: border-box;
    color: #a3a3a3;
    padding: 10px 5px 0;
    position: absolute;
    bottom: 0;
    left: 0;
    text-transform: uppercase;
    width: 100%;
    z-index: 75;
    font-size: 0.6875rem;
    line-height: 18px;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-itemSummary strong, .wd-itemSummary p, .wd-itemSummary span {
    display: block;
}
.wd-itemSummary strong {
    color: #fff;
    font-size: 0.875rem;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.wd-itemSummary p {
    margin: 10px 0;
}
.wd-itemSummary span {
    color: #12cffe;
    min-height: 20px;
    text-transform: none;
    font-size: 0.75rem;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
/* Featured*/
.wd-CultureFeatured {
    margin: 10px auto 0;
}
.wd-CultureFeatured .wd-itemSummary {
    padding: 10px 5px;
    bottom: 20px;
    width: 40%;
}
.wd-CultureFeatured-item {
    margin: 10px;
    padding-bottom: calc(50% * 9/16);
    overflow: hidden;
    text-align: left;
    width: calc(50% - 20px);
}
.dedsec-haxed {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
            transform-origin: 0 0;
    z-index: 50;
    width: 768px;
    height: 432px;
}
.dedsec-haxed.dedsec-haxed-pink {
    background: url('wd_culture-hax-sprite-pink_ncsa.png');
}
.dedsec-haxed.dedsec-haxed-green {
    background: url('wd_culture-hax-sprite-green_ncsa.png');
}
.dedsec-haxed.dedsec-haxed-blue {
    background: url('wd_culture-hax-sprite-blue_ncsa.png');
}
/* List*/
.wd-CultureList {
    list-style-type: none;
}
.wd-CultureList:hover .wd-CultureList-item a:before {
    opacity: 1;
}
.wd-CultureList:hover .wd-CultureList-item:hover a:before {
    opacity: 0;
}
.wd-CultureList-item {
    margin: 10px;
    padding-bottom: calc(33.33% * 9/16);
    overflow: hidden;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    transition: border-color 0.2s ease-in-out;
    width: calc(33.33% - 20px);
}
.wd-CultureList-item a {
    display: block;
}
.wd-CultureList-item a:before {
    background: rgba(0, 0, 0, 0.6);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
    z-index: 100;
}
.wd-CultureList-item .dedsec-haxed {
    -webkit-transform: scale(0.5) translate(-50%, -50%);
        -ms-transform: scale(0.5) translate(-50%, -50%);
            transform: scale(0.5) translate(-50%, -50%);
}
.wd-CultureList-item:hover {
    border-color: #12cffe;
}
.wd-CultureList-item.is-hidden {
    display: none;
}
.wd-CultureList-item.is-haxed-pink {
    outline: 2px solid #fe0c6c;
}
.wd-CultureList-item.is-haxed-green {
    outline: 2px solid #9be829;
}
.wd-CultureList-item.is-haxed-blue {
    outline: 2px solid #12cffe;
}
.wd-CultureList-itemSummary {}
/* Modal*/
.wd-Culture-modalWrap {
    box-sizing: border-box;
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 800;
}
.wd-Culture-modalWrap img {
    max-width: 100%;
}
.wd-Culture-modalWrap .wd-Culture-modal, .wd-Culture-modalWrap .wd-Culture-modalOverlay {
    position: absolute;
}
.wd-Culture-modalWrap .wd-Culture-modal {
    background: #000;
    border: 10px solid #fff;
    box-sizing: border-box;
    color: #a1a1a1;
    margin: 0 auto;
    max-width: 1180px;
    padding: 80px 35px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: 800;
    width: 96%;
    height: 570px;
}
.wd-Culture-modalWrap .wd-Culture-modalContent {
    height: 100%;
    position: relative;
    overflow: hidden;
}
.wd-Culture-modalWrap .wd-Culture-modalClose {
    background: #12cffe;
    border: 0;
    color: #000;
    position: absolute;
    top: -50px;
    right: -10px;
    outline: none;
    width: 26px;
    height: 26px;
}
.wd-Culture-modalWrap .wd-Culture-modalOverlay {
    background: rgba(0, 0, 0, 0.9);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 700;
}
.wd-Culture-modalWrap.is-open {
    display: block;
}
.modal-textNode {
    height: 100%;
    padding-right: 15px;
    position: relative;
}
[class^="modal-col-"], [class*=" modal-col-"] {
    box-sizing: border-box;
    float: left;
    margin: 0 10px;
}
.modal-col-1-3 {
    width: calc(33.33% - 20px);
}
.modal-col-2-3 {
    width: calc(66.66% - 20px);
}

/* Crowdtwist */
/* Shared Crowdtwist styles*/
.page-crowdtwist #main {
    background: url('wd_ct-default-page-bg_ncsa.png') 50% 0 no-repeat;
    padding-top: 270px;
}
.ct-pageHeader {
    color: #fff;
    margin: 80px auto 0 auto;
    text-transform: uppercase;
}
.ct-pageHeader + .ct-regionHeader {
    margin-top: 60px;
}
.ct-pageHeader-description {
    color: #fff;
    text-transform: uppercase;
    font-size: 0.875rem;
    line-height: 22px;
    letter-spacing: 0.1em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.ct-regionHeader {
    background: #000;
    color: #fff;
    display: inline-block;/*margin: 50px auto;*/
    margin: 0 auto;
    max-width: 1200px;
    padding: 15px 45px 5px 45px;
    text-align: center;
    text-transform: uppercase;
    font-size: 0.875rem;
    line-height: 26px;
    letter-spacing: 0em;
}
.ct-regionHeader h1, .ct-regionHeader h2, .ct-regionHeader h3 {
    color: #fff;
    margin: 0 auto;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 3rem;
    line-height: 68px;
    letter-spacing: 0em;
}
.ct-regionHeader h3 {
    line-height: 48px;
}
.ct-regionHeader .highlight-green {
    color: #9be829;
    margin: 0;
}
.ct-regionHeader .lowercase {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    line-height: 36px;
    text-transform: lowercase;
}
.ct-filters {
    background: #000;
    display: table;
    margin: 20px auto;
    padding: 15px;
    list-style-type: none;
    font-size: 1.125rem;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.ct-filters li {
    background: transparent;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    margin: 0 10px;
    padding: 10px 15px;
    transition: all 0.2s ease-in-out;
}
html:not(.is-mobile) .ct-filters li:hover {
    background: #12cffe;
    color: $color-back;
}
.ct-filters li:first-child {
    margin-left: 0;
}
.ct-filters li:last-child {
    margin-right: 0;
}
.ct-filters li.active {
    background: #12cffe;
    color: $color-back;
}
body.agegate-passed .ct-filters li {
    cursor: url('wd_middle-finger-cursor_ncsa.cur'), pointer;
}
/* 
   Basic Crowdtwist Widget Styling
   ========================================================================== */
.ct-widgets {
    text-align: center;
}
.ct-widgets iframe {
    display: block;
    margin: 0 auto !important;
    width: 100% !important;
}
.ct-widgets .btn-container {
    background: #000;
    display: inline-block;
    padding: 5px 25px 20px 25px;
}
/* Override Crowdtist buttons tyling*/
.ct-widgets .btn {
    background: #12cffe !important;
    box-sizing: border-box;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    color: #000;
    display: inline-block !important;
    line-height: 50px !important;
    font-size: 14px !important;
    padding: 0 25px !important;
}
html:not(.is-mobile) .ct-widgets .btn:hover {
    background: rgb(18, 177, 217) !important;
}
.ct-widgets--full iframe {
    max-width: 1200px;
}
.ct-widgets--condensed iframe {
    max-width: 1113px;
}
.ct-widget--rewardsHistory {
    background: url('wd_digital-wave-before_ncsa.png'), url('wd_digital-wave-after_ncsa.png') 0 bottom, #12cffe;
    background-repeat: repeat-x;
    margin-top: 125px;
    padding: 80px 0 165px 0;
}
.ct-widget--rewardsHistory iframe {
    padding: 70px 25px;
}
.ct-rewards-full .ct-pageHeader {
    margin-bottom: 55px;
}
.ct-rewards-activites {
    padding: 50px 0 170px 0;
}
.ct-widget--featuredRewards {
    background: url('wd_digital-wave-before_ncsa.png'), url('wd_digital-wave-after_ncsa.png') 0 bottom, #12cffe;
    background-repeat: repeat-x;
    margin-top: 125px;
    padding: 80px 0 165px 0;
}
.ct-widget--featuredRewards.full-rewards {
    padding: 50px 0 30px 0;
}
/* Prevent crowdtwist breakpoints from messing up page*/
.page-crowdtwist {
    padding: 0 !important;
}
/* CrowdTwist navigation*/
.ct-navigation {
    background: #000;
    color: #12cffe;
    margin: 0 auto;
    max-width: 1200px;
    position: relative;
    text-transform: uppercase;
    width: 100%;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    letter-spacing: 0em;
}
.ct-navigation .ct-navigationCurrent {
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    display: none;
    padding: 20px;
    position: relative;
    text-align: center;
    font-size: 1.125rem;
    letter-spacing: 0em;
}
.ct-navigation .ct-navigationCurrent:after {
    border-top: 13px solid #12cffe;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
}
.ct-navigation ul {
    box-sizing: border-box;
    float: right;
    margin: 0;
    padding: 30px 15px;
    list-style-type: none;
}
.ct-navigation li {
    float: left;
}
.ct-navigation li:not(:first-child):before {
    content: '/';
    display: inline-block;
    margin: 0 10px;
}
.ct-navigation a {
    border-bottom: 2px solid transparent;
    color: #12cffe;
    display: inline-block;
    padding: 10px;
    position: relative;
    transition: color 0.2s ease;
}
html:not(.is-mobile) .ct-navigation a:hover {
    color: #fff;
}
html:not(.is-mobile) .ct-navigation a:hover:before {
    opacity: 1;
}
.ct-navigation a:before {
    background: #fff;
    height: 2px;
    left: 10px;
    right: 10px;
    bottom: 5px;
    opacity: 0;
    transition: opacity 0.2s ease;
}
.ct-navigation a:hover {
    text-decoration: none !important;
}
body.agegate-passed .ct-navigation .ct-navigationCurrent {
    cursor: url('wd_middle-finger-cursor_ncsa.cur'), pointer;
}
.ct-navigation--overview {/* background: $color-black !important;*//* border: 14px solid $color-white;*/
    box-sizing: border-box;
    margin: 0;
    float: left;/* max-width: 1200px;*/
    overflow: hidden;
}
.ct-navigation--overview iframe {
    height: 95px !important;
}
.ct-navigation--overview .ct-navigation--left, .ct-navigation--overview .ct-navigation--right {
    float: left;
}
.ct-navigation--overview .ct-navigation--left {
    width: 75%;
}
.ct-navigation--overview .ct-navigation--right {
    display: none;/* added per client*/
    width: 25%;
    position: relative;
}
.ct-navigation--overview .ct-navigation--right:after {
    background: #6d6d6d;
    top: 10px;
    left: 0;
    -webkit-transform: rotate(25deg);
        -ms-transform: rotate(25deg);
            transform: rotate(25deg);
    width: 2px;
    height: 79px;
}
/* Crowdtwist Landing Page*/
.page-crowdtwist-landing #main {
    background: url('wd_ct-callout-bg_ncsa.png') 50% 0 no-repeat;
}
/* Callout*/
.ct-landingCallout {
    padding: 400px 30px 0;
}
.ct-landingCallout .ct-landingCallout-content {
    color: #9be829;
    margin: 0 auto;
    max-width: 600px;
    position: relative;
    text-align: center;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    line-height: 26px;
    letter-spacing: 0em;
}
.ct-landingCallout .ct-landingCallout-content p {
    position: relative;
    z-index: 2;
}
.ct-landingCallout .ct-landingCallout-content:before {
    background: url('wd_ct-shadow_ncsa.png') center center no-repeat;
    background-size: contain;
    left: 50%;
    top: -75%;
    margin: 0 0 0 -150%;
    width: 300%;
    height: 300%;
}
/* Steps*/
.ct-landingSteps {
    box-sizing: border-box;
    margin: 60px auto;
    max-width: 1200px;
    width: 100%;
}
.ct-landingSteps-step {
    box-sizing: border-box;
    color: #999;
    float: left;
    margin: 0 20px;
    position: relative;
    width: calc(33.33% - 28px);
    font-size: 0.875rem;
    letter-spacing: 0em;
}
.ct-landingSteps-step a {
    border: 1px solid #fff;
    box-sizing: border-box;
    color: inherit;
    display: block;
    min-height: 190px;
    padding: 40px 20px 20px;
    position: relative;
    z-index: 5;
    width: 100%;
    height: 100%;
}
.ct-landingSteps-step a h4 {
    color: #9be829;
    text-transform: uppercase;
    transition: color 0.2s ease-in-out;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.ct-landingSteps-step a strong {
    color: #fff;
    display: block;
    line-height: 1;
    margin: 10px 0;
    text-transform: uppercase;
    transition: color 0.2s ease-in-out;
    font-size: 1.5rem;
    letter-spacing: 0em;
}
html:not(.is-mobile) .ct-landingSteps-step a:hover h4 {
    color: #12cffe;
}
html:not(.is-mobile) .ct-landingSteps-step a:hover strong {
    color: #000;
}
html:not(.is-mobile) .ct-landingSteps-step a:hover:before {
    width: 100%;
}
.ct-landingSteps-step a:before {
    background: #fff;
    box-sizing: border-box;
    top: 0;
    left: 0;
    bottom: 0;
    transition: width 0.2s ease-in-out;
    width: 0;
    z-index: -1;
}
.ct-landingSteps-step:before {
    border-top: 3px solid #fff;
    border-right: 3px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 3px solid #fff;
    top: 10px;
    left: 10px;
}
.ct-landingSteps-step:after {
    border-top: 3px solid transparent;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    border-left: 3px solid transparent;
    bottom: 10px;
    right: 10px;
}
.ct-landingSteps-step.ct-landingSteps-step--first {
    margin-left: 0;
}
.ct-landingSteps-step.ct-landingSteps-step--last {
    margin-right: 0;
}
.ct-landingSteps-signup {
    color: #fff;
    clear: both;
    padding-top: 40px;
    text-align: center;
    width: 100%;
}
.ct-landingSteps-signup .btn {
    margin-bottom: 30px;
}
/* Activities*/
.ct-landingActivities {
    background: url('wd_ct_mummy_ncsa.png') center top no-repeat;
}
.ct-landingActivities .btn {
    margin-bottom: 55px;
}
/* Rewards*/
.ct-landingRewards {
    background: #12cffe;
    padding: 130px 0;
    position: relative;
    text-align: center;
    z-index: 5;
}
.ct-landingRewards .ct-landingRewards-container {
    max-width: 1200px;
    margin: 0 auto;
}
.ct-landingRewards .ct-regionHeader {
    margin: 0 auto 50px auto;
}
.ct-landingRewards .ct-regionHeader h3 {
    background: #000;
    display: inline-block;
    line-height: 1;
    padding: 15px 25px;
}
.ct-landingRewards:before, .ct-landingRewards:after {
    left: 0;
    z-index: -1;
    width: 100%;
    height: 426px;
}
.ct-landingRewards:before {
    background: url('wd_digital-wave-before_ncsa.png') 0 0 repeat-x;
    top: 0;
}
.ct-landingRewards:after {
    background: url('wd_digital-wave-after_ncsa.png') 0 0 repeat-x;
    bottom: 0;
}
.ct-landingRewards-reward {
    box-sizing: border-box;
    float: left;
    text-align: left;
    width: 33.33%;
}
.ct-landingRewards-reward .ct-landingRewards-rewardImg {
    margin-bottom: 15px;
    text-align: center;
}
.ct-landingRewards-reward .ct-landingRewards-rewardImg img {
    display: inline-block;
    max-width: 100%;
}
.ct-landingRewards-reward .ct-landingRewards-rewardContent {
    background: #000;
    box-sizing: border-box;
    color: #fff;
    min-height: 260px;
    padding: 50px 30px;
    position: relative;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 0.875rem;
    line-height: 26px;
    letter-spacing: 0em;
}
.ct-landingRewards-reward .ct-landingRewards-rewardContent strong {
    display: inline-block;
    line-height: 1;
    margin-bottom: 30px;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.5rem;
    letter-spacing: 0em;
}
.ct-landingRewards-reward .ct-landingRewards-rewardContent:after {
    background: #4d4d4d;
    top: 30px;
    bottom: 20px;
    right: 0;
    width: 1px;
}
.ct-landingRewards-viewAll {/*background: $color-black;*/
    clear: both;
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 0;
    text-align: center;
}
/* Join*/
.ct-landingJoin {/* FF3.6-15 *//* Chrome10-25,Safari5.1-6 */
    background: url('wd_ct-joindedsec-bg_ncsa.png') 50% 100% no-repeat, linear-gradient(to bottom,  rgba(0,0,0,0.3) 0%,rgba(79,79,79,0.3) 100%);/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d000000', endColorstr='#4d4f4f4f',GradientType=0 );/* IE6-9 */
    color: #fff;
    padding: 280px 0 80px;
    text-align: center;
}
.ct-landingJoin h3 {
    display: block;
    line-height: 1;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.ct-landingJoin h3 span {
    background: #000;
    display: inline-block;
    padding: 3px 15px;
}
.ct-landingJoin h3:first-of-type span {
    padding-top: 10px;
}
.ct-landingJoin h3:first-child {
    margin-bottom: -7px;
}
.ct-landingJoin h3:first-child span {
    padding: 3px 15px 0 15px;
}
.ct-landingJoin .ct-landingJoin-content {
    background: #000;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 280px;
    padding: 0 15px 15px;
}
.ct-landingJoin .ct-landingJoin-content .btn {
    margin-bottom: 25px;
}
/* Crowdtwist Activities Styles*/
/* FAQ Crowdtwist styles*/
.accordion.ct-faqsList {
    background: transparent;
    border: 0;
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
}
.accordion.ct-faqsList > div {
    margin-bottom: 15px;
}
.accordion.ct-faqsList h2 {
    background: #4f4f4f;
    border: 2px solid #4f4f4f;
    box-sizing: border-box;
    line-height: 1;
    padding: 20px 25px;
    text-align: center;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.125rem;
    letter-spacing: 0em;
}
.accordion.ct-faqsList h2 a {
    color: #fff;
}
.accordion.ct-faqsList .pane {
    border: 2px solid #12cffe;
    padding: 30px 60px;
    text-align: center;
    font-size: 0.875rem;
    line-height: 29px;
    letter-spacing: 0em;
}
.accordion.ct-faqsList .pane a {
    color: #12cffe;
}
html:not(.is-mobile) .accordion.ct-faqsList .pane a:hover {
    text-decoration: underline;
}
/* Opened Styles*/
.accordion.ct-faqsList .accordionHead.current h2 {
    background: #12cffe;
    border-color: #12cffe;
}
.accordion.ct-faqsList .accordionHead.current h2 a {
    color: #000;
}
body.agegate-passed .accordion.ct-faqsList h2 {
    cursor: url('wd_middle-finger-cursor_ncsa.cur'), pointer;
}
/* Crowdtwist error styles*/
.page-crowdtwist-error #main {}
.ct-regionHeader--error {
    background: transparent;
    box-sizing: border-box;
    color: #fff;
    display: block;
    padding: 0 30px;
    text-align: center;
    font-size: 0.875rem;
    letter-spacing: 0em;
}
.ct-regionHeader--error p {
    text-transform: lowercase;
}
.ct-regionHeader--error h3 {
    line-height: 1;
    margin-bottom: 40px;
    text-transform: uppercase;
    font-size: 3.75rem;
    line-height: 90px;
    letter-spacing: -0.05em;
}
.ct-regionHeader--error strong {
    display: inline-block;
    margin-bottom: 20px;
    text-transform: none;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 600;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.125rem;
    letter-spacing: 0em;
}
.ct-regionHeader--error a {
    color: #12cffe;
}
html:not(.is-mobile) .ct-regionHeader--error a:hover {
    text-decoration: underline;
}
.ct-errorWrap {
    color: #fff;
    margin: 0 auto;
    max-width: 1200px;
    text-align: center;
    width: 100%;
}
.ct-errorWrap h2 {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.ct-errorWrap h4 {
    line-height: 1;
    font-style: italic;
    margin-top: 30px;
}
.ct-error-reasons {
    color: #999;
    margin: 40px auto;
    padding: 0;
    list-style-type: none;
}
.ct-error-reasons strong {
    color: #fff;
    display: inline-block;
    line-height: 1.25em;
    margin-bottom: 20px;
    text-transform: uppercase;
    font-size: 1.125rem;
    letter-spacing: 0em;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.ct-error-reasons a {
    color: #12cffe;
}
html:not(.is-mobile) .ct-error-reasons a:hover {
    text-decoration: underline;
}
.ct-error-reasons li {
    background: transparent;
    padding: 20px;
}
.ct-error-reasons li:nth-child(odd) {
    background: rgba(79, 79, 79, 0.3);
}
/* Footer Navigation*/
.ct-footer-navigation {/*background: url('wd_ct-footer-nav-bg_ncsa.png') 50% 50% no-repeat, url('wd_global-body-gradient-bg_ncsa.jpg') 0 0 repeat-x;*//* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,4f4f4f+100&0.3+0,0.3+100 *//* FF3.6-15 *//* Chrome10-25,Safari5.1-6 */
    background: url('wd_ct-footer-nav-bg_ncsa.png') 50% 50% no-repeat, linear-gradient(to bottom,  rgba(0,0,0,0.3) 0%,rgba(79,79,79,0.3) 100%);/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d000000', endColorstr='#4d4f4f4f',GradientType=0 );/* IE6-9 */
    color: #12cffe;
    margin-top: 50px;
    padding: 110px 0;
    text-transform: uppercase;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.875rem;
    letter-spacing: 0em;
}
.ct-footer-navigation ul {
    background: #000;
    display: table;
    margin: 0 auto;
    padding: 10px 50px;
    list-style-type: none;
    text-align: center;
}
.ct-footer-navigation li {
    display: inline-block;
}
.ct-footer-navigation li:not(:last-child):after {
    content: '/';
    display: inline-block;
    margin: 0 10px;
}
.ct-footer-navigation a {
    border-bottom: 2px solid transparent;
    color: #12cffe;
    display: inline-block;
    padding: 10px;
    position: relative;
    transition: color 0.2s ease;
}
html:not(.is-mobile) .ct-footer-navigation a:hover {
    color: #fff;
}
html:not(.is-mobile) .ct-footer-navigation a:hover:before {
    opacity: 1;
}
.ct-footer-navigation a:before {
    background: #fff;
    height: 2px;
    left: 10px;
    right: 10px;
    bottom: 5px;
    opacity: 0;
    transition: opacity 0.2s ease;
}
#tosDialog {
    background: #000;
    border: none;
    border-radius: 0;
}
#tosDialog .modal-header {
    border-bottom: none;
    color: #fff;
    text-transform: uppercase;
}
#tosDialog .modal-header h3 {
    line-height: 54px;
    margin: 10px 0 -10px 0 !important;
}
#tosDialog .modal-body {
    color: #fff;
}
#tosDialog .modal-body h4 {
    line-height: 36px;
}
#tosDialog .modal-body p {
    text-align: left;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
#tosDialog .modal-footer {
    background: #000;
    border-top: none;
    box-shadow: none;
}
#tosDialog .modal-footer .have-read {
    color: #fff;
    display: block !important;
    margin: 0 0 12px 0;
}
/* Override Crowdtist buttons tyling*/
#tosDialog .modal-footer .btn {
    background: #12cffe !important;
    box-sizing: border-box;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    color: #000;
    display: inline-block !important;
    line-height: 50px !important;
    font-size: 14px !important;
    padding: 0 25px !important;
    text-shadow: none !important;
}
html:not(.is-mobile) #tosDialog .modal-footer .btn:hover {
    background: rgb(18, 177, 217) !important;
}
.activity-list .ct-header-color, #activity-list .ct-header-color {
    display: none;
}
.activity-list .container, #activity-list .container {
    text-align: center;
}
.activity-list ul, #activity-list ul {
    text-align: left;
}
.activity-list li, .activity-list .activity, #activity-list li, #activity-list .activity {
    background: transparent !important;
    border: none !important;
    display: inline-block;
    margin: 15px;
    padding: 0 !important;
    position: relative;
    width: 350px;
    height: 350px;
}
.activity-list li div, .activity-list .activity div, #activity-list li div, #activity-list .activity div {
    clear: both;
    display: block !important;
    float: none !important;
    margin: 0 auto;
    position: relative;
    text-align: center;
    z-index: 100;
    font-size: 0.875rem;
    line-height: 22px;
    letter-spacing: -0.05em;
}
.activity-list li .image-container, .activity-list .activity .image-container, #activity-list li .image-container, #activity-list .activity .image-container {
    background: transparent !important;
    margin-top: 115px;
}
.activity-list li .title, .activity-list .activity .title, #activity-list li .title, #activity-list .activity .title {
    color: #fff !important;
    font-weight: 400 !important;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 400;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.activity-list li .description, .activity-list .activity .description, #activity-list li .description, #activity-list .activity .description {
    display: none !important;
}
.activity-list li .ct-points-color, .activity-list .activity .ct-points-color, #activity-list li .ct-points-color, #activity-list .activity .ct-points-color {
    color: #9be829 !important;
    font-style: normal !important;
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
}
.activity-list li:before, .activity-list li:after, .activity-list .activity:before, .activity-list .activity:after, #activity-list li:before, #activity-list li:after, #activity-list .activity:before, #activity-list .activity:after {
    left: 50%;
    top: 0;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
            transform-origin: 0 0;
    width: 245px;
    height: 245px;
}
.activity-list li:before, .activity-list .activity:before, #activity-list li:before, #activity-list .activity:before {
    background: #000;
    transition: 0.3s ease-in-out;
}
.activity-list li:after, .activity-list .activity:after, #activity-list li:after, #activity-list .activity:after {
    background: linear-gradient(to right, #fff 50%, transparent 50%), 
						linear-gradient(to right, #fff 50%, transparent 50%), 
						linear-gradient(to bottom, #fff 50%, transparent 50%), 
						linear-gradient(to bottom, #fff 50%, transparent 50%);
    background-size: 55px 3px, 55px 3px, 3px 55px, 3px 55px;
    background-position: 0 0, 0 100%, 0 0, 100% 0;
    background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
}
.activity-list li:hover, .activity-list .activity:hover, #activity-list li:hover, #activity-list .activity:hover {}
.activity-list li:hover:before, .activity-list .activity:hover:before, #activity-list li:hover:before, #activity-list .activity:hover:before {
    background: rgba(255, 255, 255, 0.1);
}
.activity-list li:hover:after, .activity-list .activity:hover:after, #activity-list li:hover:after, #activity-list .activity:hover:after {
    -webkit-animation: ct-moving-border 1.5s linear infinite;
            animation: ct-moving-border 1.5s linear infinite;
}

/* Components */
/* Ubibar Styles*/
/* --------------------------------------------------*/
.ubibar {
    top: 0;
    left: 0;
    position: fixed;
    z-index: 1000;
}
.wd {}
.wd-Preloader {
    background: #000;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
}
.wd-Preloader:before {
    background: url('wd_preloader-brain_ncsa.gif') 50% 0 no-repeat;
    color: #fff;
    content: 'Loading...';
    padding-top: 240px;
    top: 50%;
    left: 50%;
    text-align: center;
    text-transform: uppercase;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 240px;
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 1.3125rem;
    letter-spacing: 0em;
}
/* Keypad Styles*/
/* --------------------------------------------------*/
.wd-Keypad {
    background: #141414;
    display: none;
    font-family: 'PexicoMicroMono';
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1000;
}
.wd-Keypad.is-showing {
    display: block;
}
.wd-Keypad-close {
    background: rgba(255, 0, 0, 0.5);
    display: block;
    line-height: 28px;
    text-align: center;
    text-transform: uppercase;
}
.wd-Keypad-input {
    color: #fff;
    font-size: 42px;
    margin: 10px auto;
    padding: 0;
    list-style-type: none;
    text-align: center;
    width: 95%;
}
.wd-Keypad-input li {
    background: #171717;
    box-sizing: border-box;
    float: left;
    display: block;
    margin: 0 2px 0 3px;
    min-height: 100px;
    padding: 25px 0;
    transition: background 0.3s ease-in-out;
    width: calc(25% - 5px);
}
.wd-Keypad-input li.is-correct {
    -webkit-animation: flash-correct 0.8s 2 linear;
            animation: flash-correct 0.8s 2 linear;
}
.wd-Keypad-input li.is-incorrect {
    -webkit-animation: flash-incorrect 0.8s 2 linear;
            animation: flash-incorrect 0.8s 2 linear;
}
.wd-Keypad-keys {
    margin: 0;
    padding: 0;
    list-style-type: none;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    width: 100%;
}
.wd-Keypad-keys li {
    background: #2a2a2a;
    box-sizing: border-box;
    color: #f5f5f5;
    cursor: pointer;
    font-size: 24px;
    float: left;
    display: block;
    line-height: 100px;
    height: 100px;
    margin: 2px 3px 3px 2px;
    transition: background 0.15s ease-in-out;
    text-align: center;
    width: calc(33.333% - 5px);
}
.wd-Keypad-keys li:active {
    background: #9be828;
}
.wd-Keypad-keys .wd-Keypad-keys--inactive {
    cursor: pointer;
}
.wd-Keypad-keys .wd-Keypad-keys--inactive:active {
    background: inherit;
}
.wd {}
.wd-Map {
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    cursor: -webkit-grab;
    cursor: grab;
}
.wd-Map-Wrapper {/*overflow: hidden;*/
    position: relative;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    direction: inline-block;
}
.wd-Map-Tiles {
    z-index: 0;
    position: absolute;
}
.wd-Map-Tile {
    position: absolute;
    pointer-events: none;
}
.wd-Map-Markers {
    z-index: 1;
    position: absolute;
}
.wd-Map-Marker {
    position: absolute;
}
.wd-Map-Navigation {
    position: absolute;
    bottom: 64px;
    right: 32px;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    z-index: 1;
}
.wd-Map-Zoomin {
    display: inline-block;
    width: 32px;
    height: 32px;
    left: 0;
    top: 0;
    position: absolute;
    background: transparent url('experience-map-zoomin.png');
    cursor: hand;
}
.wd-Map-Zoomout {
    display: inline-block;
    width: 32px;
    height: 32px;
    left: 0;
    top: 32px;
    position: absolute;
    background: transparent url('experience-map-zoomout.png');
    cursor: hand;
}
/* POC Experience Styles*/
/* --------------------------------------------------*/
.page-experience-poc {
    background: url('bg-experience-map-poc.jpg') 50% 0 no-repeat;
    background-size: cover;
    position: relative;
}
.page-experience-poc .wd-Map {
    cursor: default;
}
.page-experience-poc .wd-globalFooter {
    display: none;
}
.page-experience-poc > .socket-token {
    background: #fff;
    box-sizing: border-box;
    display: block;
    font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
    font-size: 16px;
    padding: 4px 8px;
    position: absolute;
    bottom: 0;
    right: 0;
}
.wd-Map-ctaWrap {
    background: #000;
    box-sizing: border-box;
    color: #fff;
    font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
    font-weight: bold;
    padding: 30px;
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
.wd-Map-ctaWrap h2 {
    display: block;
    font-size: 60px;
    line-height: 1;
    margin: 0;
    text-transform: uppercase;
}
.wd-Map-ctaWrap a {
    background: #12cffe;
    box-sizing: border-box;
    color: #000;
    display: inline-block;
    height: 50px;
    line-height: 50px;
    font-size: 14px;
    margin: 30px 0;
    padding: 0 30px;
    text-decoration: none;
    text-transform: uppercase;
}
.wd-Map-ctaWrap .socket-token {
    display: block;
}
.wd-Map-ctaWrap .wd-Map-joinRoom {
    display: none;
}
.wd-Map-ctaWrap .wd-Map-joinRoom input {
    border: 0;
    box-sizing: border-box;
    display: block;
    font-size: 28px;
    margin: 30px 0;
    padding: 10px;
    text-align: center;
    width: 100%;
}
.wd-Map-ctaWrap .wd-Map-joinRoom a {
    margin: 0;
}
.wd-Map-ctaWrap.is-mobile {
    width: 90%;
}
.wd-Map-ctaWrap.is-mobile h2 {
    font-size: 32px;
}
.wd-Map-ctaWrap.is-mobile .socket-token {
    display: none;
}
.wd-Modal {
    background: #000;
    border: 8px solid #fff;
    box-sizing: border-box;
    color: #fff;
    display: none;
    font-family: 'PexicoMicroMono';
    font-size: 12px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 700px;
}
.wd-Modal img {
    max-width: 100%;
}
.wd-Modal .wd-Modal-asset, .wd-Modal .wd-Modal-details {
    box-sizing: border-box;
    float: left;
    padding: 10px;
}
.wd-Modal .wd-Modal-asset {
    width: 65%;
}
.wd-Modal .wd-Modal-details {
    padding-bottom: 74px;
    word-wrap: break-word;
    width: 35%;
}
.wd-Modal .wd-Modal-details .wd-qrCode {
    position: absolute;
    bottom: 0;
    right: 0;
    user-drag: none;
}
.wd-Modal .lorem {
    color: #676767;
}
.wd-Modal .wd-KeypadTrigger {
    background: #12cffe;
    box-sizing: border-box;
    color: #000;
    display: none;
    height: 50px;
    line-height: 50px;
    font-size: 14px;
    font-weight: bold;
    margin: 30px 0;
    padding: 0 30px;
    text-decoration: none;
    text-transform: uppercase;
}
.wd-Modal a {
    color: #88cb24;
    text-decoration: none;
}
.wd-Modal.is-open {
    display: block;
}
/* Maintain aspect ratio*/
.slideshow {
    height: 100%;
    position: relative;
    background: transparent url('wd_home-slideshow-bg_ncsa.jpg') no-repeat right;
    background-size: cover;
    padding: 85px 5px 0;
    box-sizing: border-box;
    text-align: center;
    width: 100%;
    height: calc(100vh - 45px);
    margin: 45px 0 0;
    min-height: 980px;
    z-index: 10;
}
.slideshow .slide-images {
    float: left;
    position: relative;
    min-height: 300px;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    cursor: default;
    box-shadow: none;
    border-radius: 0;
}
.slideshow .slide-image {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0;
    margin: 0;
    min-height: 300px;
}
.slideshow .slideshow-wrapper {
    display: block;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    margin: 0 auto;
    width: 960px;
}
.slideshow .slide-images {
    z-index: 1;
    float: none;
    display: block;
    margin: 0 auto;
    width: 100%;
    height: 657px;
}
.slideshow .slide-image {/*overide global*/
    height: inherit;
    min-height: inherit;
    width: inherit;
    border: 14px solid #fff;
    box-sizing: border-box;
}
.slideshow .slide-image .content {
    width: 100%;
    height: 100%;
    overflow: hidden;/* img {
                @media screen and (--mid) {
                    width: 100%;
                }
            } */
}
.slideshow .slide-image .content .cta {
    position: absolute;
    bottom: 0;
    margin-left: 200px;
    text-align: left;
}
.slideshow .slide-image .content .bg-fit {
    width: 100%;
    height: auto;
}
.slideshow .slide-image .content .bg-full {
    position: relative;
    width: 100%;
    height: 100%;
}
.slideshow .slide-image .content .overlay {
    position: absolute;
    margin: -71px 0 0-30px;
    bottom: 0;
    left: 0;
    top: 0;
    right: 0;
    text-align: left;
    overflow: hidden;
    z-index: 1;
}
.slideshow .slide-image .content .overlay img {
    height: 100%;
}
.slideshow .slide-image .content .title {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 700;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 52px;
    color: #fff;
    position: relative;
    background-color: #000;
    line-height: 60px;
    text-transform: uppercase;
    margin-bottom: 50px;
    padding: 5px 10px;
    z-index: 3;
}
.slideshow .slide-image .content p {
    font-family: 'PexicoMicroMono',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-size: 11px;
    color: #fff;
    position: relative;
    background-color: #000;
    margin: 10px 25px 20px 0;
    text-transform: uppercase;
    padding: 15px 260px 50px 20px;
    line-height: 17px;
    clear: both;
    z-index: 3;
}
.slideshow .slide-image .content p a {
    position: absolute;
    top: 20px;
    right: 20px;
}
.slideshow .slide-image canvas {
    position: absolute;
    bottom: 0;
    right: 0;
}
.slideshow .slide-controls {
    display: block;
    position: relative;
    z-index: 1;
    text-align: right;
    padding-top: 10px;
}
.slideshow .slide-tabs {
    position: relative;
    display: inline-block;
    margin: 22px 22px;
    clear: inherit;
}
.slideshow .slide-tabs a {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -476px -64px;
    width: 20px;
    height: 20px;
    margin: 0 10px;
}
.slideshow .slide-tabs a.current {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -476px -86px;
    width: 20px;
    height: 20px;
}
.slideshow .forward, .slideshow .backward {
    position: relative;
    background: transparent;
    border: 1px solid #fff;
    overflow: hidden;
    text-indent: 0;
    top: -9px;
    -webkit-transform: rotate(45deg) translate3d(0, 0, 0);
            transform: rotate(45deg) translate3d(0, 0, 0);
    width: 42px;
    height: 42px;
}
html:not(.is-mobile) .slideshow .forward, html:not(.is-mobile) .slideshow .backward {}
html:not(.is-mobile) .slideshow .forward:hover, html:not(.is-mobile) .slideshow .backward:hover {}
html:not(.is-mobile) .slideshow .forward:hover:before, html:not(.is-mobile) .slideshow .backward:hover:before {
    color: #000;
}
.slideshow .forward:before, .slideshow .backward:before {
    color: #12cffe;
    position: absolute;
    transition: color 0.1s ease-in 0.1s;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: rotate(-45deg) translate3d(0, 0, 0);
            transform: rotate(-45deg) translate3d(0, 0, 0);
    z-index: 1;
    font-size: 3rem;
    line-height: 48px;
    letter-spacing: 0em;
}
.slideshow .forward:after, .slideshow .backward:after {
    background: #fff;
    transition: 0.2s ease-in;
    width: 100%;
    height: 100%;
}
html:not(.is-mobile) .slideshow .forward {}
html:not(.is-mobile) .slideshow .forward:hover {}
html:not(.is-mobile) .slideshow .forward:hover:after {
    -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
            transform: translateY(100%);
    top: -100%;
}
.slideshow .forward:before {
    top: -7px;
    left: 8px;
}
.slideshow .forward:after {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%);
    top: -100%;
}
html:not(.is-mobile) .slideshow .backward {}
html:not(.is-mobile) .slideshow .backward:hover {}
html:not(.is-mobile) .slideshow .backward:hover:after {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%);
    bottom: 0;
}
.slideshow .backward:before {
    top: 4px;
    left: -5px;
}
.slideshow .backward:after {
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
    bottom: -100%;
    left: -100%;
}
.slideshow .fronteyes {
    position: absolute;
    z-index: 2;
    left: calc( 50% - 516px);
    bottom: calc( 50% - 493px);
}
.slideshow .backeye {
    position: absolute;
    z-index: 0;
    bottom: calc( 50% - 400px);
    left: calc( 50% - 200px);
}
.slideshow .artifacts-wrapper {
    display: block;
}
.slideshow-eyes {
    position: absolute;
    left: -30px;
    top: calc(100% - 120px);
    width: 440px;
    height: 290px;
}
.slideshow-eyes .eye {
    position: absolute;
    transition: all 2s ease-in-out;
    z-index: 10;
}
.slideshow-eyes .eye-1 {
    top: 0;
    left: 10px;
    z-index: 2;
}
.slideshow-eyes .eye-2 {
    top: 80px;
    left: 190px;
    z-index: 3;
}
.slideshow-eyes .eye-3 {
    bottom: 10px;
    left: 110px;
    z-index: 5;
}
.slideshow-eyes .eye-4 {
    bottom: 55px;
    left: 260px;
    z-index: 4;
}
.slideshow-eyes .eye-5 {
    bottom: 0;
    left: 35px;
    z-index: 1;
}
.slideshow-eyes .eye-6 {
    bottom: 75px;
    left: 0;
    z-index: 1;
}
.slideshow-eyes .eye-7 {
    bottom: 75px;
    right: 10px;
}
.slideshow-eyes .eye-8 {
    bottom: 120px;
    right: 35px;
    z-index: 2;
}
/* Maintain aspect ratio*/
.gameinfo .carousel-data {
    display: none;
}
.gameinfo .carousel {
    background: transparent url('wd_gameinfo-carousel-bg_ncsa.png') top center;
    background-repeat: no-repeat;
    padding-top: 515px;
    padding-bottom: 150px;
    position: relative;
}
.gameinfo .carousel .carousel_fullscreen_close {
    display: none;
    background: #12cffe;
    color: #000;
    cursor: pointer;
    z-index: 1001;
    top: 90px;
    right: 40px;
    position: fixed;
    -webkit-transform: translate(0, -200%);
        -ms-transform: translate(0, -200%);
            transform: translate(0, -200%);
    transition: color 0.2s ease-in-out, -webkit-transform 0.3s ease-in-out 0.4s;
    transition: color 0.2s ease-in-out, transform 0.3s ease-in-out 0.4s;
    transition: color 0.2s ease-in-out, transform 0.3s ease-in-out 0.4s, -webkit-transform 0.3s ease-in-out 0.4s;
    width: 30px;
    height: 30px;
}
html:not(.is-mobile) .gameinfo .carousel .carousel_fullscreen_close {}
html:not(.is-mobile) .gameinfo .carousel .carousel_fullscreen_close:hover {}
html:not(.is-mobile) .gameinfo .carousel .carousel_fullscreen_close:hover:before {
    color: #fff;
}
.gameinfo .carousel .carousel_fullscreen_close:before {
    color: #000;
    font-size: 30px;
    line-height: 0;
    left: -1px;
    top: 16px;
    position: absolute;
    transition: 0.3s;
    width: 30px;
    height: 30px;
}
.gameinfo .carousel canvas {
    width: 1352px;
    height: 1265px;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 0;
}
.gameinfo .carousel .carousel_fingers {
    position: absolute;
    background: transparent url('wd_gameinfo-carousel-fingers_ncsa.png') top center;
    z-index: 2;
    width: 832px;
    height: 107px;
    top: 425px;
    left: calc( 50% - 401px);
}
.gameinfo .carousel .carousel_container {
    position: relative;
    max-width: 960px;
    margin: 0 auto;
    z-index: 1;
}
.gameinfo .carousel .carousel_container .carousel_title {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    font-size: 48px;
    color: #fff;
    width: 778px;
    height: 86px;
    background-color: #000;
    margin-bottom: 5px;
    line-height: 89px;
    position: relative;
    text-align: center;
    margin: 0 auto 5px;
    text-transform: uppercase;
}
.gameinfo .carousel .carousel_container .carousel_wrap {
    position: relative;
    max-width: 778px;
    max-height: 440px;
    margin: 0 auto 10px;
    width: auto;
    height: auto;
    text-align: center;
    background-color: #000;
    border: none;
    outline: none;
}
.gameinfo .carousel .carousel_container .carousel_wrap > #player {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
}
.gameinfo .carousel .carousel_container .carousel_wrap .player-preview {
    background-size: contain;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
}
.gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay {/*@mixin sprite --player-overlay-play;*/
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
        -ms-transform: translateY(-50%) translateX(-50%);
            transform: translateY(-50%) translateX(-50%);
    z-index: 2;
}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay {}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:hover {}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:hover:before {
    background: #fff;
}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:hover:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30.5px 0 30.5px 57px;
    border-color: transparent transparent transparent #12cffe;
}
.is-mobile .gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay {
    display: none;
}
.gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:before {
    background: #12cffe;
    border-radius: 50%;
    left: 50%;
    top: 50%;
    margin: -61px 0 0 -61px;
    transition: 0.3s ease-in-out;
    z-index: 1;
    width: 122px;
    height: 122px;
}
.gameinfo .carousel .carousel_container .carousel_wrap .player-play-overlay:after {
    left: 50%;
    top: 50%;
    margin: -30px 0 0 -17px;
    -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
            transform: rotate(0);
    -webkit-transform-origin: 35% 50%;
        -ms-transform-origin: 35% 50%;
            transform-origin: 35% 50%;
    transition: 0.3s ease-in-out;
    z-index: 2;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30.5px 0 30.5px 57px;
    border-color: transparent transparent transparent #fff;
}
.gameinfo .carousel .carousel_container .carousel_wrap:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 56.25%;
}
.gameinfo .carousel .carousel_container .player_controls {
    position: relative;
    height: 51px;
    width: 778px;
    background-color: #000;
    margin: 0 auto 15px;
}
.gameinfo .carousel .carousel_container .player_controls .player-play:before, .gameinfo .carousel .carousel_container .player_controls .player-pause:before, .gameinfo .carousel .carousel_container .player_controls .player-sound:before, .gameinfo .carousel .carousel_container .player_controls .player-muted:before, .gameinfo .carousel .carousel_container .player_controls .player-fullscreen:before {
    color: #12cffe;
    position: absolute;
    left: -3px;
    top: -8px;
    transition: color 0.2s ease-in-out;
    font-size: 1.375rem;
    line-height: 32px;
    letter-spacing: 0em;
}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .player_controls .player-play:hover:before, html:not(.is-mobile) .gameinfo .carousel .carousel_container .player_controls .player-pause:hover:before, html:not(.is-mobile) .gameinfo .carousel .carousel_container .player_controls .player-sound:hover:before, html:not(.is-mobile) .gameinfo .carousel .carousel_container .player_controls .player-muted:hover:before, html:not(.is-mobile) .gameinfo .carousel .carousel_container .player_controls .player-fullscreen:hover:before {
    color: #fff;
}
.gameinfo .carousel .carousel_container .player_controls .player-play {/*@mixin sprite --player-play;*/
    position: absolute;
    left: 27px;
    top: 18px;
}
.gameinfo .carousel .carousel_container .player_controls .player-pause {/*@mixin sprite --player-pause;*/
    position: absolute;
    left: 27px;
    top: 18px;
}
.gameinfo .carousel .carousel_container .player_controls .player-track {
    position: absolute;
    top: 23px;
    left: 70px;
    width: 510px;
    height: 5px;
    background-color: #6d6d6d;
}
.gameinfo .carousel .carousel_container .player_controls .player-track .player-progress {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 0px;
    height: 5px;
    background-color: #12cffe;
}
.gameinfo .carousel .carousel_container .player_controls .player-timer {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 600;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    right: 105px;
    top: 18px;
    color: #fff;
    font-size: 14px;
}
.gameinfo .carousel .carousel_container .player_controls .player-sound {/*@mixin sprite --player-sound-on;*/
    position: absolute;
    right: 60px;
    top: 19px;
}
.gameinfo .carousel .carousel_container .player_controls .player-sound:before {
    left: -17px;
}
.gameinfo .carousel .carousel_container .player_controls .player-muted {/*@mixin sprite --player-sound-off;*/
    position: absolute;
    right: 60px;
    top: 19px;
}
.gameinfo .carousel .carousel_container .player_controls .player-muted:before {
    left: -17px;
}
.gameinfo .carousel .carousel_container .player_controls .player-fullscreen {/*@mixin sprite --player-fullscreen;*/
    position: absolute;
    right: 20px;
    top: 18px;
}
.gameinfo .carousel .carousel_container .player_controls .player-fullscreen:before {
    left: -17px;
    font-size: 1.875rem;
    letter-spacing: 0em;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails {
    position: relative;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails a:after {
    color: #fff;
    position: absolute;
    top: -1px;
    transition: clip 0.3s ease-in-out;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails a.left {
    position: absolute;
    display: inline-block;
    float: none;
    top: 40%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 24px;
    color: #12cffe;
    transition: 0.3s;
    left: -40px;
}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_thumbnails a.left {}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_thumbnails a.left:hover:after {
    clip: rect(0, 30px, 40px, 0);
}
.gameinfo .carousel .carousel_container .carousel_thumbnails a.left:after {
    clip: rect(0, 0, 0, 0);
    left: 0;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails a.right {
    position: absolute;
    display: inline-block;
    float: none;
    top: 40%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 24px;
    color: #12cffe;
    transition: 0.3s;
    right: -40px;
}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_thumbnails a.right {}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_thumbnails a.right:hover:after {
    clip: rect(0, 35px, 40px, 5px);
}
.gameinfo .carousel .carousel_container .carousel_thumbnails a.right:after {
    clip: rect(0, 35px, 35px, 30px);
    right: 0;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items {
    display: inline-block;
    height: 125px;
    width: 960px;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .scrollable {
    position: relative;
    left: 0;
    width: 100%;/* @media screen and (--navWide) {
							left: 20px;
						} */
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item {
    position: relative;
    position: relative;
    float: left;/* 5 across */
    width: 18.75%;/*margin-right: 1.25%;*/
    margin-left: 1.56%;/* &:first-child{
							margin-left: 0;
						} */
    cursor: pointer;
    margin-bottom: 50px;
    box-sizing: border-box;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item > a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item .carousel_item_title {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 800;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    color: #fff;
    font-size: 14px;
    position: absolute;
    left: 0;
    bottom: -20px;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item a {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item a.is-active {
    border: 10px solid #12cffe;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 56.25%;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item:nth-child(5n+1) {
    margin-left: 0;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination {
    margin: 20px auto;
    position: absolute;
    left: 50%;
    text-align: center;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 90%;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination li {
    display: inline-block;
    margin: 0 10px;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination a, .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination span {
    background: #fff;
    border: 3px solid #fff;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
    text-indent: -20px;
    transition: all 0.2s ease-in-out;
    -webkit-transform: translateZ(1px) rotate(45deg);
            transform: translateZ(1px) rotate(45deg);
    width: 15px;
    height: 15px;
}
html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination a:hover, html:not(.is-mobile) .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination span:hover {
    background: #6d6d6d;
    border-color: #6d6d6d;
}
.gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination li.is-active a, .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination li.is-active span {
    background: #000;
    border: 3px solid #12cffe;
}
html:not(.is-mobile) .gameinfo .carousel_item {}
html:not(.is-mobile) .gameinfo .carousel_item:hover:after {
    background: rgba(18, 207, 254, 0.4);
    width: 100%;
    height: 100%;
}
html:not(.is-mobile) .gameinfo .carousel_item:hover a {
    -webkit-filter: grayscale(1);
            filter: grayscale(1);
}
.gameinfo .carousel_item:after {
    top: 0;
    transition: background 0.3s ease-in-out;
    width: 0;
    height: 100%;
}
.gameinfo .carouselMobile_controls {
    display: none;
    text-align: center;
}
.gameinfo .carouselMobile_controls .carouselMobile_prev, .gameinfo .carouselMobile_controls .carouselMobile_next {
    font-size: 2.5rem;
    line-height: 55px;
    letter-spacing: 0em;
}
html:not(.is-mobile) .gameinfo .carouselMobile_controls .carouselMobile_prev {}
html:not(.is-mobile) .gameinfo .carouselMobile_controls .carouselMobile_prev:hover:after {
    clip: rect(0, 30px, 40px, 0);
}
html:not(.is-mobile) .gameinfo .carouselMobile_controls .carouselMobile_next {}
html:not(.is-mobile) .gameinfo .carouselMobile_controls .carouselMobile_next:hover:after {
    clip: rect(0, 35px, 40px, 5px);
}
.gameinfo .carouselMobile_controls .carouselMobile_next:after {
    clip: rect(0, 35px, 35px, 30px);
}
.gameinfo .carouselMobile_controls .carouselMobile_position {
    margin: 0 50px;
    text-align: center;
    font-size: 1.125rem;
    line-height: 18px;
    letter-spacing: 0em;
    width: 40px;
    height: 45px;
}
.gameinfo .carouselMobile_controls .carouselMobile_position:before {
    top: 20px;
}
.wd-CarouselModule.single-view .carousel_pagination, .wd-CarouselModule.single-view .carousel_thumbnails a.right, .wd-CarouselModule.single-view .carousel_thumbnails a.left {
    display: none !important;
}
.wd {}
.wd-Player {
    position: relative;
    height: 51px;
    width: 100%;
    background-color: #000;
    margin: 0 auto 15px;
}
.wd-Player-play {/*@mixin sprite --player-play;*/
    color: #12cffe;
    position: absolute;
    left: 27px;
    top: 15px;
    font-size: 1.25rem;
    letter-spacing: 0em;
}
.wd-Player-pause {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -498px -86px;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 27px;
    top: 18px;
}
.wd-Player-track {
    position: absolute;
    top: 23px;
    left: 70px;
    width: 77%;
    height: 5px;
    background-color: #6d6d6d;
}
.wd-Player-progress {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 0px;
    height: 5px;
    background-color: #12cffe;
}
.wd-Player-timer {
    font-family: Helvetica,Arial,sans-serif;
    font-weight: 600;/*-webkit-backface-visibility: hidden;*/
    -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    right: 105px;
    top: 18px;
    color: #fff;
    font-size: 14px;
}
.wd-Player-sound {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -453px -130px;
    width: 16px;
    height: 16px;
    position: absolute;
    right: 60px;
    top: 19px;
}
.wd-Player-muted {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -435px -130px;
    width: 16px;
    height: 16px;
    position: absolute;
    right: 60px;
    top: 19px;
}
.wd-Player-fullscreen {
    background-image: url('wd_spritesheet_ncsa.png');
    background-position: -498px -64px;
    width: 18px;
    height: 18px;
    position: absolute;
    right: 20px;
    top: 18px;
}
.wd {}
.wd-Fullscreen {
    position: absolute;
    top: 0;
    left: 0;
}
.wd-Fullscreen .wd-Player {
    position: absolute;
    bottom: 0;
    margin-bottom: 0px;
}
.wd-Fullscreen iframe {
    margin: 60px 0;
    height: calc(100% - 111px);
}

body, html {
    margin: 0;
    padding: 0;
    width: 100%
}

body.no-scroll, html.no-scroll {
    overflow-y: hidden;
}

body.no-scroll-mobile, html.no-scroll-mobile {
    overflow-y: hidden;
    position: fixed;/* Prevents mobile safari scrolling*/
}

body {
    /* width: 100%;*/
    background: #000 url('wd_global-body-bg_ncsa.jpg') 0 0 repeat;
    overflow-x: hidden;
}

#main { overflow: hidden; }

a, a:link, a:visited { text-decoration: none; }

body.agegate-passed button:hover, body.agegate-passed input[type="submit"]:hover, body.agegate-passed a:hover {
    cursor: url('wd_middle-finger-cursor_ncsa.cur'), pointer;
}

body.agegate-passed .ubisoft-logo > a:hover {
    cursor: pointer;
}

@media (max-width: 1024px) {

    .wd-NewsIntro, .wd-MediaIntro {
        max-width: 90%;
        width: 100%;
    }

    .wd-NewsIntro:before, .wd-NewsIntro:after, .wd-MediaIntro:before, .wd-MediaIntro:after {
        display: none;
    }

    .wd-globalHeader {
        box-sizing: border-box;
        padding: 0 20px;
    }

    .wd-globalHeader .wd-globalHeader--center {
        *zoom: 1;
        max-width: 960px;
        margin-left: auto;
        margin-right: auto;
        padding: 0;
    }

    .wd-globalHeader .wd-globalHeader--center:before {
        content: '';
        display: table;
    }

    .wd-globalHeader .wd-globalHeader--center:after {
        content: '';
        display: table;
        clear: both;
    }

    .wd-globalHeader.is-open .wd-globalHeader--center .nav-logo {
        width: 75px;
    }

    .nav-menu a.nav-link {
        margin: 20px 3px 0 3px;
        width: 125px;
        height: 125px;
    }

    .wd-ReserveCallout .reserveCallout-boxart, .wd-ReserveCallout .reserveCallout-info {
        clear: both;
        float: none;
        margin: 0 auto;
        width: 80%;
    }

    .wd-ReserveCallout .reserveCallout-boxart {
        margin-bottom: 20px;
        text-align: center;
    }

    .wd-ReserveCallout .reserveCallout-header {}

    .wd-ReserveCallout .reserveCallout-header:before {
        background-size: contain;
        right: -54px;
        top: 45px;
        width: 202px;
        height: 418px;
    }

    .wd-ReserveCallout .reserveCallout-body p {
        padding-right: 50px;
    }

    .wd-ReserveCallout:after {
        display: none;
    }

    .wd-newsLanding .newsLanding-newslist {
        width: 100%;
    }

    .wd-newsLanding .newsLanding-ads {
        display: none;
    }

    .wd-filter a, .wd-filter .newsfilter-labellist .newsfilter-label {
        display: none;
    }

    .wd-filterMobile {
        display: block;
    }

    .news-detail {}

    .news-detail:before {
        display: none;
    }

    #main .newsItem-Container {
        max-width: 100%;
        width: 100%;
    }

    .wd-relatedNews {
        max-width: 100%;
        width: 100%;
    }

    .wd-relatedNews .item {
        width: 100%;
    }

    .wd-relatedNews .item img {
        max-width: 100%;
    }

    .wd-relatedNews .item h3 {
        min-height: 0;
    }/* Read more link*/

    .wd-relatedNews .item p a {
        font-size: 0.9375rem;
        line-height: 18px;
        letter-spacing: 0em;
    }

    html:not(.is-mobile) .wd-relatedNews .item:hover {
        background: transparent;
    }

    .wd-relatedNews .item:first-child {
        border-bottom: 1px solid #cccccc;
    }

    .wd-relatedNews .item:nth-child(3) {
        display: none;
    }

    #main .wd-mediaModule {
        max-width: 100%;
    }

    .wd-MediaList {
        width: 100%;
    }

    .wd-Culture {}

    .wd-Culture-filter {
        display: none;
    }

    .wd-CultureList {}

    .wd-CultureList-item {
        padding-bottom: calc(50% * 9/16);
        width: calc(50% - 20px);
    }

    .wd-CultureList-item .dedsec-haxed {
        -webkit-transform: scale(0.8) translate(-50%, -50%);
            -ms-transform: scale(0.8) translate(-50%, -50%);
                transform: scale(0.8) translate(-50%, -50%);
    }

    .activity-list ul, #activity-list ul {
        text-align: center;
    }

    .mediaModal-content .wd-Player {}

    .mediaModal-content .wd-Player-track {
        width: 66%;
    }
}

@media (max-width: 860px) {

    .wd-NewsIntro .hero-title, .wd-MediaIntro .hero-title {
        font-size: 2.8125rem;
        letter-spacing: 0em;
    }

    .wd-NewsIntro .hero-description, .wd-MediaIntro .hero-description {
        font-size: 2.25rem;
        letter-spacing: 0em;
    }

    .footer-items .footer-item {
        margin-bottom: 15px;
    }

    .language-selector .language-region {
        clear: both;
        float: none;
        margin-bottom: 20px;
        width: 100%;
    }/*@include clearfix;*/

    .language-selector .language-region .language-list li {
        box-sizing: border-box;
        float: left;
        width: 33.33%;
    }

    .language-selector .language-region .language-list li:nth-child(3n+4) {
        clear: left;
    }

    .gameinfoCallout .hero-title {
        font-size: 2.8125rem;
        letter-spacing: 0em;
    }

    .gameinfoCallout .hero-description {
        font-size: 2.25rem;
        letter-spacing: 0em;
    }

    #main .wd-mediaModule {}

    #main .wd-mediaModule.is-loading {
        -webkit-animation: none;
                animation: none;
    }

    .wd-teeth-loader {
        display: none;
    }

    .wd-CultureCallout {}

    .wd-CultureCallout-title {
        font-size: 2.8125rem;
        letter-spacing: 0em;
    }

    .slideshow .backward {}

    .slideshow .backward:before {
        top: 2px;
        left: -3px;
    }
}

@media(max-width: 568px) {

    .wd-NewsIntro .hero-title, .wd-MediaIntro .hero-title {
        font-size: 1.875rem;
        letter-spacing: 0em;
    }

    .wd-NewsIntro .hero-description, .wd-MediaIntro .hero-description {
        padding: 10px 20px;
        font-size: 1.5rem;
        line-height: 31px;
        letter-spacing: 0em;
    }

    .wd-globalHeader .nav-hamburger span {
        right: 75px;
    }

    .footer-items .partnersRatingBox {
        top: auto;
    }

    .language-selector .language-region .language-list li {
        clear: both;
        width: 100%;
    }

    .gameinfoCallout .hero-title {
        font-size: 1.875rem;
        letter-spacing: 0em;
    }

    .gameinfoCallout .hero-description {
        padding: 10px 20px;
        font-size: 1.5rem;
        line-height: 36px;
        letter-spacing: 0em;
    }

    .wd-author .wd-author--left, .wd-author .wd-author--right {
        float: none;
        width: 100%;
    }

    .wd-author .wd-author--left {
        text-align: center;
    }

    .wd-author .wd-author--right {
        box-sizing: border-box;
        margin-top: 20px;
        padding: 0 10px;
    }

    .wd-author .wd-author--right h3 {
        text-align: center;
    }

    .wd-CultureCallout {}

    .wd-CultureCallout-title {
        padding: 3px 10px;
        font-size: 1.875rem;
        letter-spacing: 0em;
    }

    .wd-mediaModule .wd-Player {}

    .wd-mediaModule .wd-Player-track {
        width: 42%;
    }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {

    .ps-container {
        overflow: auto !important;
    }
}

@media (max-width: 960px) {

    .wd-globalHeader.hasTransitioned .nav-logo .icon-logoText {
        top: 38px;
    }

    html:not(.is-mobile) .wd-globalHeader .nav-hamburger:hover {
        -webkit-animation: none;
                animation: none;
    }

    .wd-globalHeader {/*height: 100vh;*/
        max-height: 100%;
        height: auto;
    }

    .wd-globalHeader .nav-logo {
        margin-top: 15px;
        padding: 0 5%;
        width: auto;
    }

    .wd-globalHeader .nav-logo .icon-wdLogo {
        background-image: url('wd_spritesheet_ncsa.png');
        background-position: -427px -64px;
        width: 47px;
        height: 55px;
    }

    .wd-globalHeader .nav-logo .icon-wdLogo--dark {
        background-image: url('wd_spritesheet_ncsa.png');
        background-position: -378px -64px;
        width: 47px;
        height: 55px;
    }

    .wd-globalHeader .nav-logo .icon-logoText {
        top: 18px;
        background-image: url('wd_spritesheet_ncsa.png');
        background-position: -365px -182px;
        width: 115px;
        height: 17px;
    }

    .wd-globalHeader .nav-hamburger-container {
        margin-top: 28px;
        padding-right: 5%;
        position: relative;
    }

    .wd-globalHeader .nav-hamburger-container h1 {
        color: #12cffe;
        display: block;
        right: 95px;
        top: 0;
        text-align: right;
        text-transform: uppercase;
        font-family: Helvetica,Arial,sans-serif;
        font-weight: 600;/*-webkit-backface-visibility: hidden;*/
        -webkit-font-smoothing: antialiased;/*text-rendering: optimizeLegibility; Causing weird line break issues in Windows Chrome*/
        -moz-osx-font-smoothing: grayscale;
        font-size: 1.125rem;
        line-height: 3px;
        letter-spacing: 0.04em;
    }

    .wd-globalHeader .nav-reserve {
        display: none;
    }

    .wd-globalHeader.nav-down .nav-logo .icon-logoText {
        left: 100px;
    }

    .wd-globalHeader.is-open:before, .wd-globalHeader.is-open {
        height: 100%;
        max-height: 100%;
    }

    .wd-globalHeader.is-open:before {
        background: url('wd_bg-nav-tile_ncsa.jpg') repeat, #12cffe;
        position: fixed;
    }

    .wd-globalHeader.is-open {
        position: fixed;
        overflow: auto;
        width: 100%;
        z-index: 1000;
    }

    .wd-globalHeader.is-open .wd-globalHeader--center {
        height: 800px;
    }

    .wd-globalHeader.is-open .nav-logo {
        display: block !important;
        margin-top: 15px;
        padding: 0 5%;
        width: auto;
    }

    .wd-globalHeader.is-open .nav-logo .icon-wdLogo {
        background-image: url('wd_spritesheet_ncsa.png');
        background-position: -378px -64px;
        width: 47px;
        height: 55px;
    }

    .wd-globalHeader.is-open .nav-logo .icon-wdLogo--dark {
        background-image: url('wd_spritesheet_ncsa.png');
        background-position: -378px -64px;
        width: 47px;
        height: 55px;
    }

    .wd-globalHeader.is-open .nav-logo .icon-logoText {
        top: 18px;
        background-image: url('wd_spritesheet_ncsa.png');
        background-position: -312px -209px;
        width: 115px;
        height: 17px;
    }

    .wd-globalHeader.is-open .nav-hamburger {/*left: -67px;*/
        position: relative;
    }

    .wd-globalHeader.is-open .nav-hamburger-container {
        left: auto;
        margin-top: 28px;
        position: relative;
        top: auto;
    }

    .wd-globalHeader.is-open .nav-hamburger-container h1.is-desktop {
        display: none;
    }

    .wd-globalHeader.hasTransitioned.is-open {
        height: 100%;
    }

    .wd-globalHeader.hasTransitioned.is-open .nav-hamburger-container {
        margin-top: 28px;
    }

    .nav-menu {
        box-sizing: border-box;
        margin: 0 auto;
        padding: 0 5%;
        width: 100%;
        height: auto;
    }

    .nav-menu a.nav-link, .nav-menu li {
        clear: both;
        display: block;
        width: 100%;
        height: 75px;
    }

    .nav-menu .nav-link {
        margin: 20px 0;
    }

    .nav-menu .nav-title span, .nav-menu .ui-decoration span {
        display: none;
    }

    .nav-menu .nav-link {}

    .nav-menu .nav-link:hover {
        -webkit-animation: none;
                animation: none;
    }

    .nav-menu .nav-link:hover:before, .nav-menu .nav-link:hover:after, .nav-menu .nav-link:hover .nav-title--hover, .nav-menu .nav-link:hover .ui-decoration span, .nav-menu .nav-link:hover .ui-decoration:after, .nav-menu .nav-link:hover .nav-title:before, .nav-menu .nav-link:hover .nav-title:after, .nav-menu .nav-link:hover .nav-title span, .nav-menu .nav-link:hover .ui-triangle--top:before, .nav-menu .nav-link:hover .ui-triangle--top:after, .nav-menu .nav-link:hover .ui-triangle--bottom:before, .nav-menu .nav-link:hover .ui-triangle--bottom:after {
        display: none;
    }

    .nav-menu .nav-title {
        top: 35px;
        font-size: 1.5rem;
        line-height: 28px;
        letter-spacing: 0em;
    }

    .ct-navigation--overview {
        display: none;
    }
}

@media (max-width: 1268px) {

    .wd-globalHeader .wd-globalHeader--center {
        *zoom: 1;
        max-width: 1148px;
        margin-left: auto;
        margin-right: auto;
    }

    .wd-globalHeader .wd-globalHeader--center:before {
        content: '';
        display: table;
    }

    .wd-globalHeader .wd-globalHeader--center:after {
        content: '';
        display: table;
        clear: both;
    }

    .wd-globalHeader.is-open .nav-logo {
        display: none;
    }

    .nav-menu {
        float: right;
    }

    .nav-menu .nav-link {
        margin: 20px 8px 0 8px;
    }

    .wd-globalFooter .fcp-container {

        @include pad(0.5, 0.5);
    }

    .wd-globalFooter div.footer p.legal {
        padding: 40px;
    }

    .wd-MediaIntro {}

    .wd-MediaIntro:after {
        display: none;
    }

    .ct-widget--rewardsHistory iframe {
        padding: 45px 40px;
    }
}

@media (max-width: 960px) and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {

    .wd-globalHeader .nav-logo .icon-wdLogo {
        background-image: url('wd_spritesheet@2x_ncsa.png');/*background-size:  $(sprite-total-size);*/
        background-size: 516px 297px;
    }

    .wd-globalHeader .nav-logo .icon-wdLogo--dark {
        background-image: url('wd_spritesheet@2x_ncsa.png');/*background-size:  $(sprite-total-size);*/
        background-size: 516px 297px;
    }

    .wd-globalHeader .nav-logo .icon-logoText {
        background-image: url('wd_spritesheet@2x_ncsa.png');/*background-size:  $(sprite-total-size);*/
        background-size: 516px 297px;
    }

    .wd-globalHeader.is-open {}
}

@media (max-width: 480px) {

    .wd-globalHeader .nav-logo .icon-logoText {
        left: 75px;
    }

    .wd-ReserveCallout .reserveCallout-header {}

    .wd-ReserveCallout .reserveCallout-header:before {
        display: none;
    }

    .wd-ReserveCallout .reserveCallout-body p {
        padding-right: 0;
    }

    .wd-mediaModule-list li.list-item {
        width: 100%;
    }

    .ct-regionHeader {
        padding: 15px 0 5px 0;
        width: 100%;
    }

    .ct-regionHeader h3 {
        padding: 15px 20px;
    }

    .wd-Player {}

    .wd-Player-timer {
        display: none;
    }
}

@media (max-width: 320px) {

    .wd-globalHeader .nav-logo .icon-logoText {
        left: 75px;
    }
}

@media (max-width: 768px) {

    .globalFooter-socialNav li {
        margin-bottom: 20px;
    }

    .language-selector .language-region strong {
        cursor: pointer;
    }

    .language-selector .language-region strong:before {
        font-family: 'icomoon' !important;
        content: "\e905";
        display: inline-block;
        margin-right: 5px;
        position: relative;/*@include font-icons;*/
    }

    .language-selector .language-region .language-list {
        display: none;
    }

    .language-selector .language-region .language-list li {
        width: 50%;
    }

    .language-selector .language-region .language-list li:nth-child(3n+4) {
        clear: none;
    }

    .language-selector .language-region .language-list li:nth-child(2n+3) {
        clear: left;
    }

    .language-selector .language-region.is-open strong:before {
        content: "\e906";
        font-size: 8px;
        top: -3px;
    }

    .language-selector .language-region.is-open .language-list {
        display: block;
    }

    .wd-mediaModule-list li {
        margin: 0 0.5% 1.33%;
        width: 49%;/*&:nth-child(3n+3) { margin: 0 2% 2% 0; }*//*&:nth-child(2n+2) { margin-right: 0; }*/
    }

    .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_pagination {
        display: none;
    }

    .gameinfo .carouselMobile_controls {
        display: block;
    }

    .mediaModal .wd-Player {}

    .mediaModal .wd-Player-track {
        width: 52%;
    }
}

@media screen and (max-width: 1200px) {

    .wd-GameInfoCallout {}

    .wd-GameInfoCallout:before {
        background-size: contain;
        width: 191px;
        height: 278px;
    }

    .wd-GameInfoCallout:after {
        background-size: contain;
        width: 221px;
        height: 280px;
    }

    .wd-GameInfoCallout-group {
        margin-left: 0;
        margin-right: 10px;
        width: calc(70% - 10px);
    }

    .wd-GameInfoCallout-group:before {
        background-size: contain;
        top: 0;
        left: 50%;
        width: 276px;
        height: 294px;
    }

    .wd-newsItems {}

    .wd-newsItems-list {
        max-width: 90%;
    }

    .gameinfoMap {}

    .gameinfoMap-wrap {
        min-width: 0;
        width: 90%;
    }

    .regionReservePromos {
        box-sizing: border-box;
        padding: 30px;
    }

    .promoUbiworkshop {
        background-position: calc(50% + 200px) 100%, 0 0;
    }

    .promoUbiworkshop .container:before {
        right: -160px;
    }

    .promoUbiworkshop-media {
        padding-left: 30px;
        width: 40%;
    }

    .ct-landingSteps {
        padding: 0 30px;
    }

    .ct-landingRewards {
        padding: 130px 30px;
    }

    .accordion.ct-faqsList {
        width: 94%;
    }
}

@media screen and (max-width: 1024px) {

    .wd-GameInfoCallout {}

    .wd-GameInfoCallout:before {
        top: 25%;
    }

    .wd-GameInfoCallout:after {
        right: -60px;
    }

    .wd-GameInfoCallout-group, .wd-GameInfoCallout-blurb {
        clear: both;
        float: none;
        margin: 0 auto;
        width: 80%;
    }

    .wd-GameInfoCallout-group {
        margin: 0 auto;
        width: 100%;
    }

    .wd-GameInfoCallout-blurb {
        padding-top: 0;
    }

    .wd-GameInfoCallout-blurb .blockHeadline {
        display: inline-block;
        margin-bottom: 0;
    }

    .gameinfoMap h4, .gameinfoMap-content {
        width: 50%;
    }

    .gameinfoCharacters {}

    .gameinfoCharacters-bg {
        background: url('wd_gameinfo-characters-bg-mobile_ncsa.png') 50% 0 no-repeat;
        background-size: 100% auto;
        width: 100%;
    }

    .gameinfoCharacters-modal {
        max-width: 9999px;
        padding: 0 45px;
        width: 100%;
    }

    .gameinfoCharacters-name {
        line-height: 1.25;
        font-size: 1.75rem;
        letter-spacing: 0em;
    }

    .gameinfoCharacters-controls span {}

    .gameinfoCharacters-controls span[data-dir="prev"] {
        left: 0;
    }

    .gameinfoCharacters-controls span[data-dir="next"] {
        right: 0;
    }

    .is-mobile .characterWindow {}

    .is-mobile .characterWindow--media {
        left: 50%;
        right: auto;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
    }

    .characterWindow--media {}

    .promoUbiworkshop {}

    .promoUbiworkshop-media, .promoUbiworkshop-content {
        float: none;
        margin: 0 auto;
        padding: 0;
        width: 95%;
    }

    .promoUbiworkshop-content {
        margin-top: 30px;
    }

    .promoUbiworkshop-content h4, .promoUbiworkshop-blurb {
        padding-right: 280px;
    }

    .modal-col-1-3, .modal-col-2-3 {
        width: calc(50% - 20px);
    }

    .page-crowdtwist-landing #main {
        background-size: 150% auto;
    }

    .ct-landingCallout {
        padding-top: 40%;
    }
}

@media screen and (max-width: 568px) {

    .wd-GameInfoCallout {
        background-size: 180% auto;
        padding-top: 140px;
    }

    .wd-GameInfoCallout:before {
        left: -60px;
    }

    .wd-GameInfoCallout:after {
        display: none;
    }

    .wd-GameInfoCallout-group:before {
        background-size: contain;
        top: 20px;
        left: 60%;
        width: 138px;
        height: 147px;
    }

    .homePromos .container {
        padding-bottom: 190px;
    }

    .homePromos:before {
        background-size: 213px 579px;
        width: 213px;
        height: 579px;
    }

    .homePromos:after {
        background-size: 223px 560px;
        width: 223px;
        height: 560px;
    }

    .page-newsdetail .fyre .fyre-comment-article .fyre-comment-wrapper {
        padding: 30px;
    }

    .page-newsdetail .fyre .fyre-comment-article .fyre-comment-wrapper .fyre-comment-user {
        display: none;
    }

    .gameinfoOverview .gameinfoOverview-header h4 {
        max-width: 85%;
        padding: 20px;
    }

    .gameinfoMap .gameinfoMap-wrap {
        padding-top: 25%;
    }

    .gameinfoCharacters .gameinfoCharacters-bio {
        padding: 6px;
    }

    .gameinfoCharacters .gameinfoCharacters-summary {
        padding: 0 10px 10px;
    }

    .gameinfoCharacters-list img {
        max-height: 320px;
    }

    .regionReserve {
        padding: 15px;
    }

    .regionReserve .dk-select.custom-dropdown {
        display: block;
    }

    .regionReserve:before {
        background-size: 581px 243px;
        width: 581px;
        height: 243px;
    }

    .regionReserve-boxart {
        display: none;
    }

    .regionReserve-mobileBoxart {
        display: block;
    }

    .regionReserve-editionsList, .regionReserve-platformsList {
        display: none;
    }

    .regionReserve-order .regionReserve-header {
        display: none;
    }

    .regionReserve-order .btn-addToCart, .regionReserve-order .uplay-cart {
        box-sizing: border-box;
        display: block;
        float: left;
        line-height: 35px;
        margin: 5px;
        width: calc(50% - 10px);
    }

    .regionReserve-retailers li {
        width: 40% !important;
    }

    .page-404 #main {
        padding-top: 140px;
    }

    .page-404 #main:before {
        display: none;
    }

    .error404 h1 {
        font-size: 8.75rem;
        letter-spacing: 0em;
    }

    .error404 h3 {
        font-size: 2rem;
        letter-spacing: 0em;
    }

    .age-cont .logo {
        margin-bottom: 30px;
        width: 85px;
        height: 104px;
    }

    .age-cont .birthday-picker select {
        float: none;
        margin: 5px auto;
        width: 90%;
    }

    .wd-CultureFeatured .wd-itemSummary {
        padding: 10px 5px 0;
        bottom: 0;
        width: 100% !important;
    }

    .wd-CultureFeatured-item {
        padding-bottom: calc(100% * 9/16) !important;
        width: calc(100% - 20px) !important;
    }

    .wd-CultureList {}

    .wd-CultureList-item {
        padding-bottom: calc(100% * 9/16) !important;
        width: calc(100% - 20px) !important;
    }

    .wd-CultureList-item .dedsec-haxed {
        -webkit-transform: scale(1) translate(-50%, -50%);
            -ms-transform: scale(1) translate(-50%, -50%);
                transform: scale(1) translate(-50%, -50%);
    }

    .ct-landingCallout {
        padding-top: 20%;
    }

    .ct-footer-navigation {
        font-size: 1.125rem;
        letter-spacing: 0em;
    }

    .ct-footer-navigation ul {
        padding: 10px;
    }

    .ct-footer-navigation li {
        display: block;
    }

    .ct-footer-navigation li:not(:last-child):after {
        display: none;
    }

    .ct-footer-navigation a {
        display: block;
        padding: 15px 20px;
    }

    .ct-footer-navigation a:before {
        background: transparent;
        content: '/';
        display: inline-block;
        height: auto;
        margin: 0 10px 0 0;
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        opacity: 1;
    }
}

@media screen and (max-width: 860px) {

    .homePromos .container {
        padding-top: 100px;
    }

    .homePromos .container {
        padding-bottom: 360px;
    }

    .homePromos .container:before {
        display: none;
    }

    .homePromos:before {
        background: url('wd_home-promo-mobile-before_ncsa.png') 0 0 no-repeat;
        bottom: 0;
        left: 0;
        -webkit-transform: translate(0, 0);
            -ms-transform: translate(0, 0);
                transform: translate(0, 0);
        width: 426px;
        height: 1157px;
    }

    .homePromos:after {
        background: url('wd_home-promo-mobile-after_ncsa.png') 0 0 no-repeat;
        bottom: 0;
        left: auto;
        right: 0;
        -webkit-transform: translate(0, 0);
            -ms-transform: translate(0, 0);
                transform: translate(0, 0);
        width: 445px;
        height: 1120px;
    }

    .homePromos-promo {
        float: none;
        margin: 25px auto;
        width: calc(100% - 50px);
    }

    .wd-newsItems-header {
        padding-top: 45px;
    }

    .wd-newsItems .wd-newsItem {}

    .wd-newsItems .wd-newsItem-meta, .wd-newsItems .wd-newsItem-media, .wd-newsItems .wd-newsItem-teaser {
        clear: both;
        float: none;
        width: 100%;
    }

    .wd-newsItems .wd-newsItem-media {
        display: inline-block;
        width: auto;
    }

    .wd-newsItems .wd-newsItem-meta, .wd-newsItems .wd-newsItem-teaser {
        text-align: left;
    }

    .wd-newsItems .wd-newsItem-teaser {
        padding: 5px 15px 10px;
        position: static;
        bottom: auto;
        left: auto;
        right: auto;
    }

    .wd-newsList h3 {
        padding-right: 50px;
    }

    .age-cont {
        width: 90%;
    }

    .wd-CultureFeatured .wd-itemSummary {
        width: 60%;
    }

    .ct-landingRewards-reward {
        margin: 50px auto 0;
        width: 100%;
    }

    .slideshow .slide-image .content .cta {
        bottom: 20px;
        margin-left: inherit;
    }

    .slideshow .slide-image .content .title {
        font-size: 19px;
        line-height: 31px;
    }

    .slideshow .slide-image .content p {
        padding: 0 10px 20px;
        margin: 0;
    }

    .slideshow .slide-image .content p a {
        position: relative;
    }

    .slideshow .slide-image .content p a.btn {
        line-height: 34px;
        padding: 0 15px;
        top: 0px;
        right: 0px;
    }

    .slideshow .slide-tabs {
        clear: both;
        float: none;
    }

    .slideshow .forward, .slideshow .backward {
        top: -15px;
        width: 32px;
        height: 32px;
    }

    .slideshow .forward:before, .slideshow .backward:before {
        font-size: 2.375rem;
        line-height: 38px;
        letter-spacing: 0em;
    }

    .slideshow .forward {/*@mixin sprite --arrowmobile;*/
        margin: 3px 0;
    }

    .slideshow .forward:before {
        top: -6px;
        left: 6px;
    }
}

@media screen and (max-width: 768px) {

    .wd-newsItems .wd-newsItem {}

    .wd-newsItems .wd-newsItem-media {
        display: block;
        width: 100%;
    }

    .wd-newsItems .wd-newsItem:nth-child(even) .wd-newsItem-meta, .wd-newsItems .wd-newsItem:nth-child(even) .wd-newsItem-teaser {
        text-align: left;
    }

    .gameinfoOverview {
        background: url('wd_gameinfo-overview-mobile-bg_ncsa.png') 50% 100% no-repeat;
        background-size: 100% auto;
        padding-bottom: 27%;
    }

    .gameinfoOverview:before, .gameinfoOverview:after, .gameinfoOverview .gameinfoOverview-left, .gameinfoOverview .gameinfoOverview-right {
        display: none;
    }

    .gameinfoOverview-header {
        background: url('wd_gameinfo-overview-header-mobile-bg_ncsa.png') 50% 0 no-repeat;
        background-size: 100% auto;
        text-align: center;
    }

    .gameinfoOverview-header h4 {
        display: inline-block;
        max-width: 60%;
    }

    .gameinfoOverview-content {
        min-height: 0;
    }

    .gameinfoOverview-slides {
        padding: 15px 80px 50px;
    }

    .gameinfoOverview-bullets {
        margin: -20px auto 0;
    }

    .gameinfoMap h4 {
        display: inline-block;
        float: none;
        width: auto;
    }

    .gameinfoMap-wrap {
        background-color: #000;
        background-size: 100% auto;
        padding-bottom: 0;
        padding-top: 35%;
    }

    .gameinfoMap-content {
        width: 100%;
    }

    .gameinfoCharacters {
        background-size: auto 80%;
    }

    .gameinfoCharacters-media, .gameinfoCharacters-details {
        width: 100%;
    }

    .gameinfoCharacters-media {
        height: 110px;
    }

    .gameinfoCharacters-media img {
        max-height: calc(100% + 50px);
        max-width: 9999px;
    }

    .gameinfoCharacters-summary {
        padding-top: 0;
    }

    .gameinfoCharacters-file {
        padding: 5px;
        text-align: center;
    }

    .gameinfoCharacters-controls span {
        top: auto;
        bottom: -18px;
    }

    .gameinfoCharacters-list {
        margin: 40px auto 60px;
        position: relative;
    }

    .gameinfoCharacters-list .character {
        pointer-events: none;
        position: absolute;
        top: 0;
        left: 50%;
        opacity: 0;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
    }

    .gameinfoCharacters-list .character:after {
        right: auto;
        left: 60%;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
        width: 80%;
        height: 100%;
    }

    .gameinfoCharacters-list .character.is-active {
        pointer-events: auto;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
        opacity: 1;
    }

    .is-mobile .gameInfoCharacters-dossier {
        position: absolute;
        top: 0;
        left: 0;
    }

    .is-mobile .characterWindow {
        margin: 0 auto 20px;
        position: relative;
        top: auto;
        left: auto;
        -webkit-transform: translate(0, 0);
            -ms-transform: translate(0, 0);
                transform: translate(0, 0);
        width: calc(100% - 40px);
    }

    .is-mobile .characterWindow-content {
        margin: 20px;
        padding-right: 10px;
    }

    .is-mobile .characterWindow--half {
        width: calc(100% - 40px);
    }

    .is-mobile .characterWindow--media {
        top: auto;
        right: auto;
        -webkit-transform: translate(0, 0);
            -ms-transform: translate(0, 0);
                transform: translate(0, 0);
    }

    .is-mobile .characterWindow--media-content {
        margin: 0;
        padding-right: 0;
    }

    .page-reserve #main {
        padding-top: 380px;
    }

    .regionReserve {
        padding-top: 50px;
    }

    .regionReserve .regionReserve-heading {
        width: 100%;
    }

    .regionReserve .regionReserve-heading h1 {
        font-size: 2.375rem;
        letter-spacing: 0em;
    }

    .regionReserve .regionReserve-heading h3 {
        padding: 5px 10px;
        font-size: 2rem;
        letter-spacing: 0em;
    }

    .regionReserve:before {
        background-size: 813px 340px;
        bottom: calc(100% - 66px);
        width: 813px;
        height: 340px;
    }

    .regionReserve-boxart {
        border: 0;
    }

    .regionReserve-editionsList li {
        margin: 5px;
        width: calc(50% - 10px);
    }

    .regionReserve-editionsList a {
        padding-bottom: 0;
    }

    .regionReserve-platforms {
        float: none;
        margin-right: 0;
        width: 100%;
    }

    .regionReserve-order {
        float: none;
        margin-left: 0;
        width: 100%;
    }

    .regionReserve-retailers li {
        width: 26%;
    }

    .regionReservePromos .span6 {
        width: calc(99.999999% * 1/1);
    }

    .regionReservePromos .span6:nth-child(1n) {
        float: left;
        margin-right: 0;
        clear: none;
    }

    .regionReservePromos .span6:last-child {
        margin-right: 0;
    }

    .regionReservePromos .span6:nth-child(1n) {
        margin-right: 0;
        float: right;
    }

    .regionReservePromos .span6:nth-child(1n + 1) {
        clear: left;
    }

    .regionReservePromos .span6:nth-child(2) {
        display: none;
    }

    .promoUbiworkshop .container {
        padding-bottom: 200px;
    }

    .promoUbiworkshop .container:before {
        right: -220px;
    }

    .promoUbiworkshop-media, .promoUbiworkshop-content {
        width: 80%;
    }

    .promoUbiworkshop-content h4 {
        padding-right: 30px;
    }

    .promoUbiworkshop-blurb {
        padding-right: 100px;
    }

    .page-trailer #main {
        padding-top: 160px;
    }

    .wd-trailerWrap h1 {
        font-size: 2.625rem;
        letter-spacing: 0em;
    }

    .wd-trailer {
        max-width: 95%;
    }

    .wd-Culture-modalWrap .wd-Culture-modal {
        padding: 30px;
    }

    .modal-col-1-3, .modal-col-2-3 {
        margin: 10px auto;
        max-height: calc(50% - 20px);
        width: 100%;
    }

    .modal-col-1-3 img, .modal-col-2-3 img {
        display: block;
        height: 100%;
        margin: 0 auto;
    }

    .ct-navigation .ct-navigationCurrent {
        display: block;
    }

    .ct-navigation ul {
        background: #12cffe url('wd_bg-nav-tile_ncsa.jpg') repeat;
        display: none;
        padding: 0;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        overflow: hidden;
        text-align: center;
        font-size: 1.3125rem;
        letter-spacing: 0em;
    }

    .ct-navigation li {
        float: none;
    }

    .ct-navigation li:not(:first-child):before {
        display: none;
    }

    .ct-navigation a {
        color: #000;
        display: block;
        padding: 20px 15px;
        text-decoration: none !important;
    }

    .ct-navigation a:before {
        background: transparent;
        content: '/';
        display: inline-block;
        height: auto;
        margin: 0 10px;
        opacity: 1;
        position: relative;
        bottom: auto;
        left: auto;
        right: auto;
    }

    .ct-navigation.is-open ul {
        display: block;
    }

    .ct-landingCallout {
        padding-top: 30%;
    }

    .ct-landingSteps-step {
        margin: 20px 0 0;
        width: 100%;
    }

    .ct-landingSteps-step a {
        min-height: 0;
    }

    .ct-landingRewards-reward .ct-landingRewards-rewardContent {
        min-height: 0;
        padding: 20px;
    }

    .ct-landingRewards-reward .ct-landingRewards-rewardContent strong {
        margin-bottom: 10px;
    }

    .page-crowdtwist-error #main {
        padding-top: 140px;
    }

    .ct-regionHeader--error h3 {
        font-size: 2.625rem;
        line-height: 63px;
        letter-spacing: 0em;
    }

    .gameinfo .carousel {
        padding-top: 40%;
        background-size: contain;
    }

    .gameinfo .carousel canvas {
        width: 100%;
        height: auto;
    }

    .gameinfo .carousel .carousel_fingers {
        display: none;
    }

    .gameinfo .carousel .carousel_container .carousel_title {
        width: calc( 100% - 80px);
        font-size: 14px;
        height: 40px;
        line-height: 42px;
    }
}

@media screen and (max-width: 480px) {

    .gameinfoOverview {
        margin: 40px auto;
    }

    .gameinfoMap {
        padding: 80px 0;
    }

    .gameinfoMap .gameinfoMap-wrap {
        background-size: 150% auto;
    }

    .gameinfoCharacters .gameinfoCharacters-summary {
        font-size: 0.625rem;
        letter-spacing: 0em;
    }

    .age-cont {
        top: 10px;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
    }

    .wd-Terminal-cmd {
        padding: 15px;
    }

    .wd-Terminal-input {
        font-size: 70%;
    }

    .modal-col-1-3, .modal-col-2-3 {
        overflow: hidden;
    }

    .modal-col-1-3 img, .modal-col-2-3 img {
        height: auto !important;
    }

    .ct-landingRewards {
        padding: 130px 10px;
    }

    .slideshow .slide-images {
        position: relative;
        height: inherit;
        position: relative;
    }

    .slideshow .slide-images > .slide-image {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }

    .slideshow .slide-images:before {
        display: block;
        content: "";
        width: 100%;
        padding-top: 117.32394366197182%;
    }

    .slideshow .slide-image .content {
        background-color: #000;
    }

    .slideshow .slide-image .content .bg-full {
        left: -50%;
        height: 100%;
        width: auto;
    }

    .slideshow .slide-image .content .overlay {
        bottom: 50%;
    }
}

@media screen and (max-width: 920px) {

    .gameinfoCharacters {}

    .gameinfoCharacters-summary, .gameinfoCharacters-file {
        padding: 15px;
    }
}

@media screen and (max-width: 980px) {

    .regionReserve {
        width: 95%;
    }
}

@media screen and (max-width: 440px) {

    .promoUbiworkshop .container:before {
        display: none;
    }

    .promoUbiworkshop-content h4 {
        font-size: 24px;
    }

    .promoUbiworkshop-blurb {
        padding-right: 35px;
    }

    .promoUbiworkshop-blurb .btn {
        box-sizing: border-box;
        text-align: center;
        width: 100%;
    }

    .wd-Modal {
        width: 100%;
    }

    .wd-Modal .wd-Modal-asset, .wd-Modal .wd-Modal-details {
        float: none;
        text-align: center;
        width: 100%;
    }

    .wd-Modal .wd-Modal-details {
        padding-bottom: 10px;
    }

    .wd-Modal .mobile-note {
        display: none;
    }

    .wd-Modal .wd-KeypadTrigger {
        display: inline-block;
    }
}

@media screen and (max-width: 736px) and (orientation: landscape) {

    .age-cont {
        bottom: 20px;
        top: auto;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
    }

    .age-cont .logo {
        margin-bottom: 30px;
    }

    .age-cont .legal-msg {
        padding: 20px 0;
    }

    .age-cont .age-gate-form {
        min-height: 80px;
        padding: 0 0 20px;
    }

    .age-cont .birthday-picker {
        float: left;
        margin-right: 20px;
        width: calc(75% - 20px);
    }

    .age-cont .submit {
        float: left;
        margin: 0 20px 0 0;
        width: calc(25% - 20px);
    }
}

@media screen and (max-width: 568px) and (orientation: landscape) {

    .age-cont {
        top: 50px;
    }

    .age-cont .logo {
        display: none;
    }

    .age-cont .birthday-picker {
        float: none;
        margin: 0 auto;
        width: 90%;
    }

    .age-cont .birthday-picker select {
        float: none;
        display: inline-block;
        margin: 5px;
        width: 30%;
    }

    .age-cont .submit {
        float: none;
    }
}

@media screen and (max-width: 320px) {

    .age-cont {
        top: 50px;
    }

    .age-cont .logo {
        display: none;
    }

    .age-cont .legal-msg {
        font-size: 1rem;
        letter-spacing: 0em;
    }
}

@media screen and (max-width: 320px) and (orientation: portrait) {

    .age-cont {
        top: auto;
        bottom: 50px;
    }
}

@media screen and (max-height: 800px) {

    .wd-Culture-modalWrap .wd-Culture-modal {
        height: calc(75% - 50px);
        padding: 30px;
    }
}

@media screen and (max-width: 320px) and (max-height: 568px), (max-height: 600px) {

    .wd-Culture-modalWrap .wd-Culture-modal {
        bottom: 15px;
        top: auto;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
        height: 80%;
    }
}

@media screen and (max-height: 420px) {

    .wd-Culture-modalWrap .wd-Culture-modal {
        bottom: 15px;
        top: auto;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
        height: 70%;
    }
}

@media screen and (max-height: 380px) {

    .wd-Culture-modalWrap .wd-Culture-modal {
        height: 65%;
    }
}

@media screen and (max-width: 960px) {

    .page-crowdtwist #main {
        padding-top: 140px;
    }

    .ct-navigation {
        width: 96%;
    }

    .slideshow {
        height: inherit;
        min-height: inherit;
        padding-top: 115px;
    }

    .slideshow .slideshow-wrapper {
        width: 100%;/* max-width: 425px;
            height: auto; */
        top: inherit;
        -webkit-transform: inherit;
            -ms-transform: inherit;
                transform: inherit;
    }

    .slideshow .slide-image .content .overlay {
        margin-top: -55px;
    }

    .slideshow .slide-controls {
        text-align: center;
    }

    .slideshow .fronteyes {
        display: none;
    }

    .slideshow .backeye {
        display: none;
    }

    .slideshow .artifacts-wrapper {
        display: none;
    }

    .slideshow-eyes {
        display: none;
    }

    .gameinfo .carousel .carousel_container .carousel_wrap {
        margin: 0 40px 10px;
    }

    .gameinfo .carousel .carousel_container .player_controls {
        display: none;
    }

    .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items {
        width: 100%;
        height: 200px;
        padding: 0 20px;
    }

    .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item {/* 3 across */
        width: 30.43%;
        margin-left: 4.35%;
    }

    .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item:nth-child(5n+1) {
        margin-left: 4.35%;
    }

    .gameinfo .carousel .carousel_container .carousel_thumbnails .carousel_items .carousel_item:nth-child(3n+1) {
        margin-left: 0;
    }
}

@media (max-width: 1200px) {

    .ct-widget--rewardsHistory iframe {
        padding: 25px 0;
    }

    .wd-Player {}

    .wd-Player-track {
        width: 71%;
    }
}

@media (max-width: 1175px) {

    .activity-list ul, #activity-list ul {
        display: inline-block;
        max-width: 970px;
    }

    .activity-list ul li, .activity-list .activity, #activity-list ul li, #activity-list .activity {
        margin: 10px;
        width: 300px;
        height: 300px;
    }

    .activity-list ul li .image-container, .activity-list .activity .image-container, #activity-list ul li .image-container, #activity-list .activity .image-container {
        margin-top: 87px;
    }

    .activity-list ul li:before, .activity-list ul li:after, .activity-list .activity:before, .activity-list .activity:after, #activity-list ul li:before, #activity-list ul li:after, #activity-list .activity:before, #activity-list .activity:after {
        -webkit-transform: rotate(45deg) scale(0.85);
            -ms-transform: rotate(45deg) scale(0.85);
                transform: rotate(45deg) scale(0.85);
    }
}

@media screen and (max-width: 728px) {

    .page-experience-poc .wd-globalHeader, .page-experience-poc .wd-qrCode, .page-experience-poc > .socket-token {
        display: none;
    }
}

@media (min-width: 481px) and (max-width: 960px) {

    .slideshow .slide-images {
        position: relative;
        height: inherit;
        position: relative;
    }

    .slideshow .slide-images > .slide-image {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }

    .slideshow .slide-images:before {
        display: block;
        content: "";
        width: 100%;
        padding-top: 67.04081632653062%;
    }
}

@media screen and(max-width: 480px) {

    .slideshow .slide-controls {
        padding-top: 0px;
    }
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jc3MvbWFpbi5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9fbGF5b3V0LnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL2NvbXBvbmVudHMvX3Jlc2V0cy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9jb21wb25lbnRzL19zcHJpdGVzaGVldC5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9jb21wb25lbnRzL19jb2xvcnMuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvY29tcG9uZW50cy9fbWVkaWEuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvY29tcG9uZW50cy9fbWl4aW5zLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL2NvbXBvbmVudHMvX3R5cG9ncmFwaHkuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvY29tcG9uZW50cy9fYW5pbWF0aW9ucy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9jb21wb25lbnRzL19pY29ucy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9jb21wb25lbnRzL19leHRlbmRhYmxlcy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9jb21wb25lbnRzL196aW5kZXguc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvY29tcG9uZW50cy9fdXRpbGl0aWVzLnNjc3MiLCIuLi8uLi9zcmMvY3NzL2xpYnMvYmFzZS1zbGlkZXNob3dzLnNjc3MiLCIuLi8uLi9zcmMvY3NzL2xpYnMvZHJvcGtpY2suc2NzcyIsIi4uLy4uL3NyYy9jc3MvbGlicy9wZXJmZWN0LXNjcm9sbGJhci5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19nbG9iYWxIZWFkZXIuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fZ2xvYmFsRm9vdGVyLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX2xhbmd1YWdlU2VsZWN0b3Iuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fc29jaWFsLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX2hvbWUtZ2FtZWluZm8uc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9faG9tZS1wcm9tb3Muc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fbmV3cy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19jb21tZW50cy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19nYW1laW5mby1jYWxsb3V0LnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX2dhbWVpbmZvLW92ZXJ2aWV3LnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX2dhbWVpbmZvLW1hcC5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19nYW1laW5mby1jaGFyYWN0ZXJzLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX2dhbWVpbmZvLXJlc2VydmUuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fcmVzZXJ2ZS5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19yZXNlcnZlLXByb21vcy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19uZXdzLWludHJvLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX25ld3NMYW5kaW5nLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX25ld3NMaXN0LnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX2ZpbHRlci5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19uZXdzRGV0YWlsLnNjc3MiLCIuLi8uLi9zcmMvY3NzL2xpYnMvYmFzZS1uZXdzZGV0YWlsLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX25ld3NEZXRhaWwtcmVsYXRlZC5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19tZWRpYS1pbnRyby5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19tZWRpYS1saXN0LnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX21lZGlhLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvXzQwNC5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL190cmFpbGVyLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX21lZGlhTW9kYWwuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fYWdlZ2F0ZS5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL190ZXJtaW5hbC5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19jdWx0dXJlLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX2N0LXNoYXJlZC5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19jdC1uYXZpZ2F0aW9uLnNjc3MiLCIuLi8uLi9zcmMvY3NzL3BhcnRpYWxzL21vZHVsZXMvX2N0LWxhbmRpbmcuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fY3QtYWN0aXZpdGllcy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9tb2R1bGVzL19jdC1mYXEuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fY3QtZXJyb3Iuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fY3QtZm9vdGVyLW5hdmlnYXRpb24uc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fY3QtbGVnYWwuc2NzcyIsIi4uLy4uL3NyYy9jc3MvcGFydGlhbHMvbW9kdWxlcy9fY3QtZGFzaGJvYXJkLWFjdGl2aXR5LnNjc3MiLCIuLi8uLi9zcmMvY3NzL2NvbXBvbmVudHMvd2QtY29tcG9uZW50LXViaWJhci5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9jb21wb25lbnRzL3dkLWNvbXBvbmVudC1wcmVsb2FkZXIuc2NzcyIsIi4uLy4uL3NyYy9jc3MvY29tcG9uZW50cy93ZC1jb21wb25lbnQta2V5cGFkLnNjc3MiLCIuLi8uLi9zcmMvY3NzL2NvbXBvbmVudHMvd2QtY29tcG9uZW50LW1hcC5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9jb21wb25lbnRzL3dkLWNvbXBvbmVudC1leHBlcmllbmNlLXBvYy5zY3NzIiwiLi4vLi4vc3JjL2Nzcy9jb21wb25lbnRzL3dkLWNvbXBvbmVudC1zbGlkZXNob3cuc2NzcyIsIi4uLy4uL3NyYy9jc3MvY29tcG9uZW50cy93ZC1jb21wb25lbnQtZ2FtZWluZm8tY2Fyb3VzZWwuc2NzcyIsIi4uLy4uL3NyYy9jc3MvY29tcG9uZW50cy93ZC1jb21wb25lbnQtcGxheWVyLnNjc3MiLCIuLi8uLi9zcmMvY3NzL2NvbXBvbmVudHMvd2QtY29tcG9uZW50LWZ1bGxzY3JlZW4uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjOztBQ0FkOztnRkFFZ0Y7O0FBRWhGO0lBQ0UsU0FBb0I7SUFBcEIsa0JBQW9CO0lBQXBCLGtCQUFvQjtJQUFwQixtQkFBb0I7Q0FDckI7O0FBRkQ7SUFDRSxZQUFvQjtJQUFwQixlQUFvQjtDQUNyQjs7QUFGRDtJQUNFLFlBQW9CO0lBQXBCLGVBQW9CO0lBQXBCLFlBQW9CO0NBQ3JCOztBREZELHdCQUF3Qjs7QUVKeEI7SUFDSSxjQUFjO0NBQ2pCOztBQUVEO0lBQ0ksZUFBZTtDQUNsQjtBQ05EOzs7Ozs7Ozs7Ozs7RUFZRTtBQ1pGOztnRkFFZ0Y7QUFhaEY7O2dGQUVnRjtBQVVoRjs7Z0ZBRWdGO0FBUWhGOztnRkFFZ0Y7QUFNaEY7O2dGQUVnRjtBQy9DaEY7O2dEQUVnRDtBQUVoRDs7OEVBRThFO0FBQzlFOzs7Ozs7OztFQVFFO0FBbUJGOztnRkFFZ0Y7QUNwQ2hGLG9DQUFrQztBQWtCbEM7OzZFQUU2RTtBQTREN0U7Ozs7OztnRkFNZ0Y7QUF5Q2hGOztnRkFFZ0Y7QUFFaEYsK0NBQTZDO0FBUzdDLHNFQUFvRTtBQUM5QyxZQUFVO0FBRWhDOztJQUNDO0NBQ0E7QUFFRCw0Q0FBNEM7QUFZNUMsaURBQStDO0FBTS9DLHdGQUFzRjtBQ3JLdEY7SUFDSSwrQkFBK0I7SUFDL0IsMkNBQXdDO0lBQXhDOzs7MkRBQXdDO0lBQ3hDLG9CQUFvQjtJQUNwQixtQkFBbUI7Q0FDdEI7QUFZRDs7O2dGQUdnRjtBQWlEaEYsYUFBVztBQUVYO0lEZ0dDLG1CQUF5QztJQVp4QyxrQkFBMkI7SUFPNUIsd0JBQXNCO0NDeEZ0QjtBQUNEO0lENEZDLG1CQUF5QztJQVp4QyxrQkFBMkI7SUFPNUIsb0JBQXNCO0NDcEZ0QjtBQUNEO0lBcENFLHdDQUF3QjtJQUN4QixpQkFBaUIsQUFqQ2xCLHdDQUFzQztJQUN0QyxvQ0FBb0MsQUFDcEMseUZBQXVGO0lBQ3ZGLG1DQUFtQztJRHlKbkMsZ0JBQXlDO0lBWnhDLGtCQUEyQjtJQU81Qix3QkFBc0I7Q0MvRXRCO0FBQ0Q7SUF4REUsd0NBQXdCO0lBQ3hCLGlCQUFpQixBQWxCbEIsd0NBQXNDO0lBQ3RDLG9DQUFvQyxBQUNwQyx5RkFBdUY7SUFDdkYsbUNBQW1DO0lEeUpuQyxtQkFBeUM7SUFaeEMsa0JBQTJCO0lBTzVCLG9CQUFzQjtDQzFFdEI7QUFDRDtJRDhFQyxnQkFBeUM7SUFMekMsb0JBQXNCO0NDdEV0QjtBQUNEO0lEMEVDLG9CQUF5QztJQVp4QyxrQkFBMkI7SUFPNUIsb0JBQXNCO0NDbEV0QjtBQUdEO0lBQ0UsaUJBQXlCO0lBQ3pCLFlBQW9CO0lBQ3BCLHNCQUFzQjtJQUN0QixnQkFBZ0I7SUFDaEIsMEJBQTBCO0lBN0QxQix3Q0FBd0I7SUFDeEIsaUJBQWlCLEFBakNsQix3Q0FBc0M7SUFDdEMsb0NBQW9DLEFBQ3BDLHlGQUF1RjtJQUN2RixtQ0FBbUM7SUR5Sm5DLG1CQUF5QztJQVp4QyxrQkFBMkI7SUFPNUIsb0JBQXNCO0NDdkR0QjtBQUVEO0lBQ0UsWUFBb0I7SUFDcEIsc0JBQXNCO0lBQ3RCLDBCQUEwQjtJQXJFMUIsd0NBQXdCO0lBQ3hCLGlCQUFpQixBQWpDbEIsd0NBQXNDO0lBQ3RDLG9DQUFvQyxBQUNwQyx5RkFBdUY7SUFDdkYsbUNBQW1DO0lEeUpuQyxtQkFBeUM7SUFaeEMsa0JBQTJCO0lBTzVCLG9CQUFzQjtDQy9DdEI7QUFFRCxZQUFVO0FBQ1Y7SUFDRSxrQkFBa0I7SUFDbEIsYUFBYTtDQUNkO0FBQ0Q7SUFDRSxvQkFBd0I7SUFDeEIsdUJBQXVCO0lBQ3ZCLGFBQWE7SUFDYixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLFlBQW9CO0lBQ3BCLHNCQUFzQjtJQUN0QixrQkFBa0I7SUFDbEIsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLFdBQVc7SUFqR1gsd0NBQXdCO0lBQ3hCLGlCQUFpQixBQTVCbEIsd0NBQXNDO0lBQ3RDLG9DQUFvQyxBQUNwQyx5RkFBdUY7SUFDdkYsbUNBQW1DO0NBa0luQztBQU5DO0lBQ0UsOEJBQThDO0NBQy9DO0FBQ0Q7SUFDRSxTQUFTO0NBQ1Y7QUFHSDtJQUNFLGlCQUFpQjtJQUNqQix3Q0FBZ0M7WUFBaEMsZ0NBQWdDO0NBbUZqQztBQWpGQztJQUdFLFlBQVk7SUFDWixlQUFlO0lBQ2YsbUJBQW1CO0NBQ3BCO0FBZ0JEO0lBQ0UsMEJBQTBCO0lBQzFCLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsV0FBVztDQVVaO0FBUkM7SUFBb0IsUUFBUTtDQUFFO0FBQzlCO0lBQ0UsaUJBQXlCO0lBQ3pCLE9BQU87SUFBQyxVQUFVO0lBQ2xCLG1DQUFtQztJQUNuQyxTQUFTO0lBQ1QsWUFBWTtDQUNiO0FBR0g7SUFDRSxtQkFBbUI7SUFDbkIsUUFBUTtJQUNSLFlBQVk7Q0FDYjtBQUNEO0lBQ0UsWUFBWTtJQUNaLFlBQVk7SUFDWixhQUFhO0NBY2Q7QUFaQztJQUNFLG9CQUF3QjtJQUN4QixZQUFZO0NBQ2I7QUFDRDtJQUNFLFVBQVU7SUFDVixXQUFXO0NBQ1o7QUFDRDtJQUNFLFlBQVk7SUFDWixXQUFXO0NBQ1o7QUFFSDtJQUNFLG9CQUF3QjtJQUN4QixVQUFVO0lBQUMsVUFBVTtJQUNyQixzQ0FBOEI7UUFBOUIsa0NBQThCO1lBQTlCLDhCQUE4QjtJRHhNakMsWUFBZ0I7SUFDaEIsWUFBa0I7Q0N5TWhCO0FBT0MsMERBRUM7QUFEQztJQUFVLFlBQVk7Q0FBRTtBQUcxQjtJQUV3Qiw4QkFBOEM7Q0FBRTtBQVZ4RTtJQUFXLGdJQUFnSztDQUFFO0FBQzdLO0lBQVU7OEhBQ2dLO0NBQUU7QUFoRTlLO0lBQ0UsNEdBQW9IO0lBQ3BILFdBQVc7SUFBQyxhQUFhO0lBQ3pCLFlBQVk7SURsSmYsWUFBZ0I7SUFDaEIsYUFBa0I7Q0NtSmhCO0FBQ0Q7SUFDRTtnR0FDd0c7SUFDeEcseUJBQXdCO0lBQ3hCLGtDQUFpQztJQUNqQyxhQUFhO0lBQUMsYUFBYTtJRDFKOUIsWUFBZ0I7SUFDaEIsYUFBa0I7Q0MySmhCO0FDMUtIOzs7O0dBSUc7QUFFSCxvQ0FDRTs7Ozs7S0FLRzs7SUFFSjtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLDZCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLDhCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLDhCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjtDQUNEO0FBdkVELDRCQUNFOzs7OztLQUtHOztJQUVKO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsNkJBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsOEJBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsOEJBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsK0JBQTJGO0tBQzNGO0NBQ0Q7QUFFRCxxRUFBbUU7QUFDbkUsdUNBQ0U7Ozs7O0tBS0c7O0lBRUo7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyw4QkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyw4QkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQywrQkFBMkY7S0FDM0Y7Q0FDRDtBQXZFRCwrQkFDRTs7Ozs7S0FLRzs7SUFFSjtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLDhCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLDhCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjtDQUNEO0FBRUQsMkNBQ0U7Ozs7O0tBS0c7O0lBRUo7UUFDQyw4QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw4QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw4QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7O0lBQ0Q7UUFDQyw2QkFBeUY7S0FDekY7Q0FDRDtBQXZFRCxtQ0FDRTs7Ozs7S0FLRzs7SUFFSjtRQUNDLDhCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDhCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDhCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6Rjs7SUFDRDtRQUNDLDZCQUF5RjtLQUN6RjtDQUNEO0FBRUQ7O2dGQUVnRjtBQUNoRix3Q0FDRTs7Ozs7S0FLRzs7SUFFSjtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLDZCQUF1RjtLQUN2RjtDQUNEO0FBdkVELGdDQUNFOzs7OztLQUtHOztJQUVKO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsNkJBQXVGO0tBQ3ZGO0NBQ0Q7QUFFRCw2Q0FDRTs7Ozs7S0FLRzs7SUFFSjtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2RjtDQUNEO0FBNUZELHFDQUNFOzs7OztLQUtHOztJQUVKO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGO0NBQ0Q7QUFFRCxnREFDRTs7Ozs7S0FLRzs7SUFFSjtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG1DQUEyRDtnQkFBM0QsMkJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2Rjs7SUFDRDtRQUNDLG9DQUEyRDtnQkFBM0QsNEJBQTJEO1FBQzNELDZCQUF1RjtLQUN2RjtDQUNEO0FBNUZELHdDQUNFOzs7OztLQUtHOztJQUVKO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGOztJQUNEO1FBQ0Msb0NBQTJEO2dCQUEzRCw0QkFBMkQ7UUFDM0QsNkJBQXVGO0tBQ3ZGO0NBQ0Q7QUFFRDs7Z0ZBRWdGO0FBR2hGLG1DQUNFOzs7OztLQUtHOztJQUVKO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGO0NBQ0Q7QUE1RkQsMkJBQ0U7Ozs7O0tBS0c7O0lBRUo7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCxpQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCxpQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCxpQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMEQ7Z0JBQTFELDJCQUEwRDtRQUMxRCxnQ0FBMkY7S0FDM0Y7Q0FDRDtBQUVELHNDQUNFOzs7OztLQUtHOztJQUVKO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsOEJBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsNkJBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTJEO2dCQUEzRCwyQkFBMkQ7UUFDM0QsK0JBQTJGO0tBQzNGO0NBQ0Q7QUE1RkQsOEJBQ0U7Ozs7O0tBS0c7O0lBRUo7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCw4QkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCwrQkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCw2QkFBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNELDJCQUEyRDtRQUMzRCxnQ0FBMkY7S0FDM0Y7O0lBQ0Q7UUFDQyxtQ0FBMkQ7Z0JBQTNE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RjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLDhCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLDhCQUEyRjtLQUMzRjtDQUNEO0FBRUQ7O0lBQ0M7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7O0lBQ0Q7UUFDQyxXQUFXO0tBQ1g7Q0FDRDtBQTdERDs7SUFDQztRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdBQVc7S0FDWDs7SUFDRDtRQUNDLFdB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S0FLRzs7SUFFSjtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELDhCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELDhCQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUEyRjtLQUMzRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUEyRjtLQUMzRjtDQUNEO0FBNUZELDZCQUNFOzs7OztLQUtHOztJQUVKO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsOEJBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsOEJBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTJGO0tBQzNGO0NBQ0Q7QUFFRCx3Q0FDRTs7Ozs7S0FLRzs7SUFFSjtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELDhCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGdDQUEwRjtLQUMxRjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELCtCQUEwRjtLQUMxRjtDQUNEO0FBNUZELGdDQUNFOzs7OztLQUtHOztJQUVKO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTBGO0tBQzFGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTBGO0tBQzFGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTBGO0tBQzFGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTBGO0tBQzFGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsZ0NBQTBGO0tBQzFGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsK0JBQTBGO0tBQzFG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O0tBQUU7O0lBQ25DO1FBQUssNkJBQTZCO0tBQUU7Q0FDeEM7QUFDRCwyQ0FDRTs7Ozs7S0FLRzs7SUFFSjtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE4RjtLQUM5Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGlDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1Rjs7SUFDRDtRQUNDLG1DQUEwRDtnQkFBMUQsMkJBQTBEO1FBQzFELGtDQUE0RjtLQUM1RjtDQUNEO0FBNUZELG1DQUNFOzs7OztLQUtHOztJQUVKO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsa0NBQThGO0tBQzlGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsa0NBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsa0NBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsa0NBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsa0NBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsaUNBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFDMUQsa0NBQTRGO0tBQzVGOztJQUNEO1FBQ0MsbUNBQTBEO2dCQUExRCwyQkFBMEQ7UUFD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Q2hCLGNBQWtCO0tpRDhFaEI7O0lBREE7UUFBbUIsaUJBQWlCO0tBQUU7O0lBRHRDO1FBQW9CLDZDQUFxQztZQUFyQyx5Q0FBcUM7Z0JBQXJDLHFDQUFxQztLQUFFO0NBRzVEOztBS3ZFRTs7SUFDSTtRQUdJLGNBQWM7S0FDakI7Q0FDSjs7QUMrQ0c7O0lBQUE7UUFDSSxtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBNUV4QixtQkFBbUI7S0E4RWQ7O0lBdkVMO1FBQ0ksbUJBQW1CO1FBQ25CLE9BQU87UUFDUCxRQUFRO1FBQ1IsU0FBUztRQUNULFVBQVU7S0FDYjs7SUFaRDtRQUNJLGVBQWU7UUFDZixZQUFZO1FBQ1osWUFBWTtRQUNaLGdDQUE4QztLQUNqRDtDQXdFSTs7QUFrSkQ7O0lBQUE7UUFDSSxpQkFBaUI7S0FDcEI7Q0FBQSIsImZpbGUiOiJ3ZF9tYWluX25jc2EuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogUGFydGlhbHMgKi9cclxuXHJcbkBpbXBvcnQgJ3BhcnRpYWxzL19sYXlvdXQuc2Nzcyc7XHJcblxyXG4vKiBQYXJ0aWFsIENvbXBvbmVudHMgKi9cclxuXHJcbkBpbXBvcnQgJ3BhcnRpYWxzL2NvbXBvbmVudHMvX3Jlc2V0cy5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvY29tcG9uZW50cy9fc3ByaXRlc2hlZXQuc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL2NvbXBvbmVudHMvX2NvbG9ycy5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvY29tcG9uZW50cy9fbWVkaWEuc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL2NvbXBvbmVudHMvX21peGlucy5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvY29tcG9uZW50cy9fdHlwb2dyYXBoeS5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvY29tcG9uZW50cy9fYW5pbWF0aW9ucy5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvY29tcG9uZW50cy9faWNvbnMuc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL2NvbXBvbmVudHMvX2V4dGVuZGFibGVzLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9jb21wb25lbnRzL196aW5kZXguc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL2NvbXBvbmVudHMvX3V0aWxpdGllcy5zY3NzJztcclxuXHJcbi8qIEJhc2UgKi9cclxuXHJcbkBpbXBvcnQgJ2xpYnMvYmFzZS1zbGlkZXNob3dzLnNjc3MnO1xyXG5AaW1wb3J0ICdsaWJzL2Jhc2UtbmV3c2RldGFpbC5zY3NzJztcclxuQGltcG9ydCAnbGlicy9kcm9wa2ljay5zY3NzJztcclxuQGltcG9ydCAnbGlicy9wZXJmZWN0LXNjcm9sbGJhci5zY3NzJztcclxuXHJcbi8qIE1vZHVsZXMgKi9cclxuXHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX2dsb2JhbEhlYWRlci5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fZ2xvYmFsRm9vdGVyLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19sYW5ndWFnZVNlbGVjdG9yLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19zb2NpYWwuc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX2hvbWUtZ2FtZWluZm8uc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX2hvbWUtcHJvbW9zLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19uZXdzLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19jb21tZW50cy5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fZ2FtZWluZm8tY2FsbG91dC5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fZ2FtZWluZm8tb3ZlcnZpZXcuc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX2dhbWVpbmZvLW1hcC5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fZ2FtZWluZm8tY2hhcmFjdGVycy5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fZ2FtZWluZm8tcmVzZXJ2ZS5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fcmVzZXJ2ZS5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fcmVzZXJ2ZS1wcm9tb3Muc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX25ld3MtaW50cm8uc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX25ld3NMYW5kaW5nLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19uZXdzTGlzdC5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fZmlsdGVyLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19uZXdzRGV0YWlsLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19uZXdzRGV0YWlsLXJlbGF0ZWQuc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX21lZGlhLWludHJvLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19tZWRpYS1saXN0LnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19tZWRpYS5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fNDA0LnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL190cmFpbGVyLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19tZWRpYU1vZGFsLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19hZ2VnYXRlLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL190ZXJtaW5hbC5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fY3VsdHVyZS5zY3NzJztcclxuXHJcbi8qIENyb3dkdHdpc3QgKi9cclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fY3Qtc2hhcmVkLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19jdC1uYXZpZ2F0aW9uLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19jdC1sYW5kaW5nLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19jdC1hY3Rpdml0aWVzLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19jdC1mYXEuc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX2N0LWVycm9yLnNjc3MnO1xyXG5AaW1wb3J0ICdwYXJ0aWFscy9tb2R1bGVzL19jdC1mb290ZXItbmF2aWdhdGlvbi5zY3NzJztcclxuQGltcG9ydCAncGFydGlhbHMvbW9kdWxlcy9fY3QtbGVnYWwuc2Nzcyc7XHJcbkBpbXBvcnQgJ3BhcnRpYWxzL21vZHVsZXMvX2N0LWRhc2hib2FyZC1hY3Rpdml0eS5zY3NzJztcclxuXHJcbi8qIENvbXBvbmVudHMgKi9cclxuQGltcG9ydCAnY29tcG9uZW50cy93ZC1jb21wb25lbnQtdWJpYmFyLnNjc3MnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dkLWNvbXBvbmVudC1wcmVsb2FkZXIuc2Nzcyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd2QtY29tcG9uZW50LWtleXBhZC5zY3NzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy93ZC1jb21wb25lbnQtbWFwLnNjc3MnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dkLWNvbXBvbmVudC1leHBlcmllbmNlLXBvYy5zY3NzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy93ZC1jb21wb25lbnQtc2xpZGVzaG93LnNjc3MnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dkLWNvbXBvbmVudC1nYW1laW5mby1jYXJvdXNlbC5zY3NzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy93ZC1jb21wb25lbnQtcGxheWVyLnNjc3MnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dkLWNvbXBvbmVudC1mdWxsc2NyZWVuLnNjc3MnO1xyXG5cclxuYm9keSxcclxuaHRtbCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJi5uby1zY3JvbGwgeyBvdmVyZmxvdy15OiBoaWRkZW47IH1cclxuXHJcbiAgICAmLm5vLXNjcm9sbC1tb2JpbGUge1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7IC8vIFByZXZlbnRzIG1vYmlsZSBzYWZhcmkgc2Nyb2xsaW5nXHJcbiAgICB9XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICAgLy8gd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2sgdXJsKCd3ZF9nbG9iYWwtYm9keS1iZ19uY3NhLmpwZycpIDAgMCByZXBlYXQ7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbn1cclxuXHJcbiNtYWluIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxyXG5cclxuYSxcclxuYTpsaW5rLFxyXG5hOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cclxuXHJcbmJvZHkuYWdlZ2F0ZS1wYXNzZWQge1xyXG4gICAgYnV0dG9uOmhvdmVyLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLCBhOmhvdmVyIHtcclxuICAgICAgICBjdXJzb3I6IHVybCgnd2RfbWlkZGxlLWZpbmdlci1jdXJzb3JfbmNzYS5jdXInKSwgcG9pbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAudWJpc29mdC1sb2dvID4gYTpob3ZlciB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qIFxyXG4gICBTdHJ1Y3R1cmVcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jb250YWluZXIge1xyXG4gIGxvc3QtY2VudGVyOiAxMjAwcHg7XHJcbn0iLCIucm93LWZsdWlkIFtjbGFzcyo9XCJzcGFuXCJdIHtcclxuICAgIG1pbi1oZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi5yb3ctZmx1aWQgW2NsYXNzKj1cInNwYW5cIl06Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbn1cclxuIiwiLypcclxuU0NTUyB2YXJpYWJsZXMgYXJlIGluZm9ybWF0aW9uIGFib3V0IGljb24ncyBjb21waWxlZCBzdGF0ZSwgc3RvcmVkIHVuZGVyIGl0cyBvcmlnaW5hbCBmaWxlIG5hbWVcclxuXHJcbi5pY29uLWhvbWUge1xyXG4gIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xyXG59XHJcblxyXG5UaGUgbGFyZ2UgYXJyYXktbGlrZSB2YXJpYWJsZXMgY29udGFpbiBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSBzaW5nbGUgaWNvblxyXG4kaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xyXG5cclxuQXQgdGhlIGJvdHRvbSBvZiB0aGlzIHNlY3Rpb24sIHdlIHByb3ZpZGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwcml0ZXNoZWV0IGl0c2VsZlxyXG4kc3ByaXRlc2hlZXQ6IHdpZHRoIGhlaWdodCBpbWFnZSAkc3ByaXRlc2hlZXQtc3ByaXRlcztcclxuKi9cclxuOnJvb3Qge1xyXG4kYXJyb3ctbmFtZTogJ2Fycm93JztcclxuJGFycm93LXg6IDMxMnB4O1xyXG4kYXJyb3cteTogNjRweDtcclxuJGFycm93LW9mZnNldC14OiAtMzEycHg7XHJcbiRhcnJvdy1vZmZzZXQteTogLTMxMnB4IC02NHB4O1xyXG4kYXJyb3ctd2lkdGg6IDY0cHg7XHJcbiRhcnJvdy1oZWlnaHQ6IDY0cHg7XHJcbiRhcnJvdy10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRhcnJvdy10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kYXJyb3ctaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tYXJyb3c6IDMxMnB4IDY0cHggLTMxMnB4IC02NHB4IDY0cHggNjRweCA1MTZweCwyOTdweCAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnICdhcnJvdyc7XHJcbi0tYXJyb3ctbmFtZTogLTMxMnB4IC02NHB4O1xyXG4tLWFycm93LXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJGFycm93bW9iaWxlLW5hbWU6ICdhcnJvd21vYmlsZSc7XHJcbiRhcnJvd21vYmlsZS14OiAzNjVweDtcclxuJGFycm93bW9iaWxlLXk6IDEzMHB4O1xyXG4kYXJyb3dtb2JpbGUtb2Zmc2V0LXg6IC0zNjVweDtcclxuJGFycm93bW9iaWxlLW9mZnNldC15OiAtMzY1cHggLTEzMHB4O1xyXG4kYXJyb3dtb2JpbGUtd2lkdGg6IDUwcHg7XHJcbiRhcnJvd21vYmlsZS1oZWlnaHQ6IDUwcHg7XHJcbiRhcnJvd21vYmlsZS10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRhcnJvd21vYmlsZS10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kYXJyb3dtb2JpbGUtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tYXJyb3dtb2JpbGU6IDM2NXB4IDEzMHB4IC0zNjVweCAtMTMwcHggNTBweCA1MHB4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ2Fycm93bW9iaWxlJztcclxuLS1hcnJvd21vYmlsZS1uYW1lOiAtMzY1cHggLTEzMHB4O1xyXG4tLWFycm93bW9iaWxlLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJGxvZ28tbmFtZTogJ2xvZ28nO1xyXG4kbG9nby14OiAwcHg7XHJcbiRsb2dvLXk6IDE3MHB4O1xyXG4kbG9nby1vZmZzZXQteDogMHB4O1xyXG4kbG9nby1vZmZzZXQteTogMHB4IC0xNzBweDtcclxuJGxvZ28td2lkdGg6IDc1cHg7XHJcbiRsb2dvLWhlaWdodDogODlweDtcclxuJGxvZ28tdG90YWwtd2lkdGg6IDUxNnB4O1xyXG4kbG9nby10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kbG9nby1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1sb2dvOiAwcHggMTcwcHggMHB4IC0xNzBweCA3NXB4IDg5cHggNTE2cHgsMjk3cHggJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJyAnbG9nbyc7XHJcbi0tbG9nby1uYW1lOiAwcHggLTE3MHB4O1xyXG4tLWxvZ28tdG90YWwtd2lkdGg6IDUxNnB4IDI5N3B4O1xyXG4kbG9nby1tb2JpbGUtbmFtZTogJ2xvZ29Nb2JpbGUnO1xyXG4kbG9nby1tb2JpbGUteDogMzc4cHg7XHJcbiRsb2dvLW1vYmlsZS15OiA2NHB4O1xyXG4kbG9nby1tb2JpbGUtb2Zmc2V0LXg6IC0zNzhweDtcclxuJGxvZ28tbW9iaWxlLW9mZnNldC15OiAtMzc4cHggLTY0cHg7XHJcbiRsb2dvLW1vYmlsZS13aWR0aDogNDdweDtcclxuJGxvZ28tbW9iaWxlLWhlaWdodDogNTVweDtcclxuJGxvZ28tbW9iaWxlLXRvdGFsLXdpZHRoOiA1MTZweDtcclxuJGxvZ28tbW9iaWxlLXRvdGFsLWhlaWdodDogMjk3cHg7XHJcbiRsb2dvLW1vYmlsZS1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1sb2dvLW1vYmlsZTogMzc4cHggNjRweCAtMzc4cHggLTY0cHggNDdweCA1NXB4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ2xvZ29Nb2JpbGUnO1xyXG4tLWxvZ28tbW9iaWxlLW5hbWU6IC0zNzhweCAtNjRweDtcclxuLS1sb2dvLW1vYmlsZS10b3RhbC13aWR0aDogNTE2cHggMjk3cHg7XHJcbiRsb2dvLXBjLW5hbWU6ICdsb2dvUGMnO1xyXG4kbG9nby1wYy14OiAzMTJweDtcclxuJGxvZ28tcGMteTogMTMwcHg7XHJcbiRsb2dvLXBjLW9mZnNldC14OiAtMzEycHg7XHJcbiRsb2dvLXBjLW9mZnNldC15OiAtMzEycHggLTEzMHB4O1xyXG4kbG9nby1wYy13aWR0aDogNTFweDtcclxuJGxvZ28tcGMtaGVpZ2h0OiA3N3B4O1xyXG4kbG9nby1wYy10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRsb2dvLXBjLXRvdGFsLWhlaWdodDogMjk3cHg7XHJcbiRsb2dvLXBjLWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnO1xyXG4tLWxvZ28tcGM6IDMxMnB4IDEzMHB4IC0zMTJweCAtMTMwcHggNTFweCA3N3B4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ2xvZ29QYyc7XHJcbi0tbG9nby1wYy1uYW1lOiAtMzEycHggLTEzMHB4O1xyXG4tLWxvZ28tcGMtdG90YWwtd2lkdGg6IDUxNnB4IDI5N3B4O1xyXG4kbG9nby1wczQtbmFtZTogJ2xvZ29QczQnO1xyXG4kbG9nby1wczQteDogMHB4O1xyXG4kbG9nby1wczQteTogMjYxcHg7XHJcbiRsb2dvLXBzNC1vZmZzZXQteDogMHB4O1xyXG4kbG9nby1wczQtb2Zmc2V0LXk6IDBweCAtMjYxcHg7XHJcbiRsb2dvLXBzNC13aWR0aDogMTc3cHg7XHJcbiRsb2dvLXBzNC1oZWlnaHQ6IDM2cHg7XHJcbiRsb2dvLXBzNC10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRsb2dvLXBzNC10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kbG9nby1wczQtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tbG9nby1wczQ6IDBweCAyNjFweCAwcHggLTI2MXB4IDE3N3B4IDM2cHggNTE2cHgsMjk3cHggJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJyAnbG9nb1BzNCc7XHJcbi0tbG9nby1wczQtbmFtZTogMHB4IC0yNjFweDtcclxuLS1sb2dvLXBzNC10b3RhbC13aWR0aDogNTE2cHggMjk3cHg7XHJcbiRsb2dvLXRleHQtbmFtZTogJ2xvZ29UZXh0JztcclxuJGxvZ28tdGV4dC14OiAzMTJweDtcclxuJGxvZ28tdGV4dC15OiAwcHg7XHJcbiRsb2dvLXRleHQtb2Zmc2V0LXg6IC0zMTJweDtcclxuJGxvZ28tdGV4dC1vZmZzZXQteTogLTMxMnB4IDBweDtcclxuJGxvZ28tdGV4dC13aWR0aDogMjA0cHg7XHJcbiRsb2dvLXRleHQtaGVpZ2h0OiAzMHB4O1xyXG4kbG9nby10ZXh0LXRvdGFsLXdpZHRoOiA1MTZweDtcclxuJGxvZ28tdGV4dC10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kbG9nby10ZXh0LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnO1xyXG4tLWxvZ28tdGV4dDogMzEycHggMHB4IC0zMTJweCAwcHggMjA0cHggMzBweCA1MTZweCwyOTdweCAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnICdsb2dvVGV4dCc7XHJcbi0tbG9nby10ZXh0LW5hbWU6IC0zMTJweCAwcHg7XHJcbi0tbG9nby10ZXh0LXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJGxvZ28tdGV4dC1tb2JpbGUtbmFtZTogJ2xvZ29UZXh0TW9iaWxlJztcclxuJGxvZ28tdGV4dC1tb2JpbGUteDogMzY1cHg7XHJcbiRsb2dvLXRleHQtbW9iaWxlLXk6IDE4MnB4O1xyXG4kbG9nby10ZXh0LW1vYmlsZS1vZmZzZXQteDogLTM2NXB4O1xyXG4kbG9nby10ZXh0LW1vYmlsZS1vZmZzZXQteTogLTM2NXB4IC0xODJweDtcclxuJGxvZ28tdGV4dC1tb2JpbGUtd2lkdGg6IDExNXB4O1xyXG4kbG9nby10ZXh0LW1vYmlsZS1oZWlnaHQ6IDE3cHg7XHJcbiRsb2dvLXRleHQtbW9iaWxlLXRvdGFsLXdpZHRoOiA1MTZweDtcclxuJGxvZ28tdGV4dC1tb2JpbGUtdG90YWwtaGVpZ2h0OiAyOTdweDtcclxuJGxvZ28tdGV4dC1tb2JpbGUtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tbG9nby10ZXh0LW1vYmlsZTogMzY1cHggMTgycHggLTM2NXB4IC0xODJweCAxMTVweCAxN3B4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ2xvZ29UZXh0TW9iaWxlJztcclxuLS1sb2dvLXRleHQtbW9iaWxlLW5hbWU6IC0zNjVweCAtMTgycHg7XHJcbi0tbG9nby10ZXh0LW1vYmlsZS10b3RhbC13aWR0aDogNTE2cHggMjk3cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtbmFtZTogJ2xvZ29UZXh0V2hpdGUnO1xyXG4kbG9nby10ZXh0LXdoaXRlLXg6IDMxMnB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLXk6IDMycHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtb2Zmc2V0LXg6IC0zMTJweDtcclxuJGxvZ28tdGV4dC13aGl0ZS1vZmZzZXQteTogLTMxMnB4IC0zMnB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLXdpZHRoOiAyMDRweDtcclxuJGxvZ28tdGV4dC13aGl0ZS1oZWlnaHQ6IDMwcHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtdG90YWwtd2lkdGg6IDUxNnB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLXRvdGFsLWhlaWdodDogMjk3cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tbG9nby10ZXh0LXdoaXRlOiAzMTJweCAzMnB4IC0zMTJweCAtMzJweCAyMDRweCAzMHB4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ2xvZ29UZXh0V2hpdGUnO1xyXG4tLWxvZ28tdGV4dC13aGl0ZS1uYW1lOiAtMzEycHggLTMycHg7XHJcbi0tbG9nby10ZXh0LXdoaXRlLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJGxvZ28tdGV4dC13aGl0ZS1tb2JpbGUtbmFtZTogJ2xvZ29UZXh0V2hpdGVNb2JpbGUnO1xyXG4kbG9nby10ZXh0LXdoaXRlLW1vYmlsZS14OiAzMTJweDtcclxuJGxvZ28tdGV4dC13aGl0ZS1tb2JpbGUteTogMjA5cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtbW9iaWxlLW9mZnNldC14OiAtMzEycHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtbW9iaWxlLW9mZnNldC15OiAtMzEycHggLTIwOXB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLW1vYmlsZS13aWR0aDogMTE1cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtbW9iaWxlLWhlaWdodDogMTdweDtcclxuJGxvZ28tdGV4dC13aGl0ZS1tb2JpbGUtdG90YWwtd2lkdGg6IDUxNnB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLW1vYmlsZS10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kbG9nby10ZXh0LXdoaXRlLW1vYmlsZS1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1sb2dvLXRleHQtd2hpdGUtbW9iaWxlOiAzMTJweCAyMDlweCAtMzEycHggLTIwOXB4IDExNXB4IDE3cHggNTE2cHgsMjk3cHggJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJyAnbG9nb1RleHRXaGl0ZU1vYmlsZSc7XHJcbi0tbG9nby10ZXh0LXdoaXRlLW1vYmlsZS1uYW1lOiAtMzEycHggLTIwOXB4O1xyXG4tLWxvZ28tdGV4dC13aGl0ZS1tb2JpbGUtdG90YWwtd2lkdGg6IDUxNnB4IDI5N3B4O1xyXG4kbG9nby11Ymlzb2Z0LW5hbWU6ICdsb2dvVWJpc29mdCc7XHJcbiRsb2dvLXViaXNvZnQteDogMTI0cHg7XHJcbiRsb2dvLXViaXNvZnQteTogMHB4O1xyXG4kbG9nby11Ymlzb2Z0LW9mZnNldC14OiAtMTI0cHg7XHJcbiRsb2dvLXViaXNvZnQtb2Zmc2V0LXk6IC0xMjRweCAwcHg7XHJcbiRsb2dvLXViaXNvZnQtd2lkdGg6IDE4NnB4O1xyXG4kbG9nby11Ymlzb2Z0LWhlaWdodDogNTZweDtcclxuJGxvZ28tdWJpc29mdC10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRsb2dvLXViaXNvZnQtdG90YWwtaGVpZ2h0OiAyOTdweDtcclxuJGxvZ28tdWJpc29mdC1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1sb2dvLXViaXNvZnQ6IDEyNHB4IDBweCAtMTI0cHggMHB4IDE4NnB4IDU2cHggNTE2cHgsMjk3cHggJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJyAnbG9nb1ViaXNvZnQnO1xyXG4tLWxvZ28tdWJpc29mdC1uYW1lOiAtMTI0cHggMHB4O1xyXG4tLWxvZ28tdWJpc29mdC10b3RhbC13aWR0aDogNTE2cHggMjk3cHg7XHJcbiRsb2dvLXVwbGF5LW5hbWU6ICdsb2dvVXBsYXknO1xyXG4kbG9nby11cGxheS14OiAxMjRweDtcclxuJGxvZ28tdXBsYXkteTogNThweDtcclxuJGxvZ28tdXBsYXktb2Zmc2V0LXg6IC0xMjRweDtcclxuJGxvZ28tdXBsYXktb2Zmc2V0LXk6IC0xMjRweCAtNThweDtcclxuJGxvZ28tdXBsYXktd2lkdGg6IDE0NXB4O1xyXG4kbG9nby11cGxheS1oZWlnaHQ6IDU5cHg7XHJcbiRsb2dvLXVwbGF5LXRvdGFsLXdpZHRoOiA1MTZweDtcclxuJGxvZ28tdXBsYXktdG90YWwtaGVpZ2h0OiAyOTdweDtcclxuJGxvZ28tdXBsYXktaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tbG9nby11cGxheTogMTI0cHggNThweCAtMTI0cHggLTU4cHggMTQ1cHggNTlweCA1MTZweCwyOTdweCAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnICdsb2dvVXBsYXknO1xyXG4tLWxvZ28tdXBsYXktbmFtZTogLTEyNHB4IC01OHB4O1xyXG4tLWxvZ28tdXBsYXktdG90YWwtd2lkdGg6IDUxNnB4IDI5N3B4O1xyXG4kbG9nby13aGl0ZS1uYW1lOiAnbG9nb1doaXRlJztcclxuJGxvZ28td2hpdGUteDogNzdweDtcclxuJGxvZ28td2hpdGUteTogMTcwcHg7XHJcbiRsb2dvLXdoaXRlLW9mZnNldC14OiAtNzdweDtcclxuJGxvZ28td2hpdGUtb2Zmc2V0LXk6IC03N3B4IC0xNzBweDtcclxuJGxvZ28td2hpdGUtd2lkdGg6IDc1cHg7XHJcbiRsb2dvLXdoaXRlLWhlaWdodDogODlweDtcclxuJGxvZ28td2hpdGUtdG90YWwtd2lkdGg6IDUxNnB4O1xyXG4kbG9nby13aGl0ZS10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kbG9nby13aGl0ZS1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1sb2dvLXdoaXRlOiA3N3B4IDE3MHB4IC03N3B4IC0xNzBweCA3NXB4IDg5cHggNTE2cHgsMjk3cHggJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJyAnbG9nb1doaXRlJztcclxuLS1sb2dvLXdoaXRlLW5hbWU6IC03N3B4IC0xNzBweDtcclxuLS1sb2dvLXdoaXRlLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJGxvZ28td2hpdGUtbW9iaWxlLW5hbWU6ICdsb2dvV2hpdGVNb2JpbGUnO1xyXG4kbG9nby13aGl0ZS1tb2JpbGUteDogNDI3cHg7XHJcbiRsb2dvLXdoaXRlLW1vYmlsZS15OiA2NHB4O1xyXG4kbG9nby13aGl0ZS1tb2JpbGUtb2Zmc2V0LXg6IC00MjdweDtcclxuJGxvZ28td2hpdGUtbW9iaWxlLW9mZnNldC15OiAtNDI3cHggLTY0cHg7XHJcbiRsb2dvLXdoaXRlLW1vYmlsZS13aWR0aDogNDdweDtcclxuJGxvZ28td2hpdGUtbW9iaWxlLWhlaWdodDogNTVweDtcclxuJGxvZ28td2hpdGUtbW9iaWxlLXRvdGFsLXdpZHRoOiA1MTZweDtcclxuJGxvZ28td2hpdGUtbW9iaWxlLXRvdGFsLWhlaWdodDogMjk3cHg7XHJcbiRsb2dvLXdoaXRlLW1vYmlsZS1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1sb2dvLXdoaXRlLW1vYmlsZTogNDI3cHggNjRweCAtNDI3cHggLTY0cHggNDdweCA1NXB4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ2xvZ29XaGl0ZU1vYmlsZSc7XHJcbi0tbG9nby13aGl0ZS1tb2JpbGUtbmFtZTogLTQyN3B4IC02NHB4O1xyXG4tLWxvZ28td2hpdGUtbW9iaWxlLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJGxvZ28teGJveG9uZS1uYW1lOiAnbG9nb1hib3hvbmUnO1xyXG4kbG9nby14Ym94b25lLXg6IDBweDtcclxuJGxvZ28teGJveG9uZS15OiAxMjRweDtcclxuJGxvZ28teGJveG9uZS1vZmZzZXQteDogMHB4O1xyXG4kbG9nby14Ym94b25lLW9mZnNldC15OiAwcHggLTEyNHB4O1xyXG4kbG9nby14Ym94b25lLXdpZHRoOiAyMjBweDtcclxuJGxvZ28teGJveG9uZS1oZWlnaHQ6IDQ0cHg7XHJcbiRsb2dvLXhib3hvbmUtdG90YWwtd2lkdGg6IDUxNnB4O1xyXG4kbG9nby14Ym94b25lLXRvdGFsLWhlaWdodDogMjk3cHg7XHJcbiRsb2dvLXhib3hvbmUtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tbG9nby14Ym94b25lOiAwcHggMTI0cHggMHB4IC0xMjRweCAyMjBweCA0NHB4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ2xvZ29YYm94b25lJztcclxuLS1sb2dvLXhib3hvbmUtbmFtZTogMHB4IC0xMjRweDtcclxuLS1sb2dvLXhib3hvbmUtdG90YWwtd2lkdGg6IDUxNnB4IDI5N3B4O1xyXG4kcGxheWVyLWZ1bGxzY3JlZW4tbmFtZTogJ3BsYXllci1mdWxsc2NyZWVuJztcclxuJHBsYXllci1mdWxsc2NyZWVuLXg6IDQ5OHB4O1xyXG4kcGxheWVyLWZ1bGxzY3JlZW4teTogNjRweDtcclxuJHBsYXllci1mdWxsc2NyZWVuLW9mZnNldC14OiAtNDk4cHg7XHJcbiRwbGF5ZXItZnVsbHNjcmVlbi1vZmZzZXQteTogLTQ5OHB4IC02NHB4O1xyXG4kcGxheWVyLWZ1bGxzY3JlZW4td2lkdGg6IDE4cHg7XHJcbiRwbGF5ZXItZnVsbHNjcmVlbi1oZWlnaHQ6IDE4cHg7XHJcbiRwbGF5ZXItZnVsbHNjcmVlbi10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRwbGF5ZXItZnVsbHNjcmVlbi10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kcGxheWVyLWZ1bGxzY3JlZW4taW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tcGxheWVyLWZ1bGxzY3JlZW46IDQ5OHB4IDY0cHggLTQ5OHB4IC02NHB4IDE4cHggMThweCA1MTZweCwyOTdweCAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnICdwbGF5ZXItZnVsbHNjcmVlbic7XHJcbi0tcGxheWVyLWZ1bGxzY3JlZW4tbmFtZTogLTQ5OHB4IC02NHB4O1xyXG4tLXBsYXllci1mdWxsc2NyZWVuLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJHBsYXllci1vdmVybGF5LXBsYXktbmFtZTogJ3BsYXllci1vdmVybGF5LXBsYXknO1xyXG4kcGxheWVyLW92ZXJsYXktcGxheS14OiAwcHg7XHJcbiRwbGF5ZXItb3ZlcmxheS1wbGF5LXk6IDBweDtcclxuJHBsYXllci1vdmVybGF5LXBsYXktb2Zmc2V0LXg6IDBweDtcclxuJHBsYXllci1vdmVybGF5LXBsYXktb2Zmc2V0LXk6IDBweCAwcHg7XHJcbiRwbGF5ZXItb3ZlcmxheS1wbGF5LXdpZHRoOiAxMjJweDtcclxuJHBsYXllci1vdmVybGF5LXBsYXktaGVpZ2h0OiAxMjJweDtcclxuJHBsYXllci1vdmVybGF5LXBsYXktdG90YWwtd2lkdGg6IDUxNnB4O1xyXG4kcGxheWVyLW92ZXJsYXktcGxheS10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kcGxheWVyLW92ZXJsYXktcGxheS1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1wbGF5ZXItb3ZlcmxheS1wbGF5OiAwcHggMHB4IDBweCAwcHggMTIycHggMTIycHggNTE2cHgsMjk3cHggJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJyAncGxheWVyLW92ZXJsYXktcGxheSc7XHJcbi0tcGxheWVyLW92ZXJsYXktcGxheS1uYW1lOiAwcHggMHB4O1xyXG4tLXBsYXllci1vdmVybGF5LXBsYXktdG90YWwtd2lkdGg6IDUxNnB4IDI5N3B4O1xyXG4kcGxheWVyLXBhdXNlLW5hbWU6ICdwbGF5ZXItcGF1c2UnO1xyXG4kcGxheWVyLXBhdXNlLXg6IDQ5OHB4O1xyXG4kcGxheWVyLXBhdXNlLXk6IDg2cHg7XHJcbiRwbGF5ZXItcGF1c2Utb2Zmc2V0LXg6IC00OThweDtcclxuJHBsYXllci1wYXVzZS1vZmZzZXQteTogLTQ5OHB4IC04NnB4O1xyXG4kcGxheWVyLXBhdXNlLXdpZHRoOiAxNnB4O1xyXG4kcGxheWVyLXBhdXNlLWhlaWdodDogMTZweDtcclxuJHBsYXllci1wYXVzZS10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRwbGF5ZXItcGF1c2UtdG90YWwtaGVpZ2h0OiAyOTdweDtcclxuJHBsYXllci1wYXVzZS1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1wbGF5ZXItcGF1c2U6IDQ5OHB4IDg2cHggLTQ5OHB4IC04NnB4IDE2cHggMTZweCA1MTZweCwyOTdweCAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnICdwbGF5ZXItcGF1c2UnO1xyXG4tLXBsYXllci1wYXVzZS1uYW1lOiAtNDk4cHggLTg2cHg7XHJcbi0tcGxheWVyLXBhdXNlLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJHBsYXllci1wbGF5LW5hbWU6ICdwbGF5ZXItcGxheSc7XHJcbiRwbGF5ZXItcGxheS14OiA0MTdweDtcclxuJHBsYXllci1wbGF5LXk6IDEzMHB4O1xyXG4kcGxheWVyLXBsYXktb2Zmc2V0LXg6IC00MTdweDtcclxuJHBsYXllci1wbGF5LW9mZnNldC15OiAtNDE3cHggLTEzMHB4O1xyXG4kcGxheWVyLXBsYXktd2lkdGg6IDE2cHg7XHJcbiRwbGF5ZXItcGxheS1oZWlnaHQ6IDE2cHg7XHJcbiRwbGF5ZXItcGxheS10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRwbGF5ZXItcGxheS10b3RhbC1oZWlnaHQ6IDI5N3B4O1xyXG4kcGxheWVyLXBsYXktaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tcGxheWVyLXBsYXk6IDQxN3B4IDEzMHB4IC00MTdweCAtMTMwcHggMTZweCAxNnB4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ3BsYXllci1wbGF5JztcclxuLS1wbGF5ZXItcGxheS1uYW1lOiAtNDE3cHggLTEzMHB4O1xyXG4tLXBsYXllci1wbGF5LXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJHBsYXllci1zb3VuZC1vZmYtbmFtZTogJ3BsYXllci1zb3VuZC1vZmYnO1xyXG4kcGxheWVyLXNvdW5kLW9mZi14OiA0MzVweDtcclxuJHBsYXllci1zb3VuZC1vZmYteTogMTMwcHg7XHJcbiRwbGF5ZXItc291bmQtb2ZmLW9mZnNldC14OiAtNDM1cHg7XHJcbiRwbGF5ZXItc291bmQtb2ZmLW9mZnNldC15OiAtNDM1cHggLTEzMHB4O1xyXG4kcGxheWVyLXNvdW5kLW9mZi13aWR0aDogMTZweDtcclxuJHBsYXllci1zb3VuZC1vZmYtaGVpZ2h0OiAxNnB4O1xyXG4kcGxheWVyLXNvdW5kLW9mZi10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRwbGF5ZXItc291bmQtb2ZmLXRvdGFsLWhlaWdodDogMjk3cHg7XHJcbiRwbGF5ZXItc291bmQtb2ZmLWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnO1xyXG4tLXBsYXllci1zb3VuZC1vZmY6IDQzNXB4IDEzMHB4IC00MzVweCAtMTMwcHggMTZweCAxNnB4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ3BsYXllci1zb3VuZC1vZmYnO1xyXG4tLXBsYXllci1zb3VuZC1vZmYtbmFtZTogLTQzNXB4IC0xMzBweDtcclxuLS1wbGF5ZXItc291bmQtb2ZmLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJHBsYXllci1zb3VuZC1vbi1uYW1lOiAncGxheWVyLXNvdW5kLW9uJztcclxuJHBsYXllci1zb3VuZC1vbi14OiA0NTNweDtcclxuJHBsYXllci1zb3VuZC1vbi15OiAxMzBweDtcclxuJHBsYXllci1zb3VuZC1vbi1vZmZzZXQteDogLTQ1M3B4O1xyXG4kcGxheWVyLXNvdW5kLW9uLW9mZnNldC15OiAtNDUzcHggLTEzMHB4O1xyXG4kcGxheWVyLXNvdW5kLW9uLXdpZHRoOiAxNnB4O1xyXG4kcGxheWVyLXNvdW5kLW9uLWhlaWdodDogMTZweDtcclxuJHBsYXllci1zb3VuZC1vbi10b3RhbC13aWR0aDogNTE2cHg7XHJcbiRwbGF5ZXItc291bmQtb24tdG90YWwtaGVpZ2h0OiAyOTdweDtcclxuJHBsYXllci1zb3VuZC1vbi1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJztcclxuLS1wbGF5ZXItc291bmQtb246IDQ1M3B4IDEzMHB4IC00NTNweCAtMTMwcHggMTZweCAxNnB4IDUxNnB4LDI5N3B4ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycgJ3BsYXllci1zb3VuZC1vbic7XHJcbi0tcGxheWVyLXNvdW5kLW9uLW5hbWU6IC00NTNweCAtMTMwcHg7XHJcbi0tcGxheWVyLXNvdW5kLW9uLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuJHRhYi1uYW1lOiAndGFiJztcclxuJHRhYi14OiA0NzZweDtcclxuJHRhYi15OiA2NHB4O1xyXG4kdGFiLW9mZnNldC14OiAtNDc2cHg7XHJcbiR0YWItb2Zmc2V0LXk6IC00NzZweCAtNjRweDtcclxuJHRhYi13aWR0aDogMjBweDtcclxuJHRhYi1oZWlnaHQ6IDIwcHg7XHJcbiR0YWItdG90YWwtd2lkdGg6IDUxNnB4O1xyXG4kdGFiLXRvdGFsLWhlaWdodDogMjk3cHg7XHJcbiR0YWItaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tdGFiOiA0NzZweCA2NHB4IC00NzZweCAtNjRweCAyMHB4IDIwcHggNTE2cHgsMjk3cHggJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJyAndGFiJztcclxuLS10YWItbmFtZTogLTQ3NnB4IC02NHB4O1xyXG4tLXRhYi10b3RhbC13aWR0aDogNTE2cHggMjk3cHg7XHJcbiR0YWItc2VsZWN0ZWQtbmFtZTogJ3RhYlNlbGVjdGVkJztcclxuJHRhYi1zZWxlY3RlZC14OiA0NzZweDtcclxuJHRhYi1zZWxlY3RlZC15OiA4NnB4O1xyXG4kdGFiLXNlbGVjdGVkLW9mZnNldC14OiAtNDc2cHg7XHJcbiR0YWItc2VsZWN0ZWQtb2Zmc2V0LXk6IC00NzZweCAtODZweDtcclxuJHRhYi1zZWxlY3RlZC13aWR0aDogMjBweDtcclxuJHRhYi1zZWxlY3RlZC1oZWlnaHQ6IDIwcHg7XHJcbiR0YWItc2VsZWN0ZWQtdG90YWwtd2lkdGg6IDUxNnB4O1xyXG4kdGFiLXNlbGVjdGVkLXRvdGFsLWhlaWdodDogMjk3cHg7XHJcbiR0YWItc2VsZWN0ZWQtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZyc7XHJcbi0tdGFiLXNlbGVjdGVkOiA0NzZweCA4NnB4IC00NzZweCAtODZweCAyMHB4IDIwcHggNTE2cHgsMjk3cHggJ3dkX3Nwcml0ZXNoZWV0X25jc2EucG5nJyAndGFiU2VsZWN0ZWQnO1xyXG4tLXRhYi1zZWxlY3RlZC1uYW1lOiAtNDc2cHggLTg2cHg7XHJcbi0tdGFiLXNlbGVjdGVkLXRvdGFsLXdpZHRoOiA1MTZweCAyOTdweDtcclxuXHJcbiRhcnJvdy0yeC1uYW1lOiAnYXJyb3ctMngnO1xyXG4kYXJyb3ctMngteDogNjI0cHg7XHJcbiRhcnJvdy0yeC15OiAxMjhweDtcclxuJGFycm93LTJ4LW9mZnNldC14OiAtNjI0cHg7XHJcbiRhcnJvdy0yeC1vZmZzZXQteTogLTEyOHB4O1xyXG4kYXJyb3ctMngtd2lkdGg6IDEyOHB4O1xyXG4kYXJyb3ctMngtaGVpZ2h0OiAxMjhweDtcclxuJGFycm93LTJ4LXRvdGFsLXdpZHRoOiAxMDMycHg7XHJcbiRhcnJvdy0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kYXJyb3ctMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tYXJyb3ctMng6IDYyNHB4IDEyOHB4IC02MjRweCAtMTI4cHggMTI4cHggMTI4cHggMTAzMnB4LDU5NHB4ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZycgJ2Fycm93LTJ4JztcclxuLS1hcnJvdy0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRhcnJvd21vYmlsZS0yeC1uYW1lOiAnYXJyb3dtb2JpbGUtMngnO1xyXG4kYXJyb3dtb2JpbGUtMngteDogNzMwcHg7XHJcbiRhcnJvd21vYmlsZS0yeC15OiAyNjBweDtcclxuJGFycm93bW9iaWxlLTJ4LW9mZnNldC14OiAtNzMwcHg7XHJcbiRhcnJvd21vYmlsZS0yeC1vZmZzZXQteTogLTI2MHB4O1xyXG4kYXJyb3dtb2JpbGUtMngtd2lkdGg6IDEwMHB4O1xyXG4kYXJyb3dtb2JpbGUtMngtaGVpZ2h0OiAxMDBweDtcclxuJGFycm93bW9iaWxlLTJ4LXRvdGFsLXdpZHRoOiAxMDMycHg7XHJcbiRhcnJvd21vYmlsZS0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kYXJyb3dtb2JpbGUtMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tYXJyb3dtb2JpbGUtMng6IDczMHB4IDI2MHB4IC03MzBweCAtMjYwcHggMTAwcHggMTAwcHggMTAzMnB4LDU5NHB4ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZycgJ2Fycm93bW9iaWxlLTJ4JztcclxuLS1hcnJvd21vYmlsZS0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRsb2dvLTJ4LW5hbWU6ICdsb2dvLTJ4JztcclxuJGxvZ28tMngteDogMHB4O1xyXG4kbG9nby0yeC15OiAzNDBweDtcclxuJGxvZ28tMngtb2Zmc2V0LXg6IDBweDtcclxuJGxvZ28tMngtb2Zmc2V0LXk6IC0zNDBweDtcclxuJGxvZ28tMngtd2lkdGg6IDE1MHB4O1xyXG4kbG9nby0yeC1oZWlnaHQ6IDE3OHB4O1xyXG4kbG9nby0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kbG9nby0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kbG9nby0yeC1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJztcclxuLS1sb2dvLTJ4OiAwcHggMzQwcHggMHB4IC0zNDBweCAxNTBweCAxNzhweCAxMDMycHgsNTk0cHggJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJyAnbG9nby0yeCc7XHJcbi0tbG9nby0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRsb2dvLW1vYmlsZS0yeC1uYW1lOiAnbG9nb01vYmlsZS0yeCc7XHJcbiRsb2dvLW1vYmlsZS0yeC14OiA3NTZweDtcclxuJGxvZ28tbW9iaWxlLTJ4LXk6IDEyOHB4O1xyXG4kbG9nby1tb2JpbGUtMngtb2Zmc2V0LXg6IC03NTZweDtcclxuJGxvZ28tbW9iaWxlLTJ4LW9mZnNldC15OiAtMTI4cHg7XHJcbiRsb2dvLW1vYmlsZS0yeC13aWR0aDogOTRweDtcclxuJGxvZ28tbW9iaWxlLTJ4LWhlaWdodDogMTEwcHg7XHJcbiRsb2dvLW1vYmlsZS0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kbG9nby1tb2JpbGUtMngtdG90YWwtaGVpZ2h0OiA1OTRweDtcclxuJGxvZ28tbW9iaWxlLTJ4LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnO1xyXG4tLWxvZ28tbW9iaWxlLTJ4OiA3NTZweCAxMjhweCAtNzU2cHggLTEyOHB4IDk0cHggMTEwcHggMTAzMnB4LDU5NHB4ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZycgJ2xvZ29Nb2JpbGUtMngnO1xyXG4tLWxvZ28tbW9iaWxlLTJ4LW5hbWU6IDEwMzJweCA1OTRweDtcclxuJGxvZ28tcGMtMngtbmFtZTogJ2xvZ29QYy0yeCc7XHJcbiRsb2dvLXBjLTJ4LXg6IDYyNHB4O1xyXG4kbG9nby1wYy0yeC15OiAyNjBweDtcclxuJGxvZ28tcGMtMngtb2Zmc2V0LXg6IC02MjRweDtcclxuJGxvZ28tcGMtMngtb2Zmc2V0LXk6IC0yNjBweDtcclxuJGxvZ28tcGMtMngtd2lkdGg6IDEwMnB4O1xyXG4kbG9nby1wYy0yeC1oZWlnaHQ6IDE1NHB4O1xyXG4kbG9nby1wYy0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kbG9nby1wYy0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kbG9nby1wYy0yeC1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJztcclxuLS1sb2dvLXBjLTJ4OiA2MjRweCAyNjBweCAtNjI0cHggLTI2MHB4IDEwMnB4IDE1NHB4IDEwMzJweCw1OTRweCAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnICdsb2dvUGMtMngnO1xyXG4tLWxvZ28tcGMtMngtbmFtZTogMTAzMnB4IDU5NHB4O1xyXG4kbG9nby1wczQtMngtbmFtZTogJ2xvZ29QczQtMngnO1xyXG4kbG9nby1wczQtMngteDogMHB4O1xyXG4kbG9nby1wczQtMngteTogNTIycHg7XHJcbiRsb2dvLXBzNC0yeC1vZmZzZXQteDogMHB4O1xyXG4kbG9nby1wczQtMngtb2Zmc2V0LXk6IC01MjJweDtcclxuJGxvZ28tcHM0LTJ4LXdpZHRoOiAzNTRweDtcclxuJGxvZ28tcHM0LTJ4LWhlaWdodDogNzJweDtcclxuJGxvZ28tcHM0LTJ4LXRvdGFsLXdpZHRoOiAxMDMycHg7XHJcbiRsb2dvLXBzNC0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kbG9nby1wczQtMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tbG9nby1wczQtMng6IDBweCA1MjJweCAwcHggLTUyMnB4IDM1NHB4IDcycHggMTAzMnB4LDU5NHB4ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZycgJ2xvZ29QczQtMngnO1xyXG4tLWxvZ28tcHM0LTJ4LW5hbWU6IDEwMzJweCA1OTRweDtcclxuJGxvZ28tdGV4dC0yeC1uYW1lOiAnbG9nb1RleHQtMngnO1xyXG4kbG9nby10ZXh0LTJ4LXg6IDYyNHB4O1xyXG4kbG9nby10ZXh0LTJ4LXk6IDBweDtcclxuJGxvZ28tdGV4dC0yeC1vZmZzZXQteDogLTYyNHB4O1xyXG4kbG9nby10ZXh0LTJ4LW9mZnNldC15OiAwcHg7XHJcbiRsb2dvLXRleHQtMngtd2lkdGg6IDQwOHB4O1xyXG4kbG9nby10ZXh0LTJ4LWhlaWdodDogNjBweDtcclxuJGxvZ28tdGV4dC0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kbG9nby10ZXh0LTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRsb2dvLXRleHQtMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tbG9nby10ZXh0LTJ4OiA2MjRweCAwcHggLTYyNHB4IDBweCA0MDhweCA2MHB4IDEwMzJweCw1OTRweCAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnICdsb2dvVGV4dC0yeCc7XHJcbi0tbG9nby10ZXh0LTJ4LW5hbWU6IDEwMzJweCA1OTRweDtcclxuJGxvZ28tdGV4dC1tb2JpbGUtMngtbmFtZTogJ2xvZ29UZXh0TW9iaWxlLTJ4JztcclxuJGxvZ28tdGV4dC1tb2JpbGUtMngteDogNzMwcHg7XHJcbiRsb2dvLXRleHQtbW9iaWxlLTJ4LXk6IDM2NHB4O1xyXG4kbG9nby10ZXh0LW1vYmlsZS0yeC1vZmZzZXQteDogLTczMHB4O1xyXG4kbG9nby10ZXh0LW1vYmlsZS0yeC1vZmZzZXQteTogLTM2NHB4O1xyXG4kbG9nby10ZXh0LW1vYmlsZS0yeC13aWR0aDogMjMwcHg7XHJcbiRsb2dvLXRleHQtbW9iaWxlLTJ4LWhlaWdodDogMzRweDtcclxuJGxvZ28tdGV4dC1tb2JpbGUtMngtdG90YWwtd2lkdGg6IDEwMzJweDtcclxuJGxvZ28tdGV4dC1tb2JpbGUtMngtdG90YWwtaGVpZ2h0OiA1OTRweDtcclxuJGxvZ28tdGV4dC1tb2JpbGUtMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tbG9nby10ZXh0LW1vYmlsZS0yeDogNzMwcHggMzY0cHggLTczMHB4IC0zNjRweCAyMzBweCAzNHB4IDEwMzJweCw1OTRweCAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnICdsb2dvVGV4dE1vYmlsZS0yeCc7XHJcbi0tbG9nby10ZXh0LW1vYmlsZS0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtMngtbmFtZTogJ2xvZ29UZXh0V2hpdGUtMngnO1xyXG4kbG9nby10ZXh0LXdoaXRlLTJ4LXg6IDYyNHB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLTJ4LXk6IDY0cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtMngtb2Zmc2V0LXg6IC02MjRweDtcclxuJGxvZ28tdGV4dC13aGl0ZS0yeC1vZmZzZXQteTogLTY0cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtMngtd2lkdGg6IDQwOHB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLTJ4LWhlaWdodDogNjBweDtcclxuJGxvZ28tdGV4dC13aGl0ZS0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tbG9nby10ZXh0LXdoaXRlLTJ4OiA2MjRweCA2NHB4IC02MjRweCAtNjRweCA0MDhweCA2MHB4IDEwMzJweCw1OTRweCAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnICdsb2dvVGV4dFdoaXRlLTJ4JztcclxuLS1sb2dvLXRleHQtd2hpdGUtMngtbmFtZTogMTAzMnB4IDU5NHB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLW1vYmlsZS0yeC1uYW1lOiAnbG9nb1RleHRXaGl0ZU1vYmlsZS0yeCc7XHJcbiRsb2dvLXRleHQtd2hpdGUtbW9iaWxlLTJ4LXg6IDYyNHB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLW1vYmlsZS0yeC15OiA0MThweDtcclxuJGxvZ28tdGV4dC13aGl0ZS1tb2JpbGUtMngtb2Zmc2V0LXg6IC02MjRweDtcclxuJGxvZ28tdGV4dC13aGl0ZS1tb2JpbGUtMngtb2Zmc2V0LXk6IC00MThweDtcclxuJGxvZ28tdGV4dC13aGl0ZS1tb2JpbGUtMngtd2lkdGg6IDIzMHB4O1xyXG4kbG9nby10ZXh0LXdoaXRlLW1vYmlsZS0yeC1oZWlnaHQ6IDM0cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtbW9iaWxlLTJ4LXRvdGFsLXdpZHRoOiAxMDMycHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtbW9iaWxlLTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRsb2dvLXRleHQtd2hpdGUtbW9iaWxlLTJ4LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnO1xyXG4tLWxvZ28tdGV4dC13aGl0ZS1tb2JpbGUtMng6IDYyNHB4IDQxOHB4IC02MjRweCAtNDE4cHggMjMwcHggMzRweCAxMDMycHgsNTk0cHggJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJyAnbG9nb1RleHRXaGl0ZU1vYmlsZS0yeCc7XHJcbi0tbG9nby10ZXh0LXdoaXRlLW1vYmlsZS0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRsb2dvLXViaXNvZnRmLTJ4LW5hbWU6ICdsb2dvVWJpc29mdGYtMngnO1xyXG4kbG9nby11Ymlzb2Z0Zi0yeC14OiAyNDhweDtcclxuJGxvZ28tdWJpc29mdGYtMngteTogMHB4O1xyXG4kbG9nby11Ymlzb2Z0Zi0yeC1vZmZzZXQteDogLTI0OHB4O1xyXG4kbG9nby11Ymlzb2Z0Zi0yeC1vZmZzZXQteTogMHB4O1xyXG4kbG9nby11Ymlzb2Z0Zi0yeC13aWR0aDogMzcycHg7XHJcbiRsb2dvLXViaXNvZnRmLTJ4LWhlaWdodDogMTEycHg7XHJcbiRsb2dvLXViaXNvZnRmLTJ4LXRvdGFsLXdpZHRoOiAxMDMycHg7XHJcbiRsb2dvLXViaXNvZnRmLTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRsb2dvLXViaXNvZnRmLTJ4LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnO1xyXG4tLWxvZ28tdWJpc29mdGYtMng6IDI0OHB4IDBweCAtMjQ4cHggMHB4IDM3MnB4IDExMnB4IDEwMzJweCw1OTRweCAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnICdsb2dvVWJpc29mdGYtMngnO1xyXG4tLWxvZ28tdWJpc29mdGYtMngtbmFtZTogMTAzMnB4IDU5NHB4O1xyXG4kbG9nby11cGxheS0yeC1uYW1lOiAnbG9nb1VwbGF5LTJ4JztcclxuJGxvZ28tdXBsYXktMngteDogMjQ4cHg7XHJcbiRsb2dvLXVwbGF5LTJ4LXk6IDExNnB4O1xyXG4kbG9nby11cGxheS0yeC1vZmZzZXQteDogLTI0OHB4O1xyXG4kbG9nby11cGxheS0yeC1vZmZzZXQteTogLTExNnB4O1xyXG4kbG9nby11cGxheS0yeC13aWR0aDogMjkwcHg7XHJcbiRsb2dvLXVwbGF5LTJ4LWhlaWdodDogMTE4cHg7XHJcbiRsb2dvLXVwbGF5LTJ4LXRvdGFsLXdpZHRoOiAxMDMycHg7XHJcbiRsb2dvLXVwbGF5LTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRsb2dvLXVwbGF5LTJ4LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnO1xyXG4tLWxvZ28tdXBsYXktMng6IDI0OHB4IDExNnB4IC0yNDhweCAtMTE2cHggMjkwcHggMTE4cHggMTAzMnB4LDU5NHB4ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZycgJ2xvZ29VcGxheS0yeCc7XHJcbi0tbG9nby11cGxheS0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRsb2dvLXdoaXRlLTJ4LW5hbWU6ICdsb2dvV2hpdGUtMngnO1xyXG4kbG9nby13aGl0ZS0yeC14OiAxNTRweDtcclxuJGxvZ28td2hpdGUtMngteTogMzQwcHg7XHJcbiRsb2dvLXdoaXRlLTJ4LW9mZnNldC14OiAtMTU0cHg7XHJcbiRsb2dvLXdoaXRlLTJ4LW9mZnNldC15OiAtMzQwcHg7XHJcbiRsb2dvLXdoaXRlLTJ4LXdpZHRoOiAxNTBweDtcclxuJGxvZ28td2hpdGUtMngtaGVpZ2h0OiAxNzhweDtcclxuJGxvZ28td2hpdGUtMngtdG90YWwtd2lkdGg6IDEwMzJweDtcclxuJGxvZ28td2hpdGUtMngtdG90YWwtaGVpZ2h0OiA1OTRweDtcclxuJGxvZ28td2hpdGUtMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tbG9nby13aGl0ZS0yeDogMTU0cHggMzQwcHggLTE1NHB4IC0zNDBweCAxNTBweCAxNzhweCAxMDMycHgsNTk0cHggJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJyAnbG9nb1doaXRlLTJ4JztcclxuLS1sb2dvLXdoaXRlLTJ4LW5hbWU6IDEwMzJweCA1OTRweDtcclxuJGxvZ28td2hpdGUtbW9iaWxlLTJ4LW5hbWU6ICdsb2dvV2hpdGVNb2JpbGUtMngnO1xyXG4kbG9nby13aGl0ZS1tb2JpbGUtMngteDogODU0cHg7XHJcbiRsb2dvLXdoaXRlLW1vYmlsZS0yeC15OiAxMjhweDtcclxuJGxvZ28td2hpdGUtbW9iaWxlLTJ4LW9mZnNldC14OiAtODU0cHg7XHJcbiRsb2dvLXdoaXRlLW1vYmlsZS0yeC1vZmZzZXQteTogLTEyOHB4O1xyXG4kbG9nby13aGl0ZS1tb2JpbGUtMngtd2lkdGg6IDk0cHg7XHJcbiRsb2dvLXdoaXRlLW1vYmlsZS0yeC1oZWlnaHQ6IDExMHB4O1xyXG4kbG9nby13aGl0ZS1tb2JpbGUtMngtdG90YWwtd2lkdGg6IDEwMzJweDtcclxuJGxvZ28td2hpdGUtbW9iaWxlLTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRsb2dvLXdoaXRlLW1vYmlsZS0yeC1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJztcclxuLS1sb2dvLXdoaXRlLW1vYmlsZS0yeDogODU0cHggMTI4cHggLTg1NHB4IC0xMjhweCA5NHB4IDExMHB4IDEwMzJweCw1OTRweCAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnICdsb2dvV2hpdGVNb2JpbGUtMngnO1xyXG4tLWxvZ28td2hpdGUtbW9iaWxlLTJ4LW5hbWU6IDEwMzJweCA1OTRweDtcclxuJGxvZ28teGJveG9uZS0yeC1uYW1lOiAnbG9nb1hib3hvbmUtMngnO1xyXG4kbG9nby14Ym94b25lLTJ4LXg6IDBweDtcclxuJGxvZ28teGJveG9uZS0yeC15OiAyNDhweDtcclxuJGxvZ28teGJveG9uZS0yeC1vZmZzZXQteDogMHB4O1xyXG4kbG9nby14Ym94b25lLTJ4LW9mZnNldC15OiAtMjQ4cHg7XHJcbiRsb2dvLXhib3hvbmUtMngtd2lkdGg6IDQ0MHB4O1xyXG4kbG9nby14Ym94b25lLTJ4LWhlaWdodDogODhweDtcclxuJGxvZ28teGJveG9uZS0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kbG9nby14Ym94b25lLTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRsb2dvLXhib3hvbmUtMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tbG9nby14Ym94b25lLTJ4OiAwcHggMjQ4cHggMHB4IC0yNDhweCA0NDBweCA4OHB4IDEwMzJweCw1OTRweCAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnICdsb2dvWGJveG9uZS0yeCc7XHJcbi0tbG9nby14Ym94b25lLTJ4LW5hbWU6IDEwMzJweCA1OTRweDtcclxuJHBsYXllci1mdWxsc2NyZWVuLTJ4LW5hbWU6ICdwbGF5ZXItZnVsbHNjcmVlbi0yeCc7XHJcbiRwbGF5ZXItZnVsbHNjcmVlbi0yeC14OiA5OTZweDtcclxuJHBsYXllci1mdWxsc2NyZWVuLTJ4LXk6IDEyOHB4O1xyXG4kcGxheWVyLWZ1bGxzY3JlZW4tMngtb2Zmc2V0LXg6IC05OTZweDtcclxuJHBsYXllci1mdWxsc2NyZWVuLTJ4LW9mZnNldC15OiAtMTI4cHg7XHJcbiRwbGF5ZXItZnVsbHNjcmVlbi0yeC13aWR0aDogMzZweDtcclxuJHBsYXllci1mdWxsc2NyZWVuLTJ4LWhlaWdodDogMzZweDtcclxuJHBsYXllci1mdWxsc2NyZWVuLTJ4LXRvdGFsLXdpZHRoOiAxMDMycHg7XHJcbiRwbGF5ZXItZnVsbHNjcmVlbi0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kcGxheWVyLWZ1bGxzY3JlZW4tMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tcGxheWVyLWZ1bGxzY3JlZW4tMng6IDk5NnB4IDEyOHB4IC05OTZweCAtMTI4cHggMzZweCAzNnB4IDEwMzJweCw1OTRweCAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnICdwbGF5ZXItZnVsbHNjcmVlbi0yeCc7XHJcbi0tcGxheWVyLWZ1bGxzY3JlZW4tMngtbmFtZTogMTAzMnB4IDU5NHB4O1xyXG4kcGxheWVyLW92ZXJsYXktcGxheS0yeC1uYW1lOiAncGxheWVyLW92ZXJsYXktcGxheS0yeCc7XHJcbiRwbGF5ZXItb3ZlcmxheS1wbGF5LTJ4LXg6IDBweDtcclxuJHBsYXllci1vdmVybGF5LXBsYXktMngteTogMHB4O1xyXG4kcGxheWVyLW92ZXJsYXktcGxheS0yeC1vZmZzZXQteDogMHB4O1xyXG4kcGxheWVyLW92ZXJsYXktcGxheS0yeC1vZmZzZXQteTogMHB4O1xyXG4kcGxheWVyLW92ZXJsYXktcGxheS0yeC13aWR0aDogMjQ0cHg7XHJcbiRwbGF5ZXItb3ZlcmxheS1wbGF5LTJ4LWhlaWdodDogMjQ0cHg7XHJcbiRwbGF5ZXItb3ZlcmxheS1wbGF5LTJ4LXRvdGFsLXdpZHRoOiAxMDMycHg7XHJcbiRwbGF5ZXItb3ZlcmxheS1wbGF5LTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRwbGF5ZXItb3ZlcmxheS1wbGF5LTJ4LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnO1xyXG4tLXBsYXllci1vdmVybGF5LXBsYXktMng6IDBweCAwcHggMHB4IDBweCAyNDRweCAyNDRweCAxMDMycHgsNTk0cHggJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJyAncGxheWVyLW92ZXJsYXktcGxheS0yeCc7XHJcbi0tcGxheWVyLW92ZXJsYXktcGxheS0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRwbGF5ZXItcGF1c2UtMngtbmFtZTogJ3BsYXllci1wYXVzZS0yeCc7XHJcbiRwbGF5ZXItcGF1c2UtMngteDogOTk2cHg7XHJcbiRwbGF5ZXItcGF1c2UtMngteTogMTcycHg7XHJcbiRwbGF5ZXItcGF1c2UtMngtb2Zmc2V0LXg6IC05OTZweDtcclxuJHBsYXllci1wYXVzZS0yeC1vZmZzZXQteTogLTE3MnB4O1xyXG4kcGxheWVyLXBhdXNlLTJ4LXdpZHRoOiAzMnB4O1xyXG4kcGxheWVyLXBhdXNlLTJ4LWhlaWdodDogMzJweDtcclxuJHBsYXllci1wYXVzZS0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kcGxheWVyLXBhdXNlLTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRwbGF5ZXItcGF1c2UtMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tcGxheWVyLXBhdXNlLTJ4OiA5OTZweCAxNzJweCAtOTk2cHggLTE3MnB4IDMycHggMzJweCAxMDMycHgsNTk0cHggJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJyAncGxheWVyLXBhdXNlLTJ4JztcclxuLS1wbGF5ZXItcGF1c2UtMngtbmFtZTogMTAzMnB4IDU5NHB4O1xyXG4kcGxheWVyLXBsYXktMngtbmFtZTogJ3BsYXllci1wbGF5LTJ4JztcclxuJHBsYXllci1wbGF5LTJ4LXg6IDgzNHB4O1xyXG4kcGxheWVyLXBsYXktMngteTogMjYwcHg7XHJcbiRwbGF5ZXItcGxheS0yeC1vZmZzZXQteDogLTgzNHB4O1xyXG4kcGxheWVyLXBsYXktMngtb2Zmc2V0LXk6IC0yNjBweDtcclxuJHBsYXllci1wbGF5LTJ4LXdpZHRoOiAzMnB4O1xyXG4kcGxheWVyLXBsYXktMngtaGVpZ2h0OiAzMnB4O1xyXG4kcGxheWVyLXBsYXktMngtdG90YWwtd2lkdGg6IDEwMzJweDtcclxuJHBsYXllci1wbGF5LTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRwbGF5ZXItcGxheS0yeC1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJztcclxuLS1wbGF5ZXItcGxheS0yeDogODM0cHggMjYwcHggLTgzNHB4IC0yNjBweCAzMnB4IDMycHggMTAzMnB4LDU5NHB4ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZycgJ3BsYXllci1wbGF5LTJ4JztcclxuLS1wbGF5ZXItcGxheS0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRwbGF5ZXItc291bmQtb2ZmLTJ4LW5hbWU6ICdwbGF5ZXItc291bmQtb2ZmLTJ4JztcclxuJHBsYXllci1zb3VuZC1vZmYtMngteDogODcwcHg7XHJcbiRwbGF5ZXItc291bmQtb2ZmLTJ4LXk6IDI2MHB4O1xyXG4kcGxheWVyLXNvdW5kLW9mZi0yeC1vZmZzZXQteDogLTg3MHB4O1xyXG4kcGxheWVyLXNvdW5kLW9mZi0yeC1vZmZzZXQteTogLTI2MHB4O1xyXG4kcGxheWVyLXNvdW5kLW9mZi0yeC13aWR0aDogMzJweDtcclxuJHBsYXllci1zb3VuZC1vZmYtMngtaGVpZ2h0OiAzMnB4O1xyXG4kcGxheWVyLXNvdW5kLW9mZi0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kcGxheWVyLXNvdW5kLW9mZi0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kcGxheWVyLXNvdW5kLW9mZi0yeC1pbWFnZTogJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJztcclxuLS1wbGF5ZXItc291bmQtb2ZmLTJ4OiA4NzBweCAyNjBweCAtODcwcHggLTI2MHB4IDMycHggMzJweCAxMDMycHgsNTk0cHggJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJyAncGxheWVyLXNvdW5kLW9mZi0yeCc7XHJcbi0tcGxheWVyLXNvdW5kLW9mZi0yeC1uYW1lOiAxMDMycHggNTk0cHg7XHJcbiRwbGF5ZXItc291bmQtb24tMngtbmFtZTogJ3BsYXllci1zb3VuZC1vbi0yeCc7XHJcbiRwbGF5ZXItc291bmQtb24tMngteDogOTA2cHg7XHJcbiRwbGF5ZXItc291bmQtb24tMngteTogMjYwcHg7XHJcbiRwbGF5ZXItc291bmQtb24tMngtb2Zmc2V0LXg6IC05MDZweDtcclxuJHBsYXllci1zb3VuZC1vbi0yeC1vZmZzZXQteTogLTI2MHB4O1xyXG4kcGxheWVyLXNvdW5kLW9uLTJ4LXdpZHRoOiAzMnB4O1xyXG4kcGxheWVyLXNvdW5kLW9uLTJ4LWhlaWdodDogMzJweDtcclxuJHBsYXllci1zb3VuZC1vbi0yeC10b3RhbC13aWR0aDogMTAzMnB4O1xyXG4kcGxheWVyLXNvdW5kLW9uLTJ4LXRvdGFsLWhlaWdodDogNTk0cHg7XHJcbiRwbGF5ZXItc291bmQtb24tMngtaW1hZ2U6ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZyc7XHJcbi0tcGxheWVyLXNvdW5kLW9uLTJ4OiA5MDZweCAyNjBweCAtOTA2cHggLTI2MHB4IDMycHggMzJweCAxMDMycHgsNTk0cHggJ3dkX3Nwcml0ZXNoZWV0QDJ4X25jc2EucG5nJyAncGxheWVyLXNvdW5kLW9uLTJ4JztcclxuLS1wbGF5ZXItc291bmQtb24tMngtbmFtZTogMTAzMnB4IDU5NHB4O1xyXG4kdGFiLTJ4LW5hbWU6ICd0YWItMngnO1xyXG4kdGFiLTJ4LXg6IDk1MnB4O1xyXG4kdGFiLTJ4LXk6IDEyOHB4O1xyXG4kdGFiLTJ4LW9mZnNldC14OiAtOTUycHg7XHJcbiR0YWItMngtb2Zmc2V0LXk6IC0xMjhweDtcclxuJHRhYi0yeC13aWR0aDogNDBweDtcclxuJHRhYi0yeC1oZWlnaHQ6IDQwcHg7XHJcbiR0YWItMngtdG90YWwtd2lkdGg6IDEwMzJweDtcclxuJHRhYi0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kdGFiLTJ4LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnO1xyXG4tLXRhYi0yeDogOTUycHggMTI4cHggLTk1MnB4IC0xMjhweCA0MHB4IDQwcHggMTAzMnB4LDU5NHB4ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZycgJ3RhYi0yeCc7XHJcbi0tdGFiLTJ4LW5hbWU6IDEwMzJweCA1OTRweDtcclxuJHRhYi1zZWxlY3RlZC0yeC1uYW1lOiAndGFiU2VsZWN0ZWQtMngnO1xyXG4kdGFiLXNlbGVjdGVkLTJ4LXg6IDk1MnB4O1xyXG4kdGFiLXNlbGVjdGVkLTJ4LXk6IDE3MnB4O1xyXG4kdGFiLXNlbGVjdGVkLTJ4LW9mZnNldC14OiAtOTUycHg7XHJcbiR0YWItc2VsZWN0ZWQtMngtb2Zmc2V0LXk6IC0xNzJweDtcclxuJHRhYi1zZWxlY3RlZC0yeC13aWR0aDogNDBweDtcclxuJHRhYi1zZWxlY3RlZC0yeC1oZWlnaHQ6IDQwcHg7XHJcbiR0YWItc2VsZWN0ZWQtMngtdG90YWwtd2lkdGg6IDEwMzJweDtcclxuJHRhYi1zZWxlY3RlZC0yeC10b3RhbC1oZWlnaHQ6IDU5NHB4O1xyXG4kdGFiLXNlbGVjdGVkLTJ4LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRAMnhfbmNzYS5wbmcnO1xyXG4tLXRhYi1zZWxlY3RlZC0yeDogOTUycHggMTcycHggLTk1MnB4IC0xNzJweCA0MHB4IDQwcHggMTAzMnB4LDU5NHB4ICd3ZF9zcHJpdGVzaGVldEAyeF9uY3NhLnBuZycgJ3RhYlNlbGVjdGVkLTJ4JztcclxuLS10YWItc2VsZWN0ZWQtMngtbmFtZTogMTAzMnB4IDU5NHB4O1xyXG59XHJcblxyXG4kc3ByaXRlc2hlZXQtd2lkdGg6IDUxNnB4O1xyXG4kc3ByaXRlc2hlZXQtaGVpZ2h0OiAyOTdweDtcclxuJHNwcml0ZXNoZWV0LWltYWdlOiAnd2Rfc3ByaXRlc2hlZXRfbmNzYS5wbmcnO1xyXG4kc3ByaXRlc2hlZXQtc3ByaXRlczogKCRhcnJvdywgJGFycm93bW9iaWxlLCAkbG9nbywgJGxvZ28tbW9iaWxlLCAkbG9nby1wYywgJGxvZ28tcHM0LCAkbG9nby10ZXh0LCAkbG9nby10ZXh0LW1vYmlsZSwgJGxvZ28tdGV4dC13aGl0ZSwgJGxvZ28tdGV4dC13aGl0ZS1tb2JpbGUsICRsb2dvLXViaXNvZnQsICRsb2dvLXVwbGF5LCAkbG9nby13aGl0ZSwgJGxvZ28td2hpdGUtbW9iaWxlLCAkbG9nby14Ym94b25lLCAkcGxheWVyLWZ1bGxzY3JlZW4sICRwbGF5ZXItb3ZlcmxheS1wbGF5LCAkcGxheWVyLXBhdXNlLCAkcGxheWVyLXBsYXksICRwbGF5ZXItc291bmQtb2ZmLCAkcGxheWVyLXNvdW5kLW9uLCAkdGFiLCAkdGFiLXNlbGVjdGVkLCApO1xyXG4kc3ByaXRlc2hlZXQ6ICg1MTZweCwgMjk3cHgsICd3ZF9zcHJpdGVzaGVldF9uY3NhLnBuZycsICRzcHJpdGVzaGVldC1zcHJpdGVzLCApO1xyXG5cclxuXHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENvbG9yc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4kY29sb3ItZ3JleS0wMDogXHRcdCAgICMwMDA7XHJcbiRjb2xvci1ncmV5LTMwOiBcdFx0ICAgIzRmNGY0ZjtcclxuJGNvbG9yLWdyZXktNDA6IFx0XHQgICAjNmQ2ZDZkO1xyXG4kY29sb3ItZ3JleS02MDogXHRcdCAgICM5OTk5OTk7XHJcbiRjb2xvci1ncmV5LTY1OiBcdFx0ICAgI2IwYjBiMDtcclxuJGNvbG9yLWdyZXktNzU6ICAgICAgICAgIzM1MzUzNTtcclxuJGNvbG9yLWdyZXktODA6IFx0XHQgICAjY2NjY2NjO1xyXG4kY29sb3ItZ3JleS04NTogICAgICAgICAjY2ZjZmNmO1xyXG4kY29sb3ItZ3JleS05MDogICAgICAgICAjZWRlZGVkO1xyXG4kY29sb3ItZ3JleS05NTogXHQgXHQgICAjZjJmMmYyO1xyXG4kY29sb3ItZ3JleS0xMDA6IFx0XHQgICAjZmZmO1xyXG5cclxuLyogXHJcbiAgIEtleXdvcmQgY29sb3JzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiRjb2xvci13aGl0ZTogXHRcdFx0ICAgJGNvbG9yLWdyZXktMTAwO1xyXG4kY29sb3ItYmxhY2s6IFx0XHRcdCAgICRjb2xvci1ncmV5LTAwO1xyXG4kY29sb3ItYmx1ZTogXHRcdFx0ICAgIzEyY2ZmZTtcclxuJGNvbG9yLWdyZWVuOiAgICAgICAgIFx0IzliZTgyOTtcclxuJGNvbG9yLXJlZDogXHRcdFx0ICAgI2ZmMDAwMDtcclxuJGNvbG9yLW9yYW5nZTogXHRcdFx0I2ZmNzMwZTtcclxuJGNvbG9yLXBpbms6ICAgICAgICAgICBcdCNmZTBjNmM7XHJcbiRjb2xvci1jeWFuOiBcdFx0XHQgICAjMmZmNWQ3O1xyXG5cclxuLyogXHJcbiAgIFNvY2lhbCBDb2xvcnNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuJGNvbG9yLWZiOiAgICAgICAgICAgICAgICAjM0I1OTk4O1xyXG4kY29sb3ItdHdpdHRlcjogICAgICAgICAgICM1NUFDRUU7XHJcbiRjb2xvci1nb29nbGVwbHVzOiAgICAgICAgI0RDNEU0MTtcclxuJGNvbG9yLXlvdXR1YmU6ICAgICAgICAgICAjQ0QyMDFGO1xyXG4kY29sb3ItaW5zdGFncmFtOiAgICAgICAgICMxMjU2ODg7XHJcbiRjb2xvci10dW1ibHI6ICAgICAgICAgICAgIzM2NDY1RDtcclxuXHJcbi8qIFxyXG4gICBDaGFyYWN0ZXIgQ29sb3JzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiRjb2xvci13cmVuY2g6ICAgICAgICAgICAgICAgICNmZjdiMjE7XHJcbiRjb2xvci1qb3NoOiAgICAgICAgICAgICAgICAgICNhYTEwMDA7XHJcbiRjb2xvci1tYXJjdXM6ICAgICAgICAgICAgICAgICMwMGJkZmY7XHJcbiRjb2xvci1zaXRhcmE6ICAgICAgICAgICAgICAgICM5NWU4MzM7XHJcblxyXG4vKiBcclxuICAgTmF2IENvbG9yc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4kY29sb3ItbmF2LWJrZzogXHRcdCAgICRjb2xvci1ibHVlO1xyXG4iLCIvKkBjdXN0b20tbWVkaWEgLS1zbS12aWV3cG9ydCAobWluLXdpZHRoOjMyMHB4KSBhbmQgKG1heC13aWR0aDo2NDBweCk7XHJcbkBjdXN0b20tbWVkaWEgLS1tZC12aWV3cG9ydCAobWluLXdpZHRoOjY0MHB4KSBhbmQgKG1heC13aWR0aDo5NjBweCk7XHJcbkBjdXN0b20tbWVkaWEgLS1sZy12aWV3cG9ydCAobWluLXdpZHRoOjk2MHB4KTsqL1xyXG5cclxuLypcclxuIEJyZWFrcG9pbnRzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKkBjdXN0b20tbWVkaWEgLS1tb2JpbGVTbWFsbCAod2lkdGggPj0gMzIwcHgpO1xyXG5AY3VzdG9tLW1lZGlhIC0tbW9iaWxlICh3aWR0aCA+PSA0ODBweCk7XHJcbkBjdXN0b20tbWVkaWEgLS10YWJsZXRTbWFsbCAod2lkdGggPj0gNTY4cHgpO1xyXG5AY3VzdG9tLW1lZGlhIC0tdGFibGV0ICh3aWR0aCA+PSA3NjhweCk7XHJcbkBjdXN0b20tbWVkaWEgLS1taWQgKHdpZHRoID49IDg2MHB4KTtcclxuQGN1c3RvbS1tZWRpYSAtLW1pZERlc2t0b3BSZXRpbmEgKHdpZHRoID49IDg2MHB4KSBhbmQgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpO1xyXG5AY3VzdG9tLW1lZGlhIC0td2lkZSAod2lkdGggPj0gMTAyNHB4KTtcclxuQGN1c3RvbS1tZWRpYSAtLXdpZGVzdCAod2lkdGggPj0gMTI2OHB4KTtcclxuKi9cclxuXHJcblxyXG5AY3VzdG9tLW1lZGlhIC0tbW9iaWxlU21hbGwgKHdpZHRoIDw9IDMyMHB4KTtcclxuQGN1c3RvbS1tZWRpYSAtLW1vYmlsZSAod2lkdGggPD0gNDgwcHgpO1xyXG5AY3VzdG9tLW1lZGlhIC0tdGFibGV0U21hbGwgKHdpZHRoIDw9IDU2OHB4KTtcclxuQGN1c3RvbS1tZWRpYSAtLXRhYmxldCAod2lkdGggPD0gNzY4cHgpO1xyXG5AY3VzdG9tLW1lZGlhIC0tbWlkICh3aWR0aCA8PSA4NjBweCk7XHJcbkBjdXN0b20tbWVkaWEgLS1taWRNb2JpbGVSZXRpbmEgKHdpZHRoIDw9IDg2MHB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKTtcclxuQGN1c3RvbS1tZWRpYSAtLXdpZGUgKHdpZHRoIDw9IDEwMjRweCk7XHJcbkBjdXN0b20tbWVkaWEgLS1tYXhXaWR0aCAod2lkdGggPD0gMTIwMHB4KTtcclxuQGN1c3RvbS1tZWRpYSAtLXdpZGVzdCAod2lkdGggPD0gMTI2OHB4KTtcclxuXHJcbkBjdXN0b20tbWVkaWEgLS1uYXZXaWRlICh3aWR0aCA8PSA5NjBweCk7XHJcbkBjdXN0b20tbWVkaWEgLS1uYXZNb2JpbGVSZXRpbmEgKHdpZHRoIDw9IDk2MHB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKTtcclxuQGN1c3RvbS1tZWRpYSAtLWNyb3dkdHdpc3RIYWNrICh3aWR0aCA8PSAzMDBweCk7XHJcblxyXG5cclxuXHJcbi8qIFxyXG4gICBJZnJhbWUgQnJlYWtwb2ludHNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuQGN1c3RvbS1tZWRpYSAtLWRhc2hib2FyZEFjdGl2aXR5ICh3aWR0aCA8PSAxMTc1cHgpO1xyXG5cclxuXHJcbiIsIi8vIHJlc2V0IGRlZmF1bHQgdWwvb2wgbGlzdCBzdHlsZXNcclxuQGRlZmluZS1taXhpbiBsaXN0LXJlc2V0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lIG91dHNpZGU7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDpcIlwiO1xyXG5cdFx0ZGlzcGxheTp0YWJsZTtcclxuXHRcdGNsZWFyOmJvdGg7XHJcblx0fVxyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIHNpemUgJHdpZHRoLCAkaGVpZ2h0IHtcclxuXHR3aWR0aDogJCh3aWR0aCk7XHJcblx0aGVpZ2h0OiAkKGhlaWdodCk7XHJcbn1cclxuXHJcbi8qXHJcbiAgVHJpYW5nbGVzIGZvbGxvdyBzYW1lIG5vbWVuY2xhdHVyZSBhczogaHR0cDovL2FwcHMuZWt5LmhrL2Nzcy10cmlhbmdsZS1nZW5lcmF0b3IvO1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5AZGVmaW5lLW1peGluIHRyaWFuZ2xlICRkaXJlY3Rpb246IGxlZnQsICRjb2xvcjogJGNvbG9yLWJsYWNrLCAkd2lkdGg6IDZweCwgJGhlaWdodDogMTJweCB7XHJcbiAgQG1peGluIHNpemUgMCwwO1xyXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XHJcblxyXG4gIEBpZiAkZGlyZWN0aW9uID09IGJvdHRvbSB7XHJcbiAgICAkd2lkdGgtY29tcHV0ZWQ6IHJlc29sdmUoJCh3aWR0aCkgLyAyKTtcclxuICAgIGJvcmRlci13aWR0aDogJChoZWlnaHQpICR3aWR0aC1jb21wdXRlZCAwICR3aWR0aC1jb21wdXRlZDtcclxuICAgIGJvcmRlci1jb2xvcjogJChjb2xvcikgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gIEBpZiAkZGlyZWN0aW9uID09IGJvdHRvbS1yaWdodCB7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkKGhlaWdodCkgJCh3aWR0aCk7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICQoY29sb3IpIHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICBAaWYgJGRpcmVjdGlvbiA9PSBib3R0b20tbGVmdCB7XHJcbiAgICBib3JkZXItd2lkdGg6ICQoaGVpZ2h0KSAwIDAgJCh3aWR0aCk7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICQoY29sb3IpO1xyXG4gIH1cclxuICBAaWYgJChkaXJlY3Rpb24pID09IGxlZnQge1xyXG4gICAgJGhlaWdodC1jb21wdXRlZDogcmVzb2x2ZSgkKGhlaWdodCkgLyAyKTtcclxuICAgIGJvcmRlci13aWR0aDogJGhlaWdodC1jb21wdXRlZCAkKHdpZHRoKSAkaGVpZ2h0LWNvbXB1dGVkIDA7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICQoY29sb3IpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0LWludmVyc2Uge1xyXG4gICAgJGhlaWdodC1jb21wdXRlZDogcmVzb2x2ZSgkKGhlaWdodCkgLyAyKTtcclxuICAgIGJvcmRlci13aWR0aDogJGhlaWdodC1jb21wdXRlZCAkKHdpZHRoKSAkaGVpZ2h0LWNvbXB1dGVkIDA7XHJcbiAgICBib3JkZXItY29sb3I6ICQoY29sb3IpIHRyYW5zcGFyZW50ICQoY29sb3IpIHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICBAaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XHJcbiAgICAkaGVpZ2h0LWNvbXB1dGVkOiByZXNvbHZlKCQoaGVpZ2h0KSAvIDIpO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0LWNvbXB1dGVkIDAgJGhlaWdodC1jb21wdXRlZCAkKHdpZHRoKTtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJChjb2xvcik7XHJcbiAgfVxyXG4gIEBpZiAkZGlyZWN0aW9uID09IHJpZ2h0LWludmVyc2Uge1xyXG4gICAgJGhlaWdodC1jb21wdXRlZDogcmVzb2x2ZSgkKGhlaWdodCkgLyAyKTtcclxuICAgIGJvcmRlci13aWR0aDogJGhlaWdodC1jb21wdXRlZCAwICRoZWlnaHQtY29tcHV0ZWQgJCh3aWR0aCk7XHJcbiAgICBib3JkZXItY29sb3I6ICQoY29sb3IpIHRyYW5zcGFyZW50ICQoY29sb3IpIHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICBAaWYgJGRpcmVjdGlvbiA9PSB0b3Age1xyXG4gICAgJGhlaWdodC1jb21wdXRlZDogcmVzb2x2ZSgkKGhlaWdodCkgLyAyKTtcclxuICAgIGJvcmRlci13aWR0aDogMCAkaGVpZ2h0LWNvbXB1dGVkICQod2lkdGgpICRoZWlnaHQtY29tcHV0ZWQ7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICQoY29sb3IpIHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICBAaWYgJGRpcmVjdGlvbiA9PSB0b3AtbGVmdCB7XHJcbiAgICBib3JkZXItd2lkdGg6ICQoaGVpZ2h0KSAkKHdpZHRoKSAwIDA7XHJcbiAgICBib3JkZXItY29sb3I6ICQoY29sb3IpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICBAaWYgJGRpcmVjdGlvbiA9PSB0b3AtcmlnaHQge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkKGhlaWdodCkgMCAwICQod2lkdGgpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkKGNvbG9yKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxuICB9XHJcbiAgQGlmICRkaXJlY3Rpb24gPT0gYm90dG9tLWludmVyc2Uge1xyXG4gICAgJGhlaWdodC1jb21wdXRlZDogcmVzb2x2ZSgkKGhlaWdodCkgLyAyKTtcclxuICAgIGJvcmRlci13aWR0aDogMCAkaGVpZ2h0LWNvbXB1dGVkICQod2lkdGgpICRoZWlnaHQtY29tcHV0ZWQ7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICQoY29sb3IpIHRyYW5zcGFyZW50ICQoY29sb3IpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG4vKiBcclxuICAgVGhlIHByb3ZpZGVkIG1peGlucyBhcmUgaW50ZW5kZWQgdG8gYmUgdXNlZCB3aXRoIHRoZSBhcnJheS1saWtlIHZhcmlhYmxlc1xyXG4gICAtIFJlcXVpcmVzOiBwb3N0Y3NzLW50aC1saXN0LCBwb3N0Y3NzLWN1c3RvbS1wcm9wZXJ0aWVzLCBwb3N0Y3NzLWNzcy12YXJpYWJsZXNcclxuICAgXHJcbiAgIGV4OiBAbWl4aW4gc3ByaXRlIC0tbG9nby13aGl0ZTtcclxuICAgZXg6IEBtaXhpbiByZXRpbmEtc3ByaXRlIC0tbG9nby13aGl0ZS0yeCAtLWxvZ28td2hpdGU7XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbkBkZWZpbmUtbWl4aW4gc3ByaXRlLXdpZHRoICRzcHJpdGUge1xyXG4gIHdpZHRoOiBudGgodmFyKCQoc3ByaXRlKSksIDQpO1xyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIHNwcml0ZS1oZWlnaHQgJHNwcml0ZSB7XHJcbiAgaGVpZ2h0OiBudGgodmFyKCQoc3ByaXRlKSksIDUpO1xyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIHNwcml0ZS1wb3NpdGlvbiAkc3ByaXRlIHtcclxuICAkc3ByaXRlLW9mZnNldC14OiBudGgodmFyKCQoc3ByaXRlKSksIDIpO1xyXG4gICRzcHJpdGUtb2Zmc2V0LXk6IG50aCh2YXIoJChzcHJpdGUpKSwgMyk7XHJcbiAgXHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdmFyKCQoc3ByaXRlKS1uYW1lKTtcclxufVxyXG5cclxuQGRlZmluZS1taXhpbiBzcHJpdGUtaW1hZ2UgJHNwcml0ZSB7XHJcbiAgJHNwcml0ZS1pbWFnZTogbnRoKHZhcigkKHNwcml0ZSkpLCA3KTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHNwcml0ZS1pbWFnZSk7XHJcbn1cclxuXHJcbkBkZWZpbmUtbWl4aW4gc3ByaXRlLWJhY2tncm91bmQtc2l6ZSAkc3ByaXRlIHtcclxuICAkc3ByaXRlLXRvdGFsLXNpemU6IG50aCh2YXIoJChzcHJpdGUpKSwgNik7XHJcbiAgLy9iYWNrZ3JvdW5kLXNpemU6ICAkKHNwcml0ZS10b3RhbC1zaXplKTtcclxuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigkKHNwcml0ZSktdG90YWwtd2lkdGgpO1xyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIHNwcml0ZSAkc3ByaXRlIHtcclxuICBAbWl4aW4gc3ByaXRlLWltYWdlICQoc3ByaXRlKTtcclxuICBAbWl4aW4gc3ByaXRlLXBvc2l0aW9uICQoc3ByaXRlKTtcclxuICBAbWl4aW4gc3ByaXRlLXdpZHRoICQoc3ByaXRlKTtcclxuICBAbWl4aW4gc3ByaXRlLWhlaWdodCAkKHNwcml0ZSk7XHJcbn1cclxuXHJcbkBkZWZpbmUtbWl4aW4gcmV0aW5hLXNwcml0ZSAkcmV0aW5hLXNwcml0ZSwgJG5vcm1hbC1zcHJpdGUge1xyXG4gIEBtaXhpbiBzcHJpdGUtaW1hZ2UgJChyZXRpbmEtc3ByaXRlKTtcclxuICBAbWl4aW4gc3ByaXRlLWJhY2tncm91bmQtc2l6ZSAkKG5vcm1hbC1zcHJpdGUpO1xyXG59XHJcblxyXG5cclxuXHJcbi8qIFxyXG4gICBUeXBvZ3JhcGh5IFJlbGF0ZWRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8vIENvbnZlcnQgdGhlIFBTRCdzIGZvbnQgcG9pbnQgc2l6ZSB0byByZW1zLlxyXG5AZGVmaW5lLW1peGluIHBzLWZvbnQtc2l6ZSAoJGZvbnRTaXplUHRzOiAxMikge1xyXG5cdC8vICRlbXM6ICRmb250U2l6ZVB0cy8xMiArIDBlbTtcclxuXHQvLyBmb250LXNpemU6ICRlbXM7XHJcblxyXG5cdCRmb250U2l6ZVB4OiAkZm9udFNpemVQdHMgKyAwcHg7XHJcblx0Zm9udC1zaXplOiAkZm9udFNpemVQeDtcclxufVxyXG5cclxuLy8gQ29udmVydCBwaXhlbHMgdG8gRU0gYmFzZWQgb24gdGhlIGRlZmF1bHQgYnJvd3NlciBmb250LXNpemUgb2YgMTZcclxuJGJyb3dzZXItY29udGV4dDogMTY7IC8vIERlZmF1bHRcclxuXHJcbkBmdW5jdGlvbiByZW0oJHBpeGVscywgJGNvbnRleHQ6ICRicm93c2VyLWNvbnRleHQpIHtcclxuXHRAcmV0dXJuICN7JHBpeGVscy8kY29udGV4dH1yZW1cclxufVxyXG5cclxuLyogQ29udmVydCB0aGUgUFNEcyBsZWFkaW5nIHRvIGxpbmUtaGVpZ2h0Ki9cclxuQGRlZmluZS1taXhpbiBwcy1sZWFkaW5nICRmb250U2l6ZVB0czogMTIsICRsZWFkaW5nUHRzOiBhdXRvIHtcclxuXHJcblx0JGZvbnRTaXplUHg6ICQoZm9udFNpemVQdHMpO1xyXG5cdCRsZWFkaW5nUHg6ICQobGVhZGluZ1B0cyk7XHJcblx0JGxpbmVIZWlnaHRQeDogcmVzb2x2ZSgkZm9udFNpemVQeCArICRsZWFkaW5nUHgvMilweDtcclxuXHJcblx0QGlmICQobGVhZGluZ1B0cykgIT0gYXV0byB7XHJcblx0XHRsaW5lLWhlaWdodDogJGxpbmVIZWlnaHRQeDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIENvbnZlcnQgdGhlIFBTRCdzIHRyYWNraW5nIHRvIGxldHRlci1zcGFjaW5nXHJcbkBkZWZpbmUtbWl4aW4gcHMtdHJhY2tpbmcgJHRyYWNraW5nOjAge1xyXG5cdCRyZW1zOiByZXNvbHZlKCQodHJhY2tpbmcpIC8gMTAwMCllbTtcclxuXHRsZXR0ZXItc3BhY2luZzogJHJlbXM7XHJcbn1cclxuXHJcbi8vIFNldHMgdGhlIGZvbnQgc2l6ZSwgbGVhZGluZyAobGluZS1oZWlnaHQpLCBhbmQgdHJhY2tpbmcgKGxldHRlci1zcGFjaW5nKSBpbiBvbmUgZ28uXHJcbkBkZWZpbmUtbWl4aW4gZm9udC1zaXplICRmb250U2l6ZVB0czogMTIsICRsZWFkaW5nUHRzOiBhdXRvLCAkdHJhY2tpbmc6MCB7XHJcblx0Zm9udC1zaXplOiByZXNvbHZlKCQoZm9udFNpemVQdHMpLzE2KXJlbTtcclxuXHRAbWl4aW4gcHMtbGVhZGluZyAkKGZvbnRTaXplUHRzKSwgJChsZWFkaW5nUHRzKTtcclxuXHRAbWl4aW4gcHMtdHJhY2tpbmcgJCh0cmFja2luZyk7XHJcbn1cclxuXHJcblxyXG5AZGVmaW5lLW1peGluIGJ1bGxldHMge1xyXG4gIG1hcmdpbjogMjBweCBhdXRvO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gIHdpZHRoOiA5MCU7XHJcblxyXG4gIGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gIH1cclxuICBhLCBzcGFuIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgIGJvcmRlcjogM3B4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LWluZGVudDogLTIwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigxcHgpIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICBAbWl4aW4gc2l6ZSAxNXB4LCAxNXB4O1xyXG5cclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZ3JleS00MDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItZ3JleS00MDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxpLmlzLWFjdGl2ZSBhLCBsaS5pcy1hY3RpdmUgc3BhbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCAkY29sb3ItYmx1ZTtcclxuICB9XHJcbn1cclxuXHJcbkBkZWZpbmUtbWl4aW4gYXJyb3dTdHlsZXMge1xyXG4gICY6YmVmb3JlLCAmOmFmdGVyIHsgQGV4dGVuZCAuaWNvbjsgfVxyXG4gICY6YmVmb3JlIHtcclxuICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgIHRyYW5zaXRpb246IDAuM3M7XHJcbiAgfVxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IC0xcHg7IFxyXG4gICAgdHJhbnNpdGlvbjogY2xpcCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gIH1cclxufVxyXG5AZGVmaW5lLW1peGluIGFycm93TGVmdCB7XHJcbiAgJjpiZWZvcmUsICY6YWZ0ZXIgeyBAZXh0ZW5kIC5pY29uLWFycm93LWxlZnQ6YmVmb3JlOyB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbiAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlcjphZnRlciB7IGNsaXA6IHJlY3QoMCwgMzBweCwgMzZweCwgMCk7IH1cclxufVxyXG5AZGVmaW5lLW1peGluIGFycm93UmlnaHQge1xyXG4gICY6YmVmb3JlLCAmOmFmdGVyIHsgQGV4dGVuZCAuaWNvbi1hcnJvdy1yaWdodDpiZWZvcmU7IH1cclxuICAmOmFmdGVyIHtcclxuICAgIGNsaXA6IHJlY3QoMCwgMzZweCwgMzZweCwgMjdweCk7XHJcbiAgICByaWdodDogMDtcclxuICB9XHJcbiAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlcjphZnRlciB7IGNsaXA6IHJlY3QoMCwgMzZweCwgMzZweCwgNXB4KTsgfVxyXG59IiwiQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ1BleGljb01pY3JvTW9ubyc7XHJcbiAgICBmb250LXBhdGg6ICd3ZF9QZXhpY29NaWNyby1Ob3JtYWxfbmNzYSc7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG4kZm9udC1zYW5zOiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4kZm9udC1waXhlbGF0ZWQ6ICdQZXhpY29NaWNyb01vbm8nLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG5cclxuQGRlZmluZS1taXhpbiBmb250LXJlbmRlcmluZ3tcclxuXHQvLy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG5cdC8vdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgQ2F1c2luZyB3ZWlyZCBsaW5lIGJyZWFrIGlzc3VlcyBpbiBXaW5kb3dzIENocm9tZVxyXG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcbi8qIFxyXG4gICBGb250IEZhbWlseSBNaXhpbnNcclxuICAgLSAoTiA9IG5vcm1hbCB8IEkgPSBpdGFsaWMgfCA0ID0gbm9ybWFsIGZvbnQtd2VpZ2h0IHwgNyA9IGJvbGQgZm9udC13ZWlnaHQpXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiAgIFxyXG5AZGVmaW5lLW1peGluIGZvbnQtc2Fuc040IHtcclxuICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIEBtaXhpbiBmb250LXJlbmRlcmluZztcclxufVxyXG5AZGVmaW5lLW1peGluIGZvbnQtc2Fuc041IHtcclxuICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIEBtaXhpbiBmb250LXJlbmRlcmluZztcclxufVxyXG5AZGVmaW5lLW1peGluIGZvbnQtc2Fuc042IHtcclxuICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIEBtaXhpbiBmb250LXJlbmRlcmluZztcclxufVxyXG5AZGVmaW5lLW1peGluIGZvbnQtc2Fuc043IHtcclxuICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIEBtaXhpbiBmb250LXJlbmRlcmluZztcclxufVxyXG5AZGVmaW5lLW1peGluIGZvbnQtc2Fuc044IHtcclxuICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICBmb250LXdlaWdodDogODAwO1xyXG4gIEBtaXhpbiBmb250LXJlbmRlcmluZztcclxufVxyXG5cclxuQGRlZmluZS1taXhpbiBmb250LXNhbnNBbHRONCB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LXBpeGVsYXRlZDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIGZvbnQtaGVhZGluZ04zIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZ3M7XHJcbiAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICBAbWl4aW4gZm9udC1yZW5kZXJpbmc7XHJcbn1cclxuQGRlZmluZS1taXhpbiBmb250LWhlYWRpbmdONCB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWhlYWRpbmdzO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgQG1peGluIGZvbnQtcmVuZGVyaW5nO1xyXG59XHJcbkBkZWZpbmUtbWl4aW4gZm9udC1oZWFkaW5nTjcge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkaW5ncztcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIEBtaXhpbiBmb250LXJlbmRlcmluZztcclxufVxyXG5cclxuLy8gSGVhZGluZ3NcclxuXHJcbmgxLFxyXG4uYWxwaGEge1xyXG4gIEBtaXhpbiBmb250LXNpemUgNjAsIDYwLCAtNTA7XHJcbn1cclxuaDIsXHJcbi5iZXRhIHtcclxuICBAbWl4aW4gZm9udC1zaXplIDUyLCA1MjtcclxufVxyXG5oMyxcclxuLmdhbW1hIHtcclxuICBAbWl4aW4gZm9udC1zYW5zTjg7XHJcbiAgQG1peGluIGZvbnQtc2l6ZSA0OCwgNDgsIC01MDtcclxufVxyXG5oNCxcclxuLmRlbHRhIHtcclxuICBAbWl4aW4gZm9udC1zYW5zTjU7XHJcbiAgQG1peGluIGZvbnQtc2l6ZSAzNiwgMzY7XHJcbn1cclxuaDUsXHJcbi5lcHNpbG9uIHtcclxuICBAbWl4aW4gZm9udC1zaXplIDMyO1xyXG59XHJcbmg2LFxyXG4uemV0YSB7XHJcbiAgQG1peGluIGZvbnQtc2l6ZSAzMCwgNDA7XHJcbn1cclxuXHJcblxyXG4uYmxvY2tIZWFkbGluZSB7XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBhZGRpbmc6IDAgMjBweDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIEBtaXhpbiBmb250LXNhbnNOODtcclxuICBAbWl4aW4gZm9udC1zaXplIDM2LCA2MDtcclxufVxyXG5cclxuLmJsb2NrSGVhZGxpbmVOYWtlZCB7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBAbWl4aW4gZm9udC1zYW5zTjg7XHJcbiAgQG1peGluIGZvbnQtc2l6ZSAzNiwgNDA7XHJcbn1cclxuXHJcbi8vIEJ1dHRvbnNcclxuLmJ0bi10ZXN0IHtcclxuICBtYXJnaW46IDQwcHggYXV0bztcclxuICB3aWR0aDogNTAwcHg7XHJcbn1cclxuLmJ0biwgLmJ0bjp2aXNpdGVkIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIHBhZGRpbmc6IDAgMjVweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB6LWluZGV4OiA1O1xyXG4gIEBtaXhpbiBmb250LXNhbnNONztcclxuXHJcbiAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiBjb2xvcigkY29sb3ItYmx1ZSBibGFja25lc3MoMTUlKSk7XHJcbiAgfVxyXG4gICY6YWN0aXZlIHtcclxuICAgIHRvcDogMXB4O1xyXG4gIH1cclxufVxyXG5cclxuLmJ0bi0taGFzQXJ0aWZhY3RzIHtcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgXHJcbiAgJjpiZWZvcmUsICY6YWZ0ZXIsXHJcbiAgLmJ0bi10ZXh0OmJlZm9yZSwgLmJ0bi10ZXh0OmFmdGVyLFxyXG4gIC5idG4tdG9wLWFydGlmYWN0czpiZWZvcmUsIC5idG4tdG9wLWFydGlmYWN0czphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIH1cclxuICAmOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KC00NWRlZywgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50IDJweCwgJGNvbG9yLWJsdWUgMnB4LCAkY29sb3ItYmx1ZSA0cHgpO1xyXG4gICAgbGVmdDogLTZweDsgYm90dG9tOiAtOHB4O1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICBAbWl4aW4gc2l6ZSA0OHB4LCA0OHB4O1xyXG4gIH1cclxuICAmOmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgJGNvbG9yLWJsdWUgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgJGNvbG9yLWJsdWUgNzUlLCAkY29sb3ItYmx1ZSksIFxyXG4gICAgbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAkY29sb3ItYmx1ZSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNzUlLCAkY29sb3ItYmx1ZSA3NSUsICRjb2xvci1ibHVlKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTo0cHggNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjowIDAsIDJweCAycHg7XHJcbiAgICByaWdodDogLTEwcHg7IGJvdHRvbTogLThweDtcclxuICAgIEBtaXhpbiBzaXplIDU4cHgsIDQ4cHg7XHJcbiAgfVxyXG5cclxuICAuYnRuLXRleHQge1xyXG4gICAgcGFkZGluZzogNHB4IDEwcHggNHB4IDVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgei1pbmRleDogNTtcclxuICAgIFxyXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIgeyBsZWZ0OiAwOyB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICB0b3A6IDA7IGJvdHRvbTogMDtcclxuICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC4xcyBlYXNlLWluLW91dDtcclxuICAgICAgd2lkdGg6IDA7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJ0bi10b3AtYXJ0aWZhY3RzLCAuYnRuLWJvdHRvbS1hcnRpZmFjdHMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gIH1cclxuICAuYnRuLXRvcC1hcnRpZmFjdHMge1xyXG4gICAgaGVpZ2h0OiA1cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvdHRvbTogMTAwJTtcclxuXHJcbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gICAgICBoZWlnaHQ6IDVweDtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgbGVmdDogNXB4O1xyXG4gICAgICB3aWR0aDogMjUlO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAuYnRuLWJvdHRvbS1hcnRpZmFjdHMge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XHJcbiAgICB0b3A6IDEwMCU7IGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgQG1peGluIHNpemUgNTBweCwgOHB4O1xyXG4gIH1cclxuXHJcbiAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7XHJcbiAgICAmOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQgMnB4LCBjb2xvcigkY29sb3ItYmx1ZSBibGFja25lc3MoMTUlKSkgMnB4LCBjb2xvcigkY29sb3ItYmx1ZSBibGFja25lc3MoMTUlKSkgNHB4KTsgfVxyXG4gICAgJjphZnRlciB7IGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgY29sb3IoJGNvbG9yLWJsdWUgYmxhY2tuZXNzKDE1JSkpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsIGNvbG9yKCRjb2xvci1ibHVlIGJsYWNrbmVzcygxNSUpKSA3NSUsIGNvbG9yKCRjb2xvci1ibHVlIGJsYWNrbmVzcygxNSUpKSksIFxyXG4gICAgbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCBjb2xvcigkY29sb3ItYmx1ZSBibGFja25lc3MoMTUlKSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgY29sb3IoJGNvbG9yLWJsdWUgYmxhY2tuZXNzKDE1JSkpIDc1JSwgY29sb3IoJGNvbG9yLWJsdWUgYmxhY2tuZXNzKDE1JSkpKTsgfVxyXG5cclxuICAgIC5idG4tdGV4dCB7XHJcbiAgICAgICY6YWZ0ZXIgeyB3aWR0aDogMTAwJTsgfVxyXG4gICAgfVxyXG4gIFxyXG4gICAgLmJ0bi10b3AtYXJ0aWZhY3RzOmJlZm9yZSxcclxuICAgIC5idG4tdG9wLWFydGlmYWN0czphZnRlcixcclxuICAgIC5idG4tYm90dG9tLWFydGlmYWN0cyB7IGJhY2tncm91bmQ6IGNvbG9yKCRjb2xvci1ibHVlIGJsYWNrbmVzcygxNSUpKTsgfVxyXG4gIH1cclxufSIsIi8qKlxyXG4gKiBUT0RPXHJcbiAqXHJcbiAqID0+IEdldCBpbnRlcnBvbGF0aW9uIHdvcmtpbmcgd2l0aCBwb3N0Y3NzXHJcbiAqL1xyXG5cclxuQGtleWZyYW1lcyBnbGl0Y2hBbmltLXRleHR7XHJcbiAgLyokc3RlcHM6MjA7XHJcbiAgQGZvciAkKGkpIGZyb20gMCB0aHJvdWdoICQoc3RlcHMpe1xyXG4gICAgI3twZXJjZW50YWdlKCQoaSkqKDEvJChzdGVwcykpKX17XHJcbiAgICAgIGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuICAgIH1cclxuICB9Ki9cclxuXHJcblx0MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDEwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDE1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDIwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDI1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDMwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDM1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDQwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDQ1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDU1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDYwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDY1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDcwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDc1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDgwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDg1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDkwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDk1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxufVxyXG5cclxuLy8gQWx0ZXJuYXRlIGdsaXRjaGluZyBzbyB0aGF0IGJvdGggZ2xpdGNoZXMgZG9uJ3QgYW5pYW10ZSB0aGUgc2FtZVxyXG5Aa2V5ZnJhbWVzIGdsaXRjaEFuaW0tdGV4dC0tMntcclxuICAvKiRzdGVwczoyMDtcclxuICBAZm9yICQoaSkgZnJvbSAwIHRocm91Z2ggJChzdGVwcyl7XHJcbiAgICAje3BlcmNlbnRhZ2UoJChpKSooMS8kKHN0ZXBzKSkpfXtcclxuICAgICAgY2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG4gICAgfVxyXG4gIH0qL1xyXG5cclxuXHQwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0MTAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0MTUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0MjAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0MjUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0MzAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0MzUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0NDAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0NDUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0NTUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0NjAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0NjUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0NzAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0NzUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0ODAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0ODUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0OTAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0OTUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCkpcHgsMCk7XHJcblx0fVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGdsaXRjaEFuaW0tdGV4dC0tc21hbGwge1xyXG4gIC8qJHN0ZXBzOjIwO1xyXG4gIEBmb3IgJChpKSBmcm9tIDAgdGhyb3VnaCAkKHN0ZXBzKXtcclxuICAgICN7cGVyY2VudGFnZSgkKGkpKigxLyQoc3RlcHMpKSl9e1xyXG4gICAgICBjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG4gICAgfVxyXG4gIH0qL1xyXG5cclxuXHQwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG5cdH1cclxuXHQ1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG5cdH1cclxuXHQxMCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwKSlweCwwKTtcclxuXHR9XHJcblx0MTUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCkpcHgsMCk7XHJcblx0fVxyXG5cdDIwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG5cdH1cclxuXHQyNSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwKSlweCwwKTtcclxuXHR9XHJcblx0MzAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCkpcHgsMCk7XHJcblx0fVxyXG5cdDM1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG5cdH1cclxuXHQ0MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwKSlweCwwKTtcclxuXHR9XHJcblx0NDUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCkpcHgsMCk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG5cdH1cclxuXHQ1NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwKSlweCwwKTtcclxuXHR9XHJcblx0NjAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCkpcHgsMCk7XHJcblx0fVxyXG5cdDY1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG5cdH1cclxuXHQ3MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwKSlweCwwKTtcclxuXHR9XHJcblx0NzUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCkpcHgsMCk7XHJcblx0fVxyXG5cdDgwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG5cdH1cclxuXHQ4NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwKSlweCwwKTtcclxuXHR9XHJcblx0OTAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCkpcHgsMCk7XHJcblx0fVxyXG5cdDk1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTApKXB4LDApO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCkpcHgsMCk7XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBOYXYgVHJpYW5nbGUgR2xpdGNoIEFuaW1hdGlvblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5Aa2V5ZnJhbWVzIGdsaXRjaEFuaW0tdHJpYW5nbGV7XHJcbiAgLyokc3RlcHM6MjA7XHJcbiAgQGZvciAkKGkpIGZyb20gMCB0aHJvdWdoICQoc3RlcHMpe1xyXG4gICAgI3twZXJjZW50YWdlKCQoaSkqKDEvJChzdGVwcykpKX17XHJcbiAgICAgIGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG4gICAgfVxyXG4gIH0qL1xyXG5cclxuXHQwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDEwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MTUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxuXHQyMCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDI1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MzAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxuXHQzNSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDQwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NDUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDU1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NjAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxuXHQ2NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDcwJSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NzUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxuXHQ4MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDg1JSB7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0OTAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxuXHQ5NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBnbGl0Y2hBbmltLXRyaWFuZ2xlLS10b3B7XHJcbiAgLyokc3RlcHM6MjA7XHJcbiAgQGZvciAkKGkpIGZyb20gMCB0aHJvdWdoICQoc3RlcHMpe1xyXG4gICAgI3twZXJjZW50YWdlKCQoaSkqKDEvJChzdGVwcykpKX17XHJcbiAgICAgIGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG4gICAgfVxyXG4gIH0qL1xyXG5cclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDE1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MzAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NzAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0ODAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0ODUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0OTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0OTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBnbGl0Y2hBbmltLXRyaWFuZ2xlLS1ib3R0b217XHJcbiAgLyokc3RlcHM6MjA7XHJcbiAgQGZvciAkKGkpIGZyb20gMCB0aHJvdWdoICQoc3RlcHMpe1xyXG4gICAgI3twZXJjZW50YWdlKCQoaSkqKDEvJChzdGVwcykpKX17XHJcbiAgICAgIGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG4gICAgfVxyXG4gIH0qL1xyXG5cclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDE1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSkpcHgsMCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MzAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0MzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NzAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0ODAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0ODUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0OTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0OTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1KSlweCwwKTtcclxuXHR9XHJcblx0NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUpKXB4LDApO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTmF2IENvbnRhaW5lciBHbGl0Y2ggQW5pbWF0aW9uXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5cclxuQGtleWZyYW1lcyBnbGl0Y2hBbmltLWJveHtcclxuICAvKiRzdGVwczoyMDtcclxuICBAZm9yICQoaSkgZnJvbSAwIHRocm91Z2ggJChzdGVwcyl7XHJcbiAgICAje3BlcmNlbnRhZ2UoJChpKSooMS8kKHN0ZXBzKSkpfXtcclxuICAgICAgY2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzApKXB4LDApO1xyXG4gICAgfVxyXG4gIH0qL1xyXG5cclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MzAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MzAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NzAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0ODAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0ODUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0OTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0OTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGdsaXRjaEFuaW0tYm94LS0ye1xyXG4gIC8qJHN0ZXBzOjIwO1xyXG4gIEBmb3IgJChpKSBmcm9tIDAgdGhyb3VnaCAkKHN0ZXBzKXtcclxuICAgICN7cGVyY2VudGFnZSgkKGkpKigxLyQoc3RlcHMpKSl9e1xyXG4gICAgICBjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcbiAgICB9XHJcbiAgfSovXHJcblxyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDEwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzApKXB4LDApO1xyXG5cdH1cclxuXHQzMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDI1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzApKXB4LDApO1xyXG5cdH1cclxuXHQzMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0MzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzApKXB4LDApO1xyXG5cdH1cclxuXHQ0NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDU1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzApKXB4LDApO1xyXG5cdH1cclxuXHQ2MCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0NjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDcwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzApKXB4LDApO1xyXG5cdH1cclxuXHQ3NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0ODAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDg1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzApKXB4LDApO1xyXG5cdH1cclxuXHQ5MCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcblx0OTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCkpcHgsMCk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMCArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwKSlweCwwKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIE5hdiBUaXRsZSBBbmltYXRpb25zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbkBrZXlmcmFtZXMgZ2xpdGNoTmF2VGl0bGUge1xyXG5cdDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDApIHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcblx0XHRAbWl4aW4gc2l6ZSAxMHB4LCAyMXB4O1xyXG5cdH1cclxuXHQ1JSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG5cdFx0QG1peGluIHNpemUgMTBweCwgMjFweDtcclxuXHR9XHJcblx0NyUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHRcdEBtaXhpbiBzaXplIDEwcHgsIDIxcHg7XHJcblx0fVxyXG5cdDEzJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG5cdFx0QG1peGluIHNpemUgMTBweCwgMjFweDtcclxuXHR9XHJcblx0MTclIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcblx0XHRAbWl4aW4gc2l6ZSAxMHB4LCAyMXB4O1xyXG5cdH1cclxuXHQyMiUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHRcdEBtaXhpbiBzaXplIDEwcHgsIDIxcHg7XHJcblx0fVxyXG5cdDMwJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVYKC00MHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHRcdEBtaXhpbiBzaXplIDEwcHgsIDIxcHg7XHJcblx0fVxyXG5cdDQwJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVYKC00MHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHRcdEBtaXhpbiBzaXplIDExMCUsIDIxcHg7XHJcblx0fVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGdsaXRjaE5hdlRpdGxlLXRleHQge1xyXG5cdDAlIHtcclxuXHRcdHZpc2liaWx0eTogaGlkZGVuO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0dmlzaWJpbHR5OiB2aXNpYmxlO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ1NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ2MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ2NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ3MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ3NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ4MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ4NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ5MCUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQ5NSUge1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMDApKXB4LDApO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDEwMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTAwKSlweCwwKTtcclxuXHR9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZ2xpdGNoTmF2LWZsaWNrZXIge1xyXG5cdDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cdDclIHtcclxuXHRcdG9wYWNpdHk6IDA7O1xyXG5cdH1cclxuXHQxMyUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcblx0MTclIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0fVxyXG5cdDIyJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQzMCUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcblx0MzQlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0fVxyXG5cdDQwJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ0NyUge1xyXG5cdFx0b3BhY2l0eTogMDs7XHJcblx0fVxyXG5cdDUzJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ1OSUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHR9XHJcblx0NjQlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cdDcyJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ3OCUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHR9XHJcblx0ODUlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cdDg5JSB7XHJcblx0XHRvcGFjaXR5OiAwOztcclxuXHR9XHJcblx0OTQlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cdDk3JSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGdsaXRjaEhhY2tlcnMge1xyXG5cdDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDIwICsgMSkpcHgsIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAtMTUgKyAxKSlweCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDIwICsgMSkpcHgsIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAtMTUgKyAxKSlweCk7XHJcblx0fVxyXG5cdDclIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDIwICsgMSkpcHgsIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAtMTUgKyAxKSlweCk7XHJcblx0fVxyXG5cdDEzJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAyMCArIDEpKXB4LCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogLTE1ICsgMSkpcHgpO1xyXG5cdH1cclxuXHQxNyUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMjAgKyAxKSlweCwgcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIC0xNSArIDEpKXB4KTtcclxuXHR9XHJcblx0MjIlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDIwICsgMSkpcHgsIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAtMTUgKyAxKSlweCk7XHJcblx0fVxyXG5cdDMwJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAyMCArIDEpKXB4LCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogLTE1ICsgMSkpcHgpO1xyXG5cdH1cclxuXHQzNSUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMjAgKyAxKSlweCwgcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIC0xNSArIDEpKXB4KTtcclxuXHR9XHJcblx0NDAlLCA2NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwwKTtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cdDY1JSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAyMCArIDEpKXB4LCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogLTE1ICsgMSkpcHgpO1xyXG5cdH1cclxuXHQ3MiUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMjAgKyAxKSlweCwgcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIC0xNSArIDEpKXB4KTtcclxuXHR9XHJcblx0NzglIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDIwICsgMSkpcHgsIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAtMTUgKyAxKSlweCk7XHJcblx0fVxyXG5cdDg1JSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAyMCArIDEpKXB4LCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogLTE1ICsgMSkpcHgpO1xyXG5cdH1cclxuXHQ4OSUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMjAgKyAxKSlweCwgcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIC0xNSArIDEpKXB4KTtcclxuXHR9XHJcblx0OTQlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDIwICsgMSkpcHgsIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAtMTUgKyAxKSlweCk7XHJcblx0fVxyXG5cdDk3JSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAyMCArIDEpKXB4LCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogLTE1ICsgMSkpcHgpO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggcmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDIwICsgMSkpcHgsIHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAtMTUgKyAxKSlweCk7XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBNZWRpYVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5Aa2V5ZnJhbWVzIGdsaXRjaEFuaW0tbWVkaWF7XHJcbiAgLyokc3RlcHM6MjA7XHJcbiAgQGZvciAkKGkpIGZyb20gMCB0aHJvdWdoICQoc3RlcHMpe1xyXG4gICAgI3twZXJjZW50YWdlKCQoaSkqKDEvJChzdGVwcykpKX17XHJcbiAgICAgIGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzIwKSlweCwwKTtcclxuICAgIH1cclxuICB9Ki9cclxuXHJcblx0MCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjApKXB4LDApO1xyXG5cdH1cclxuXHQ1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDEwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDMwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDIwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDI1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDMwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDM1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDQ1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDU1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDYwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDY1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDcwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDc1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDgwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDg1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDkwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDk1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMjApKXB4LDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBnbGl0Y2hBbmltLW1lZGlhLS0ye1xyXG4gIC8qJHN0ZXBzOjIwO1xyXG4gIEBmb3IgJChpKSBmcm9tIDAgdGhyb3VnaCAkKHN0ZXBzKXtcclxuICAgICN7cGVyY2VudGFnZSgkKGkpKigxLyQoc3RlcHMpKSl9e1xyXG4gICAgICBjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNDIwKSlweCwwKTtcclxuICAgIH1cclxuICB9Ki9cclxuXHJcblx0MCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDQyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA0MjApKXB4LDApO1xyXG5cdH1cclxuXHQxMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDQyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDMwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNDIwKSlweCwwKTtcclxuXHR9XHJcblx0MjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA0MjApKXB4LDApO1xyXG5cdH1cclxuXHQyNSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDQyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDMwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNDIwKSlweCwwKTtcclxuXHR9XHJcblx0MzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA0MjApKXB4LDApO1xyXG5cdH1cclxuXHQ0MCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDQyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDQ1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNDIwKSlweCwwKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA0MjApKXB4LDApO1xyXG5cdH1cclxuXHQ1NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDQyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDYwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNDIwKSlweCwwKTtcclxuXHR9XHJcblx0NjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA0MjApKXB4LDApO1xyXG5cdH1cclxuXHQ3MCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDQyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDc1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNDIwKSlweCwwKTtcclxuXHR9XHJcblx0ODAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA0MjApKXB4LDApO1xyXG5cdH1cclxuXHQ4NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMzAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDQyMCkpcHgsMCk7XHJcblx0fVxyXG5cdDkwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAzMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNDIwKSlweCwwKTtcclxuXHR9XHJcblx0OTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA0MjApKXB4LDApO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA0MjApKXB4LDApO1xyXG5cdH1cclxufVxyXG5cclxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXFwgIFxyXG4gIENTU2hha2UgOjogUGFja2FnZVxyXG4gIHYxLjUuMFxyXG4gIENTUyBjbGFzc2VzIHRvIG1vdmUgeW91ciBET01cclxuICAoYykgMjAxNSBAZWxydW1vcmRlbGFsdXpcclxuICBodHRwOi8vZWxydW1vcmRlbGFsdXouZ2l0aHViLmlvL2Nzc2hha2UvXHJcbiAgTGljZW5zZWQgdW5kZXIgTUlUXHJcblxcKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXHJcbi5zaGFrZSwgLnNoYWtlLWxpdHRsZSwgLnNoYWtlLXNsb3csIC5zaGFrZS1oYXJkLCAuc2hha2UtaG9yaXpvbnRhbCwgLnNoYWtlLXZlcnRpY2FsLCAuc2hha2Utcm90YXRlLCAuc2hha2Utb3BhY2l0eSwgLnNoYWtlLWNyYXp5LCAuc2hha2UtY2h1bmsge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XHJcblxyXG4uc2hha2UtZnJlZXplLFxyXG4uc2hha2UtY29uc3RhbnQuc2hha2UtY29uc3RhbnQtLWhvdmVyOmhvdmVyLFxyXG4uc2hha2UtdHJpZ2dlcjpob3ZlciAuc2hha2UtY29uc3RhbnQuc2hha2UtY29uc3RhbnQtLWhvdmVyIHtcclxuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkOyB9XHJcblxyXG4uc2hha2UtZnJlZXplOmhvdmVyLFxyXG4uc2hha2UtdHJpZ2dlcjpob3ZlciAuc2hha2UtZnJlZXplLCAuc2hha2U6aG92ZXIsXHJcbi5zaGFrZS10cmlnZ2VyOmhvdmVyIC5zaGFrZSwgLnNoYWtlLWxpdHRsZTpob3ZlcixcclxuLnNoYWtlLXRyaWdnZXI6aG92ZXIgLnNoYWtlLWxpdHRsZSwgLnNoYWtlLXNsb3c6aG92ZXIsXHJcbi5zaGFrZS10cmlnZ2VyOmhvdmVyIC5zaGFrZS1zbG93LCAuc2hha2UtaGFyZDpob3ZlcixcclxuLnNoYWtlLXRyaWdnZXI6aG92ZXIgLnNoYWtlLWhhcmQsIC5zaGFrZS1ob3Jpem9udGFsOmhvdmVyLFxyXG4uc2hha2UtdHJpZ2dlcjpob3ZlciAuc2hha2UtaG9yaXpvbnRhbCwgLnNoYWtlLXZlcnRpY2FsOmhvdmVyLFxyXG4uc2hha2UtdHJpZ2dlcjpob3ZlciAuc2hha2UtdmVydGljYWwsIC5zaGFrZS1yb3RhdGU6aG92ZXIsXHJcbi5zaGFrZS10cmlnZ2VyOmhvdmVyIC5zaGFrZS1yb3RhdGUsIC5zaGFrZS1vcGFjaXR5OmhvdmVyLFxyXG4uc2hha2UtdHJpZ2dlcjpob3ZlciAuc2hha2Utb3BhY2l0eSwgLnNoYWtlLWNyYXp5OmhvdmVyLFxyXG4uc2hha2UtdHJpZ2dlcjpob3ZlciAuc2hha2UtY3JhenksIC5zaGFrZS1jaHVuazpob3ZlcixcclxuLnNoYWtlLXRyaWdnZXI6aG92ZXIgLnNoYWtlLWNodW5rIHtcclxuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZzsgfVxyXG5cclxuQGtleWZyYW1lcyBzaGFrZSB7XHJcbiAgMiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMS41cHgsIDIuNXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICA0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxLjVweCwgLTEuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDYlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEuNXB4LCAtMS41cHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDglIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAuNXB4LCAyLjVweCkgcm90YXRlKDAuNWRlZyk7IH1cclxuICAxMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTAuNXB4LCAtMC41cHgpIHJvdGF0ZSgxLjVkZWcpOyB9XHJcbiAgMTIlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wLjVweCwgLTAuNXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICAxNCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMi41cHgsIDAuNXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICAxNiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEuNXB4LCAxLjVweCkgcm90YXRlKDAuNWRlZyk7IH1cclxuICAxOCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMi41cHgsIDAuNXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICAyMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEuNXB4LCAwLjVweCkgcm90YXRlKC0wLjVkZWcpOyB9XHJcbiAgMjIlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDIuNXB4LCAtMS41cHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDI0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxLjVweCwgMi41cHgpIHJvdGF0ZSgxLjVkZWcpOyB9XHJcbiAgMjYlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xLjVweCwgLTAuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDI4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxLjVweCwgMS41cHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDMwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyLjVweCwgLTEuNXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICAzMiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMC41cHgsIDIuNXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICAzNCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTAuNXB4LCAxLjVweCkgcm90YXRlKDEuNWRlZyk7IH1cclxuICAzNiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMC41cHgsIDEuNXB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDM4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxLjVweCwgMS41cHgpIHJvdGF0ZSgwLjVkZWcpOyB9XHJcbiAgNDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wLjVweCwgMS41cHgpIHJvdGF0ZSgwLjVkZWcpOyB9XHJcbiAgNDIlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wLjVweCwgMC41cHgpIHJvdGF0ZSgxLjVkZWcpOyB9XHJcbiAgNDQlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xLjVweCwgLTEuNXB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDQ2JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLjVweCwgLTAuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDQ4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMC41cHgsIDEuNXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICA1MCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMi41cHgsIC0wLjVweCkgcm90YXRlKC0wLjVkZWcpOyB9XHJcbiAgNTIlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAuNXB4LCAtMS41cHgpIHJvdGF0ZSgwLjVkZWcpOyB9XHJcbiAgNTQlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDIuNXB4LCAtMS41cHgpIHJvdGF0ZSgwLjVkZWcpOyB9XHJcbiAgNTYlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xLjVweCwgLTAuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDU4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMS41cHgsIDIuNXB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDYwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLjVweCwgLTEuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDYyJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMC41cHgsIDIuNXB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDY0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLjVweCwgMC41cHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDY2JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxLjVweCwgLTAuNXB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDY4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMS41cHgsIC0wLjVweCkgcm90YXRlKDAuNWRlZyk7IH1cclxuICA3MCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTAuNXB4LCAyLjVweCkgcm90YXRlKDEuNWRlZyk7IH1cclxuICA3MiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMS41cHgsIDAuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDc0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLjVweCwgLTEuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDc2JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxLjVweCwgMS41cHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDc4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyLjVweCwgLTEuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDgwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMS41cHgsIDEuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDgyJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMC41cHgsIDIuNXB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDg0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxLjVweCwgMS41cHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDg2JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyLjVweCwgMC41cHgpIHJvdGF0ZSgxLjVkZWcpOyB9XHJcbiAgODglIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wLjVweCwgLTEuNXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICA5MCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMS41cHgsIC0wLjVweCkgcm90YXRlKC0wLjVkZWcpOyB9XHJcbiAgOTIlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAuNXB4LCAtMS41cHgpIHJvdGF0ZSgxLjVkZWcpOyB9XHJcbiAgOTQlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wLjVweCwgLTAuNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDk2JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMC41cHgsIC0xLjVweCkgcm90YXRlKC0wLjVkZWcpOyB9XHJcbiAgOTglIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wLjVweCwgLTEuNXB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDAlLCAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApIHJvdGF0ZSgwKTsgfSB9XHJcblxyXG4uc2hha2Utc2xvdyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IH1cclxuXHJcbi5zaGFrZS1mcmVlemUsXHJcbi5zaGFrZS1jb25zdGFudC5zaGFrZS1jb25zdGFudC0taG92ZXI6aG92ZXIsXHJcbi5zaGFrZS10cmlnZ2VyOmhvdmVyIC5zaGFrZS1jb25zdGFudC5zaGFrZS1jb25zdGFudC0taG92ZXIge1xyXG4gIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7IH1cclxuXHJcbi5zaGFrZS1mcmVlemU6aG92ZXIsXHJcbi5zaGFrZS10cmlnZ2VyOmhvdmVyIC5zaGFrZS1mcmVlemUsIC5zaGFrZS1zbG93OmhvdmVyLFxyXG4uc2hha2UtdHJpZ2dlcjpob3ZlciAuc2hha2Utc2xvdyB7XHJcbiAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7IH1cclxuXHJcbkBrZXlmcmFtZXMgc2hha2Utc2xvdyB7XHJcbiAgMiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCA0cHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDQlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zcHgsIDlweCkgcm90YXRlKC0wLjVkZWcpOyB9XHJcbiAgNiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAxMHB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICA4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC0ycHgpIHJvdGF0ZSgwLjVkZWcpOyB9XHJcbiAgMTAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDlweCwgLTlweCkgcm90YXRlKDEuNWRlZyk7IH1cclxuICAxMiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTlweCwgOXB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDE0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMHB4LCAtMXB4KSByb3RhdGUoLTAuNWRlZyk7IH1cclxuICAxNiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoN3B4LCAtMXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDE4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOHB4LCA4cHgpIHJvdGF0ZSgxLjVkZWcpOyB9XHJcbiAgMjAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgLTlweCkgcm90YXRlKDAuNWRlZyk7IH1cclxuICAyMiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoN3B4LCAtNnB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDI0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOHB4LCAtNHB4KSByb3RhdGUoLTEuNWRlZyk7IH1cclxuICAyNiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTlweCwgNXB4KSByb3RhdGUoLTEuNWRlZyk7IH1cclxuICAyOCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoN3B4LCAzcHgpIHJvdGF0ZSgtMS41ZGVnKTsgfVxyXG4gIDMwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg5cHgsIDNweCkgcm90YXRlKDIuNWRlZyk7IH1cclxuICAzMiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnB4LCAtNnB4KSByb3RhdGUoLTEuNWRlZyk7IH1cclxuICAzNCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgLTdweCkgcm90YXRlKDIuNWRlZyk7IH1cclxuICAzNiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgMTBweCkgcm90YXRlKC0yLjVkZWcpOyB9XHJcbiAgMzglIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIC04cHgpIHJvdGF0ZSgtMS41ZGVnKTsgfVxyXG4gIDQwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDBweCkgcm90YXRlKC0yLjVkZWcpOyB9XHJcbiAgNDIlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwcHgsIDhweCkgcm90YXRlKDMuNWRlZyk7IH1cclxuICA0NCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAycHgpIHJvdGF0ZSgyLjVkZWcpOyB9XHJcbiAgNDYlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwcHgsIC0ycHgpIHJvdGF0ZSgtMS41ZGVnKTsgfVxyXG4gIDQ4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMHB4LCAwcHgpIHJvdGF0ZSgtMi41ZGVnKTsgfVxyXG4gIDUwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCA1cHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDUyJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIDFweCkgcm90YXRlKDMuNWRlZyk7IH1cclxuICA1NCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLThweCwgLTVweCkgcm90YXRlKDIuNWRlZyk7IH1cclxuICA1NiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCAtOHB4KSByb3RhdGUoMi41ZGVnKTsgfVxyXG4gIDU4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtM3B4LCAtNnB4KSByb3RhdGUoMS41ZGVnKTsgfVxyXG4gIDYwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtM3B4LCAtNXB4KSByb3RhdGUoMC41ZGVnKTsgfVxyXG4gIDYyJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMXB4LCAwcHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDY0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgycHgsIDEwcHgpIHJvdGF0ZSgzLjVkZWcpOyB9XHJcbiAgNjYlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC00cHgsIC0xcHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDY4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIC01cHgpIHJvdGF0ZSgxLjVkZWcpOyB9XHJcbiAgNzAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zcHgsIDJweCkgcm90YXRlKC0xLjVkZWcpOyB9XHJcbiAgNzIlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDlweCwgLTNweCkgcm90YXRlKC0wLjVkZWcpOyB9XHJcbiAgNzQlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIDZweCkgcm90YXRlKDEuNWRlZyk7IH1cclxuICA3NiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTdweCwgLThweCkgcm90YXRlKC0xLjVkZWcpOyB9XHJcbiAgNzglIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDdweCwgLTRweCkgcm90YXRlKDAuNWRlZyk7IH1cclxuICA4MCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTRweCwgLTVweCkgcm90YXRlKC0xLjVkZWcpOyB9XHJcbiAgODIlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgNnB4KSByb3RhdGUoMy41ZGVnKTsgfVxyXG4gIDg0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC03cHgpIHJvdGF0ZSgtMS41ZGVnKTsgfVxyXG4gIDg2JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDFweCkgcm90YXRlKDMuNWRlZyk7IH1cclxuICA4OCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgLTNweCkgcm90YXRlKDIuNWRlZyk7IH1cclxuICA5MCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXB4LCAzcHgpIHJvdGF0ZSgtMC41ZGVnKTsgfVxyXG4gIDkyJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOXB4LCAtNHB4KSByb3RhdGUoLTIuNWRlZyk7IH1cclxuICA5NCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTdweCwgLTZweCkgcm90YXRlKDIuNWRlZyk7IH1cclxuICA5NiUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNXB4LCAtM3B4KSByb3RhdGUoLTEuNWRlZyk7IH1cclxuICA5OCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCA0cHgpIHJvdGF0ZSgwLjVkZWcpOyB9XHJcbiAgMCUsIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgcm90YXRlKDApOyB9IH1cclxuXHJcbi5zaGFrZS1zbG93OmhvdmVyLFxyXG4uc2hha2UtdHJpZ2dlcjpob3ZlciAuc2hha2Utc2xvdyxcclxuLnNoYWtlLXNsb3cuc2hha2UtZnJlZXplLFxyXG4uc2hha2Utc2xvdy5zaGFrZS1jb25zdGFudCB7XHJcbiAgYW5pbWF0aW9uOiBzaGFrZS1zbG93IDVzIGVhc2UtaW4tb3V0IGluZmluaXRlOyB9XHJcblxyXG5Aa2V5ZnJhbWVzIG1vdmVUZWV0aExlZnQge1xyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGVYKC0xKSB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlWCgtMSkgdHJhbnNsYXRlWCgxMDAlKTtcclxuXHR9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbW92ZVRlZXRoUmlnaHQge1xyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE1MCUpO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBjaGFyYWN0ZXJTZWxlY3Qge1xyXG5cdDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgzNjBkZWcpO1xyXG4gIH1cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSg0NWRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZsb2F0IHtcclxuXHQwJSwgMzMlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cclxuXHQzNCUsIDc1JSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMHB4KTsgfVxyXG5cdDc2JSwgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxhc2gtaW5jb3JyZWN0IHtcclxuXHQwJSB7IGJhY2tncm91bmQ6ICMxNzE3MTc7IH1cclxuXHQyNSUgeyBiYWNrZ3JvdW5kOiAjMzMxMTExOyB9XHJcblx0NTAlIHsgYmFja2dyb3VuZDogIzE3MTcxNzsgfVxyXG5cdDc1JSB7IGJhY2tncm91bmQ6ICMzMzExMTE7IH1cclxuXHQxMDAlIHsgYmFja2dyb3VuZDogIzE3MTcxNzsgfVxyXG59XHJcbkBrZXlmcmFtZXMgZmxhc2gtY29ycmVjdCB7XHJcblx0MCUgeyBiYWNrZ3JvdW5kOiAjMTcxNzE3OyB9XHJcblx0MjUlIHsgYmFja2dyb3VuZDogIzFEMzMxMTsgfVxyXG5cdDUwJSB7IGJhY2tncm91bmQ6ICMxNzE3MTc7IH1cclxuXHQ3NSUgeyBiYWNrZ3JvdW5kOiAjMUQzMzExOyB9XHJcblx0MTAwJSB7IGJhY2tncm91bmQ6ICMxNzE3MTc7IH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBuYXZIaWRlIHtcclxuXHQwJSB7IFxyXG5cdFx0dG9wOiA0NXB4O1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHQgfVxyXG5cdDI1JSB7IH1cclxuXHQ1MCUgeyB9XHJcblx0NzUlIHsgb3BhY2l0eTogMCB9XHJcblx0MTAwJSB7IHRvcDogMjBweCB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbW92aW5nLWJvcmRlciB7XHJcbiAgMCUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAsIDAgMTAwJSwgMCAwLCAxMDAlIDA7IH1cclxuICAxMDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMzBweCAwLCAtMzBweCAxMDAlLCAwIC0zMHB4LCAxMDAlIDMwcHg7IH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBjdC1tb3ZpbmctYm9yZGVyIHtcclxuICAwJSB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMCAxMDAlLCAwIDAsIDEwMCUgMDsgfVxyXG4gIDEwMCUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMTBweCAwLCAtMTEwcHggMTAwJSwgMCAtMTEwcHgsIDEwMCUgMTEwcHg7IH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBuYXZIaWRlVHJhbnNpdGlvbiB7XHJcblx0MCUgeyBcclxuXHRcdHRvcDogNXB4O1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHQgfVxyXG5cdDI1JSB7IH1cclxuXHQ1MCUgeyB9XHJcblx0NzUlIHsgb3BhY2l0eTogMCB9XHJcblx0MTAwJSB7IHRvcDogLTIwcHggfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHBsYXlTcHJpdGUge1xyXG4gICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogICAgMHB4OyB9XHJcbiAgICAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzMyNXB4OyB9XHJcbn1cclxuQGtleWZyYW1lcyBnbGl0Y2hDaGFyYWN0ZXJzU2hhZG93IHtcclxuICAvKiRzdGVwczoyMDtcclxuICBAZm9yICQoaSkgZnJvbSAwIHRocm91Z2ggJChzdGVwcyl7XHJcbiAgICAje3BlcmNlbnRhZ2UoJChpKSooMS8kKHN0ZXBzKSkpfXtcclxuICAgICAgY2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogMTMwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiAxMzApKXB4LDApO1xyXG4gICAgfVxyXG4gIH0qL1xyXG5cclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjAgKyAxKSlweCwgOTk5OXB4LCByZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwKSlweCwgMCk7XHJcblx0fVxyXG5cdDUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwKSlweCwgMCk7XHJcblx0fVxyXG5cdDEwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCkpcHgsIDApO1xyXG5cdH1cclxuXHQzMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjApKXB4LCAwKTtcclxuXHR9XHJcblx0MjAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwKSlweCwgMCk7XHJcblx0fVxyXG5cdDI1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCkpcHgsIDApO1xyXG5cdH1cclxuXHQzMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjApKXB4LCAwKTtcclxuXHR9XHJcblx0MzUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwKSlweCwgMCk7XHJcblx0fVxyXG5cdDQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCkpcHgsIDApO1xyXG5cdH1cclxuXHQ0NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjApKXB4LCAwKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwKSlweCwgMCk7XHJcblx0fVxyXG5cdDU1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCkpcHgsIDApO1xyXG5cdH1cclxuXHQ2MCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjApKXB4LCAwKTtcclxuXHR9XHJcblx0NjUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwKSlweCwgMCk7XHJcblx0fVxyXG5cdDcwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCkpcHgsIDApO1xyXG5cdH1cclxuXHQ3NSUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjApKXB4LCAwKTtcclxuXHR9XHJcblx0ODAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwKSlweCwgMCk7XHJcblx0fVxyXG5cdDg1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUgKyAxKSlweCk7XHJcblx0XHRjbGlwOiByZWN0KHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjAgKyAxKSlweCw5OTk5cHgscmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCkpcHgsIDApO1xyXG5cdH1cclxuXHQ5MCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjApKXB4LCAwKTtcclxuXHR9XHJcblx0OTUlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNSArIDEpKXB4KTtcclxuXHRcdGNsaXA6IHJlY3QocmVzb2x2ZShmbG9vcihyYW5kb20oKSAqIDUyMCArIDEpKXB4LDk5OTlweCxyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwKSlweCwgMCk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1ICsgMSkpcHgpO1xyXG5cdFx0Y2xpcDogcmVjdChyZXNvbHZlKGZsb29yKHJhbmRvbSgpICogNTIwICsgMSkpcHgsOTk5OXB4LHJlc29sdmUoZmxvb3IocmFuZG9tKCkgKiA1MjApKXB4LCAwKTtcclxuXHR9XHJcbn0iLCJAZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ2ljb21vb24nO1xyXG5cdHNyYzp1cmwoJ3dkX2ljb21vb25fbmNzYS5lb3Q/bmt3NDJyJyk7XHJcblx0c3JjOnVybCgnd2RfaWNvbW9vbl9uY3NhLmVvdD9ua3c0MnIjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJ3dkX2ljb21vb25fbmNzYS53b2ZmMj9ua3c0MnInKSBmb3JtYXQoJ3dvZmYyJyksXHJcblx0XHR1cmwoJ3dkX2ljb21vb25fbmNzYS50dGY/bmt3NDJyJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG5cdFx0dXJsKCd3ZF9pY29tb29uX25jc2Eud29mZj9ua3c0MnInKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnd2RfaWNvbW9vbl9uY3NhLnN2Zz9ua3c0MnIjaWNvbW9vbicpIGZvcm1hdCgnc3ZnJyk7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbltjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSwgLmljb24ge1xyXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgLi4vZm9udHMgKi9cclxuXHRmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XHJcblx0c3BlYWs6IG5vbmU7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0Zm9udC12YXJpYW50OiBub3JtYWw7XHJcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblxyXG5cdC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xyXG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcblxyXG4uaWNvbi1mb3J1bXM6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTZjXCI7XHJcbn1cclxuLmljb24taW5zdGFncmFtOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE5MlwiO1xyXG59XHJcbi5pY29uLXR1bWJscjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYmFcIjtcclxufVxyXG4uaWNvbi1yZWRkaXQ6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWM2XCI7XHJcbn1cclxuLmljb24tdm9sdW1lLW11dGU6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTBmXCI7XHJcbn1cclxuLmljb24tcGF1c2U6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XHJcbn1cclxuLmljb24tdm9sdW1lLW1lZGl1bTpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGU5MGJcIjtcclxufVxyXG4uaWNvbi1wbGF5OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwY1wiO1xyXG59XHJcbi5pY29uLXlvdXR1YmU6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XHJcbn1cclxuLmljb24tZ29vZ2xlLXBsdXM6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XHJcbn1cclxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XHJcbn1cclxuLmljb24tdHdpdHRlcjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGU5MDNcIjtcclxufVxyXG4uaWNvbi1mdWxsc2NyZWVuOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwZFwiO1xyXG59XHJcbi5pY29uLWFycm93LXRoaW4tbGVmdDpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGU5MDlcIjtcclxufVxyXG4uaWNvbi1hcnJvdy10aGluLXJpZ2h0OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwYVwiO1xyXG59XHJcbi5pY29uLWJ1dHRvbi14OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwOFwiO1xyXG59XHJcbi5pY29uLWFycm93LWRvd246YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XHJcbn1cclxuLmljb24tYXJyb3ctdXA6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XHJcbn1cclxuLmljb24tYXJyb3ctbGVmdDpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGU5MDRcIjtcclxufVxyXG4uaWNvbi1hcnJvdy1yaWdodDpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGU5MDVcIjtcclxufVxyXG4iLCIlcHNldWRvRWxlbWVudCB7XHJcblx0Y29udGVudDogJyc7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbiVwc2V1ZG9FbGVtZW50QWJzb2x1dGUge1xyXG5cdEBleHRlbmQgJXBzZXVkb0VsZW1lbnQ7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG59XHJcblxyXG4vKiBcclxuICAgQmFubmVyIEhlcm8gSGVhZGVyc1xyXG4gICAtIEFzIHNlZW4gYXQgdGhlIHRvcCBvZiBuZXdzIGFuZCBtZWRpYSBwYWdlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4lYmFubmVySGVhZGVyLWNvbnRhaW5lciB7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRib3JkZXI6IDE0cHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG5cdG1hcmdpbjogMjE1cHggYXV0byAwIGF1dG87XHJcblx0bWF4LXdpZHRoOiA5MCU7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRAbWl4aW4gc2l6ZSAxMTU2cHgsIDQyNXB4O1xyXG5cclxuXHQmOmJlZm9yZSxcclxuXHQmOmFmdGVyIHtcclxuXHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuXHR9XHJcblxyXG5cdC5oZXJvLXRpdGxlLFxyXG5cdC5oZXJvLWRlc2NyaXB0aW9uIHtcclxuXHRcdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuXHRcdGRpc3BsYXk6IGlubGluZTtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0fVxyXG5cclxuXHQuaGVyby10aXRsZSB7XHJcblx0XHRAZXh0ZW5kIC5hbHBoYTtcclxuXHRcdHBhZGRpbmc6IDNweCAyMHB4O1xyXG5cdFx0QG1peGluIGZvbnQtc2Fuc043O1xyXG5cdH1cclxuXHJcblx0Lmhlcm8tZGVzY3JpcHRpb24ge1xyXG5cdFx0QGV4dGVuZCAuZ2FtbWE7XHJcblx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cdFx0cGFkZGluZzogMTBweCA1MHB4O1xyXG5cdFx0QG1peGluIGZvbnQtc2Fuc040O1xyXG5cdH1cclxuXHJcblx0QG1lZGlhICgtLXdpZGUpIHtcclxuXHRcdG1heC13aWR0aDogOTAlO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdFx0JjpiZWZvcmUsXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSAoLS1taWQpIHtcclxuXHRcdC5oZXJvLXRpdGxlIHsgQG1peGluIGZvbnQtc2l6ZSA0NTsgfVxyXG5cdFx0Lmhlcm8tZGVzY3JpcHRpb24geyBAbWl4aW4gZm9udC1zaXplIDM2OyB9XHJcblx0fVxyXG5cclxuXHRAbWVkaWEoLS10YWJsZXRTbWFsbCkge1xyXG5cdFx0Lmhlcm8tdGl0bGUge1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zaXplIDMwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5oZXJvLWRlc2NyaXB0aW9uIHtcclxuXHRcdFx0cGFkZGluZzogMTBweCAyMHB4O1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zaXplIDI0LCAxNDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8qIFxyXG4gICBTdHJpa2UtdGhyb3VnaCBwbGFpbiBsaW5rIGhvdmVyXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiVzdHJpa2V0aHJvdWdoLWJhc2ljIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdCY6YmVmb3Jle1xyXG5cdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2xvci1ibGFjaztcclxuXHRcdC8vbGVmdDogLTIuNSU7IHRvcDogLTUwJTtcclxuXHRcdHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRAbWl4aW4gc2l6ZSAwLCAxMDAlO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlcjpiZWZvcmUge1xyXG5cdFx0QG1peGluIHNpemUgMTA1JSwgMTAwJTtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKiBcclxuICAgQ2Fyb3VzZWwgTmF2XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiVjYXJvdXNlbC1wb3NpdGlvbiB7XHJcblx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luOiAwIDEwcHg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRvcDogMTVweDtcclxuXHRAbWl4aW4gZm9udC1zYW5zTjQ7XHJcblx0Ly9AbWl4aW4gZm9udC1zaXplIDExLCAwO1xyXG5cdC8vQG1peGluIHNpemUgMzVweCwgMzVweDtcclxuXHRcclxuXHRzcGFuIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdH1cclxuXHJcblx0LnRvcCxcclxuXHQuYm90dG9tIHtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdHdpZHRoOiA1MCU7XHJcblx0fVxyXG5cclxuXHQudG9wIHtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0fVxyXG5cclxuXHQuYm90dG9tIHtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdH1cclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG5cdFx0Ly90b3A6IDE1cHg7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG5cdFx0QG1peGluIHNpemUgMTAwJSwgMXB4O1xyXG5cdH1cclxufVxyXG5cclxuJWNhcm91c2VsLWFycm93cyB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dG9wOiAxMHB4O1xyXG5cdC8vQG1peGluIGZvbnQtc2l6ZSAzMCwgMjA7XHJcblx0XHJcblx0JjphZnRlcixcclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAZXh0ZW5kIC5pY29uO1xyXG5cdH1cclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29sb3I6ICRjb2xvci1ibHVlO1xyXG5cdFx0dHJhbnNpdGlvbjogMC4zcztcclxuXHR9XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogLTFweDsgXHJcblx0XHR0cmFuc2l0aW9uOiBjbGlwIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0fVxyXG59XHJcblxyXG4lYXJyb3ctcHJldiB7XHJcblx0JjphZnRlcixcclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAZXh0ZW5kIC5pY29uLWFycm93LWxlZnQ6YmVmb3JlO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xyXG5cdFx0bGVmdDogMDtcclxuXHR9XHJcbn1cclxuXHJcbiVhcnJvdy1uZXh0IHtcclxuXHQmOmFmdGVyLFxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdEBleHRlbmQgLmljb24tYXJyb3ctcmlnaHQ6YmVmb3JlO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRyaWdodDogMDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbiIsIi8vIFotSW5kZXggU2NhbGUgKHByaXZhdGUgdmFycylcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuJHpJbmRleC1uZWc6IC0xMDA7XHJcbiR6SW5kZXgtMDogICAwO1xyXG4kekluZGV4LTE6ICAgMTAwO1xyXG4kekluZGV4LTI6ICAgMjAwO1xyXG4kekluZGV4LTM6ICAgMzAwO1xyXG4kekluZGV4LTQ6ICAgNDAwO1xyXG4kekluZGV4LTU6ICAgNTAwO1xyXG4kekluZGV4LTY6ICAgNjAwO1xyXG4kekluZGV4LTc6ICAgNzAwO1xyXG4kekluZGV4LTg6ICAgODAwO1xyXG4kekluZGV4LTk6ICAgOTAwO1xyXG4kekluZGV4LTEwOiAgIDEwMDA7XHJcbiR6SW5kZXgtbWF4OiAgOTk5OTtcclxuXHJcbi8vIFotSW5kZXggQXBwbGljYXRpb25zICgkekluZGV4LTEtLWNvbXBvbmVudE5hbWU6ICR6SW5kZXgtMTspXHJcbi8vICR6SW5kZXgtNS0tZ2xvYmFsSGVhZGVyOiAkekluZGV4LTU7XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kekluZGV4LW5lZy0tbmV3c1BzZXVkbzogXHRcdFx0ICAgICAgICAkekluZGV4LW5lZztcclxuJHpJbmRleC1uZWctLWhpZGRlbk1lZGlhOiBcdFx0XHQgICAgICAkekluZGV4LW5lZztcclxuJHpJbmRleC1uZWctLW5hdkRvd25IaWRlOiBcdFx0XHQgICAgICAkekluZGV4LW5lZztcclxuJHpJbmRleC1uZWctLXByZWxvYWRlckhpZGU6IFx0XHQgICAgICAkekluZGV4LW5lZztcclxuXHJcbiR6SW5kZXgtMC0tcGxheWVyOiBcdFx0XHRcdFx0ICAgICAgICAgICR6SW5kZXgtMDtcclxuXHJcbiR6SW5kZXgtMS0tbmF2RGVjb3JhdGlvbjogICAgICAgICAgICAgJHpJbmRleC0xO1xyXG4kekluZGV4LTEtbmF2VGlsZUhvdmVyOiAgICAgICAgICAgICAgICR6SW5kZXgtMTtcclxuJHpJbmRleC0xLXJlc2VydmVDYWxsb3V0UHNldWRvQkdzOiAgICAkekluZGV4LTE7XHJcbiR6SW5kZXgtMS1uZXdzSXRlbUNvbnRhaW5lcjpcdCAgICAgICAgJHpJbmRleC0xO1xyXG4kekluZGV4LTEtY3RSZXdhcmRzSXRlbXM6XHQgICAgICBcdCAgICAkekluZGV4LTE7XHJcblxyXG4kekluZGV4LTItLW5hdjogICAgICAgICAgICAgICAgICAgICAgICR6SW5kZXgtMjtcclxuJHpJbmRleC0yLS1yZXNlcnZlQ2FsbG91dENvbnRlbnQ6ICAgICAkekluZGV4LTI7XHJcbiR6SW5kZXgtMi1yZXNlcnZlQ2FsbG91dFBzZXVkb0JHczogICAgJHpJbmRleC0yO1xyXG5cclxuJHpJbmRleC0zLS1yZXNlcnZlQ2FsbG91dEhlYWQ6ICAgICBcdCAgJHpJbmRleC0zO1xyXG4kekluZGV4LTMtLW5hdkRvd246XHQgXHQgIFx0ICAgICBcdCAgICAgICR6SW5kZXgtMztcclxuXHJcbiR6SW5kZXgtNS0tbW9kYWxIZWFkZXI6IFx0XHRcdCAgICAgICAgJHpJbmRleC01O1xyXG5cclxuJHpJbmRleC03LS1jdWx0dXJlTW9kYWxPdmVybGF5OiAgICAgICAkekluZGV4LTc7XHJcblxyXG4kekluZGV4LTgtLWN1bHR1cmU6ICAgICAgICAgICAgICAgICAgICR6SW5kZXgtODtcclxuJHpJbmRleC04LS1jdWx0dXJlTW9kYWxXcmFwOiAgICAgICAgICAkekluZGV4LTg7XHJcbiR6SW5kZXgtOC0tY3VsdHVyZU1vZGFsOiAgICAgICAgICAgICAgJHpJbmRleC04O1xyXG5cclxuJHpJbmRleC05LS1tb2RhbEJ1eTogICAgICAgICAgICAgICAgICAkekluZGV4LTk7XHJcblxyXG4kekluZGV4LTEwLS1rZXlwYWQ6ICAgICAgICAgICAgICAgICAgICR6SW5kZXgtMTA7XHJcbiR6aW5kZXgtMTAtLW9wZW5OYXY6ICAgICAgICAgICAgICAgICAgICR6SW5kZXgtMTA7XHJcbiR6aW5kZXgtMTAtLXViaWJhcjogICAgICAgICAgICAgICBcdCAgJHpJbmRleC0xMDtcclxuXHJcbiR6aW5kZXgtbWF4LS1tZWRpYU1vZGFsOiAgICAgICAgICAgICAgJHpJbmRleC1tYXg7XHJcbiR6aW5kZXgtbWF4LS1wcmVsb2FkZXI6ICAgICAgICAgICAgICAgJHpJbmRleC1tYXg7IiwiXHJcbi8qIFxyXG4gICBVdGlsaXR5IENsYXNzZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8vIEZsb2F0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4udS1jbGVhciB7XHJcbiAgICBjbGVhcjogYm90aDtcclxufVxyXG5cclxuLnUtcHVsbExlZnQge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuXHJcbi51LXB1bGxSaWdodCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbn1cclxuXHJcbi8vIENsZWFyZml4XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi51LWNsZWFyZml4OmJlZm9yZSxcclxuLnUtY2xlYXJmaXg6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnUtY2xlYXJmaXg6YWZ0ZXIge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbn1cclxuXHJcbi51LWNsZWFyZml4IHtcclxuICAgIHpvb206IDE7XHJcbn1cclxuXHJcbi8vIFZpc3VhbGx5IEhpZGRlblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnUtdmlzdWFsbHloaWRkZW4ge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgbWFyZ2luOiAtMXB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMXB4O1xyXG59XHJcbiIsIkBkZWZpbmUtZXh0ZW5kIC5zbGlkZXItYnV0dG9uIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgY2xlYXI6IGluaGVyaXQ7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmbG9hdDogbm9uZTtcclxufVxyXG5cclxuQGRlZmluZS1taXhpbiBzbGlkZXNob3dzIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC5iYWNrd2FyZCB7XHJcbiAgICAgICAgQGV4dGVuZCAuc2xpZGVyLWJ1dHRvbjtcclxuICAgIH1cclxuICAgIC5mb3J3YXJkIHtcclxuICAgICAgICBAZXh0ZW5kIC5zbGlkZXItYnV0dG9uO1xyXG4gICAgfVxyXG4gICAgLnNsaWRlLWltYWdlcyB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgfVxyXG4gICAgLnNsaWRlLWltYWdlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLmRrLXNlbGVjdCwgLmRrLXNlbGVjdCAqLCAuZGstc2VsZWN0ICo6YmVmb3JlLCAuZGstc2VsZWN0ICo6YWZ0ZXIsIC5kay1zZWxlY3QtbXVsdGksIC5kay1zZWxlY3QtbXVsdGkgKiwgLmRrLXNlbGVjdC1tdWx0aSAqOmJlZm9yZSwgLmRrLXNlbGVjdC1tdWx0aSAqOmFmdGVyIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxyXG5cclxuLmRrLXNlbGVjdCwgLmRrLXNlbGVjdC1tdWx0aSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5kay1zZWxlY3RlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICBsaW5lLWhlaWdodDogNDVweDtcclxuICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgLW8tdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgQG1peGluIGZvbnQtc2Fuc043O1xyXG5cclxuICAmOmJlZm9yZSB7XHJcbiAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXdpZHRoOiAxMHB4IDVweCAwO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlOyByaWdodDogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gIH1cclxufVxyXG5cclxuLmRrLXNlbGVjdGVkLWRpc2FibGVkIHsgY29sb3I6ICNCQkJCQkI7IH1cclxuXHJcbi5kay1zZWxlY3QgLmRrLXNlbGVjdC1vcHRpb25zIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG59XHJcblxyXG4uZGstc2VsZWN0LW9wZW4tdXAgLmRrLXNlbGVjdC1vcHRpb25zIHtcclxuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG4gIGJvdHRvbTogMTAwJTtcclxufVxyXG5cclxuLmRrLXNlbGVjdC1vcGVuLWRvd24gLmRrLXNlbGVjdC1vcHRpb25zIHtcclxuICBtYXJnaW4tdG9wOiAtMXB4O1xyXG4gIHRvcDogMTAwJTtcclxufVxyXG5cclxuLmRrLXNlbGVjdC1tdWx0aSAuZGstc2VsZWN0LW9wdGlvbnMge1xyXG4gIG1heC1oZWlnaHQ6IDEwZW07XHJcbn1cclxuXHJcbi5kay1zZWxlY3Qtb3B0aW9ucyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ibGFjaztcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxuICBtYXgtaGVpZ2h0OiAxMC41ZW07XHJcbiAgbWluLXdpZHRoOiAxMDAlO1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIHBhZGRpbmc6IDAuMjVlbSAwO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIHotaW5kZXg6IDEwMDtcclxufVxyXG5cclxuLmRrLXNlbGVjdC1vcHRpb25zLWhpZ2hsaWdodCAuZGstb3B0aW9uLXNlbGVjdGVkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBjb2xvcjogaW5oZXJpdDtcclxufVxyXG5cclxuLmRrLW9wdGlvbiB7XHJcbiAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICBsaW5lLWhlaWdodDogMzVweDtcclxuICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBAbWl4aW4gZm9udC1zYW5zTjc7XHJcblxyXG4gICYuZGstb3B0aW9uLXNlbGVjdGVkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCRjb2xvci1ibGFjayBhKDUwJSkpO1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICB9XHJcbn1cclxuXHJcbi5kay1zZWxlY3Qtb3B0aW9ucyAuZGstb3B0aW9uLWhpZ2hsaWdodCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJGNvbG9yLWJsYWNrIGEoODAlKSk7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxufVxyXG5cclxuLmRrLXNlbGVjdC1vcHRpb25zIC5kay1vcHRpb24tZGlzYWJsZWQge1xyXG4gIGNvbG9yOiAjMUM5RkJGO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4uZGstb3B0Z3JvdXAge1xyXG4gIGJvcmRlcjogc29saWQgI0NDQ0NDQztcclxuICBib3JkZXItd2lkdGg6IDFweCAwO1xyXG4gIHBhZGRpbmc6IDAuMjVlbSAwO1xyXG4gIG1hcmdpbi10b3A6IDAuMjVlbTtcclxufVxyXG4uZGstb3B0Z3JvdXAgKyAuZGstb3B0aW9uIHsgbWFyZ2luLXRvcDogMC4yNWVtOyB9XHJcbi5kay1vcHRncm91cCArIC5kay1vcHRncm91cCB7XHJcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcbi5kay1vcHRncm91cDpudGgtY2hpbGQoMikge1xyXG4gIHBhZGRpbmctdG9wOiAwO1xyXG4gIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxufVxyXG4uZGstb3B0Z3JvdXA6bGFzdC1jaGlsZCB7XHJcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIHBhZGRpbmctYm90dG9tOiAwO1xyXG59XHJcblxyXG4uZGstb3B0Z3JvdXAtbGFiZWwge1xyXG4gIHBhZGRpbmc6IDAgMC41ZW0gMC4yNWVtO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZGstb3B0Z3JvdXAtb3B0aW9ucyB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbn1cclxuLmRrLW9wdGdyb3VwLW9wdGlvbnMgbGkgeyBwYWRkaW5nLWxlZnQ6IDEuMmVtOyB9XHJcblxyXG4uZGstc2VsZWN0LW9wZW4tdXAgLmRrLXNlbGVjdGVkIHt9XHJcbi5kay1zZWxlY3Qtb3Blbi1kb3duIC5kay1zZWxlY3RlZCB7fVxyXG5cclxuLmRrLXNlbGVjdC1vcGVuLXVwIC5kay1zZWxlY3RlZDpiZWZvcmUsIC5kay1zZWxlY3Qtb3Blbi1kb3duIC5kay1zZWxlY3RlZDpiZWZvcmUge1xyXG4gIGJvcmRlci13aWR0aDogMCA1cHggMTBweDtcclxuICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbn1cclxuXHJcbi5kay1zZWxlY3Qtb3Blbi11cCAuZGstc2VsZWN0ZWQ6YWZ0ZXIsIC5kay1zZWxlY3Qtb3Blbi1kb3duIC5kay1zZWxlY3RlZDphZnRlciB7XHJcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMzMjk3ZmQ7XHJcbn1cclxuXHJcbi5kay1zZWxlY3Qtb3Blbi11cCAuZGstc2VsZWN0LW9wdGlvbnMsIC5kay1zZWxlY3Qtb3Blbi1kb3duIC5kay1zZWxlY3Qtb3B0aW9ucywgLmRrLXNlbGVjdC1tdWx0aTpmb2N1cyAuZGstc2VsZWN0LW9wdGlvbnMge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGJvcmRlci1jb2xvcjogIzMyOTdmZDtcclxufVxyXG5cclxuaHRtbDpub3QoLmlzLW1vYmlsZSkgLmRrLXNlbGVjdC1tdWx0aTpob3ZlciwgLmRrLXNlbGVjdC1tdWx0aTpmb2N1cyB7XHJcbiAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuaHRtbDpub3QoLmlzLW1vYmlsZSkgLmRrLXNlbGVjdGVkOmhvdmVyLCAuZGstc2VsZWN0ZWQ6Zm9jdXMge1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi5kay1zZWxlY3QtZGlzYWJsZWQge1xyXG4gIG9wYWNpdHk6IDAuNjtcclxuICBjb2xvcjogI0JCQkJCQjtcclxuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG5cclxuICBodG1sOm5vdCguaXMtbW9iaWxlKSAuZGstc2VsZWN0ZWQ6aG92ZXIsIC5kay1zZWxlY3RlZDpmb2N1cyB7IGJvcmRlci1jb2xvcjogaW5oZXJpdDsgfVxyXG4gIGh0bWw6bm90KC5pcy1tb2JpbGUpIC5kay1zZWxlY3RlZDpob3ZlcjpiZWZvcmUsIC5kay1zZWxlY3RlZDpmb2N1czpiZWZvcmUgeyBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0OyB9XHJcbiAgaHRtbDpub3QoLmlzLW1vYmlsZSkgLmRrLXNlbGVjdGVkOmhvdmVyOmFmdGVyLCAuZGstc2VsZWN0ZWQ6Zm9jdXM6YWZ0ZXIgeyBib3JkZXItbGVmdC1jb2xvcjogaW5oZXJpdDsgfVxyXG59XHJcblxyXG5zZWxlY3RbZGF0YS1ka2NhY2hlaWRdIHsgZGlzcGxheTogbm9uZTsgfVxyXG4iLCIvKiBwZXJmZWN0LXNjcm9sbGJhciB2MC42LjExICovXHJcbi5wcy1jb250YWluZXIge1xyXG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XHJcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xyXG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcclxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbkBzdXBwb3J0cyAoLW1zLW92ZXJmbG93LXN0eWxlOiBub25lKSB7XHJcbiAgLnBzLWNvbnRhaW5lciB7XHJcbiAgICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcclxuICAucHMtY29udGFpbmVyIHsgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDsgfVxyXG59XHJcblxyXG4ucHMtY29udGFpbmVyLnBzLWFjdGl2ZS14ID4gLnBzLXNjcm9sbGJhci14LXJhaWwsXHJcbi5wcy1jb250YWluZXIucHMtYWN0aXZlLXkgPiAucHMtc2Nyb2xsYmFyLXktcmFpbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5wcy1jb250YWluZXIucHMtaW4tc2Nyb2xsaW5nIHsgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cclxuXHJcbi5wcy1jb250YWluZXIucHMtaW4tc2Nyb2xsaW5nLnBzLXggPiAucHMtc2Nyb2xsYmFyLXgtcmFpbCB7IH1cclxuLnBzLWNvbnRhaW5lci5wcy1pbi1zY3JvbGxpbmcucHMteCA+IC5wcy1zY3JvbGxiYXIteC1yYWlsID4gLnBzLXNjcm9sbGJhci14IHsgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7IH1cclxuLnBzLWNvbnRhaW5lci5wcy1pbi1zY3JvbGxpbmcucHMteSA+IC5wcy1zY3JvbGxiYXIteS1yYWlsIHsgfVxyXG5cclxuLnBzLWNvbnRhaW5lci5wcy1pbi1zY3JvbGxpbmcucHMteSA+IC5wcy1zY3JvbGxiYXIteS1yYWlsID4gLnBzLXNjcm9sbGJhci15IHsgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7IH1cclxuLnBzLWNvbnRhaW5lciA+IC5wcy1zY3JvbGxiYXIteC1yYWlsIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3R0b206IDNweDtcclxuICAvKiB0aGVyZSBtdXN0IGJlICdib3R0b20nIGZvciBwcy1zY3JvbGxiYXIteC1yYWlsICovXHJcbiAgaGVpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi5wcy1jb250YWluZXIgPiAucHMtc2Nyb2xsYmFyLXgtcmFpbCA+IC5wcy1zY3JvbGxiYXIteCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gIGJvdHRvbTogMDtcclxuICAvKiB0aGVyZSBtdXN0IGJlICdib3R0b20nIGZvciBwcy1zY3JvbGxiYXIteCAqL1xyXG4gIGhlaWdodDogOHB4O1xyXG59XHJcblxyXG4ucHMtY29udGFpbmVyID4gLnBzLXNjcm9sbGJhci15LXJhaWwge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIC8qIHRoZXJlIG11c3QgYmUgJ3JpZ2h0JyBmb3IgcHMtc2Nyb2xsYmFyLXktcmFpbCAqL1xyXG4gIHdpZHRoOiA1cHg7XHJcbn1cclxuXHJcbi5wcy1jb250YWluZXIgPiAucHMtc2Nyb2xsYmFyLXktcmFpbCA+IC5wcy1zY3JvbGxiYXIteSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIC8qIHRoZXJlIG11c3QgYmUgJ3JpZ2h0JyBmb3IgcHMtc2Nyb2xsYmFyLXkgKi9cclxuICB3aWR0aDogNXB4O1xyXG59XHJcblxyXG4ucHMtY29udGFpbmVyOmhvdmVyLnBzLWluLXNjcm9sbGluZyB7IHBvaW50ZXItZXZlbnRzOiBub25lOyB9XHJcbi5wcy1jb250YWluZXI6aG92ZXIucHMtaW4tc2Nyb2xsaW5nLnBzLXggPiAucHMtc2Nyb2xsYmFyLXgtcmFpbCB7IH1cclxuXHJcbi5wcy1jb250YWluZXI6aG92ZXIucHMtaW4tc2Nyb2xsaW5nLnBzLXggPiAucHMtc2Nyb2xsYmFyLXgtcmFpbCA+IC5wcy1zY3JvbGxiYXIteCB7IGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlOyB9XHJcbi5wcy1jb250YWluZXI6aG92ZXIucHMtaW4tc2Nyb2xsaW5nLnBzLXkgPiAucHMtc2Nyb2xsYmFyLXktcmFpbCB7IH1cclxuLnBzLWNvbnRhaW5lcjpob3Zlci5wcy1pbi1zY3JvbGxpbmcucHMteSA+IC5wcy1zY3JvbGxiYXIteS1yYWlsID4gLnBzLXNjcm9sbGJhci15IHsgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7IH1cclxuLnBzLWNvbnRhaW5lcjpob3ZlciA+IC5wcy1zY3JvbGxiYXIteC1yYWlsLFxyXG4ucHMtY29udGFpbmVyOmhvdmVyID4gLnBzLXNjcm9sbGJhci15LXJhaWwge31cclxuLnBzLWNvbnRhaW5lcjpob3ZlciA+IC5wcy1zY3JvbGxiYXIteC1yYWlsOmhvdmVyIHsgfVxyXG4ucHMtY29udGFpbmVyOmhvdmVyID4gLnBzLXNjcm9sbGJhci14LXJhaWw6aG92ZXIgPiAucHMtc2Nyb2xsYmFyLXggeyBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZTsgfVxyXG4ucHMtY29udGFpbmVyOmhvdmVyID4gLnBzLXNjcm9sbGJhci15LXJhaWw6aG92ZXIgeyB9XHJcbi5wcy1jb250YWluZXI6aG92ZXIgPiAucHMtc2Nyb2xsYmFyLXktcmFpbDpob3ZlciA+IC5wcy1zY3JvbGxiYXIteSB7IGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlOyB9XHJcbiIsIi8qIFxyXG4gICBHbG9iYWwgSGVhZGVyXHJcbiAgIC0gQXMgc2VlbiBvbiB0aGUgdG9wIG9mIGV2ZXJ5IHBhZ2VcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyoqXHJcbiAqIFRPRE9cclxuICpcclxuICogPT4gQ29udmVydCBweCB0byByZW1cclxuICovXHJcblxyXG4ud2QtZ2xvYmFsSGVhZGVyIHtcclxuXHRsZWZ0OiAwO1xyXG5cdHBvc2l0aW9uOiBmaXhlZDsgLy8gU28gdGhhdCBjb250ZW50IGNhbiBzaXQgdW5kZXIgaXQ7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHRvcDogNDVweDsgLy8gSGVpZ2h0IG9mIGRlc2t0b3AgdWJpYmFyXHJcblx0dHJhbnNpdGlvbjogdG9wIDAuN3MgZWFzZS1pbi1vdXQ7XHJcblx0ei1pbmRleDogJHpJbmRleC0yLS1uYXY7XHJcblx0QG1peGluIHNpemUgMTAwJSwgMjIwcHg7XHJcblx0Ly9wb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHJcblx0LndkLWdsb2JhbEhlYWRlci0tY2VudGVyIHsgbG9zdC1jZW50ZXI6IDEyMDBweDsgfVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC43cztcclxuXHR9XHJcblxyXG5cdCYuaGFzVHJhbnNpdGlvbmVkIHtcclxuXHRcdGhlaWdodDogMTEwcHg7XHJcblx0XHQvL3RvcDogNXB4O1xyXG5cclxuXHRcdCYuaXMtb3BlbiB7XHJcblx0XHRcdGhlaWdodDogMjIwcHg7IC8vIERvbnQnIGludGVyZmVyZSB3aXRoIHRoZSBoZWlnaHQgb2YgdGhlIG9wZW4gbmF2XHJcblx0XHR9XHJcblxyXG5cdFx0Lmljb24td2RMb2dvIHtcclxuXHRcdFx0dG9wOiAxOHB4O1xyXG5cdFx0XHR0cmFuc2l0aW9uOiB0b3AgMC43czsgXHJcblx0XHRcdEBtaXhpbiBzcHJpdGUgLS1sb2dvLXdoaXRlLW1vYmlsZTtcclxuXHRcdH1cclxuXHJcblx0XHQuaWNvbi13ZExvZ28sXHJcblx0XHQubmF2LWhhbWJ1cmdlci1jb250YWluZXIsXHJcblx0XHQubmF2LXJlc2VydmUge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHotaW5kZXg6ICR6SW5kZXgtMy0tbmF2RG93bjtcclxuXHRcdH1cclxuXHJcblx0XHQubmF2LWxvZ28gLmljb24tbG9nb1RleHQge1xyXG5cdFx0XHR0b3A6IDMycHg7XHJcblx0XHRcdHRyYW5zaXRpb246IHRvcCAwLjdzOyBcclxuXHRcdFx0ei1pbmRleDogJHpJbmRleC0zLS1uYXZEb3duO1xyXG5cclxuXHRcdFx0QG1lZGlhICgtLW5hdldpZGUpIHtcclxuXHRcdFx0XHR0b3A6IDM4cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQubmF2LXJlc2VydmUge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiA2NXB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5uYXYtaGFtYnVyZ2VyLWNvbnRhaW5lciB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDcxcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5hdi1sb2dvIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogMzhweDtcclxuXHRcdFx0dHJhbnNpdGlvbjogbWFyZ2luLXRvcCAwLjdzOyBcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYubmF2LWRvd24ge1xyXG5cdFx0aGVpZ2h0OiAxMTBweDtcclxuXHRcdHRvcDogLTdweDtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR6LWluZGV4OiA2MDA7XHJcblxyXG5cdFx0Lmljb24td2RMb2dvIHtcclxuXHRcdFx0dG9wOiAxOHB4O1xyXG5cdFx0XHRAbWl4aW4gc3ByaXRlIC0tbG9nby13aGl0ZS1tb2JpbGU7XHJcblx0XHR9XHJcblx0XHQuaWNvbi1sb2dvVGV4dCB7XHJcblx0XHRcdGxlZnQ6IDY1cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuXHRcdFx0Ym90dG9tOiAtM3B4OyBsZWZ0OiAwO1xyXG5cdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRAbWl4aW4gc2l6ZSAxMDAlLCA2MXB4O1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBIaWRlIGJsYWNrIGJhciB3aGVuIG5hdiBpcyBvcGVuZWRcclxuXHRcdCYuaXMtb3BlbiB7XHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdHotaW5kZXg6ICR6SW5kZXgtbmVnLS1uYXZEb3duSGlkZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5uYXYtdXAge1xyXG5cdFx0YW5pbWF0aW9uOiBuYXZIaWRlIC43cyBsaW5lYXI7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHR0b3A6IDIwcHg7XHJcblx0fVxyXG5cclxuXHQmLmhhc1RyYW5zaXRpb25lZC5uYXYtdXAge1xyXG5cdFx0Ly9hbmltYXRpb246IG5hdkhpZGVUcmFuc2l0aW9uIC43cyBsaW5lYXI7XHJcblx0XHRhbmltYXRpb246IG5vbmU7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHR0b3A6IC04MHB4O1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDAuN3M7XHJcblx0fVxyXG5cclxuXHQuaWNvbi13ZExvZ28sXHJcblx0Lm5hdi1oYW1idXJnZXItY29udGFpbmVyLFxyXG5cdC5uYXYtcmVzZXJ2ZSB7XHJcblx0XHR0cmFuc2l0aW9uOiBtYXJnaW4gMC43cztcclxuXHR9XHJcblxyXG5cdC5uYXYtbG9nbyB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRsb3N0LWNvbHVtbjogMy8xMjtcclxuXHRcdG1hcmdpbi10b3A6IDc1cHg7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuXHRcdC5pY29uLXdkTG9nbyB7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0QG1peGluIHNwcml0ZSAtLWxvZ28td2hpdGU7XHJcblx0XHR9XHJcblxyXG5cdFx0Lmljb24td2RMb2dvLS1kYXJrIHtcclxuXHRcdFx0QG1peGluIHNwcml0ZSAtLWxvZ287XHJcblx0XHR9XHJcblxyXG5cdFx0Lmljb24td2RMb2dvLS13aGl0ZSB7XHJcblx0XHRcdEBtaXhpbiBzcHJpdGUgLS1sb2dvLXdoaXRlO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5pY29uLWxvZ29UZXh0IHtcclxuXHRcdFx0YW5pbWF0aW9uLWRlbGF5OiAxLjJzO1xyXG5cdFx0XHRhbmltYXRpb246IGdsaXRjaEFuaW0tdGV4dCAxLjJzIGxpbmVhcjtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRsZWZ0OiAxMDBweDtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDI3cHg7XHJcblx0XHRcdEBtaXhpbiBzcHJpdGUgLS1sb2dvLXRleHQtd2hpdGU7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC8vIFwiUmVzZXJ2ZSBOb3dcIiBsaW5rXHJcblx0Lm5hdi1yZXNlcnZlIHtcclxuXHRcdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdGZsb2F0OiByaWdodDtcclxuXHRcdG1hcmdpbi10b3A6IDEwMnB4O1xyXG5cdFx0cGFkZGluZzogMTBweCAxMnB4O1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRcdCoge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHotaW5kZXg6ICR6SW5kZXgtMS0tbmF2RGVjb3JhdGlvbjtcclxuXHRcdH1cclxuXHJcblx0XHRoMixcclxuXHRcdGgzIHtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdEBtaXhpbiBmb250LXNpemUgMTIsIDEyLCAxMDA7XHJcblx0XHR9XHJcblxyXG5cdFx0aDIge1xyXG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zYW5zTjc7XHJcblx0XHR9XHJcblxyXG5cdFx0aDMge1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLWdyZXktNjA7XHJcblx0XHRcdEBtaXhpbiBmb250LXNhbnNONDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LmhpZ2hsaWdodC1ibHVlIHtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci1ibHVlO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5oaWdobGlnaHQtd2hpdGUge1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xyXG5cdFx0XHR0b3A6IDA7IGxlZnQ6IDA7XHJcblx0XHRcdEBtaXhpbiBzaXplIDAsIDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0aHRtbDpub3QoLmlzLW1vYmlsZSkgJiB7XHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHRcdEBtaXhpbiBzaXplIDEwMCUsIDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQuaGlnaGxpZ2h0LXdoaXRlIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQubmF2LWhhbWJ1cmdlci1jb250YWluZXIge1xyXG5cdFx0Ly9AZXh0ZW5kIC5pY29uLWhhbWJ1cmdlcjtcclxuXHRcdGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuXHRcdGZsb2F0OiByaWdodDtcclxuXHRcdG1hcmdpbi10b3A6IDEwOHB4O1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAzNXB4O1xyXG5cdFx0QG1peGluIGZvbnQtc2l6ZSAyNiwgMCwgMDtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdC8vQGV4dGVuZCAuaWNvbjtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0XHJcblx0XHRoMSB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0QG1peGluIGZvbnQtc2Fuc042O1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zaXplIDEyLCAxMiwgMDtcclxuXHRcdH1cclxuXHJcblx0XHQuaXMtZGVza3RvcCB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQubmF2LWhhbWJ1cmdlciB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHRcdHRyYW5zaXRpb246IDAuNXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRAbWl4aW4gc2l6ZSA0MHB4LCA0MHB4O1xyXG5cclxuXHRcdHNwYW4ge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHRcdFx0dHJhbnNpdGlvbjogMC4yNXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdEBtaXhpbiBzaXplIDEwMCUsIDVweDtcclxuXHRcdH1cclxuXHJcblx0XHRzcGFuOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdHRvcDogMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHNwYW46bnRoLWNoaWxkKDIpLCBcclxuXHRcdHNwYW46bnRoLWNoaWxkKDMpIHtcclxuXHRcdFx0dG9wOiAxMXB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHNwYW46bnRoLWNoaWxkKDQpIHtcclxuXHRcdFx0dG9wOiAyMnB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHNwYW46bnRoLWNoaWxkKDEpOmJlZm9yZSB7XHJcblx0XHRcdHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XHJcblx0XHR9XHJcblxyXG5cdFx0c3BhbjpudGgtY2hpbGQoMik6YmVmb3JlLFxyXG5cdFx0c3BhbjpudGgtY2hpbGQoMyk6YmVmb3JlIHtcclxuXHRcdFx0dHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dCAwLjFzO1xyXG5cdFx0fVxyXG5cclxuXHRcdHNwYW46bnRoLWNoaWxkKDQpOmJlZm9yZSB7XHJcblx0XHRcdHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQgMC4ycztcclxuXHRcdH1cclxuXHJcblx0XHRzcGFuOmJlZm9yZSB7XHJcblx0XHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG5cdFx0XHRAbWl4aW4gc2l6ZSAwLCAxMDAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGh0bWw6bm90KC5pcy1tb2JpbGUpICYge1xyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRzcGFuIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMCAtNHB4OyAvKiBpbml0YWwgbWFyZ2luIC0gKChpbnRpYWwgbWFyZ2luIC0gd2lkdGggKG9yIGhlaWdodCkpLzIpICovXHJcblx0XHRcdFx0XHR3aWR0aDogNDhweDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdHNwYW46YmVmb3JlIHtcclxuXHRcdFx0XHRcdEBtaXhpbiBzaXplIDEwMCUsIDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cclxuXHJcblxyXG5cdFx0XHRcdEBtZWRpYSAoLS1uYXZXaWRlKSB7XHJcblx0XHRcdFx0XHRhbmltYXRpb246IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmlzLW9wZW4ge1xyXG5cdFx0cG9zaXRpb246IGZpeGVkO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJ3dkX2JnLW5hdi10aWxlX25jc2EuanBnJykgcmVwZWF0LXg7XHJcblx0XHRcdGhlaWdodDogMjIwcHg7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdGxvc3QtY29sdW1uOiAxMi8xMjtcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZXooMCk7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5pcy1vcGVuLm5hdi11cCxcclxuXHRcdCYuaXMtb3Blbi5uYXYtZG93biB7XHJcblx0XHRcdGFuaW1hdGlvbjogbm9uZTtcclxuXHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0cG9pbnRlci1ldmVudHM6IGF1dG87XHJcblx0XHRcdHRvcDogNDVweDtcclxuXHRcdFx0ei1pbmRleDogJHppbmRleC0xMC0tb3Blbk5hdjtcclxuXHRcdH1cclxuXHJcblx0XHQmLmhhc1RyYW5zaXRpb25lZCAubmF2LWhhbWJ1cmdlci1jb250YWluZXIge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAxMDhweDtcclxuXHRcdH1cclxuXHJcblx0XHQmLmhhc1RyYW5zaXRpb25lZCAuaWNvbi13ZExvZ28ge1xyXG5cdFx0XHR0b3A6IGF1dG87XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5hdi1sb2dvIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogNzVweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiA3NXB4O1xyXG5cdFx0XHR3aWR0aDogYXV0bztcclxuXHJcblx0XHRcdC5pY29uLXdkTG9nbyB7XHJcblx0XHRcdFx0QG1peGluIHNwcml0ZSAtLWxvZ287XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5pY29uLWxvZ29UZXh0IHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdEBtaXhpbiBzcHJpdGUgLS1sb2dvLXRleHQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Lm5hdi1yZXNlcnZlIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHQubmF2LWhhbWJ1cmdlci1jb250YWluZXIge1xyXG5cclxuXHRcdFx0aDEge1xyXG5cdFx0XHRcdGFuaW1hdGlvbjogZ2xpdGNoQW5pbS10ZXh0IDFzIGxpbmVhcjtcclxuXHRcdFx0XHRjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG5cdFx0XHRcdGxlZnQ6IC0xN3B4O1xyXG5cdFx0XHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IHJpZ2h0IDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5pcy1kZXNrdG9wIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRsZWZ0OiBhdXRvO1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5uYXYtaGFtYnVyZ2VyLWNvbnRhaW5lciBoMSB7XHJcblx0XHRcdGFuaW1hdGlvbjogZ2xpdGNoQW5pbS10ZXh0IDFzIGxpbmVhcjtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci1ibGFjaztcclxuXHRcdFx0bGVmdDogLTE3cHg7XHJcblx0XHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiByaWdodCAwLjNzIGVhc2UtaW4tb3V0O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5uYXYtaGFtYnVyZ2VyIHNwYW4ge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5hdi1oYW1idXJnZXIgc3BhbjpudGgtY2hpbGQoMSkge1xyXG5cdFx0XHR0b3A6IDExcHg7XHJcblx0XHRcdHdpZHRoOiAwJTtcclxuXHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5uYXYtaGFtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDIpIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5uYXYtaGFtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDMpIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuXHRcdH1cclxuXHJcblx0XHQubmF2LWhhbWJ1cmdlciBzcGFuOm50aC1jaGlsZCg0KSB7XHJcblx0XHRcdHRvcDogMTFweDtcclxuXHRcdFx0d2lkdGg6IDAlO1xyXG5cdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHR9XHJcblxyXG5cdFx0aHRtbDpub3QoLmlzLW1vYmlsZSkgJiB7XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHQubmF2LWhhbWJ1cmdlciBzcGFuOmZpcnN0LWNoaWxkLFxyXG5cdFx0XHRcdC5uYXYtaGFtYnVyZ2VyIHNwYW46bGFzdC1jaGlsZCB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QG1lZGlhICgtLXdpZGVzdCkge1xyXG5cdFx0Ji5pcy1vcGVuIHtcclxuXHRcdFx0Lm5hdi1sb2dvIHsgZGlzcGxheTogbm9uZTsgfVxyXG5cdFx0fVxyXG5cdFx0LndkLWdsb2JhbEhlYWRlci0tY2VudGVyIHtcclxuXHRcdFx0bG9zdC1jZW50ZXI6IDExNDhweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSAoLS13aWRlKSB7XHJcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdFx0cGFkZGluZzogMCAyMHB4O1xyXG5cclxuXHRcdC53ZC1nbG9iYWxIZWFkZXItLWNlbnRlciB7XHJcblx0XHRcdGxvc3QtY2VudGVyOiA5NjBweDtcclxuXHRcdFx0cGFkZGluZzogMDtcclxuXHRcdH1cclxuXHJcblx0XHQmLmlzLW9wZW4gLndkLWdsb2JhbEhlYWRlci0tY2VudGVyIHtcclxuXHRcdFx0XHJcblx0XHRcdC5uYXYtbG9nbyB7XHJcblx0XHRcdFx0d2lkdGg6IDc1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0Ly8gRGVmYXVsdCB0byBtb2JpbGUgbmF2XHJcblx0QG1lZGlhICgtLW5hdldpZGUpIHtcclxuXHRcdC8vaGVpZ2h0OiAxMDB2aDtcclxuXHRcdG1heC1oZWlnaHQ6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRcclxuXHRcdCYubmF2LWRvd24ge1xyXG5cdFx0XHQubmF2LWxvZ28gLmljb24tbG9nb1RleHQgeyBsZWZ0OiAxMDBweDsgfVxyXG5cdFx0fVxyXG5cdFx0Ji5pcy1vcGVuOmJlZm9yZSxcclxuXHRcdCYuaXMtb3BlbiB7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0bWF4LWhlaWdodDogMTAwJTtcclxuXHRcdH1cclxuXHJcblx0XHQmLmlzLW9wZW46YmVmb3JlIHtcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKCd3ZF9iZy1uYXYtdGlsZV9uY3NhLmpwZycpIHJlcGVhdCwgJGNvbG9yLW5hdi1ia2c7XHJcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdH1cclxuXHJcblx0XHQmLmlzLW9wZW4ge1xyXG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0XHRcdG92ZXJmbG93OiBhdXRvO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0ei1pbmRleDogJHppbmRleC0xMC0tb3Blbk5hdjtcclxuXHJcblx0XHRcdC53ZC1nbG9iYWxIZWFkZXItLWNlbnRlciB7XHJcblx0XHRcdFx0aGVpZ2h0OiA4MDBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm5hdi1sb2dvIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XHJcblx0XHRcdFx0cGFkZGluZzogMCA1JTtcclxuXHRcdFx0XHR3aWR0aDogYXV0bztcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm5hdi1sb2dvIC5pY29uLXdkTG9nbyB7XHJcblx0XHRcdFx0QG1peGluIHNwcml0ZSAtLWxvZ28tbW9iaWxlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubmF2LWxvZ28gLmljb24td2RMb2dvLS1kYXJrIHtcclxuXHRcdFx0XHRAbWl4aW4gc3ByaXRlIC0tbG9nby1tb2JpbGU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5uYXYtbG9nbyAuaWNvbi1sb2dvVGV4dCB7XHJcblx0XHRcdFx0dG9wOiAxOHB4O1xyXG5cdFx0XHRcdEBtaXhpbiBzcHJpdGUgLS1sb2dvLXRleHQtd2hpdGUtbW9iaWxlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubmF2LWhhbWJ1cmdlciB7XHJcblx0XHRcdFx0Ly9sZWZ0OiAtNjdweDtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5uYXYtaGFtYnVyZ2VyLWNvbnRhaW5lciB7XHJcblx0XHRcdFx0bGVmdDogYXV0bztcclxuXHRcdFx0XHRtYXJnaW4tdG9wOiAyOHB4O1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHR0b3A6IGF1dG87XHJcblxyXG5cdFx0XHRcdGgxLmlzLWRlc2t0b3Age1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblxyXG5cdFx0Ji5oYXNUcmFuc2l0aW9uZWQuaXMtb3BlbiB7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHJcblx0XHRcdC5uYXYtaGFtYnVyZ2VyLWNvbnRhaW5lciB7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMjhweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5uYXYtbG9nbyB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XHJcblx0XHRcdHBhZGRpbmc6IDAgNSU7XHJcblx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cclxuXHRcdFx0Lmljb24td2RMb2dvIHtcclxuXHRcdFx0XHRAbWl4aW4gc3ByaXRlIC0tbG9nby13aGl0ZS1tb2JpbGU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5pY29uLXdkTG9nby0tZGFyayB7XHJcblx0XHRcdFx0QG1peGluIHNwcml0ZSAtLWxvZ28tbW9iaWxlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuaWNvbi1sb2dvVGV4dCB7XHJcblx0XHRcdFx0dG9wOiAxOHB4O1xyXG5cdFx0XHRcdEBtaXhpbiBzcHJpdGUgLS1sb2dvLXRleHQtbW9iaWxlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5hdi1oYW1idXJnZXItY29udGFpbmVyIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogMjhweDtcclxuXHRcdFx0cGFkZGluZy1yaWdodDogNSU7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0XHRcdGgxIHtcclxuXHRcdFx0XHRjb2xvcjogJGNvbG9yLWJsdWU7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0cmlnaHQ6IDk1cHg7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdFx0QG1peGluIGZvbnQtc2Fuc042O1xyXG5cdFx0XHRcdEBtaXhpbiBmb250LXNpemUgMTgsIC0zMCwgNDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQubmF2LXJlc2VydmUge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cdFxyXG5cdH1cclxuXHJcblx0QG1lZGlhICgtLW5hdk1vYmlsZVJldGluYSkge1xyXG5cdFx0Lm5hdi1sb2dvIC5pY29uLXdkTG9nbyB7XHJcblx0XHRcdEBtaXhpbiByZXRpbmEtc3ByaXRlIC0tbG9nby13aGl0ZS1tb2JpbGUtMngsIC0tbG9nby13aGl0ZS1tb2JpbGU7XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5hdi1sb2dvIC5pY29uLXdkTG9nby0tZGFyayB7XHJcblx0XHRcdEBtaXhpbiByZXRpbmEtc3ByaXRlIC0tbG9nby1tb2JpbGUtMngsIC0tbG9nby1tb2JpbGU7XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5hdi1sb2dvIC5pY29uLWxvZ29UZXh0IHtcclxuXHRcdFx0QG1peGluIHJldGluYS1zcHJpdGUgLS1sb2dvLXRleHQtbW9iaWxlLTJ4LCAtLWxvZ28tdGV4dC1tb2JpbGU7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5pcy1vcGVuIHtcclxuXHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRAbWVkaWEgKC0tdGFibGV0U21hbGwpIHtcclxuXHRcdC5uYXYtaGFtYnVyZ2VyIHNwYW4ge1xyXG5cdFx0XHRyaWdodDogNzVweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSAoLS1tb2JpbGUpIHtcclxuXHJcblx0XHQubmF2LWxvZ28gLmljb24tbG9nb1RleHQge1xyXG5cdFx0XHRsZWZ0OiA3NXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QG1lZGlhICgtLW1vYmlsZVNtYWxsKSB7XHJcblxyXG5cdFx0Lm5hdi1sb2dvIC5pY29uLWxvZ29UZXh0IHtcclxuXHRcdFx0bGVmdDogNzVweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG59XHJcblxyXG5cclxuLm5hdi1tZW51IHtcclxuXHRjb3VudGVyLXJlc2V0OiBkZWNvcmF0aW9uLWNvdW50ZXI7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdEBtaXhpbiBsaXN0LXJlc2V0O1xyXG5cdFxyXG5cdC8vIEZhbmN5IG5hdiBvcGVuIGFuaW1hdGlvbiB3aWxsIGdvIGhlcmVcclxuXHQuaXMtb3BlbiAmIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuXHJcblx0Ji5pcy1vcGVuIHtcclxuXHRcdGhlaWdodDogMjIwcHg7IFxyXG5cdFx0Ly9sb3N0LWNvbHVtbjogMztcclxuXHR9XHJcblxyXG5cdGxpIHtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdG1hcmdpbi10b3A6IDI3cHg7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdFx0LnVpLWRlY29yYXRpb246YmVmb3JlIHtcclxuXHRcdFx0Y29udGVudDogY291bnRlcihkZWNvcmF0aW9uLWNvdW50ZXIsIGRlY2ltYWwtbGVhZGluZy16ZXJvKTtcclxuXHRcdFx0Y291bnRlci1pbmNyZW1lbnQ6IGRlY29yYXRpb24tY291bnRlcjtcclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0LnVpLWRlY29yYXRpb24sXHJcblx0Lm5hdi10aXRsZSxcclxuXHQudWktdHJpYW5nbGUsXHJcblx0Lm5hdi10aXRsZS0taG92ZXIge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdH1cclxuXHJcblx0LnVpLWRlY29yYXRpb24ge1xyXG5cdFx0cmlnaHQ6IDE1cHg7XHJcblx0XHR0b3A6IC0xNHB4O1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0ei1pbmRleDogJHpJbmRleC0xLS1uYXZEZWNvcmF0aW9uO1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zYW5zQWx0TjQ7XHJcblx0XHRcdEBtaXhpbiBmb250LXNpemUgMTEsIDAsIDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQubmF2LXRpdGxlLFxyXG5cdC5uYXYtdGl0bGUtLWhvdmVyIHtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRAbWl4aW4gZm9udC1zYW5zTjc7XHJcblx0fVxyXG5cclxuXHQubmF2LXRpdGxlIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkY29sb3ItYmxhY2s7XHJcblx0XHRjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG5cdFx0bGVmdDogMTJweDtcclxuXHRcdHRvcDogOTVweDtcclxuXHRcdEBtaXhpbiBmb250LXNpemUgMTQsIDgsIDA7XHJcblx0fVxyXG5cdFxyXG5cdC8vIEJsYWNrIGJhciB0aGF0IHNob3dzIG9uIGhvdmVyXHJcblx0Lm5hdi10aXRsZS0taG92ZXIge1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG5cdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0cGFkZGluZzogMTBweCAwIDhweCAxNHB4O1xyXG5cdFx0dG9wOiA0N3B4O1xyXG5cdFx0ei1pbmRleDogJHpJbmRleC0xLW5hdlRpbGVIb3ZlcjtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMCkgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcblx0XHRAbWl4aW4gc2l6ZSAxMTAlLCBhdXRvO1xyXG5cdFx0QG1peGluIGZvbnQtc2l6ZSAxOCwgMCwgMDtcclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0bGVmdDogMTRweDtcclxuXHRcdFx0dG9wOiAxMHB4O1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8vIFRyaWFuZ2xlIERlb2NyYXRpb25zXHJcblx0LnVpLXRyaWFuZ2xlOmJlZm9yZSxcclxuXHQudWktdHJpYW5nbGUgLnRyaWFuZ2xlOmJlZm9yZSB7XHJcblx0XHRAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcblx0fVxyXG5cclxuXHQudWktdHJpYW5nbGUgLnRyaWFuZ2xlIHtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdEBtaXhpbiBzaXplIDVweCwgNXB4O1xyXG5cdH1cclxuXHJcblx0LnVpLXRyaWFuZ2xlLS10b3Age1xyXG5cdFx0bGVmdDogOHB4O1xyXG5cdFx0dG9wOiA4cHg7XHJcblxyXG5cdFx0Ly8gTmVlZHMgdG8gYmUgYSBjaGlsZCBlbGVtZW50IHNvIHRoYXQgd2UgY2FuIHVzZSB0aGUgcGFyZW50IGZvciB0aGUgXCJHbGl0Y2ggRWZmZWN0XCJcclxuXHRcdC50cmlhbmdsZTpiZWZvcmUge1xyXG5cdFx0XHRAbWl4aW4gdHJpYW5nbGUgdG9wLWxlZnQsICRjb2xvci1ibGFjaywgNXB4LCA1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQudWktdHJpYW5nbGUtLWJvdHRvbSB7XHJcblx0XHRib3R0b206IDEycHg7XHJcblx0XHRyaWdodDogMTJweDtcclxuXHRcdFxyXG5cdFx0LnRyaWFuZ2xlOmJlZm9yZSB7XHJcblx0XHRcdEBtaXhpbiB0cmlhbmdsZSBib3R0b20tcmlnaHQsICRjb2xvci1ibGFjaywgNXB4LCA1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHJcblx0Lm5hdi1saW5rIHtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibGFjaztcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0bWFyZ2luOiAyMHB4IDEwcHggMCAxMHB4OyAvLyBDb252ZXIgdG8gcmVtXHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG5cdFx0QG1peGluIHNpemUgMTMwcHgsIDEzMHB4O1xyXG5cclxuXHRcdCYuaXMtb3BlbiB7XHJcblx0XHRcdC5uYXYtdGl0bGUtLWhvdmVyIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWCgtNDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcblx0XHRcdFx0QG1peGluIHNpemUgMTEwJSwgMjFweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm5hdi10aXRsZS0taG92ZXIgc3BhbiB7XHJcblx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHQvLyBcIkdsaXRjaFwiIEFuaW1hdGlvbnMgR08hXHJcblx0aHRtbDpub3QoLmlzLW1vYmlsZSkgJiB7IC8vIFByZXZlbnQgbGFyZ2VyIGlPUyBkZXZpY2VzIGZyb20gdHJpZ2dlcmluZyA6aG92ZXIgb24gZmlyc3QgdGFwXHJcblx0XHQubmF2LWxpbms6aG92ZXIge1xyXG5cdFx0XHQvLyBCb3ggR2xpdGNoXHJcblx0XHRcdCY6YmVmb3JlLFxyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcblx0XHRcdFx0QG1peGluIHNpemUgMTMwcHgsIDEzMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0YW5pbWF0aW9uOiBnbGl0Y2hBbmltLWJveCAuOHMgaW5maW5pdGUgbGluZWFyIGFsdGVybmF0ZS1yZXZlcnNlO1xyXG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHR0b3A6IDE1cHg7XHJcblx0XHRcdFx0bGVmdDogLTEwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdGFuaW1hdGlvbjogZ2xpdGNoQW5pbS1ib3gtLTIgMS40cyBpbmZpbml0ZSBsaW5lYXIgYWx0ZXJuYXRlLXJldmVyc2U7XHJcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG9yLXJlZDtcclxuXHRcdFx0XHR0b3A6IC0ycHg7XHJcblx0XHRcdFx0bGVmdDogLTNweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gVUkgRGVjb3JhaXRvbiBOdW1iZXIgXHJcblx0XHRcdC51aS1kZWNvcmF0aW9uOmFmdGVyIHtcclxuXHRcdFx0XHRhbmltYXRpb246IGdsaXRjaEFuaW0tdGV4dC0tc21hbGwgMnMgaW5maW5pdGUgbGluZWFyIGFsdGVybmF0ZS1yZXZlcnNlO1xyXG5cdFx0XHRcdGNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRsZWZ0OiAzcHg7XHJcblx0XHRcdFx0dG9wOiAxcHg7XHJcblx0XHRcdFx0dGV4dC1zaGFkb3c6IC0xcHggMCAkY29sb3ItcmVkO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQudWktZGVjb3JhdGlvbiBzcGFuIHtcclxuXHRcdFx0XHRhbmltYXRpb246IGdsaXRjaE5hdi1mbGlja2VyIDEuMnMgaW5maW5pdGUgbGluZWFyIGFsdGVybmF0ZS1yZXZlcnNlO1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IGNvbG9yKCRjb2xvci1yZWQgYSgzMCUpKTtcclxuXHRcdFx0XHRsZWZ0OiAxcHg7XHJcblx0XHRcdFx0dG9wOiA5cHg7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdEBtaXhpbiBzaXplIDEycHgsIDEycHg7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC8vIFNtYWxsIE5hdiBUaXRsZSBHbGl0Y2hcclxuXHRcdFx0LnVpLWRlY29yYXRpb246YWZ0ZXIsXHJcblx0XHRcdC5uYXYtdGl0bGU6YmVmb3JlLFxyXG5cdFx0XHQubmF2LXRpdGxlOmFmdGVyIHtcclxuXHRcdFx0XHRjbGlwOiByZWN0KDAsOTAwcHgsMCwwKTsgXHJcblx0XHRcdFx0Y29udGVudDogYXR0cihkYXRhLXRleHQpO1xyXG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubmF2LXRpdGxlOmJlZm9yZSB7XHJcblx0XHRcdFx0YW5pbWF0aW9uOiBnbGl0Y2hBbmltLXRleHQgMnMgaW5maW5pdGUgbGluZWFyIGFsdGVybmF0ZS1yZXZlcnNlO1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkY29sb3ItcmVkO1xyXG5cdFx0XHRcdGNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRsZWZ0OiAtNnB4O1xyXG5cdFx0XHRcdHBhZGRpbmc6IDEwcHggNXB4IDBweCA1cHg7XHJcblx0XHRcdFx0dG9wOiAxMHB4O1xyXG5cdFx0XHRcdHRleHQtc2hhZG93OiAtMXB4IDAgJGNvbG9yLXJlZDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm5hdi10aXRsZTphZnRlciB7XHJcblx0XHRcdFx0YW5pbWF0aW9uOiBnbGl0Y2hBbmltLXRleHQtLTIgMS40cyBpbmZpbml0ZSBsaW5lYXIgYWx0ZXJuYXRlLXJldmVyc2U7XHJcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0bGVmdDogLTEwcHg7XHJcblx0XHRcdFx0dG9wOiAwcHg7XHJcblx0XHRcdFx0dGV4dC1zaGFkb3c6IC0xcHggMCAkY29sb3Itd2hpdGU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5uYXYtdGl0bGUgc3BhbiB7XHJcblx0XHRcdFx0YW5pbWF0aW9uOiBnbGl0Y2hOYXYtZmxpY2tlciAxLjJzIGluZmluaXRlIGxpbmVhciBhbHRlcm5hdGUtcmV2ZXJzZTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiBjb2xvcigkY29sb3ItcmVkIGEoMzAlKSk7XHJcblx0XHRcdFx0bGVmdDogMXB4O1xyXG5cdFx0XHRcdHRvcDogOXB4O1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRAbWl4aW4gc2l6ZSA4NyUsIDMwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC8vIFRyaWFuZ2xlIEFuaW1hdGlvbnNcclxuXHRcdFx0LnVpLXRyaWFuZ2xlLS10b3A6YmVmb3JlLFxyXG5cdFx0XHQudWktdHJpYW5nbGUtLXRvcDphZnRlcixcclxuXHRcdFx0LnVpLXRyaWFuZ2xlLS1ib3R0b206YmVmb3JlLFxyXG5cdFx0XHQudWktdHJpYW5nbGUtLWJvdHRvbTphZnRlciAge1xyXG5cdFx0XHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuXHRcdFx0XHRjbGlwOiByZWN0KDAsNXB4LDAsMCk7IFxyXG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC51aS10cmlhbmdsZS0tdG9wOmJlZm9yZSB7XHJcblx0XHRcdFx0YW5pbWF0aW9uOiBnbGl0Y2hBbmltLXRyaWFuZ2xlIC44cyBpbmZpbml0ZSBsaW5lYXIgYWx0ZXJuYXRlLXJldmVyc2U7XHJcblx0XHRcdFx0bGVmdDogLTNweDtcclxuXHRcdFx0XHR0b3A6IC00cHg7XHJcblx0XHRcdFx0QG1peGluIHRyaWFuZ2xlIHRvcC1sZWZ0LCAkY29sb3Itd2hpdGUsIDVweCwgNXB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQudWktdHJpYW5nbGUtLXRvcDphZnRlciB7XHJcblx0XHRcdFx0YW5pbWF0aW9uOiBnbGl0Y2hBbmltLXRyaWFuZ2xlLS10b3AgMXMgaW5maW5pdGUgbGluZWFyIGFsdGVybmF0ZS1yZXZlcnNlO1xyXG5cdFx0XHRcdGxlZnQ6IDJweDtcclxuXHRcdFx0XHR0b3A6IDRweDtcclxuXHRcdFx0XHRAbWl4aW4gdHJpYW5nbGUgdG9wLWxlZnQsICRjb2xvci1yZWQsIDVweCwgNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQvLyBCb3R0b20gVHJpYW5nbGUgQW5pbWF0aW9uc1xyXG5cdFx0XHQudWktdHJpYW5nbGUtLWJvdHRvbTpiZWZvcmUge1xyXG5cdFx0XHRcdGFuaW1hdGlvbjogZ2xpdGNoQW5pbS10cmlhbmdsZSAuOHMgaW5maW5pdGUgbGluZWFyIGFsdGVybmF0ZS1yZXZlcnNlO1xyXG5cdFx0XHRcdGxlZnQ6IDVweDtcclxuXHRcdFx0XHR0b3A6IDRweDtcclxuXHRcdFx0XHRAbWl4aW4gdHJpYW5nbGUgYm90dG9tLXJpZ2h0LCAkY29sb3Itd2hpdGUsIDVweCwgNXB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQudWktdHJpYW5nbGUtLWJvdHRvbTphZnRlciB7XHJcblx0XHRcdFx0YW5pbWF0aW9uOiBnbGl0Y2hBbmltLXRyaWFuZ2xlLS1ib3R0b20gMXMgaW5maW5pdGUgbGluZWFyIGFsdGVybmF0ZS1yZXZlcnNlO1xyXG5cdFx0XHRcdGxlZnQ6IC0zcHg7XHJcblx0XHRcdFx0dG9wOiAtMTBweDtcclxuXHRcdFx0XHRAbWl4aW4gdHJpYW5nbGUgYm90dG9tLXJpZ2h0LCAkY29sb3ItcmVkLCA1cHgsIDVweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gSG92ZXIgVGl0bGUgQW5pbWF0aW9uXHJcblx0XHRcdC5uYXYtdGl0bGUtLWhvdmVyIHtcclxuXHRcdFx0XHRhbmltYXRpb246IGdsaXRjaE5hdlRpdGxlIDAuOHMgZWFzZS1vdXQ7XHJcblx0XHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVgoLTQwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG5cdFx0XHRcdEBtaXhpbiBzaXplIDExMCUsIDIxcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5uYXYtdGl0bGUtLWhvdmVyIHNwYW4ge1xyXG5cdFx0XHRcdGFuaW1hdGlvbjogZ2xpdGNoTmF2VGl0bGUtdGV4dCAuNnMgZWFzZS1vdXQ7XHJcblx0XHRcdFx0YW5pbWF0aW9uLWRlbGF5OiAwLjFzO1xyXG5cdFx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSAoLS13aWRlc3QpIHtcclxuXHRcdGZsb2F0OiByaWdodDtcclxuXHJcblx0XHQubmF2LWxpbmsge1xyXG5cdFx0XHRtYXJnaW46IDIwcHggOHB4IDAgOHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QG1lZGlhICgtLXdpZGUpIHtcclxuXHRcdGEubmF2LWxpbmsge1xyXG5cdFx0XHRtYXJnaW46IDIwcHggM3B4IDAgM3B4O1xyXG5cdFx0XHRAbWl4aW4gc2l6ZSAxMjVweCwgMTI1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyBEZWZhdWx0IHRvIG1vYmlsZSBuYXZcclxuXHRAbWVkaWEgKC0tbmF2V2lkZSkge1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0cGFkZGluZzogMCA1JTtcclxuXHRcdEBtaXhpbiBzaXplIDEwMCUsIGF1dG87XHJcblxyXG5cdFx0YS5uYXYtbGluayxcclxuXHRcdGxpIHtcclxuXHRcdFx0Y2xlYXI6IGJvdGg7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRAbWl4aW4gc2l6ZSAxMDAlLCA3NXB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5uYXYtbGluayB7XHJcblx0XHRcdG1hcmdpbjogMjBweCAwO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQubmF2LXRpdGxlIHNwYW4sXHJcblx0XHQudWktZGVjb3JhdGlvbiBzcGFuIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHQubmF2LWxpbmsge1xyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRhbmltYXRpb246IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdCY6aG92ZXI6YmVmb3JlLFxyXG5cdFx0XHQmOmhvdmVyOmFmdGVyLFxyXG5cdFx0XHQmOmhvdmVyIC5uYXYtdGl0bGUtLWhvdmVyLFxyXG5cdFx0XHQmOmhvdmVyIC51aS1kZWNvcmF0aW9uIHNwYW4sXHJcblx0XHRcdCY6aG92ZXIgLnVpLWRlY29yYXRpb246YWZ0ZXIsXHJcblx0XHRcdCY6aG92ZXIgLm5hdi10aXRsZTpiZWZvcmUsXHJcblx0XHRcdCY6aG92ZXIgLm5hdi10aXRsZTphZnRlcixcclxuXHRcdFx0Jjpob3ZlciAubmF2LXRpdGxlIHNwYW4sXHJcblx0XHRcdCY6aG92ZXIgLnVpLXRyaWFuZ2xlLS10b3A6YmVmb3JlLFxyXG5cdFx0XHQmOmhvdmVyIC51aS10cmlhbmdsZS0tdG9wOmFmdGVyLFxyXG5cdFx0XHQmOmhvdmVyIC51aS10cmlhbmdsZS0tYm90dG9tOmJlZm9yZSxcclxuXHRcdFx0Jjpob3ZlciAudWktdHJpYW5nbGUtLWJvdHRvbTphZnRlciB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdH1cclxuXHJcblx0XHQubmF2LXRpdGxlIHtcclxuXHRcdFx0dG9wOiAzNXB4O1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zaXplIDI0LCA4LCAwO1xyXG5cdFx0fVxyXG5cdH1cclxufSIsIi8qIFxyXG4gICBHbG9iYWwgRm9vdGVyXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi53ZC1nbG9iYWxGb290ZXIge1xyXG5cdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuXHRjb2xvcjogJGNvbG9yLWdyZXktNjU7XHJcblx0bG9zdC1jb2x1bW46IDEyLzEyO1xyXG5cdHBhZGRpbmc6IDQwcHggMCAxMDBweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdEBtaXhpbiBmb250LXNhbnNONDtcclxuXHJcblx0LmxvY2FsZVNlbGVjdG9yIHsgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxyXG5cdC5hbmNob3ItdG9wIHsgbWFyZ2luLWJvdHRvbTogMTAwcHg7IH1cclxuXHJcblx0ZGl2LmZvb3RlciB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRtYXgtd2lkdGg6IDEyNjBweDtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHRsZWZ0OiBhdXRvO1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblxyXG4gIFx0cC5sZWdhbCB7XHJcbiAgXHRcdGNvbG9yOiBpbmhlcml0O1xyXG4gIFx0XHRsb3N0LWNlbnRlcjogODAwcHg7XHJcbiAgXHRcdHBhZGRpbmc6IDQwcHggMDtcclxuICBcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIFx0XHRAbWl4aW4gZm9udC1zaXplIDEyLCAyMSwgODA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuICAubGlzdC1mb290ZXItbGlua3Mge1xyXG4gIFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBcdEBtaXhpbiBmb250LXNhbnNONztcclxuICBcdEBtaXhpbiBsaXN0LXJlc2V0O1xyXG5cclxuICBcdGxpIHtcclxuICBcdCAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIFx0ICBtYXJnaW46IDAgMTBweDtcclxuICBcdH1cclxuXHJcbiAgXHRhIHtcclxuICBcdCAgY29sb3I6IGluaGVyaXQ7XHJcbiAgXHQgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLXdpZGVzdCkge1xyXG4gIFx0LmZjcC1jb250YWluZXIgeyBAaW5jbHVkZSBwYWQoMC41LCAwLjUpOyB9XHJcbiAgXHRkaXYuZm9vdGVyIHtcclxuICBcdCAgcC5sZWdhbCB7IHBhZGRpbmc6IDQwcHg7IH1cclxuICBcdH1cclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXItaXRlbXMge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXgtd2lkdGg6IDEwMjBweDtcclxuXHJcbiAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciAuZm9vdGVyLWl0ZW0ge1xyXG4gIFx0b3BhY2l0eTogMC41O1xyXG4gICAgJjpob3ZlciB7IG9wYWNpdHk6IDE7IH1cclxuICB9XHJcblxyXG4gIC5mb290ZXItaXRlbSB7XHJcbiAgXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgXHRtYXJnaW46IDAgMTVweDtcclxuICBcdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcclxuICBcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgXHRAbWl4aW4gc2l6ZSBhdXRvLCBhdXRvO1xyXG4gIH1cclxuXHJcbiAgYSB7IFxyXG4gIFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIFx0b3V0bGluZTogbm9uZTtcclxuICB9XHJcblxyXG4gIC5wYXJ0bmVyc1JhdGluZ0JveCB7XHJcbiAgXHRkaXNwbGF5OiBibG9jaztcclxuICBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBcdHRvcDogNDBweDtcclxuICB9XHJcblxyXG4gIC5sb2dvLXViaXNvZnQgeyBAbWl4aW4gc3ByaXRlIC0tbG9nby11Ymlzb2Z0OyB9XHJcbiAgLmxvZ28tdXBsYXkgeyBAbWl4aW4gc3ByaXRlIC0tbG9nby11cGxheTsgfVxyXG4gIC5sb2dvLXBzNCB7IEBtaXhpbiBzcHJpdGUgLS1sb2dvLXBzNDsgfVxyXG4gIC5sb2dvLXhib3hvbmUgeyBAbWl4aW4gc3ByaXRlIC0tbG9nby14Ym94b25lOyB9XHJcbiAgLmxvZ28tcGMgeyBAbWl4aW4gc3ByaXRlIC0tbG9nby1wYzsgfVxyXG5cclxuICBAbWVkaWEgKC0tbWlkKSB7XHJcbiAgXHQuZm9vdGVyLWl0ZW0geyBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKC0tdGFibGV0U21hbGwpIHtcclxuICBcdC5wYXJ0bmVyc1JhdGluZ0JveCB7IHRvcDogYXV0bzsgfVxyXG4gIH1cclxufVxyXG5cclxuLmdsb2JhbEZvb3Rlci1zb2NpYWxOYXYge1xyXG4gIG1hcmdpbjogMCBhdXRvIDUwcHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBtaXhpbiBmb250LXNpemUgMjY7XHJcblxyXG4gIGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogMCAzMHB4O1xyXG4gIH1cclxuICBhIHtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgaSB7IEBleHRlbmQgLnUtdmlzdWFsbHloaWRkZW47IH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSAoLS10YWJsZXQpIHtcclxuICAgIGxpIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxyXG4gIH1cclxufVxyXG5cclxuYm9keS5hZ2VnYXRlLXBhc3NlZCB7XHJcbiAgLmZvb3Rlci1pdGVtcyBhOmhvdmVyIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn0iLCIvKiBcclxuICAgTGFuZ3VhZ2UgU2VsZWN0b3JcclxuICAgLSBBcyBzZWVuIGluIGZvb3RlclxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKipcclxuICogVE9ET1xyXG4gKlxyXG4gKiA9PiBGaW5pc2ggY29udmVydGluZyB0aGlzIGZyb20gc2lnbWFcclxuICovXHJcblxyXG4ubGFuZ3VhZ2Utc2VsZWN0b3Ige1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgbWFyZ2luOiAyMHB4IGF1dG87XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiA5MCU7XHJcbiAgei1pbmRleDogNTAwO1xyXG4gIHpvb206IDE7XHJcblxyXG4gICY6YmVmb3JlLCAmOmFmdGVyIHsgY29udGVudDpcIlwiOyBkaXNwbGF5OiBibG9jazsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxyXG4gICY6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxyXG5cclxuICAmLmlzLW9wZW4ge1xyXG4gICAgLmxhbmd1YWdlLWN1cnJlbnQgLmxhbmd1YWdlLXRvZ2dsZTphZnRlciB7IGNvbnRlbnQ6IFwiXFxlOTA2XCI7IH1cclxuICAgIC5sYW5ndWFnZS1yZWdpb25zIHsgZGlzcGxheTogYmxvY2s7IH1cclxuICB9XHJcblxyXG4gIC8vIEN1cnJlbnQvVG9nZ2xlXHJcbiAgLmxhbmd1YWdlLWN1cnJlbnQge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxNSwgMCwgMDtcclxuXHJcbiAgICAubGFuZ3VhZ2UtdG9nZ2xlIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgICBjb2xvcjogY29sb3IoJGNvbG9yLXdoaXRlIGEoNzUlKSk7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogY29sb3IoJGNvbG9yLXdoaXRlIGEoNzUlKSk7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDdcIjtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNnB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRvcDogLTJweDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubGFuZ3VhZ2UtcmVnaW9ucyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcGFkZGluZzogMjBweCAxMHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAxMDAlOyBsZWZ0OiAwOyByaWdodDogMDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG4gIC5sYW5ndWFnZS1yZWdpb24ge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgd2lkdGg6IDI1JTtcclxuXHJcbiAgICBzdHJvbmcge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY29sb3IoJGNvbG9yLXdoaXRlIGEoMjUlKSk7XHJcbiAgICAgIGNvbG9yOiBjb2xvcigkY29sb3Itd2hpdGUgYSg3NSUpKTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDAgNXB4IDVweDtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgQG1peGluIGZvbnQtc2Fuc040O1xyXG4gICAgICBAbWl4aW4gZm9udC1zaXplIDEzLCAwLCAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAubGFuZ3VhZ2UtbGlzdCB7XHJcbiAgICBtYXJnaW46IDEwcHggMDtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMTIsIDAsIDA7XHJcbiAgICBAbWl4aW4gbGlzdC1yZXNldDtcclxuXHJcbiAgICAuZmxhZyB7IG1hcmdpbi1yaWdodDogNXB4OyB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBtYXJnaW46IDJweCAwIDNweDtcclxuXHJcbiAgICAgICYuYWN0aXZlIGEge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKCRjb2xvci13aGl0ZSBhKDE1JSkpO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6IGNvbG9yKCRjb2xvci13aGl0ZSBhKDU1JSkpO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZzogM3B4IDVweDtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcigkY29sb3Itd2hpdGUgYSgxMCUpKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSAoLS1taWQpIHtcclxuICAgIC5sYW5ndWFnZS1yZWdpb24ge1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgLmxhbmd1YWdlLWxpc3Qge1xyXG4gICAgICAgIC8vQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XHJcblxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoM24rNCkgeyBjbGVhcjogbGVmdDsgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLXRhYmxldCkge1xyXG4gICAgLmxhbmd1YWdlLXJlZ2lvbiB7XHJcbiAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkwNVwiO1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAvL0BpbmNsdWRlIGZvbnQtaWNvbnM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmlzLW9wZW4ge1xyXG4gICAgICAgIHN0cm9uZzpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcXGU5MDZcIjtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogOHB4O1xyXG4gICAgICAgICAgdG9wOiAtM3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAubGFuZ3VhZ2UtbGlzdCB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICAgIH1cclxuICAgICAgLmxhbmd1YWdlLWxpc3Qge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgIGxpIHsgd2lkdGg6IDUwJTsgfVxyXG4gICAgICAgIGxpOm50aC1jaGlsZCgzbis0KSB7IGNsZWFyOiBub25lOyB9XHJcbiAgICAgICAgbGk6bnRoLWNoaWxkKDJuKzMpIHsgY2xlYXI6IGxlZnQ7IH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICAgLmxhbmd1YWdlLXJlZ2lvbiB7XHJcbiAgICAgIC5sYW5ndWFnZS1saXN0IGxpIHtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIlxyXG4uc29jaWFsLWxpc3Qge1xyXG4gIEBtaXhpbiBsaXN0LXJlc2V0O1xyXG5cclxuICBsaSB7XHJcbiAgICBtYXJnaW46IDAgMzBweDtcclxuXHJcbiAgICAmOmZpcnN0LWNoaWxkIHsgbWFyZ2luLWxlZnQ6IDA7IH1cclxuICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1yaWdodDogMDsgfVxyXG4gIH1cclxuXHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG4gICAgICBAbWl4aW4gc2l6ZSBhdXRvLCBhdXRvO1xyXG4gICAgICBAbWl4aW4gZm9udC1zaXplIDI4LCAwLCAwO1xyXG5cclxuICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gICAgICBlbSB7IHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7IH1cclxuICAgICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciBlbS5pY29uLXR3aXR0ZXIgeyBjb2xvcjogJGNvbG9yLXR3aXR0ZXI7IH1cclxuICAgICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciBlbS5pY29uLWZhY2Vib29rIHsgY29sb3I6ICRjb2xvci1mYjsgfVxyXG4gICAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIGVtLmljb24tZ29vZ2xlcGx1cyB7IGNvbG9yOiAkY29sb3ItZ29vZ2xlcGx1czsgfVxyXG4gICAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIGVtLmljb24teW91dHViZSB7IGNvbG9yOiAkY29sb3IteW91dHViZTsgfVxyXG4gICAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIGVtLmljb24taW5zdGFncmFtIHsgY29sb3I6ICRjb2xvci1pbnN0YWdyYW07IH1cclxuICAgICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciBlbS5pY29uLXR1bWJsciB7IGNvbG9yOiAkY29sb3ItdHVtYmxyOyB9XHJcbiAgICB9XHJcblxyXG4gIGVtW2NsYXNzXj1cImljb24tXCJdIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogNHB4OyBsZWZ0OiAycHg7XHJcbiAgICB6LWluZGV4OiA1O1xyXG5cclxuICAgICYuaWNvbi1mYWNlYm9vayB7IHRvcDogMnB4OyBsZWZ0OiAtMnB4OyB9XHJcblxyXG4gICAgc3BhbiB7IFxyXG4gICAgICBAZXh0ZW5kIC51LXZpc3VhbGx5aGlkZGVuOyBcclxuICAgIH1cclxuICB9XHJcbn0iLCIvLyBIb21lcGFnZSAtIEdhbWUgSW5mbyBNb2R1bGVcclxuLndkLUdhbWVJbmZvQ2FsbG91dCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2hvbWVwYWdlLWdhbWVpbmZvLWJnX25jc2EucG5nJykgMCAwIHJlcGVhdC14O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvIDQwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMjAwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA1O1xyXG5cclxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcclxuICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2hvbWVwYWdlLWdhbWVpbmZvLXJpcC1iZWZvcmVfbmNzYS5wbmcnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgICB0b3A6IDUwJTsgbGVmdDogMDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICAgIEBtaXhpbiBzaXplIDM4MXB4LCA1NTVweDtcclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2hvbWVwYWdlLWdhbWVpbmZvLXJpcC1hZnRlcl9uY3NhLnBuZycpIDAgMCBuby1yZXBlYXQ7XHJcbiAgICAgIHRvcDogMTAlOyByaWdodDogMDtcclxuICAgICAgQG1peGluIHNpemUgNDQxcHgsIDU1OXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi1ncm91cCB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTIwMHB4O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgICAmOmJlZm9yZSwgJjphZnRlciB7IEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTsgfVxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCd3ZF9ob21lcGFnZS1nYW1laW5mby1yaXBfbmNzYS5wbmcnKSA1MCUgMCBuby1yZXBlYXQ7XHJcbiAgICAgICAgdG9wOiAxMDBweDsgbGVmdDogNjAlO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIEBtaXhpbiBzaXplIDM2OHB4LCAzOTJweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlOyB9XHJcblxyXG4gICAgICAmLmdsaXRjaEhhY2tlcnM6YWZ0ZXIgeyBhbmltYXRpb246IGdsaXRjaEhhY2tlcnMgMC41czsgfVxyXG4gICAgfVxyXG4gICAgJi1ibHVyYiB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTEwcHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDogNTtcclxuICAgICAgd2lkdGg6IDMwJTtcclxuXHJcbiAgICAgIC5ibG9ja0hlYWRsaW5lIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJsdXJiLWNvbnRlbnQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIHBhZGRpbmc6IDI1cHg7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIEBtaXhpbiBmb250LXNpemUgMTEsIDI1O1xyXG4gICAgICBAbWl4aW4gZm9udC1zYW5zQWx0TjQ7XHJcbiAgICAgIFxyXG4gICAgICAuYnRuIHsgbWFyZ2luLXRvcDogMzBweDsgfVxyXG4gICAgfVxyXG5cclxuICAgICYtbWFyY2gge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMjAwcHg7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICYge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAzNzdweDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cclxuICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwxKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cclxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xyXG4gICAgICAgICAgLyogYXV0b3ByZWZpeGVyOiBvbiAqL1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtdGV4dHVyZXtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKCd3ZF9ob21lLWdhbWVpbmZvLXRleHR1cmVfbmNzYS5wbmcnKTtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBvcGFjaXR5OiAuODtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1tYXhXaWR0aCkge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIEBtaXhpbiBzaXplIDE5MXB4LCAyNzhweDtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgQG1peGluIHNpemUgMjIxcHgsIDI4MHB4O1xyXG4gICAgICB9XHJcbiAgICAgICYtZ3JvdXAge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICB3aWR0aDogY2FsYyg3MCUgLSAxMHB4KTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgQG1peGluIHNpemUgMjc2cHgsIDI5NHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLXdpZGUpIHtcclxuICAgICAgJjpiZWZvcmUgeyB0b3A6IDI1JTsgfVxyXG4gICAgICAmOmFmdGVyIHsgcmlnaHQ6IC02MHB4OyB9XHJcbiAgICAgICYtZ3JvdXAsICYtYmx1cmIge1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgIH1cclxuICAgICAgJi1ncm91cCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgICAgJi1ibHVyYiB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcblxyXG4gICAgICAgIC5ibG9ja0hlYWRsaW5lIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0U21hbGwpIHtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxODAlIGF1dG87XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxNDBweDtcclxuXHJcbiAgICAgICY6YmVmb3JlIHsgbGVmdDogLTYwcHg7IH1cclxuICAgICAgJjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgICAgJi1ncm91cDpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgICB0b3A6IDIwcHg7XHJcbiAgICAgICAgbGVmdDogNjAlO1xyXG4gICAgICAgIEBtaXhpbiBzaXplIDEzOHB4LCAxNDdweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vIFJlc2VydmUgUGFnZSBQcm9tb3NcclxuLmhvbWVQcm9tb3Mge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnd2RfaG9tZS1wcm9tby1iZ19uY3NhLnBuZycpLCB1cmwoJ3dkX2RpZ2l0YWwtd2F2ZS1iZWZvcmVfbmNzYS5wbmcnKTtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA3NSUgNDAwcHgsIDAgMDtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCByZXBlYXQteDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8sIGF1dG87XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgei1pbmRleDogNTtcclxuXHJcbiAgJjpiZWZvcmUsICY6YWZ0ZXIgeyBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7IH1cclxuICAmOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2hvbWUtcHJvbW8tYmVmb3JlX25jc2EucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogNDY0cHggODczcHg7XHJcbiAgICBib3R0b206IC0xMzBweDsgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYygtNTAlIC0gKDQ2NHB4ICsgMTc1cHgpICksIDApO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICBAbWl4aW4gc2l6ZSA0NjRweCwgODczcHg7XHJcbiAgfVxyXG4gICY6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCd3ZF9ob21lLXByb21vLWFmdGVyX25jc2EucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogNTg3cHggODA2cHg7XHJcbiAgICBib3R0b206IC0xNjBweDsgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYyg1MCUgLSA3MHB4KSwgMCk7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIEBtaXhpbiBzaXplIDU4N3B4LCA4MDZweDtcclxuICB9XHJcblxyXG4gIC5jb250YWluZXIge1xyXG4gICAgQGV4dGVuZCAudS1jbGVhcmZpeDtcclxuICAgIHBhZGRpbmc6IDIwMHB4IDAgMTkwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA1O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2hvbWUtcHJvbW8tbXVtbXlfbmNzYS5wbmcnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDM3M3B4IDQ1MHB4O1xyXG4gICAgICBib3R0b206IC0yMHB4OyBsZWZ0OiAtMjkwcHg7XHJcbiAgICAgIEBtaXhpbiBzaXplIDM3M3B4LCA0NTBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1taWQpIHtcclxuICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi1wcm9tbyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbjogMCAyNXB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICB3aWR0aDogY2FsYygzMy4zMyUgLSA1MHB4KTtcclxuICBcclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjMzUzNTM1OyB9XHJcbiAgICBhIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1wcm9tb01lZGlhLCAmLXByb21vQ29udGVudCB7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cclxuICAmLXByb21vTWVkaWEge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIEBtaXhpbiBzaXplIDEwMCUsIGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtcHJvbW9Db250ZW50IHtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc0FsdE40O1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxNCwgMjQ7XHJcblxyXG4gICAgcCB7IG1hcmdpbjogMDsgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbWlkKSB7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDM2MHB4O1xyXG4gICAgICAmOmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKCd3ZF9ob21lLXByb21vLW1vYmlsZS1iZWZvcmVfbmNzYS5wbmcnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgICBib3R0b206IDA7IGxlZnQ6IDA7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gICAgICBAbWl4aW4gc2l6ZSA0MjZweCwgMTE1N3B4O1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnd2RfaG9tZS1wcm9tby1tb2JpbGUtYWZ0ZXJfbmNzYS5wbmcnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgICBib3R0b206IDA7IGxlZnQ6IGF1dG87IHJpZ2h0OiAwO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcclxuICAgICAgQG1peGluIHNpemUgNDQ1cHgsIDExMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLXByb21vIHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIG1hcmdpbjogMjVweCBhdXRvO1xyXG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNTBweCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICAuY29udGFpbmVyIHsgcGFkZGluZy1ib3R0b206IDE5MHB4OyB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjEzcHggNTc5cHg7XHJcbiAgICAgIEBtaXhpbiBzaXplIDIxM3B4LCA1NzlweDtcclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDIyM3B4IDU2MHB4O1xyXG4gICAgICBAbWl4aW4gc2l6ZSAyMjNweCwgNTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCIvLyBOZXdzIFN0eWxlc1xyXG4vLyBIb21lcGFnZSBOZXdzIExpc3QgXHJcbi53ZC1uZXdzSXRlbXMtd3JhcCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2hvbWUtbmV3cy1iZ19uY3NhLnBuZycpIGNhbGMoMTAwJSArIDEwMHB4KSAwIG5vLXJlcGVhdDtcclxuICAgIG1pbi1oZWlnaHQ6IDQyMHB4O1xyXG4gICAgcGFkZGluZzogMCAwIDkwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAuYWN0aW9ucyxcclxuICAgIC5jb250ZW50c3VtbWFyeS1zY3JvbGxhYmxlLnZlcnRpY2FsIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2QtbmV3c0l0ZW1zLWhlYWRlciB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvIDI1cHg7XHJcbiAgICBtYXgtd2lkdGg6IDEyMDBweDtcclxuICAgIHBhZGRpbmc6IDkwcHggMTBweCAxMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogNTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCBjb2xvcigkY29sb3Itd2hpdGUgYSgxNSUpKSwgY29sb3IoJGNvbG9yLXdoaXRlIGEoMTUlKSkgMnB4LCB0cmFuc3BhcmVudCAycHgsIHRyYW5zcGFyZW50IDExcHgpO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIEBtaXhpbiBzaXplIDE1MHB4LCAxNTBweDtcclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogNjBweCAwIDAgMjVweDtcclxuICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBAbWl4aW4gZm9udC1zaXplIDM2LCA2NTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1taWQpIHtcclxuICAgICAgcGFkZGluZy10b3A6IDQ1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZC1uZXdzSXRlbXMge1xyXG4gICAgbG9zdC1jZW50ZXI6IDEyMDBweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB3aWR0aDogYXV0bztcclxuXHJcbiAgICAmLWxpc3Qge1xyXG4gICAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG4gICAgICBtYXJnaW46IDI1cHggYXV0bztcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC53ZC1uZXdzSXRlbSB7XHJcbiAgICAgIEBleHRlbmQgLnUtY2xlYXJmaXg7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICBtYXJnaW46IDI1cHggMDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgXHJcbiAgICAgICYtbWVkaWEsICYtbWV0YSB7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICB9XHJcbiAgICAgICYtbWVkaWEge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGltZyB7IG1heC13aWR0aDogMTAwJTsgfVxyXG4gICAgICB9XHJcbiAgICAgICYtbWV0YSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LTYwO1xyXG4gICAgICAgIGNsZWFyOiBsZWZ0O1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgICAgQG1peGluIGZvbnQtc2l6ZSAxMiwgMTQ7XHJcblxyXG4gICAgICAgIGg2IHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLndkLW5ld3NJdGVtLXRhZywgLndkLW5ld3NJdGVtLWF1dGhvciB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgICAgfVxyXG4gICAgICAmLXRlYXNlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LTQwO1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogMDsgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBAbWl4aW4gZm9udC1zaXplIDE0LCAyMjtcclxuICAgICAgICBAbWl4aW4gZm9udC1zYW5zTjQ7XHJcbiAgICAgICAgXHJcbiAgICAgICAgcCB7IG1hcmdpbjogMCAwIDI1cHg7IH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgbWF4LWhlaWdodDogMzBweDsgLy8gcmVxdWlyZWQgZm9yIGhvdmVyIGFuaW1hdGlvblxyXG4gICAgICAgICAgcGFkZGluZzogMnB4IDVweCAzcHg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcclxuICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICBAbWl4aW4gZm9udC1zYW5zTjY7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcvJztcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gICAgICAgICAgICB0b3A6IDA7IGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICBAbWl4aW4gc2l6ZSAwLCAxMDAlO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7IGNvbG9yOiAkY29sb3Itd2hpdGU7IH1cclxuICAgICAgICAgICAgJjphZnRlciB7IHdpZHRoOiAxMDAlOyB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgICAgLndkLW5ld3NJdGVtLW1lZGlhIHsgZmxvYXQ6IHJpZ2h0OyB9XHJcbiAgICAgICAgLndkLW5ld3NJdGVtLW1ldGEsIC53ZC1uZXdzSXRlbS10ZWFzZXIgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxyXG4gICAgICAgIC53ZC1uZXdzSXRlbS1tZXRhIHtcclxuICAgICAgICAgIGNsZWFyOiByaWdodDtcclxuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAud2QtbmV3c0l0ZW0tdGVhc2VyIHtcclxuICAgICAgICAgIGxlZnQ6IDA7IHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1heFdpZHRoKSB7XHJcbiAgICAgICYtbGlzdCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1taWQpIHtcclxuICAgICAgLndkLW5ld3NJdGVtIHtcclxuXHJcbiAgICAgICAgJi1tZXRhLCAmLW1lZGlhLCAmLXRlYXNlciB7XHJcbiAgICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbWVkaWEge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbWV0YSwgJi10ZWFzZXIgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XHJcbiAgICAgICAgJi10ZWFzZXIge1xyXG4gICAgICAgICAgcGFkZGluZzogNXB4IDE1cHggMTBweDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICBib3R0b206IGF1dG87IGxlZnQ6IGF1dG87IHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgICAud2QtbmV3c0l0ZW0ge1xyXG4gICAgICAgICYtbWVkaWEge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgICAgICAgLndkLW5ld3NJdGVtLW1ldGEsIC53ZC1uZXdzSXRlbS10ZWFzZXIgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gQ29tbWVudHNcclxuLnBhZ2UtbmV3c2RldGFpbCB7XHJcbiAgLmZ5cmUtaG92ZXJjYXJkIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgLmxmLWNvbW1lbnRzLWJveCB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1cclxuICAuZnlyZS1zdHJlYW0tc3RhdHMgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgLmZ5cmUge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuXHJcbiAgICAuZnlyZS1ib3gtd3JhcHBlciB7XHJcbiAgICAgIC5meXJlLXVzZXItcHJvZmlsZS1saW5rIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgICAuZnlyZS1ib3gtbGlzdCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQgeyBib3JkZXItdG9wOiAwOyB9XHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5meXJlLXVzZXItbG9nZ2Vkb3V0IHtcclxuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XHJcblxyXG4gICAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItY3lhbjtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZnlyZS1zdHJlYW0tbGl2ZWNvdW50IHsgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuICAgIC5meXJlLWF1dGgge1xyXG4gICAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG5cclxuICAgICAgLmZ5cmUtYm94LWxpc3Qge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBwYWRkaW5nOiAwIDE1cHggMCAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0ZDRiNGI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmZ5cmUtbGl2ZWNvdW50IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgIH1cclxuICAgICAgLmZ5cmUtbGlzdGVuZXItYXZhdGFycyB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgIH1cclxuXHJcbiAgICAuZnlyZS1lZGl0b3Ige1xyXG4gICAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcblxyXG4gICAgICAuZnlyZS1lZGl0b3ItZmllbGQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmV5LTkwO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcclxuXHJcbiAgICAgICAgcCB7IG1hcmdpbjogMCAwIDEuNWVtOyB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5meXJlLWZvbGxvdy1idXR0b24sIC5meXJlLXNoYXJlLWJ1dHRvbiB7IGZsb2F0OiBsZWZ0OyB9XHJcbiAgICAgIC5meXJlLXBvc3QtYnV0dG9uIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBAbWl4aW4gZm9udC1zaXplIDE0LCAyMiwgNTA7XHJcbiAgICAgICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG5cclxuICAgICAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHsgY29sb3I6IGNvbG9yKCRjb2xvci1ibHVlIGIoMzAlKSk7IH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5meXJlLXN0cmVhbS1oZWFkZXIge1xyXG4gICAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICAgLmZ5cmUtc3RyZWFtLXNvcnQge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktMzA7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMTBweDtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gICAgICAgICAgQG1peGluIGZvbnQtc2l6ZSAxNCwgMjg7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICAgICAgYm90dG9tOiAycHg7IGxlZnQ6IDEwcHg7IHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICAgICAgJjpiZWZvcmUgeyBvcGFjaXR5OiAxOyB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi5meXJlLXN0cmVhbS1zb3J0LXNlbGVjdGVkLCBodG1sOm5vdCguaXMtbW9iaWxlKSAmLmZ5cmUtc3RyZWFtLXNvcnQtc2VsZWN0ZWQ6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICAgICAgJjpiZWZvcmUgeyBvcGFjaXR5OiAwOyB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5meXJlLXN0cmVhbS1zb3J0LWJhciB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgIH1cclxuXHJcbiAgICAuZnlyZS1jb21tZW50LWFydGljbGUge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgLmZ5cmUtY29tbWVudC13cmFwcGVyIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWUxO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAzMHB4IDMwcHggMTA1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBwIHsgcGFkZGluZy1sZWZ0OiAwOyBwYWRkaW5nLXJpZ2h0OiAwOyB9XHJcblxyXG4gICAgICAgICYubW9kZXJhdG9yLXdyYXBwZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogIzIyMjtcclxuXHJcbiAgICAgICAgICAuZnlyZS1jb21tZW50LWhlYWQgeyBib3JkZXItYm90dG9tLWNvbG9yOiAjNTk1OTU5OyB9XHJcbiAgICAgICAgICAuZnlyZS1jb21tZW50LXVzZXJuYW1lIHsgY29sb3I6ICRjb2xvci1ncmVlbjsgfVxyXG4gICAgICAgICAgLmZ5cmUtY29tbWVudC1ib2R5IGEgeyBjb2xvcjogY29sb3IoJGNvbG9yLWdyZWVuIGIoMjUlKSk7IH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmZ5cmUtY29tbWVudC1yZXBsaWVzIHsgbWFyZ2luLXRvcDogMTBweDsgfVxyXG4gICAgICAuZnlyZS1jb21tZW50LXJlcGxpZXMtaW5kZW50IHsgbWFyZ2luLWxlZnQ6IDQwcHg7IH1cclxuICAgICAgLmZ5cmUtY29tbWVudC11c2VyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAzMHB4OyBsZWZ0OiAzMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5meXJlLWNvbW1lbnQtaGVhZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkN2Q3ZDc7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLmZ5cmUtY29tbWVudC11c2VybmFtZSwgLmZ5cmUtY29tbWVudC1kYXRlIHsgZGlzcGxheTogYmxvY2s7IH1cclxuICAgICAgLmZ5cmUtY29tbWVudC11c2VybmFtZSB7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBAbWl4aW4gZm9udC1zYW5zTjg7XHJcbiAgICAgICAgQG1peGluIGZvbnQtc2l6ZSAxOCwgMjQsIDUwO1xyXG4gICAgICB9XHJcbiAgICAgIC5meXJlLW1vZGVyYXRvciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMyMjI7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcclxuICAgICAgICBAbWl4aW4gZm9udC1zaXplIDExLCAyMDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgdG9wOiAtM3B4OyByaWdodDogLTNweDsgYm90dG9tOiAtM3B4OyBsZWZ0OiAtM3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuZnlyZS1jb21tZW50LWRhdGUge1xyXG4gICAgICAgIGNvbG9yOiAjNWY1ZjVmO1xyXG4gICAgICAgIEBtaXhpbiBmb250LXNhbnNONztcclxuICAgICAgfVxyXG4gICAgICAuZnlyZS1jb21tZW50LWJvZHkge31cclxuXHJcbiAgICAgIC5meXJlLWNvbW1lbnQtZm9vdGVyIHtcclxuICAgICAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICBAbWl4aW4gZm9udC1zYW5zTjc7XHJcbiAgICAgICAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6IGNvbG9yKCRjb2xvci1ibHVlIGIoMzAlKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5meXJlLWNvbW1lbnQtYWN0aW9ucyB7IGZsb2F0OiBsZWZ0OyB9XHJcbiAgICAgICAgLmZ5cmUtZmxhZy1saW5rIHsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XHJcbiAgICAgICAgJiA+IHNwYW4sICYgPiBhIHsgZmxvYXQ6IHJpZ2h0OyB9XHJcbiAgICAgICAgLmZ5cmUtY29tbWVudC1saWtlIHsgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5meXJlLWNvbW1lbnQtZGl2aWRlci5meXJlLWNvbW1lbnQtY29sbGFwc2UgPiBhLFxyXG4gICAgLmZ5cmUtY29tbWVudC1kaXZpZGVyLmZ5cmUtZGl2aWRlci1hY3RpdmUgPiBhIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgICAuZnlyZS1jb21tZW50LWRpdmlkZXIgPiBkaXYuZnlyZS1jb21tZW50LWRpdmlkZXIgeyBiYWNrZ3JvdW5kOiAjOTM5NTk2ICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICAuZnlyZSAuZnlyZS1jb21tZW50LWFydGljbGUgLmZ5cmUtY29tbWVudC13cmFwcGVyIHtcclxuICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgLmZ5cmUtY29tbWVudC11c2VyIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuYm9keS5hZ2VnYXRlLXBhc3NlZCB7XHJcbiAgICAuZnlyZSAuZnlyZS1lZGl0b3IgLmZ5cmUtcG9zdC1idXR0b24sXHJcbiAgICAuZnlyZSAuZnlyZS1jb21tZW50LWFydGljbGUgLmZ5cmUtY29tbWVudC1mb290ZXIgYSB7XHJcbiAgICAgICAgY3Vyc29yOiB1cmwoJ3dkX21pZGRsZS1maW5nZXItY3Vyc29yX25jc2EuY3VyJyksIHBvaW50ZXI7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gR2FtZSBJbmZvIENhbGxvdXRcclxuLmdhbWVpbmZvQ2FsbG91dCB7XHJcbiAgYmFja2dyb3VuZDogdXJsKCd3ZF9nYW1laW5mby1jYWxsb3V0LWJnX25jc2EucG5nJykgNTAlIDAgbm8tcmVwZWF0O1xyXG4gIG1heC1oZWlnaHQ6IDg3NnB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBAbWl4aW4gc2l6ZSAxMDB2dywgMTAwdmg7XHJcblxyXG4gICYtY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTsgbGVmdDogNTAlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgd2lkdGg6IDkwJTtcclxuXHJcbiAgICAuaGVyby10aXRsZSxcclxuICAgIC5oZXJvLWRlc2NyaXB0aW9uIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm8tdGl0bGUge1xyXG4gICAgICBAZXh0ZW5kIC5hbHBoYTtcclxuICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgICBwYWRkaW5nOiAzcHggMjBweDtcclxuICAgICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvLWRlc2NyaXB0aW9uIHtcclxuICAgICAgQGV4dGVuZCAuZ2FtbWE7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggNTBweDtcclxuICAgICAgQG1peGluIGZvbnQtc2Fuc040O1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBAbWVkaWEgKC0tbWlkKSB7XHJcbiAgICAuaGVyby10aXRsZSB7IEBtaXhpbiBmb250LXNpemUgNDU7IH1cclxuICAgIC5oZXJvLWRlc2NyaXB0aW9uIHsgQG1peGluIGZvbnQtc2l6ZSAzNjsgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhKC0tdGFibGV0U21hbGwpIHtcclxuICAgIC5oZXJvLXRpdGxlIHtcclxuICAgICAgQG1peGluIGZvbnQtc2l6ZSAzMDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVyby1kZXNjcmlwdGlvbiB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgQG1peGluIGZvbnQtc2l6ZSAyNCwgMjQ7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLy8gR2FtZSBJbmZvIE92ZXJ2aWV3XHJcbi5nYW1laW5mb092ZXJ2aWV3IHtcclxuICBtYXJnaW46IDAgYXV0byAxMjBweDtcclxuICBwYWRkaW5nOiAwIDAgMjIwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDU7XHJcblxyXG4gICY6YmVmb3JlLCAmOmFmdGVyIHtcclxuICAgIEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDsgbGVmdDogNTAlO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgfVxyXG5cclxuICAmOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2dhbWVpbmZvLW92ZXJ2aWV3LWxlZnRoYW5kX25jYXMucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNDE0cHg7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuICAgIEBtaXhpbiBzaXplIDgyOHB4LCA4MjVweDtcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2dhbWVpbmZvLW92ZXJ2aWV3LXJpZ2h0aGFuZF9uY2FzLnBuZycpIDAgMCBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICBtYXJnaW4tbGVmdDogNDE1cHg7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuICAgIEBtaXhpbiBzaXplIDgzMHB4LCA4MjdweDtcclxuICB9XHJcbiAgXHJcbiAgLmdhbWVpbmZvT3ZlcnZpZXctbGVmdCwgLmdhbWVpbmZvT3ZlcnZpZXctcmlnaHQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDIyMHB4O1xyXG4gIH1cclxuICAuZ2FtZWluZm9PdmVydmlldy1sZWZ0IHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tb3ZlcnZpZXctbGVmdGhhbmQtb3Zlcl9uY2FzLnBuZycpIDAgMCBuby1yZXBlYXQ7XHJcbiAgICBtYXJnaW4tbGVmdDogLTUyNXB4O1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgQG1peGluIHNpemUgMjQxcHgsIDY2cHg7XHJcbiAgfVxyXG4gIC5nYW1laW5mb092ZXJ2aWV3LXJpZ2h0IHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tb3ZlcnZpZXctcmlnaHRoYW5kLW92ZXJfbmNhcy5wbmcnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtNTI1cHg7XHJcbiAgICByaWdodDogNTAlO1xyXG4gICAgQG1peGluIHNpemUgMjM5cHgsIDc2cHg7XHJcbiAgfVxyXG4gICYtaGVhZGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2dhbWVpbmZvLW92ZXJ2aWV3LXRpdGxlX25jc2EucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNzJweCAxNzlweDtcclxuICAgICAgbWFyZ2luOiAwIGF1dG8gLTIwcHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgQG1peGluIHNpemUgMjcycHgsIDE3OXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBtaW4taGVpZ2h0OiAxMTZweDtcclxuICAgICAgcGFkZGluZzogNDBweCA3MHB4O1xyXG4gICAgICBAbWl4aW4gZm9udC1zYW5zTjg7XHJcblxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktNjA7XHJcbiAgICAgICAgQG1peGluIGZvbnQtc2Fuc040O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY29udGVudCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIG1hcmdpbjogMTVweCBhdXRvIDA7XHJcbiAgICBtYXgtd2lkdGg6IDEwNTBweDtcclxuICAgIG1pbi1oZWlnaHQ6IDMxMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc0FsdE40O1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxMSwgMjQ7XHJcbiAgfVxyXG4gICYtc2xpZGVzIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwYWRkaW5nOiA1MHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBAbWl4aW4gZm9udC1zaXplIDEyO1xyXG5cclxuICAgICAgaDQgeyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxyXG5cclxuICAgICAgJi5pcy1hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWNvbnRyb2xzIHtcclxuICAgIC5nYW1laW5mb092ZXJ2aWV3LWNvbnRyb2xzLXByZXYsIC5nYW1laW5mb092ZXJ2aWV3LWNvbnRyb2xzLW5leHQge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICAgIEBtaXhpbiBmb250LXNpemUgMzI7XHJcbiAgICAgIEBtaXhpbiBhcnJvd1N0eWxlcztcclxuXHJcbiAgICAgIGkgeyBAZXh0ZW5kIC51LXZpc3VhbGx5aGlkZGVuOyB9XHJcbiAgICB9XHJcbiAgICAuZ2FtZWluZm9PdmVydmlldy1jb250cm9scy1wcmV2IHtcclxuICAgICAgbGVmdDogMjBweDtcclxuICAgICAgQG1peGluIGFycm93TGVmdDtcclxuICAgIH1cclxuICAgIC5nYW1laW5mb092ZXJ2aWV3LWNvbnRyb2xzLW5leHQge1xyXG4gICAgICByaWdodDogMjBweDtcclxuICAgICAgQG1peGluIGFycm93UmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtYnVsbGV0cyB7IEBtaXhpbiBidWxsZXRzOyB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCd3ZF9nYW1laW5mby1vdmVydmlldy1tb2JpbGUtYmdfbmNzYS5wbmcnKSA1MCUgMTAwJSBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgIHBhZGRpbmctYm90dG9tOiAyNyU7XHJcblxyXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIsXHJcbiAgICAuZ2FtZWluZm9PdmVydmlldy1sZWZ0LCAuZ2FtZWluZm9PdmVydmlldy1yaWdodCB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAmLWhlYWRlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tb3ZlcnZpZXctaGVhZGVyLW1vYmlsZS1iZ19uY3NhLnBuZycpIDUwJSAwIG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgIGg0IHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29udGVudCB7IG1pbi1oZWlnaHQ6IDA7IH1cclxuICAgICYtc2xpZGVzIHsgcGFkZGluZzogMTVweCA4MHB4IDUwcHg7IH1cclxuICAgICYtYnVsbGV0cyB7IG1hcmdpbjogLTIwcHggYXV0byAwOyB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICAuZ2FtZWluZm9PdmVydmlldy1oZWFkZXIgaDQge1xyXG4gICAgICBtYXgtd2lkdGg6IDg1JTtcclxuICAgICAgcGFkZGluZzogMjBweDtcclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbW9iaWxlKSB7XHJcbiAgICBtYXJnaW46IDQwcHggYXV0bztcclxuICB9XHJcbn1cclxuXHJcbmJvZHkuYWdlZ2F0ZS1wYXNzZWQge1xyXG4gIC5nYW1laW5mb092ZXJ2aWV3IC5nYW1laW5mb092ZXJ2aWV3LWNvbnRyb2xzIHtcclxuICAgIC5nYW1laW5mb092ZXJ2aWV3LWNvbnRyb2xzLXByZXYsIC5nYW1laW5mb092ZXJ2aWV3LWNvbnRyb2xzLW5leHQge1xyXG4gICAgICBjdXJzb3I6IHVybCgnd2RfbWlkZGxlLWZpbmdlci1jdXJzb3JfbmNzYS5jdXInKSwgcG9pbnRlcjtcclxuICAgIH1cclxuICB9XHJcbn0iLCIvLyBNYXAgTW9kdWxlXHJcbi5nYW1laW5mb01hcCB7XHJcbiAgYmFja2dyb3VuZDogdXJsKCd3ZF9nYW1laW5mby1tYXAtYm9sdHMtMV9uY3NhLnBuZycpIDEwcHggNTAlIG5vLXJlcGVhdCwgdXJsKCd3ZF9nYW1laW5mby1tYXAtYm9sdHMtMl9uY3NhLnBuZycpIGNhbGMoMTAwJSArIDQwcHgpIDAgbm8tcmVwZWF0O1xyXG4gIHBhZGRpbmc6IDE2MHB4IDA7XHJcblxyXG4gICYtd3JhcCB7XHJcbiAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCd3ZF9nYW1laW5mby1tYXAtYmdfbmNzYS5qcGcnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJvcmRlcjogMTVweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtaW4td2lkdGg6IDY2MHB4O1xyXG4gICAgcGFkZGluZzogMzBweCAwO1xyXG4gICAgbWF4LXdpZHRoOiAxMTgwcHg7XHJcbiAgfVxyXG4gIGg0LCAmLWNvbnRlbnQge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBjbGVhcjogcmlnaHQ7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBtYXJnaW46IDIwcHggMDtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgd2lkdGg6IDMwJTtcclxuICB9XHJcbiAgaDQge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgbWluLWhlaWdodDogNjZweDtcclxuICAgIEBtaXhpbiBmb250LXNhbnNONztcclxuICB9XHJcbiAgJi1jb250ZW50IHtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMTIsIDI0O1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc0FsdE40O1xyXG5cclxuICAgIC5idG4ge1xyXG4gICAgICBtYXJnaW46IDQwcHggMTBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC53ZC1QbGF5ZXIge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuICAgIC53ZC1QbGF5ZXItcGxheSB7XHJcbiAgICAgIEBleHRlbmQgLmljb247XHJcbiAgICAgIEBleHRlbmQgLmljb24tcGxheTtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogLTNweDtcclxuICAgICAgICB0b3A6IC04cHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgICBAbWl4aW4gZm9udC1zaXplIDIyLCAyMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbWF4V2lkdGgpIHtcclxuICAgICAgJi13cmFwIHtcclxuICAgICAgICBtaW4td2lkdGg6IDA7XHJcbiAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS13aWRlKSB7XHJcbiAgICBoNCwgJi1jb250ZW50IHsgd2lkdGg6IDUwJTsgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQpIHtcclxuICAgICYtd3JhcCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nLXRvcDogMzUlO1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxuICAgICYtY29udGVudCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXRTbWFsbCkge1xyXG4gICAgLmdhbWVpbmZvTWFwLXdyYXAgeyBwYWRkaW5nLXRvcDogMjUlOyB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1vYmlsZSkge1xyXG4gICAgcGFkZGluZzogODBweCAwO1xyXG4gICAgXHJcbiAgICAuZ2FtZWluZm9NYXAtd3JhcCB7IGJhY2tncm91bmQtc2l6ZTogMTUwJSBhdXRvOyB9XHJcbiAgfVxyXG59IiwiLy8gR2FtZWluZm8gQ2hhcmFjdGVyc1xyXG4uZ2FtZWluZm9DaGFyYWN0ZXJzIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgXHJcbiAgJi5oYXMtZmlsZXMtb3BlbiAuZ2FtZWluZm9DaGFyYWN0ZXJzLWNvbnRyb2xzLFxyXG4gICYuaXMtc2luZ2xlIC5nYW1laW5mb0NoYXJhY3RlcnMtY29udHJvbHMgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gICYuaGFzLWZpbGVzLW9wZW4gLmdhbWVpbmZvQ2hhcmFjdGVycy1iZyB7XHJcbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKSBicmlnaHRuZXNzKDAuNjUpO1xyXG4gIH1cclxuXHJcbiAgJi5oYXMtZmlsZXMtb3BlbiB7XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLWxpc3QgLmNoYXJhY3Rlci5pcy1hY3RpdmU6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHdkX2dhbWVpbmZvLWNoYXJhY3RlcnMtY2xvc2UteF9uY3NhLnBuZyk7XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgIGFuaW1hdGlvbjogY2hhcmFjdGVyU2VsZWN0IDAuMnMgMSBmb3J3YXJkcztcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIGF1dG87XHJcbiAgICB9XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLWxpc3QgLmNoYXJhY3Rlci0td3JlbmNoLmlzLWFjdGl2ZTpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd3JlbmNoO1xyXG4gICAgfVxyXG4gICAgLmdhbWVpbmZvQ2hhcmFjdGVycy1saXN0IC5jaGFyYWN0ZXItLW1hcmN1cy5pcy1hY3RpdmU6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1hcmN1cztcclxuICAgIH1cclxuICAgIC5nYW1laW5mb0NoYXJhY3RlcnMtbGlzdCAuY2hhcmFjdGVyLS1zaXRhcmEuaXMtYWN0aXZlOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zaXRhcmE7XHJcbiAgICB9XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLWxpc3QgLmNoYXJhY3Rlci0tam9zaC5pcy1hY3RpdmU6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWpvc2g7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLWJnIHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tY2hhcmFjdGVycy1iZ19uY3NhLnBuZycpIDUwJSAwIG5vLXJlcGVhdDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDsgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIEBtaXhpbiBzaXplIDM0NTRweCwgODM4cHg7XHJcbiAgfVxyXG5cclxuICAmLW5hbWUge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIEBtaXhpbiBmb250LXNhbnNBbHRONDtcclxuICB9XHJcbiAgJi1tb2RhbCB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgaGVpZ2h0OiAzNDBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA5MjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICB9XHJcbiAgJi1jb250cm9scyBzcGFuIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMzY7XHJcbiAgICBAbWl4aW4gYXJyb3dTdHlsZXM7XHJcblxyXG4gICAgJltkYXRhLWRpcj1cInByZXZcIl0ge1xyXG4gICAgICBsZWZ0OiAtNDVweDtcclxuICAgICAgQG1peGluIGFycm93TGVmdDtcclxuICAgIH1cclxuICAgICZbZGF0YS1kaXI9XCJuZXh0XCJdIHtcclxuICAgICAgcmlnaHQ6IC00NXB4O1xyXG4gICAgICBAbWl4aW4gYXJyb3dSaWdodDtcclxuICAgIH1cclxuXHJcbiAgICBpIHsgQGV4dGVuZCAudS12aXN1YWxseWhpZGRlbjsgfVxyXG4gIH1cclxuICAmLWJpbyB7XHJcbiAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG4gICAgYW5pbWF0aW9uOiBtb3ZpbmctYm9yZGVyIDJzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2ZmZiA1MCUsIHRyYW5zcGFyZW50IDUwJSksXHJcbiAgICAgICAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgNTAlLCB0cmFuc3BhcmVudCA1MCUpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiA1MCUsIHRyYW5zcGFyZW50IDUwJSksXHJcbiAgICAgICAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDUwJSwgdHJhbnNwYXJlbnQgNTAlKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTBweCAxcHgsIDEwcHggMXB4LCAxcHggMTBweCwgMXB4IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAsIDAgMTAwJSwgMCAwLCAxMDAlIDA7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXgsIHJlcGVhdC14LCByZXBlYXQteSwgcmVwZWF0LXk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQG1peGluIHNpemUgMTAwJSwgMTAwJTtcclxuICB9XHJcbiAgJi1tZWRpYSwgJi1rZXl3b3JkcywgJi1zdW1tYXJ5IHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgfVxyXG4gICYtbWVkaWEge1xyXG4gICAgYm9yZGVyOiAxMHB4IHNvbGlkICRjb2xvci1ibGFjaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luOiAtNTBweCBhdXRvIDA7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgIGNhbnZhcyB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAwOyBsZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWtleXdvcmRzIHtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDEwcHggMTBweCAyMHB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIEBtaXhpbiBmb250LXNhbnNOODtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMzI7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAycHggNXB4IDNweDtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG4gICYtZGV0YWlscyB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpO1xyXG4gIH1cclxuICAmLXN1bW1hcnksICYtZmlsZSB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBwYWRkaW5nOiAyNXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gICYtc3VtbWFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxMTtcclxuICAgIEBtaXhpbiBmb250LXNhbnNBbHRONDtcclxuXHJcbiAgICBwOm5vdCg6bGFzdC1vZi10eXBlKSB7IG1hcmdpbi1ib3R0b206IDVweDsgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0td2lkZSkge1xyXG5cclxuICAgICYtYmcge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2dhbWVpbmZvLWNoYXJhY3RlcnMtYmctbW9iaWxlX25jc2EucG5nJykgNTAlIDAgbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi1tb2RhbCB7XHJcbiAgICAgIG1heC13aWR0aDogOTk5OXB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDQ1cHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgJi1uYW1lIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbiAgICAgIEBtaXhpbiBmb250LXNpemUgMjg7XHJcbiAgICB9XHJcbiAgICAmLWNvbnRyb2xzIHNwYW4ge1xyXG4gICAgICAmW2RhdGEtZGlyPVwicHJldlwiXSB7IGxlZnQ6IDA7IH1cclxuICAgICAgJltkYXRhLWRpcj1cIm5leHRcIl0geyByaWdodDogMDsgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTIwcHgpIHtcclxuICAgICYtc3VtbWFyeSwgJi1maWxlIHsgcGFkZGluZzogMTVweDsgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gODAlO1xyXG4gICAgXHJcbiAgICAmLW1lZGlhLCAmLWRldGFpbHMge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgICYtbWVkaWEge1xyXG4gICAgICBoZWlnaHQ6IDExMHB4O1xyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgKyA1MHB4KTtcclxuICAgICAgICBtYXgtd2lkdGg6IDk5OTlweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zdW1tYXJ5IHtcclxuICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcbiAgICAmLWZpbGUge1xyXG4gICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLWNvbnRyb2xzIHNwYW4ge1xyXG4gICAgICB0b3A6IGF1dG87IGJvdHRvbTogLTE4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLWJpbyB7IHBhZGRpbmc6IDZweDsgfVxyXG4gICAgLmdhbWVpbmZvQ2hhcmFjdGVycy1zdW1tYXJ5IHtcclxuICAgICAgcGFkZGluZzogMCAxMHB4IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1vYmlsZSkge1xyXG4gICAgLmdhbWVpbmZvQ2hhcmFjdGVycy1zdW1tYXJ5IHtcclxuICAgICAgQG1peGluIGZvbnQtc2l6ZSAxMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5nYW1laW5mb0NoYXJhY3RlcnMtbW9kYWwge1xyXG4gICYuY2hhcmFjdGVyLS10aGUtd3JlbmNoIHtcclxuICAgIC5nYW1laW5mb0NoYXJhY3RlcnMtbmFtZSB7IGNvbG9yOiAkY29sb3Itd3JlbmNoOyB9XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLW1lZGlhIHtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKCd3ZF9jaGFyYWN0ZXItbXVnLWJnLXdyZW5jaF9uY3NhLmpwZycpIDUwJSAwIG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIH1cclxuICAgIC5nYW1laW5mb0NoYXJhY3RlcnMtY29udHJvbHMgc3BhbjpiZWZvcmUgeyBjb2xvcjogJGNvbG9yLXdyZW5jaDsgfVxyXG4gIH1cclxuXHJcbiAgJi5jaGFyYWN0ZXItLWpvc2gge1xyXG4gICAgLmdhbWVpbmZvQ2hhcmFjdGVycy1uYW1lIHsgY29sb3I6ICRjb2xvci1qb3NoOyB9XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLW1lZGlhIHtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKCd3ZF9jaGFyYWN0ZXItbXVnLWJnLWpvc2hfbmNzYS5qcGcnKSA1MCUgMCBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICB9XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLWNvbnRyb2xzIHNwYW46YmVmb3JlIHsgY29sb3I6ICRjb2xvci1qb3NoOyB9XHJcbiAgfVxyXG5cclxuICAmLmNoYXJhY3Rlci0tbWFyY3VzLWhvbGxvd2F5IHtcclxuICAgIC5nYW1laW5mb0NoYXJhY3RlcnMtbmFtZSB7IGNvbG9yOiAkY29sb3ItbWFyY3VzOyB9XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLW1lZGlhIHtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKCd3ZF9jaGFyYWN0ZXItbXVnLWJnLW1hcmN1c19uY3NhLmpwZycpIDUwJSAwIG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIH1cclxuICAgIC5nYW1laW5mb0NoYXJhY3RlcnMtY29udHJvbHMgc3BhbjpiZWZvcmUgeyBjb2xvcjogJGNvbG9yLW1hcmN1czsgfVxyXG4gIH1cclxuXHJcbiAgJi5jaGFyYWN0ZXItLXNpdGFyYSB7XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLW5hbWUgeyBjb2xvcjogJGNvbG9yLXNpdGFyYTsgfVxyXG4gICAgLmdhbWVpbmZvQ2hhcmFjdGVycy1tZWRpYSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnd2RfY2hhcmFjdGVyLW11Zy1iZy1zaXRhcmFfbmNzYS5qcGcnKSA1MCUgMCBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICB9XHJcbiAgICAuZ2FtZWluZm9DaGFyYWN0ZXJzLWNvbnRyb2xzIHNwYW46YmVmb3JlIHsgY29sb3I6ICRjb2xvci1zaXRhcmE7IH1cclxuICB9XHJcbn1cclxuXHJcbi5nYW1laW5mb0NoYXJhY3RlcnMtbGlzdCB7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgbWFyZ2luOiAyMHB4IGF1dG8gNjBweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuXHJcbiAgLmNoYXJhY3RlciB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xyXG4gICAgbWluLXdpZHRoOiAyMDBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG4gICAgXHJcbiAgICAmOmJlZm9yZSwgJjphZnRlciB7IEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTsgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAvLyBib3JkZXI6IDNweCBkYXNoZWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgNTAlLCB0cmFuc3BhcmVudCA1MCUpLCBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgNTAlLCB0cmFuc3BhcmVudCA1MCUpLCBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiA1MCUsIHRyYW5zcGFyZW50IDUwJSk7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTBweCAycHgsIDEwcHggMnB4LCAycHggMTBweCwgMnB4IDEwcHg7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMCAxMDAlLCAwIDAsIDEwMCUgMDtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14LCAgcmVwZWF0LXgsICByZXBlYXQteSwgIHJlcGVhdC15O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xNnB4O1xyXG4gICAgICB0b3A6IDI1JTsgbGVmdDogNTAlO1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgc2NhbGUoMCk7XHJcbiAgICAgIEBtaXhpbiBzaXplIDM4cHgsIDM4cHg7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB0b3A6IC01cHg7IHJpZ2h0OiAtMjBweDsgYm90dG9tOiAwOyBsZWZ0OiAtMTVweDtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDApO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGFuaW1hdGlvbjogY2hhcmFjdGVyU2VsZWN0IDAuMnMgMSBmb3J3YXJkcywgbW92aW5nLWJvcmRlciAzcyAwLjI1cyBsaW5lYXIgaW5maW5pdGU7O1xyXG4gICAgICB9XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGFuaW1hdGlvbjogZ2xpdGNoQ2hhcmFjdGVyc1NoYWRvdyAuOHMgMiBsaW5lYXIgYWx0ZXJuYXRlLXJldmVyc2U7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuY2hhcmFjdGVyLS13cmVuY2g6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCd3ZF9jaGFyYWN0ZXItd3JlbmNoLXNpbG8tdjJfbmNzYS5wbmcnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICB9XHJcbiAgLmNoYXJhY3Rlci0tam9zaDphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ3dkX2NoYXJhY3Rlci1qb3NoLXNpbG9fbmNzYS5wbmcnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICB9XHJcbiAgLmNoYXJhY3Rlci0tbWFyY3VzOmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnd2RfY2hhcmFjdGVyLW1hcmN1cy1zaWxvLXYyX25jc2EucG5nJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgfVxyXG4gIC5jaGFyYWN0ZXItLXNpdGFyYTphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ3dkX2NoYXJhY3Rlci1zaXRhcmEtc2lsby12Ml9uY3NhLnBuZycpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gIH1cclxuICAuY2hhcmFjdGVyLWJpbywgLmNoYXJhY3Rlci1kb3NzaWVyIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gIGltZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7XHJcbiAgICBtYXJnaW46IDQwcHggYXV0byA2MHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5jaGFyYWN0ZXIge1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7IGxlZnQ6IDUwJTtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGxlZnQ6IDYwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuICAgICAgICBAbWl4aW4gc2l6ZSA4MCUsIDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICBpbWcgeyBtYXgtaGVpZ2h0OiAzMjBweDsgfVxyXG4gIH1cclxufVxyXG5cclxuLmdhbWVJbmZvQ2hhcmFjdGVycy1kb3NzaWVyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAuaGFzLWZpbGVzLW9wZW4gJiB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgLmlzLW1vYmlsZSAmIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7IGxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jaGFyYWN0ZXJXaW5kb3cge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICBib3JkZXI6IDEzcHggc29saWQgJGNvbG9yLWJsdWU7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIG1heC13aWR0aDogOTIwcHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDsgbGVmdDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gIHotaW5kZXg6IDEwMDtcclxuICBAbWl4aW4gc2l6ZSAxMDAlLCAzNDBweDtcclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiA1MDtcclxuICB9XHJcblxyXG4gICYtLWhhbGYgeyB3aWR0aDogNTAlOyB9XHJcbiAgXHJcbiAgJi1oZWFkZXIsICYtY29udGVudCB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1cclxuICAmLWhlYWRlciB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgY3Vyc29yOiBncmFiO1xyXG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgQG1peGluIHNpemUgMTAwJSwgNTBweDtcclxuXHJcbiAgICAmOmFjdGl2ZSB7IGN1cnNvcjogZ3JhYmJpbmc7IH1cclxuXHJcbiAgICBzdHJvbmcge1xyXG4gICAgICBAbWl4aW4gZm9udC1zYW5zQWx0TjQ7XHJcbiAgICAgIEBtaXhpbiBmb250LXNpemUgMTQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY2xvc2Uge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTsgcmlnaHQ6IDE1cHg7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMTY7XHJcbiAgICBAbWl4aW4gc2l6ZSAyNnB4LCAyNnB4O1xyXG4gIH1cclxuICAmLWNvbnRlbnQge1xyXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA5MHB4KTsgLy8gaGVhZGVyIGhlaWdodCArIG1hcmdpbiB0b3AvYm90dG9tXHJcbiAgICBtYXJnaW46IDIwcHggMzBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc040O1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxMywgMTg7XHJcblxyXG4gICAgcDpub3QoOmxhc3Qtb2YtdHlwZSkgeyBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XHJcbiAgfVxyXG5cclxuICAvLyBXaW5kb3cgVGhlbWVzXHJcbiAgLmNoYXJhY3Rlci0tdGhlLXdyZW5jaCAmIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXdyZW5jaDtcclxuICAgIFxyXG4gICAgLnBzLWNvbnRhaW5lciA+IC5wcy1zY3JvbGxiYXIteC1yYWlsID4gLnBzLXNjcm9sbGJhci14LFxyXG4gICAgLnBzLWNvbnRhaW5lciA+IC5wcy1zY3JvbGxiYXIteS1yYWlsID4gLnBzLXNjcm9sbGJhci15LFxyXG4gICAgLnBzLWNvbnRhaW5lcjpob3Zlci5wcy1pbi1zY3JvbGxpbmcucHMteSA+IC5wcy1zY3JvbGxiYXIteS1yYWlsID4gLnBzLXNjcm9sbGJhci15LFxyXG4gICAgLnBzLWNvbnRhaW5lcjpob3Zlci5wcy1pbi1zY3JvbGxpbmcucHMteCA+IC5wcy1zY3JvbGxiYXIteC1yYWlsID4gLnBzLXNjcm9sbGJhci14LFxyXG4gICAgJi1jbG9zZSB7IGJhY2tncm91bmQ6ICRjb2xvci13cmVuY2g7IH1cclxuICB9XHJcbiAgLmNoYXJhY3Rlci0tam9zaCAmIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWpvc2g7XHJcbiAgICBcclxuICAgIC5wcy1jb250YWluZXIgPiAucHMtc2Nyb2xsYmFyLXgtcmFpbCA+IC5wcy1zY3JvbGxiYXIteCxcclxuICAgIC5wcy1jb250YWluZXIgPiAucHMtc2Nyb2xsYmFyLXktcmFpbCA+IC5wcy1zY3JvbGxiYXIteSxcclxuICAgIC5wcy1jb250YWluZXI6aG92ZXIucHMtaW4tc2Nyb2xsaW5nLnBzLXkgPiAucHMtc2Nyb2xsYmFyLXktcmFpbCA+IC5wcy1zY3JvbGxiYXIteSxcclxuICAgIC5wcy1jb250YWluZXI6aG92ZXIucHMtaW4tc2Nyb2xsaW5nLnBzLXggPiAucHMtc2Nyb2xsYmFyLXgtcmFpbCA+IC5wcy1zY3JvbGxiYXIteCxcclxuICAgICYtY2xvc2UgeyBiYWNrZ3JvdW5kOiAkY29sb3Itam9zaDsgfVxyXG4gIH1cclxuICAuY2hhcmFjdGVyLS1zaXRhcmEgJiB7XHJcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1zaXRhcmE7XHJcblxyXG4gICAgLnBzLWNvbnRhaW5lciA+IC5wcy1zY3JvbGxiYXIteC1yYWlsID4gLnBzLXNjcm9sbGJhci14LFxyXG4gICAgLnBzLWNvbnRhaW5lciA+IC5wcy1zY3JvbGxiYXIteS1yYWlsID4gLnBzLXNjcm9sbGJhci15LFxyXG4gICAgLnBzLWNvbnRhaW5lcjpob3Zlci5wcy1pbi1zY3JvbGxpbmcucHMteSA+IC5wcy1zY3JvbGxiYXIteS1yYWlsID4gLnBzLXNjcm9sbGJhci15LFxyXG4gICAgLnBzLWNvbnRhaW5lcjpob3Zlci5wcy1pbi1zY3JvbGxpbmcucHMteCA+IC5wcy1zY3JvbGxiYXIteC1yYWlsID4gLnBzLXNjcm9sbGJhci14LFxyXG4gICAgJi1jbG9zZSB7IGJhY2tncm91bmQ6ICRjb2xvci1zaXRhcmE7IH1cclxuICB9XHJcbiAgLmNoYXJhY3Rlci0tbWFyY3VzICYge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItbWFyY3VzO1xyXG5cclxuICAgIC5wcy1jb250YWluZXIgPiAucHMtc2Nyb2xsYmFyLXgtcmFpbCA+IC5wcy1zY3JvbGxiYXIteCxcclxuICAgIC5wcy1jb250YWluZXIgPiAucHMtc2Nyb2xsYmFyLXktcmFpbCA+IC5wcy1zY3JvbGxiYXIteSxcclxuICAgIC5wcy1jb250YWluZXI6aG92ZXIucHMtaW4tc2Nyb2xsaW5nLnBzLXkgPiAucHMtc2Nyb2xsYmFyLXktcmFpbCA+IC5wcy1zY3JvbGxiYXIteSxcclxuICAgIC5wcy1jb250YWluZXI6aG92ZXIucHMtaW4tc2Nyb2xsaW5nLnBzLXggPiAucHMtc2Nyb2xsYmFyLXgtcmFpbCA+IC5wcy1zY3JvbGxiYXIteCxcclxuICAgICYtY2xvc2UgeyBiYWNrZ3JvdW5kOiAkY29sb3ItbWFyY3VzOyB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS13aWRlKSB7XHJcbiAgICAuaXMtbW9iaWxlICYge1xyXG4gICAgICAmLS1tZWRpYSB7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgLmlzLW1vYmlsZSAmIHtcclxuICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0b3A6IGF1dG87IGxlZnQ6IGF1dG87XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XHJcblxyXG4gICAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbjogMjBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICAgICYtLWhhbGYgeyB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IH1cclxuICAgICAgJi0tbWVkaWEge1xyXG4gICAgICAgIHRvcDogYXV0bzsgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XHJcblxyXG4gICAgICAgICYtY29udGVudCB7IG1hcmdpbjogMDsgcGFkZGluZy1yaWdodDogMDsgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jaGFyYWN0ZXJXaW5kb3ctLW1lZGlhIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgdG9wOiAzNjBweDsgcmlnaHQ6IDA7IGxlZnQ6IGF1dG87XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XHJcblxyXG4gICY6aG92ZXIgLmNoYXJhY3RlcldpbmRvdy0tbWVkaWFDb250cm9scyB7IG9wYWNpdHk6IDE7IH1cclxuXHJcbiAgLmNoYXJhY3RlcldpbmRvdy1jb250ZW50IHtcclxuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIC5tZWRpYS1pdGVtIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDsgbGVmdDogMDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgJltkYXRhLXR5cGU9XCJ2aWRlb1wiXSBhIHtcclxuICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xyXG4gICAgICAgIEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTsgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICB9XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAZXh0ZW5kIC5pY29uO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MGNcIjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgQG1peGluIGZvbnQtc2l6ZSAzODtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcigkY29sb3ItYmxhY2sgYSg1MCUpKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBAbWl4aW4gc2l6ZSA1NnB4LCA1NnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbWcgeyB3aWR0aDogMTAwJTsgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS13aWRlKSB7XHJcbiAgICBcclxuICB9XHJcbn1cclxuLmNoYXJhY3RlcldpbmRvdy0tbWVkaWFDb250cm9scyB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gIC5pcy1tb2JpbGUgJiB7IG9wYWNpdHk6IDE7IH1cclxuXHJcbiAgLm1lZGlhQ29udHJvbHMtcHJldiwgLm1lZGlhQ29udHJvbHMtbmV4dCB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRleHQtc2hhZG93OiBjb2xvcigkY29sb3ItYmxhY2sgYSgzMCUpKSAwIDFweCAycHg7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIEBtaXhpbiBzaXplIDIycHgsIDI4cHg7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDI4O1xyXG4gIH1cclxuICAubWVkaWFDb250cm9scy1wcmV2IHtcclxuICAgIGxlZnQ6IDEwcHg7XHJcbiAgfVxyXG4gIC5tZWRpYUNvbnRyb2xzLW5leHQge1xyXG4gICAgcmlnaHQ6IDEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5ib2R5LmFnZWdhdGUtcGFzc2VkIHtcclxuICAuZ2FtZWluZm9DaGFyYWN0ZXJzIC5nYW1laW5mb0NoYXJhY3RlcnMtY29udHJvbHMgc3BhbixcclxuICAuZ2FtZWluZm9DaGFyYWN0ZXJzLWxpc3QgLmNoYXJhY3RlcixcclxuICAuY2Fyb3VzZWwgLmNhcm91c2VsX2NvbnRhaW5lciAuY2Fyb3VzZWxfdGh1bWJuYWlscyAuY2Fyb3VzZWxfaXRlbXMgLmNhcm91c2VsX2l0ZW0sXHJcbiAgLmNoYXJhY3RlcldpbmRvdyAuY2hhcmFjdGVyV2luZG93LWNsb3NlLFxyXG4gIC5jaGFyYWN0ZXJXaW5kb3ctLW1lZGlhQ29udHJvbHMgLm1lZGlhQ29udHJvbHMtcHJldixcclxuICAuY2hhcmFjdGVyV2luZG93LS1tZWRpYUNvbnRyb2xzIC5tZWRpYUNvbnRyb2xzLW5leHQge1xyXG4gICAgY3Vyc29yOiB1cmwoJ3dkX21pZGRsZS1maW5nZXItY3Vyc29yX25jc2EuY3VyJyksIHBvaW50ZXI7XHJcbiAgfVxyXG59XHJcbiIsIi53ZC1SZXNlcnZlQ2FsbG91dCB7XHJcbiAgXHRiYWNrZ3JvdW5kOiAgdXJsKCd3ZF9kaWdpdGFsLXdhdmUtYmVmb3JlX25jc2EucG5nJykgMCAwIHJlcGVhdC14LCAkY29sb3ItYmx1ZTtcclxuICBcdGJhY2tncm91bmQtc2l6ZTogYXV0bztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMjAwcHggMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgLndkLVJlc2VydmVDYWxsb3V0LS1jZW50ZXIge1xyXG4gICAgXHRAZXh0ZW5kIC5jb250YWluZXI7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xyXG4gICAgICBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tcmVzZXJ2ZS1za3VsbHNfbmNzYS5wbmcnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgIGJvdHRvbTogLTUwcHg7IGxlZnQ6IDUwJTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC00OTBweDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgICAgIHotaW5kZXg6ICR6SW5kZXgtMi1yZXNlcnZlQ2FsbG91dFBzZXVkb0JHcztcclxuICAgICAgQG1peGluIHNpemUgNDg5cHgsIDIzMnB4O1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tcmVzZXJ2ZS1naG9zdF9uY3NhLnBuZycpIDAgMCBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgdG9wOiAyNSU7IGxlZnQ6IDUwJTtcclxuICAgICAgbWFyZ2luLXRvcDogLTUwcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjQwcHg7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgICB6LWluZGV4OiAkekluZGV4LTEtcmVzZXJ2ZUNhbGxvdXRQc2V1ZG9CR3M7XHJcbiAgICAgIEBtaXhpbiBzaXplIDE1OHB4LCAxNTNweDtcclxuICAgIH1cclxuXHJcbiAgICAucmVzZXJ2ZUNhbGxvdXQtYm94YXJ0IHtcclxuICAgIFx0ZmxvYXQ6IGxlZnQ7XHJcbiAgXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBcdFx0d2lkdGg6IDMzJTtcclxuICAgIFx0ei1pbmRleDogJHpJbmRleC0yLS1yZXNlcnZlQ2FsbG91dENvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnJlc2VydmVDYWxsb3V0LWluZm8ge1xyXG4gIFx0XHRmbG9hdDogbGVmdDtcclxuICBcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIFx0XHR3aWR0aDogNDUlO1xyXG5cclxuICBcdFx0JjpiZWZvcmUsXHJcbiAgXHRcdCY6YWZ0ZXIge1xyXG4gIFx0XHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0JjpiZWZvcmUge1xyXG4gIFx0XHRcdGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tcmVzZXJ2ZS1za3VsbF9uY3NhLnBuZycpIDIxMHB4IDQ1cHggbm8tcmVwZWF0LCB1cmwoJ3dkX2dhbWVpbmZvLXJlc2VydmUtZGVhZHNlY19uY3NhLnBuZycpIDAgMCBuby1yZXBlYXQ7XHJcbiAgXHRcdFx0bGVmdDogLTE0MHB4O1xyXG4gIFx0XHRcdHRvcDogNzBweDtcclxuICBcdFx0XHR6LWluZGV4OiAkekluZGV4LTEtcmVzZXJ2ZUNhbGxvdXRQc2V1ZG9CR3M7XHJcbiAgXHRcdFx0QG1peGluIHNpemUgOTcwcHgsIDc0NXB4O1xyXG4gIFx0XHR9XHJcbiAgICB9XHJcblxyXG4gICAgLnJlc2VydmVDYWxsb3V0LWhlYWRlcixcclxuICAgIC5yZXNlcnZlQ2FsbG91dC1ib2R5IHtcclxuICAgIFx0YmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIC5yZXNlcnZlQ2FsbG91dC1oZWFkZXIge1xyXG5cdFx0cGFkZGluZzogMjBweCAyNXB4IDVweCAyNXB4O1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ei1pbmRleDogJHpJbmRleC0zLS1yZXNlcnZlQ2FsbG91dEhlYWQ7XHJcblxyXG5cdFx0JjpiZWZvcmUsXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKCd3ZF9nYW1laW5mby1yZXNlcnZlLXJlYXBlcl9uY3NhLnBuZycpIDAgMCBuby1yZXBlYXQ7XHJcblx0XHRcdHJpZ2h0OiAtMjAzcHg7XHJcbiAgICBcdFx0dG9wOiAtMTE0cHg7XHJcblx0XHRcdEBtaXhpbiBzaXplIDM1MnB4LCA1NjhweDtcclxuXHRcdH1cclxuXHJcblx0XHRoNSxcclxuXHRcdGgxIHtcclxuXHRcdFx0bWFyZ2luOiAwO1x0XHJcblx0XHR9XHJcblxyXG5cdFx0aDUge1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLWJsdWU7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IC01cHg7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMjJweDtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0QG1peGluIGZvbnQtc2Fuc040O1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zaXplIDEyLCAxMiwgMjAwO1xyXG5cdFx0fVxyXG4gICAgfVxyXG5cclxuICAgIC5yZXNlcnZlQ2FsbG91dC1ib2R5IHtcclxuICBcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuICBcdFx0cGFkZGluZzogMjVweCAyNXB4IDQwcHggMjVweDtcclxuICBcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBcdHotaW5kZXg6ICR6SW5kZXgtMi0tcmVzZXJ2ZUNhbGxvdXRDb250ZW50O1xyXG5cclxuICBcdFx0cCB7XHJcbiAgXHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuICBcdFx0XHRtYXJnaW46IDA7XHJcbiAgXHRcdFx0QG1peGluIGZvbnQtc2Fuc0FsdE40O1xyXG4gIFx0XHRcdEBtaXhpbiBmb250LXNpemUgMTEsIDI0LCAwO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQuYnRuIHtcclxuICBcdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQmOmJlZm9yZSxcclxuICBcdFx0JjphZnRlciB7XHJcbiAgXHRcdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gIFx0XHR9XHJcbiAgICB9XHJcblxyXG4gICAgLnJlc2VydmVDYWxsb3V0LW1vcmUge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IC0yNzRweDtcclxuICAgIFx0dG9wOiAtNDhweDtcclxuICAgIFx0ei1pbmRleDogJHpJbmRleC0yLS1yZXNlcnZlQ2FsbG91dENvbnRlbnQ7XHJcblx0XHRAbWl4aW4gc2l6ZSAxNzVweCwgNDU1cHg7XHJcblxyXG5cdFx0Ji5zaG93SGFuZCB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tc3ByaXRlLUktcmVzZXJ2ZV9uY3NhLnBuZycpIC0zMzI1cHggMCBuby1yZXBlYXQ7XHJcblx0XHQgICAgYW5pbWF0aW9uOiBwbGF5U3ByaXRlIDAuOHMgc3RlcHMoMTksIGVuZCkgMTtcclxuXHRcdCAgICBAbWl4aW4gc2l6ZSAxNzBweCwgNDU1cHhcclxuXHRcdH1cclxuICAgICYuc2hvd2luZyB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tc3ByaXRlLUlJLXJlc2VydmVfbmNzYS5wbmcnKSA1cHggMCBuby1yZXBlYXQ7XHJcbiAgICB9XHJcblxyXG5cdFx0Ji5oaWRlSGFuZCB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tc3ByaXRlLUlJLXJlc2VydmVfbmNzYS5wbmcnKSAtMzUwMHB4IDAgbm8tcmVwZWF0O1xyXG5cdFx0XHRhbmltYXRpb246IHBsYXlTcHJpdGUgMC42cyBzdGVwcygxOSwgZW5kKSAxO1xyXG5cdFx0ICAgIEBtaXhpbiBzaXplIDE3MHB4LCA0NTVweFxyXG5cdFx0fVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAoLS13aWRlKSB7XHJcbiAgICAgICY6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgICBcdC5yZXNlcnZlQ2FsbG91dC1ib3hhcnQsXHJcbiAgICBcdC5yZXNlcnZlQ2FsbG91dC1pbmZvIHtcclxuICAgIFx0XHRjbGVhcjogYm90aDtcclxuICAgIFx0XHRmbG9hdDogbm9uZTtcclxuICAgIFx0XHRtYXJnaW46IDAgYXV0bztcclxuICAgIFx0XHR3aWR0aDogODAlO1xyXG4gICAgXHR9XHJcblxyXG4gICAgXHQucmVzZXJ2ZUNhbGxvdXQtYm94YXJ0IHtcclxuICAgIFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIFx0fVxyXG5cclxuICAgIFx0LnJlc2VydmVDYWxsb3V0LWhlYWRlciB7XHJcbiAgICBcdFx0JjpiZWZvcmUge1xyXG4gICAgXHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgXHRcdFx0cmlnaHQ6IC01NHB4O1xyXG4gICAgXHRcdFx0dG9wOiA0NXB4O1xyXG4gICAgXHRcdFx0QG1peGluIHNpemUgMjAycHgsIDQxOHB4O1xyXG4gICAgXHRcdH1cclxuICAgIFx0fVxyXG5cclxuICAgIFx0LnJlc2VydmVDYWxsb3V0LWJvZHkge1xyXG4gICAgXHRcdHAge1xyXG4gICAgXHRcdFx0cGFkZGluZy1yaWdodDogNTBweDtcclxuICAgIFx0XHR9XHJcbiAgICBcdH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKC0tbW9iaWxlKSB7XHJcbiAgICBcdC5yZXNlcnZlQ2FsbG91dC1oZWFkZXIge1xyXG4gICAgXHRcdCY6YmVmb3JlIHtcclxuICAgIFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcbiAgICBcdFx0fVxyXG4gICAgXHR9XHJcblxyXG4gICAgXHQucmVzZXJ2ZUNhbGxvdXQtYm9keSB7XHJcbiAgICBcdFx0cCB7XHJcbiAgICBcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgXHRcdH1cclxuICAgIFx0fVxyXG4gICAgfVxyXG59IiwiLy8gQnV5IFBhZ2VcclxuLnBhZ2UtcmVzZXJ2ZSAjbWFpbiB7XHJcbiAgcGFkZGluZy10b3A6IDUwMHB4O1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQpIHsgcGFkZGluZy10b3A6IDM4MHB4OyB9XHJcbn1cclxuLnJlZ2lvblJlc2VydmUge1xyXG4gIGJvcmRlcjogMTVweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBtYXgtd2lkdGg6IDk4MHB4O1xyXG4gIHBhZGRpbmc6IDEwMHB4IDUwcHggNTBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudDtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnd2RfcmVzZXJ2ZS1oZWFkZXJfbmNzYS5wbmcnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMTYxcHggNTczcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiA1MCU7IGJvdHRvbTogY2FsYygxMDAlIC0gMTIycHgpO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuICAgIEBtaXhpbiBzaXplIDExNjFweCwgNTczcHg7XHJcbiAgfVxyXG5cclxuICAucmVnaW9uUmVzZXJ2ZS1oZWFkaW5nIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogY2FsYygxMDAlICsgMjVweCk7IGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBcclxuICAgIGgxLCBoMyB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuICAgIGgxIHtcclxuICAgICAgY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICAgICAgcGFkZGluZzogMTVweCAyNXB4IDA7XHJcbiAgICAgIEBtaXhpbiBmb250LXNhbnNOODtcclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgcGFkZGluZzogMTBweCA0MHB4O1xyXG4gICAgICBAbWl4aW4gZm9udC1zYW5zTjQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLWhlYWRlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWdyZXktNjA7XHJcbiAgICBtYXJnaW46IDIwcHggYXV0bztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDE0LCAyMDtcclxuICAgIFxyXG4gICAgc3Ryb25nIHsgQG1peGluIGZvbnQtc2Fuc044OyB9XHJcbiAgICBzcGFuIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKCRjb2xvci1ncmV5LTQwIGEoNTAlKSk7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHdpZHRoOiA1MDBweDtcclxuICAgICAgfVxyXG4gICAgICAmOmJlZm9yZSB7IGxlZnQ6IGNhbGMoMTAwJSArIDE1cHgpOyB9XHJcbiAgICAgICY6YWZ0ZXIgeyByaWdodDogY2FsYygxMDAlICsgMTVweCk7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jdXN0b20tZHJvcGRvd24geyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk4MHB4KSB7XHJcbiAgICB3aWR0aDogOTUlO1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQpIHtcclxuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xyXG4gICAgXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogODEzcHggMzQwcHg7XHJcbiAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gNjZweCk7XHJcbiAgICAgIEBtaXhpbiBzaXplIDgxM3B4LCAzNDBweDtcclxuICAgIH1cclxuICAgIC5yZWdpb25SZXNlcnZlLWhlYWRpbmcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgIGgxIHsgQG1peGluIGZvbnQtc2l6ZSAzODsgfVxyXG4gICAgICBoMyB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICAgICAgQG1peGluIGZvbnQtc2l6ZSAzMjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXRTbWFsbCkge1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNTgxcHggMjQzcHg7XHJcbiAgICAgIEBtaXhpbiBzaXplIDU4MXB4LCAyNDNweDtcclxuICAgIH1cclxuXHJcbiAgICAuZGstc2VsZWN0LmN1c3RvbS1kcm9wZG93biB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgfVxyXG59XHJcblxyXG4ucmVnaW9uUmVzZXJ2ZS1ib3hhcnQge1xyXG4gIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1ibHVlO1xyXG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgcGFkZGluZzogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgXHJcbiAgJi1jb250ZW50IHtcclxuICAgIG1pbi1oZWlnaHQ6IDI3MHB4O1xyXG4gICAgcGFkZGluZzogNjBweCAwO1xyXG5cclxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJTsgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7IGJvcmRlcjogMDsgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7IGRpc3BsYXk6IG5vbmU7IH1cclxufVxyXG4ucmVnaW9uUmVzZXJ2ZS1tb2JpbGVCb3hhcnQge1xyXG4gIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBtYXJnaW46IDEwcHggYXV0byAzMHB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aWR0aDogOTUlO1xyXG5cclxuICBpbWcgeyBtYXgtd2lkdGg6IDEwMCU7IH1cclxuICAucmVnaW9uUmVzZXJ2ZS1tb2JpbGVQcm9tbyB7XHJcbiAgICBwIHtcclxuICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICB9XHJcbiAgXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0U21hbGwpIHsgZGlzcGxheTogYmxvY2s7IH1cclxufVxyXG4ucmVnaW9uUmVzZXJ2ZS1kZXNjcmlwdGlvbiB7XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gIHBhZGRpbmc6IDA7XHJcblxyXG4gIHAge1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmLmlzLWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH1cclxufVxyXG5cclxuLnJlZ2lvblJlc2VydmUtZWRpdGlvbnNMaXN0LFxyXG4ucmVnaW9uUmVzZXJ2ZS1wbGF0Zm9ybXNMaXN0IHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7IGRpc3BsYXk6IG5vbmU7IH1cclxufVxyXG5cclxuLnJlZ2lvblJlc2VydmUtZWRpdGlvbnNMaXN0IHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogNXB4IDVweCAwO1xyXG4gICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gMTBweCk7XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLWluLW91dCwgY29sb3IgMC4ycyBlYXNlLWluLW91dDtcclxuICAgIEBtaXhpbiBmb250LXNhbnNONztcclxuICAgIEBtaXhpbiBmb250LXNpemUgMTgsIDQ1O1xyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XHJcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjNzO1xyXG4gICAgfVxyXG5cclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgIHNwYW4geyBib3JkZXItY29sb3I6ICRjb2xvci1ibHVlOyB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICYuaXMtYWN0aXZlOmhvdmVyLFxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgbGkge1xyXG4gICAgICBtYXJnaW46IDVweDtcclxuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucmVnaW9uUmVzZXJ2ZS1wbGF0Zm9ybXMsIC5yZWdpb25SZXNlcnZlLW9yZGVyIHsgZmxvYXQ6IGxlZnQ7IH1cclxuLnJlZ2lvblJlc2VydmUtcGxhdGZvcm1zIHtcclxuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gIG1hcmdpbi1yaWdodDogMzBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IGNhbGMoNjAlIC0gMzBweCk7XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuLnJlZ2lvblJlc2VydmUtcGxhdGZvcm1zTGlzdCB7XHJcbiAgQGV4dGVuZCAudS1jbGVhcmZpeDtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblxyXG4gIGxpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luOiAwIDVweDtcclxuICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDEwcHgpO1xyXG4gIH1cclxuICBhIHtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLWJsdWU7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLWluLW91dDtcclxuXHJcbiAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogY29sb3IoJGNvbG9yLWJsdWUgYSg1MCUpKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5pcy1hY3RpdmUsICYuaXMtYWN0aXZlOmhvdmVyIHsgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7IH1cclxuICAgICYuaXMtZGlzYWJsZWQsICYuaXMtZGlzYWJsZWQ6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgY3Vyc29yOiBkaXNhYmxlZDtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCd3ZF9yZXNlcnZlLXBsYXRmb3Jtcy1zcHJpdGVfbmNzYS5wbmcnKTtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcbiAgICAmLnBzNCBzcGFuIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTBweDtcclxuICAgICAgQG1peGluIHNpemUgOThweCwgMjNweDtcclxuICAgIH1cclxuICAgICYueGJveC1vbmUgc3BhbiB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI2cHg7XHJcbiAgICAgIEBtaXhpbiBzaXplIDk3cHgsIDIzcHg7XHJcbiAgICB9XHJcbiAgICAmLnBjIHNwYW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHJcbiAgICAgIEBtaXhpbiBzaXplIDI4cHgsIDIzcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucmVnaW9uUmVzZXJ2ZS1vcmRlciB7XHJcbiAgQGV4dGVuZCAudS1jbGVhcmZpeDtcclxuICBtYXJnaW4tbGVmdDogMzBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IGNhbGMoNDAlIC0gMzBweCk7XHJcblxyXG4gIGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAmLmlzLWRpc2FibGVkIHtcclxuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgfVxyXG4gIH1cclxuICAuYnRuLWFkZFRvQ2FydCB7XHJcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xyXG4gICAgbWF4LXdpZHRoOiA3NSU7XHJcblxyXG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcblxyXG4gICAgLmJ0bi10ZXh0IHtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBmaXggZm9yIElFLCBoYXMgdG8gYmUgaW5saW5lIGJveCBvciBob3ZlciBlZmZlY3QgYnVncyBvdXRcclxuICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICBtYXJnaW46IDEwcHggYXV0bztcclxuICAgIH1cclxuICB9XHJcbiAgLnVwbGF5LWNhcnQge1xyXG4gICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDE0O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICAucmVnaW9uUmVzZXJ2ZS1oZWFkZXIgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgICAuYnRuLWFkZFRvQ2FydCwgLnVwbGF5LWNhcnQge1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG4gICAgICBtYXJnaW46IDVweDtcclxuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucmVnaW9uUmVzZXJ2ZS1yZXRhaWxlcnMge1xyXG4gIGNsZWFyOiBib3RoO1xyXG5cclxuICB1bCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIgbGkge1xyXG4gICAgICBvcGFjaXR5OiAwLjY1O1xyXG4gICAgICAmOmhvdmVyIHsgb3BhY2l0eTogMTsgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luOiAxMHB4O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgd2lkdGg6IDIwJTtcclxuICB9XHJcblxyXG4gIGltZyB7IG1heC13aWR0aDogMTAwJTsgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQpIHtcclxuICAgIGxpIHsgd2lkdGg6IDI2JTsgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXRTbWFsbCkge1xyXG4gICAgbGkgeyB3aWR0aDogNDAlICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbn1cclxuXHJcbi5tb2RhbC1idXlXcmFwIHtcclxuICBiYWNrZ3JvdW5kOiBjb2xvcigkY29sb3ItYmxhY2sgYSg4NSUpKTtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwOyBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6ICR6SW5kZXgtOS0tbW9kYWxCdXk7XHJcbiAgQG1peGluIHNpemUgMTAwJSwgMTAwJTtcclxuXHJcbiAgLmNsb3Nle1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCd3ZF9idXlfY2xvc2VfbmNzYS5naWYnKTtcclxuICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MHB4O1xyXG4gICAgbGVmdDogY2FsYyg1MCUgKyA0NTJweCk7XHJcbiAgfVxyXG5cclxuICAuZm9jdXN7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2J1eV9mb2N1c19uY3NhLmdpZicpO1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwcHg7XHJcbiAgICBsZWZ0OiBjYWxjKDUwJSArIDQyOXB4KTtcclxuICB9XHJcblxyXG4gIGlmcmFtZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDc1cHg7IGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgQG1peGluIHNpemUgOTQwcHgsIDU2MHB4O1xyXG4gIH1cclxufSIsIi8vIFJlc2VydmUgUGFnZSBQcm9tb3NcclxuLnJlZ2lvblJlc2VydmVQcm9tb3Mge1xyXG4gIGxvc3QtY2VudGVyOiAxMjAwcHg7XHJcbiAgbWFyZ2luOiA5MHB4IGF1dG8gNTBweDtcclxuICBcclxuICAuc3BhbjYge1xyXG4gICAgbG9zdC1jb2x1bW46IDEvMiAyIDgwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMDsgLy8gb3ZlcnJpZGUgaW5oZXJpdGVkIGxheW91dCBzdHlsZXNcclxuICB9XHJcbiAgJi1wcm9tbyB7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxNCwgMjQ7XHJcbiAgICBAbWl4aW4gZm9udC1zYW5zQWx0TjQ7XHJcbiAgfVxyXG4gICYtcHJvbW9NZWRpYSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICBAbWl4aW4gc2l6ZSAxMDAlLCBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLXByb21vQ29udGVudCB7XHJcbiAgICBtYXJnaW46IDEwcHggYXV0bztcclxuICAgIHBhZGRpbmc6IDAgNXB4O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbWF4V2lkdGgpIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7XHJcbiAgICAuc3BhbjYge1xyXG4gICAgICBsb3N0LWNvbHVtbjogMS8xIDEgMDtcclxuICAgIH1cclxuICAgIC5zcGFuNjpudGgtY2hpbGQoMikgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgfVxyXG59XHJcblxyXG4ucHJvbW9VYml3b3Jrc2hvcCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCd3ZF9wcm9tby11Yml3b3Jrc2hvcC1iZ19uY3NhLnBuZycpLCB1cmwoJ3dkX2RpZ2l0YWwtd2F2ZS1iZWZvcmVfbmNzYS5wbmcnKTtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDUwJSArIDQxMHB4KSAxMDAlLCAwIDA7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgcmVwZWF0LXg7XHJcbiAgXHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG4gICAgcGFkZGluZzogMjAwcHggMCAxMjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX3Byb21vLXNrZWxldG9uX25jc2EucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMDsgcmlnaHQ6IC0yNjBweDtcclxuICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgIEBtaXhpbiBzaXplIDQ2M3B4LCA0OTlweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaXMtaG92ZXJpbmcge1xyXG4gICAgLmNvbnRhaW5lcjpiZWZvcmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00OTlweDsgfVxyXG4gICAgLnByb21vVWJpd29ya3Nob3AtY29udGVudDpiZWZvcmUge1xyXG4gICAgICB0b3A6IC05MHB4O1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAmLW1lZGlhLCAmLWNvbnRlbnQge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuICAmLW1lZGlhIHtcclxuICAgIG1hcmdpbi1yaWdodDogMzBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDMwcHgpO1xyXG5cclxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJTsgfVxyXG4gIH1cclxuICAmLWNvbnRlbnQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDQwJTtcclxuICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnd2RfdWJpd29ya3Nob3AtY2F0X25jYXMucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdG9wOiAwOyByaWdodDogMTAlO1xyXG4gICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcywgb3BhY2l0eSAwLjFzO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgQG1peGluIHNpemUgODlweCwgOTBweDtcclxuICAgIH1cclxuXHJcbiAgICBoNCB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMzBweDtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG5cclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBAbWl4aW4gZm9udC1zaXplIDEyLCAzMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWJsdXJiIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgcGFkZGluZzogMzVweDtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMTEsIDI0O1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc0FsdE40O1xyXG5cclxuICAgIHAgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XHJcbiAgICAuYnRuIHsgbWFyZ2luLXRvcDogMzBweDsgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbWF4V2lkdGgpIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoNTAlICsgMjAwcHgpIDEwMCUsIDAgMDtcclxuICAgIFxyXG4gICAgLmNvbnRhaW5lcjpiZWZvcmUgeyByaWdodDogLTE2MHB4OyB9XHJcbiAgICAmLW1lZGlhIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICB3aWR0aDogNDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0td2lkZSkge1xyXG4gICAgJi1tZWRpYSwgJi1jb250ZW50IHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB3aWR0aDogOTUlO1xyXG4gICAgfVxyXG4gICAgJi1jb250ZW50IHsgbWFyZ2luLXRvcDogMzBweDsgfVxyXG4gICAgJi1jb250ZW50IGg0LCAmLWJsdXJiIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMjgwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQpIHtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjAwcHg7XHJcbiAgICAgICY6YmVmb3JlIHsgcmlnaHQ6IC0yMjBweDsgfVxyXG4gICAgfVxyXG4gICAgJi1tZWRpYSwgJi1jb250ZW50IHtcclxuICAgICAgd2lkdGg6IDgwJTtcclxuICAgIH1cclxuICAgICYtY29udGVudCBoNCB7IHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cclxuICAgICYtYmx1cmIgeyBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQwcHgpIHtcclxuICAgIC5jb250YWluZXI6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgJi1jb250ZW50IGg0IHsgZm9udC1zaXplOiAyNHB4OyB9XHJcbiAgICAmLWJsdXJiIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcclxuXHJcbiAgICAgIC5idG4ge1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufSIsIi53ZC1OZXdzSW50cm8ge1xyXG5cdEBleHRlbmQgJWJhbm5lckhlYWRlci1jb250YWluZXI7XHJcblx0YmFja2dyb3VuZDogdXJsKCd3ZF9uZXdzLWludHJvX25jc2EucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCd3ZF9uZXdzLWludHJvLWJlZm9yZV9uY3NhLnBuZycpIDAgMCBuby1yZXBlYXQ7XHJcblx0XHRsZWZ0OiAtMjhweDtcclxuXHRcdHRvcDogMjkxcHg7XHJcblx0XHRAbWl4aW4gc2l6ZSA5NnB4LCA2NHB4O1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJ3dkX25ld3MtaW50cm8tYWZ0ZXJfbmNzYS5wbmcnKSAwIDAgbm8tcmVwZWF0O1xyXG5cdFx0cmlnaHQ6IC02MnB4O1xyXG4gICAgXHR0b3A6IDE5OHB4O1xyXG5cdFx0QG1peGluIHNpemUgMTUzcHgsIDEwMnB4O1xyXG5cdH1cclxuXHJcblx0Lmhlcm8tdGl0bGUge1xyXG5cdFx0Y29sb3I6ICRjb2xvci1vcmFuZ2U7XHJcblx0fVxyXG5cclxuXHQuYWxpZ25DZW50ZXIge1xyXG5cdFx0aGVpZ2h0OiA0MjVweDtcclxuXHRcdHBhZGRpbmctdG9wOiAxMjVweDtcclxuXHR9XHJcbn0iLCIud2QtbmV3c0xhbmRpbmcge1xyXG5cdGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuXHRsb3N0LWNlbnRlcjogMTE4MHB4O1xyXG5cdG1hcmdpbi10b3A6IDcwcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMzZweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdCYuaXMtbG9hZGluZyB7XHJcblx0XHRhbmltYXRpb246IHNoYWtlLXNsb3cgNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcblx0fVxyXG5cclxuXHQubmV3c0xhbmRpbmctbmV3c2xpc3Qge1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHR3aWR0aDogNzAlO1xyXG5cdH1cclxuXHJcblx0Lm5ld3NMYW5kaW5nLWFkcyB7XHJcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRtYXJnaW46IDQwcHggMCAwIDA7IC8vIDEzMHB4IDAgMCAwIHdpdGggZmlsdGVyIGl0ZW1zXHJcblx0XHRwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHR3aWR0aDogMzAlO1xyXG5cdH1cclxuXHJcblx0Lml0ZW0uY3VzdG9tLWNsYXNzIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHRAbWVkaWEgKC0td2lkZSkge1xyXG5cdFx0Lm5ld3NMYW5kaW5nLW5ld3NsaXN0IHtcclxuXHRcdFx0d2lkdGg6IDEwMCVcclxuXHRcdH1cclxuXHJcblx0XHQubmV3c0xhbmRpbmctYWRzIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi53ZC1wcm9tcHQtbG9hZGVyIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0dG9wOiAyNTBweDsgbGVmdDogMDtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRAbWl4aW4gc2l6ZSAxMDAlLCAxMDAlO1xyXG5cclxuXHQmOmJlZm9yZSxcclxuXHQmOmFmdGVyIHtcclxuXHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuXHRcdEBtaXhpbiBzaXplIDEwMCUsIDEwMCU7XHJcblx0fVxyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHQvL2JhY2tncm91bmQ6IHVybCgnd2RfbWVkYS1wcmVsb2FkZXItdGVldGhfbmNzYS5naWYnKSAwIDEwJSBuby1yZXBlYXQsIHVybCgnd2RfbWVkYS1wcmVsb2FkZXItdGVldGhfbmNzYS5naWYnKSAwIDYwJSBuby1yZXBlYXQ7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJ3dkX25ld3MtcHJlbG9hZGVyX25jc2EuZ2lmJykgLTclIC03JW5vLXJlcGVhdCwgdXJsKCd3ZF9uZXdzLXByZWxvYWRlcl9uY3NhLmdpZicpIDE3JSA3MSUgbm8tcmVwZWF0LCB1cmwoJ3dkX25ld3MtcHJlbG9hZGVyX25jc2EuZ2lmJykgMTA4JSA1MyUgbm8tcmVwZWF0O1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJ3dkX25ld3MtcHJlbG9hZGVyX25jc2EuZ2lmJykgMTQlIDEwMCUgbm8tcmVwZWF0O1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMTg2ZGVnKTtcclxuXHR9XHJcblxyXG5cdCYuaXMtaGlkZGVuIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR6LWluZGV4OiAkekluZGV4LW5lZy0tcHJlbG9hZGVySGlkZTtcclxuXHR9XHJcbn0iLCIubmV3c2ZpbHRlci1uZXdzbGlzdCAuaXRlbSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuLndkLW5ld3NMaXN0IHtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdHBhZGRpbmc6IDQwcHggNDBweCAwIDQwcHg7IC8vIDEzMHB4IDQwcHggMCA0MHB4IGZvciBmaWx0ZXIgaXRlbXNcclxuXHJcblx0Lm5ld3NMaXN0LWl0ZW0ge1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkY29sb3ItZ3JleS04MDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDI4cHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMjhweDtcclxuXHR9XHJcblxyXG5cdGgzIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0bGluZS1oZWlnaHQ6IDA7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRcclxuXHRcdHNwYW4ge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcblx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZTtcclxuXHRcdFx0QG1peGluIGZvbnQtc2Fuc043O1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zaXplIDMyLCAxMCwgMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC53ZC1uZXdzSXRlbS1tZWRpYSB7XHJcblx0XHRpbWcge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC53ZC1uZXdzSXRlbS1kYXRlLFxyXG5cdC53ZC1uZXdzSXRlbS10ZWFzZXIgcCB7XHJcblx0XHRAbWl4aW4gZm9udC1zYW5zTjQ7XHJcblx0fVxyXG5cclxuXHQud2QtbmV3c0l0ZW0tZGF0ZSB7XHJcblx0XHRjb2xvcjogJGNvbG9yLWdyZXktNDA7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRwYWRkaW5nOiA1cHggMDtcclxuXHRcdEBtaXhpbiBmb250LXNpemUgMTEsIDM4LCA1MDtcclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQud2QtbmV3c0l0ZW0tdGVhc2VyIHtcclxuXHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG5cdFx0cCB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleS0zMDtcclxuXHRcdFx0QG1peGluIGZvbnQtc2l6ZSAxNCwgMTQsIDA7XHJcblx0XHR9XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDMwcHg7IC8vIHJlcXVpcmVkIGZvciBob3ZlciBhbmltYXRpb25cclxuICAgICAgcGFkZGluZzogMnB4IDVweCAzcHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLWluLW91dDtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcclxuICAgICAgei1pbmRleDogNTtcclxuICAgICAgQG1peGluIGZvbnQtc2Fuc042O1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICBjb250ZW50OiAnLyc7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gICAgICAgIHRvcDogMDsgbGVmdDogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjFzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIEBtaXhpbiBzaXplIDAsIDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgJjpiZWZvcmUgeyBjb2xvcjogJGNvbG9yLXdoaXRlOyB9XHJcbiAgICAgICAgJjphZnRlciB7IHdpZHRoOiAxMDAlOyB9XHJcbiAgICAgIH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC53ZC1uZXdzSXRlbS1tZXRhIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR9XHJcblxyXG5cdC53ZC1uZXdzSXRlbS1jb21tZW50cyB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuXHRcdC8vcGFkZGluZzogOXB4O1xyXG5cdFx0bWluLXdpZHRoOiAzMXB4O1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHR0b3A6IDQwcHg7XHJcblx0XHRAbWl4aW4gc2l6ZSBhdXRvLCAyNnB4O1xyXG5cdFx0QG1peGluIGZvbnQtc2Fuc043O1xyXG5cdFx0QG1peGluIGZvbnQtc2l6ZSAxNCwgMjA7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcblx0XHRcdGJvdHRvbTogLTVweDtcclxuXHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogLTRweDtcclxuXHRcdFx0QG1peGluIHRyaWFuZ2xlIGJvdHRvbSwgJGNvbG9yLWJsdWUsIDhweCwgNnB4OyBcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSBzY3JlZW4gYW5kICgtLW1pZCkge1xyXG5cdFx0aDMgeyBwYWRkaW5nLXJpZ2h0OiA1MHB4OyB9XHJcblx0fVxyXG59IiwiLndkLWZpbHRlciB7XHJcblx0XHJcblx0Ji1saXN0LFxyXG5cdC5uZXdzZmlsdGVyLWxhYmVsbGlzdCB7XHJcblx0XHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRjb2xvci1ncmV5LTgwO1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdHBhZGRpbmc6IDQwcHggMDtcclxuXHRcdEBtaXhpbiBmb250LXNhbnNONztcclxuXHRcdEBtaXhpbiBmb250LXNpemUgMTQsIDI2O1xyXG5cdFx0QG1peGluIHNpemUgMTAwJSwgYXV0bztcclxuXHJcblx0XHRhIHtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci1ncmV5LTMwO1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdGhlaWdodDogMjhweDtcclxuXHRcdFx0cGFkZGluZzogMCAxMnB4O1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHRyYW5zaXRpb246IDAuM3M7XHJcblxyXG5cdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG5cdFx0XHRcdGhlaWdodDogMnB4O1xyXG5cdFx0XHRcdGJvdHRvbTogMnB4OyBsZWZ0OiAxMnB4OyByaWdodDogMTJweDtcclxuXHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvci1ibHVlO1xyXG5cdFx0XHRcdCY6YmVmb3JlIHsgb3BhY2l0eTogMTsgfVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmLmNsaWNrZWQ6aG92ZXIge1xyXG5cdFx0XHRcdCY6YmVmb3JlIHsgb3BhY2l0eTogMDsgfVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdGEuY2xpY2tlZCwgYS5jbGlja2VkOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLWJsdWU7XHJcblx0XHRcdCY6YmVmb3JlIHsgb3BhY2l0eTogMDsgfVxyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHQvLyBGb3IgTmV3cyBMYW5kaW5nIHNpbmNlIGl0IGhhcyB0byBzcGFuIHR3byBjb2x1bW5zXHJcblx0Ji53ZC1maWx0ZXItYWJzb2x1dGUge1xyXG5cdFx0Lm5ld3NmaWx0ZXItbGFiZWxsaXN0IHtcclxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG5cdFx0XHRkaXNwbGF5OiBub25lOyAvLyBoaWRkZW4gdW50aWwgY2xpZW50IHdhbnRzIHZpc2libGVcclxuXHRcdFx0bGVmdDogNDBweDtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR3aWR0aDogY2FsYygxMDAlIC0gODBweCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRAbWVkaWEgKC0td2lkZSkge1xyXG5cdFx0YSxcclxuXHRcdC5uZXdzZmlsdGVyLWxhYmVsbGlzdCAubmV3c2ZpbHRlci1sYWJlbCB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ubmV3c2ZpbHRlci1wYWdpbmF0aW9uIHtcclxuXHRtYXJnaW4tdG9wOiA2MHB4O1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG5cclxuXHQubmV3c2ZpbHRlci1uZXh0LFxyXG5cdC5uZXdzZmlsdGVyLXByZXYge1xyXG5cdFx0QGV4dGVuZCAuYnRuO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHJcblx0XHQmOmFjdGl2ZSB7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5uZXdzZmlsdGVyLXByZXYge1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRtYXJnaW4tbGVmdDogNDBweDtcclxuXHR9XHJcblxyXG5cdC5uZXdzZmlsdGVyLW5leHQge1xyXG5cdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA0MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLndkLWZpbHRlck1vYmlsZSB7XHJcblx0YmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdEBtaXhpbiBzaXplIDEwMCUsIDM0cHg7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDE1cHg7XHJcblx0XHR0b3A6IDEwcHg7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdEBtaXhpbiB0cmlhbmdsZSBib3R0b20sICRjb2xvci1ibHVlLCAxM3B4LCAxM3B4O1xyXG5cdH1cclxuXHJcblx0c2VsZWN0IHtcclxuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHRjb2xvcjogJGNvbG9yLWJsdWU7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblx0XHQtbW96LWFwcGVhcmFuY2U6bm9uZTtcclxuXHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogbm9uZTtcclxuXHRcdEBtaXhpbiBzaXplIDEwMCUsIDEwMCU7XHJcblx0XHRAbWl4aW4gZm9udC1zYW5zTjc7XHJcblx0XHRAbWl4aW4gZm9udC1zaXplIDE4LCAxOCwgMDtcclxuXHR9XHJcblxyXG5cdG9wdGlvbiB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblx0fVxyXG5cclxuXHRzZWxlY3Q6Oi1tcy1leHBhbmQge1xyXG5cdCAgICBkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0QG1lZGlhICgtLXdpZGUpIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxufSIsIi5uZXdzLWRldGFpbCB7XHJcblx0QG1peGluIG5ld3NEZXRhaWw7XHJcblx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG5cdHBhZGRpbmc6IDM3cHg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJ3dkX25ld3NkZXRhaWwtZWFyLWJlZm9yZV9uY3NhLnBuZycpIG5vLXJlcGVhdCAwIDA7XHJcblx0XHRsZWZ0OiAtNjNweDtcclxuICAgIFx0dG9wOiA0OXB4O1xyXG5cdFx0QG1peGluIHNpemUgODZweCwgMTU4cHg7XHJcblx0fVxyXG5cclxuXHQudGh1bWJfbmV3cyB7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cdC5uZXdzX3RpdGxlIHtcclxuXHRcdEBleHRlbmQgLmVwc2lsb247XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGxpbmUtaGVpZ2h0OiAzNnB4O1xyXG5cdFx0bWFyZ2luOiAxNXB4IGF1dG87XHJcblx0XHRtYXgtd2lkdGg6IDY1JTtcclxuXHRcdFxyXG5cdFx0c3BhbiB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuXHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMThweDtcclxuXHRcdFx0QG1peGluIGZvbnQtc2Fuc043O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Lm5ld3NfZGF0ZS1jbG9uZSB7XHJcblx0XHRjb2xvcjogJGNvbG9yLWdyZXktNDA7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRtYXJnaW46IDIwcHggYXV0byAxMHB4IGF1dG87XHJcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0QG1peGluIGZvbnQtc2Fuc040O1xyXG5cdFx0QG1peGluIGZvbnQtc2l6ZSAxNCwgMTQsIDUwO1xyXG5cdH1cclxuXHJcblx0cCB7XHJcblx0XHRjb2xvcjogJGNvbG9yLWdyZXktNDA7XHJcblx0XHRtYXJnaW46IDE3cHggMDtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRAbWl4aW4gZm9udC1zYW5zTjQ7XHJcblx0XHRAbWl4aW4gZm9udC1zaXplIDE0LCAyNDtcclxuXHR9XHJcblxyXG5cdGltZyB7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdC8vQGV4dGVuZCAlc3RyaWtldGhyb3VnaC1iYXNpYztcclxuXHRcdGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuXHRcdHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XHJcblx0XHRAbWl4aW4gZm9udC1zYW5zTjQ7XHJcblxyXG5cdFx0aHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItY3lhbjtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGJsb2NrcXVvdGUge1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdGNvbG9yOiAkY29sb3ItZ3JleS00MDtcclxuXHRcdG1hcmdpbjogMzVweCAwO1xyXG5cdFx0cGFkZGluZzogMzVweCAxMCU7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdEBtaXhpbiBmb250LXNhbnNONDtcclxuXHRcdEBtaXhpbiBmb250LXNpemUgMjIsIDMwO1xyXG5cclxuXHRcdCY6YmVmb3JlLFxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZXktOTA7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdH1cclxuXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmV5LTkwO1xyXG5cdFx0XHRib3R0b206IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRoMSxcclxuXHRoMixcclxuXHRoMyxcclxuXHRoNCxcclxuXHRoNSxcclxuXHRoNiB7XHJcblx0XHRAbWl4aW4gZm9udC1zYW5zTjc7XHJcblx0fVxyXG5cclxuXHRAbWVkaWEgKC0td2lkZSkge1xyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLm5ld3NJdGVtLUNvbnRhaW5lciB7XHJcblx0I21haW4gJiB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdFx0ZmxvYXQ6IG5vbmU7XHJcblx0XHRtYXJnaW46IDI1MHB4IGF1dG8gMCBhdXRvO1xyXG5cdFx0bWF4LXdpZHRoOiA5MCU7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdHdpZHRoOiAxMTgwcHg7XHJcblx0XHR6LWluZGV4OiAkekluZGV4LTEtbmV3c0l0ZW1Db250YWluZXI7XHJcblxyXG5cdFx0JjpiZWZvcmUsXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0XHR6LWluZGV4OiAkekluZGV4LW5lZy0tbmV3c1BzZXVkbztcclxuXHRcdH1cclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHVybCgnd2RfbmV3c2RldGFpbC1iZWZvcmVfbmNzYS5wbmcnKSBuby1yZXBlYXQgMCAwO1xyXG5cdFx0XHRsZWZ0OiAtMjc4cHg7XHJcbiAgICBcdFx0dG9wOiAtNzhweDtcclxuXHRcdFx0QG1peGluIHNpemUgODk4cHgsIDEwMjRweDtcclxuXHRcdH1cclxuXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKCd3ZF9uZXdzZGV0YWlsLWFmdGVyX25jc2EucG5nJykgbm8tcmVwZWF0IDAgMDtcclxuXHRcdFx0cmlnaHQ6IC0xNDBweDtcclxuICAgIFx0XHR0b3A6IDEwMHB4O1xyXG5cdFx0XHRAbWl4aW4gc2l6ZSA3MzJweCwgMTAyNHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QG1lZGlhICgtLXdpZGUpIHtcclxuXHRcdCNtYWluICYge1xyXG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnNoYXJlX3R3aXR0ZXIsXHJcbi5zaGFyZV9mYWNlYm9vayxcclxuLnNoYXJlX2dvb2dsZSB7XHJcblx0bWFyZ2luOiAwIDEwcHg7XHJcblx0QG1peGluIHNoYXJlO1xyXG59XHJcblxyXG4ubmV3c2FydGljbGUtc2hhcmVzIHtcclxuXHRwYWRkaW5nOiAyMHB4IDAgNDBweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG5cdD4gc3BhbiB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuXHRcdG1hcmdpbjogMCAxMHB4O1xyXG5cdFx0QG1peGluIGZvbnQtc2l6ZSAxODtcclxuXHJcblx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHsgY29sb3I6ICMxZmIxZDU7IH1cclxuXHRcdHNwYW4geyBAZXh0ZW5kIC51LXZpc3VhbGx5aGlkZGVuOyB9XHJcblx0fVxyXG59XHJcblxyXG4vKlxyXG4uc2hhcmVfdHdpdHRlcixcclxuLnNoYXJlX2ZhY2Vib29rLFxyXG4uc2hhcmVfZ29vZ2xlIHtcclxuXHRjb2xvcjogJGNvbG9yLWJsdWU7XHJcblx0bWFyZ2luOiAwIDEwcHg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdEBtaXhpbiBzaGFyZTtcclxuXHRAbWl4aW4gc2l6ZSAxN3B4LCAxN3B4O1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcblx0XHRAZXh0ZW5kIC5pY29uO1xyXG5cdFx0QG1peGluIGZvbnQtc2l6ZSAxOCwgMTYsIDA7XHJcblx0fVxyXG59XHJcblxyXG4uc2hhcmVfdHdpdHRlciB7XHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGV4dGVuZCAuaWNvbi10d2l0dGVyOmJlZm9yZTtcclxuXHR9XHJcbn1cclxuXHJcbi5zaGFyZV9mYWNlYm9vayB7XHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGV4dGVuZCAuaWNvbi1mYWNlYm9vazpiZWZvcmU7XHJcblx0fVxyXG59XHJcblxyXG4uc2hhcmVfZ29vZ2xlIHtcclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAZXh0ZW5kIC5pY29uLWdvb2dsZS1wbHVzOmJlZm9yZTtcclxuXHR9XHJcbn1cclxuKi9cclxuLnVzZXJfY29tbWVudCB7XHJcblx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuXHJcbn1cclxuXHJcbi51c2VyX2NvbW1lbnRfZW50cnkge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmV5LTkwO1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0Y29sb3I6ICRjb2xvci1ncmV5LTQwO1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblx0QG1peGluIGZvbnQtc2l6ZSAxNCwgMjA7XHJcblx0QG1peGluIGZvbnQtc2Fuc040O1xyXG5cdEBtaXhpbiBzaXplIDEwMCUsIDEwMHB4O1xyXG59XHJcblxyXG4udXNlcl9jb21tZW50X2VudHJ5OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uYWRkVXNlckVudHJ5IHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Y29sb3I6ICRjb2xvci1ibHVlO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmbG9hdDogcmlnaHQ7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRAbWl4aW4gZm9udC1zYW5zTjc7XHJcblx0QG1peGluIGZvbnQtc2l6ZSAxNCwgMjIsIDUwO1xyXG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHJcblx0LmFnZWdhdGUtcGFzc2VkICYgeyBjdXJzb3I6IHVybCgnd2RfbWlkZGxlLWZpbmdlci1jdXJzb3JfbmNzYS5jdXInKSwgcG9pbnRlcjsgfVxyXG59XHJcblxyXG4ud2QtYXV0aG9yIHtcclxuXHRtYXgtd2lkdGg6IDU3NXB4O1xyXG5cdG1hcmdpbjogNTVweCBhdXRvO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG5cdEBtaXhpbiBzaXplIDEwMCUsIGF1dG87XHJcblxyXG5cdC53ZC1hdXRob3ItLWxlZnQge1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0d2lkdGg6IDI1JTtcclxuXHR9XHJcblxyXG5cdC53ZC1hdXRob3ItLXJpZ2h0IHtcclxuXHRcdGNvbG9yOiAkY29sb3ItZ3JleS00MDtcclxuXHRcdGZsb2F0OiByaWdodDtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHR3aWR0aDogNzUlO1xyXG5cdFx0QG1peGluIGZvbnQtc2Fuc040O1xyXG5cdH1cclxuXHJcblx0aDMge1xyXG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRcdEBtaXhpbiBmb250LXNpemUgMTQsIDEwLCA1MDtcclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0QG1peGluIGZvbnQtc2Fuc043O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cCB7XHJcblx0XHRAbWl4aW4gZm9udC1zaXplIDEyLCAxMiwgMDtcclxuXHR9XHJcblxyXG5cdEBtZWRpYSAoLS10YWJsZXRTbWFsbCkge1xyXG5cclxuXHRcdC53ZC1hdXRob3ItLWxlZnQsXHJcblx0XHQud2QtYXV0aG9yLS1yaWdodCB7XHJcblx0XHRcdGZsb2F0OiBub25lO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHJcblx0XHQud2QtYXV0aG9yLS1sZWZ0IHtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cclxuXHRcdC53ZC1hdXRob3ItLXJpZ2h0IHtcclxuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRcdFx0cGFkZGluZzogMCAxMHB4O1xyXG5cclxuXHRcdFx0aDMge1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbiIsIkBkZWZpbmUtbWl4aW4gbmV3c0RldGFpbCB7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbkBkZWZpbmUtbWl4aW4gcmVsYXRlZE5ld3Mge1xyXG5cclxuXHQmLmNvbnRlbnRzdW1tYXJ5IC52ZXJ0aWNhbCB7XHJcblx0XHRib3JkZXItdG9wOiBub25lO1xyXG5cdH1cclxuXHJcblx0LmNvbnRlbnRzdW1tYXJ5LXNjcm9sbGFibGUge1xyXG5cdFx0aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IC8vIE92ZXJyaWRlIGlubGluZSBzdHlsZVxyXG5cdFx0cG9zaXRpb246IHN0YXRpYztcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0Lml0ZW1zIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHR9XHJcblxyXG5cdC5pdGVtIHtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHRcdHdpZHRoOiAzMy4zMyU7XHJcblxyXG5cdFx0aW1nIHtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnBhZ2Uge1xyXG5cdFx0aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IC8vIE92ZXJyaWRlIGlubGluZSBzdHlsZVxyXG5cdFx0b3ZlcmZsb3c6IGF1dG87XHJcblx0fVxyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIHNoYXJlIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG5cdGlmcmFtZSB7XHJcblx0XHQvL29wYWNpdHk6IDA7XHJcblx0fVxyXG59IiwiLnJlbGF0ZWRuZXdzIHtcclxuXHRAbWl4aW4gcmVsYXRlZE5ld3M7XHJcbn1cclxuXHJcbi53ZC1yZWxhdGVkTmV3cyB7XHJcblx0YmFja2dyb3VuZDogJGNvbG9yLWdyZXktOTU7XHJcblx0bWFyZ2luOiAwIGF1dG8gMThweDtcclxuXHRtYXgtd2lkdGg6IDkwJTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDExODBweDtcclxuXHJcblx0LndkLXJlbGF0ZWROZXdzLWhlYWRsaW5lIHtcclxuXHRcdGNvbG9yOiAkY29sb3Itb3JhbmdlO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdHBhZGRpbmc6IDM1cHggMCAxNXB4IDA7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0d2lkdGg6IDkyJTtcclxuXHRcdEBtaXhpbiBmb250LXNhbnNONztcclxuXHRcdEBtaXhpbiBmb250LXNpemUgMjIsIDIwLCAwO1xyXG5cdH1cclxuXHJcblx0LnBhZ2Uge1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHR3aWR0aDogODMlO1xyXG5cdH1cclxuXHRcclxuXHQuaXRlbSB7XHJcblx0XHR0cmFuc2l0aW9uOiAwLjRzIGVhc2UtaW4tb3V0O1xyXG5cclxuXHRcdGEge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdH1cclxuXHJcblx0XHRpbWcge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0ZmxvYXQ6IG5vbmU7XHJcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0XHRtYXgtd2lkdGg6IDMxMHB4O1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHJcblx0XHRoMyB7XHJcblx0XHRcdGNsZWFyOiBib3RoO1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0bWluLWhlaWdodDogNDJweDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDA7XHJcblx0XHRcdG1hcmdpbjogMTZweCBhdXRvIDEycHggYXV0bztcclxuXHJcblx0XHRcdGEge1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuXHRcdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZTtcclxuXHRcdFx0XHRAbWl4aW4gZm9udC1zYW5zTjc7XHJcblx0XHRcdFx0QG1peGluIGZvbnQtc2l6ZSAxOCwgNiwgMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBSZWFkIG1vcmUgbGlua1xyXG5cdFx0cCBhIHtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci1ibHVlO1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdEBtaXhpbiBmb250LXNhbnNONztcclxuXHRcdFx0QG1peGluIGZvbnQtc2l6ZSAxMywgNiwgMDtcclxuXHRcdH1cclxuXHJcblx0XHRzdHJvbmcsXHJcblx0XHQubmV3c19kYXRlIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QG1lZGlhICgtLXdpZGUpIHtcclxuXHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRcdC5pdGVtIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyZXktODA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRpbWcge1xyXG5cdFx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aDMge1xyXG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIFJlYWQgbW9yZSBsaW5rXHJcblx0XHRcdHAgYSB7XHJcblx0XHRcdFx0QG1peGluIGZvbnQtc2l6ZSAxNSwgNiwgMDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLndkLU1lZGlhSW50cm8ge1xyXG5cdEBleHRlbmQgJWJhbm5lckhlYWRlci1jb250YWluZXI7XHJcblx0YmFja2dyb3VuZDogdXJsKCd3ZF9tZWRpYS1pbnRyb19uY3NhLmpwZycpIDAgMCBuby1yZXBlYXQ7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGJhY2tncm91bmQ6IHVybCgnd2RfbWVkaWEtaW50cm8tYmVmb3JlX25jc2EucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuXHRcdGxlZnQ6IC0yNXB4O1xyXG5cdFx0dG9wOiAyMzNweDtcclxuXHRcdEBtaXhpbiBzaXplIDU0cHgsIDEwNXB4O1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJ3dkX21lZGlhLWludHJvLWFmdGVyX25jc2EucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuXHRcdHJpZ2h0OiAtNTBweDtcclxuICAgIFx0dG9wOiAyMTNweDtcclxuXHRcdEBtaXhpbiBzaXplIDc3cHgsIDE0MnB4O1xyXG5cdH1cclxuXHJcblx0Lmhlcm8tdGl0bGUge1xyXG5cdFx0Y29sb3I6ICRjb2xvci1jeWFuO1xyXG5cdH1cclxuXHJcblx0LmFsaWduQ2VudGVyIHtcclxuXHRcdGhlaWdodDogNDI1cHg7XHJcblx0XHRwYWRkaW5nLXRvcDogMTI1cHg7XHJcblx0fVxyXG5cclxuXHRAbWVkaWEgKC0td2lkZXN0KSB7XHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIud2Qge1xyXG5cdCYtbWVkaWFNb2R1bGUge1xyXG5cclxuXHRcdCNtYWluICYge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHRcdGZsb2F0OiBub25lO1xyXG5cdFx0XHRtYXJnaW46IDcwcHggYXV0byAyMHB4IGF1dG87XHJcblx0XHRcdG1heC13aWR0aDogOTAlO1xyXG5cdFx0XHRtaW4taGVpZ2h0OiA3MDBweDtcclxuXHRcdFx0cGFkZGluZzogMCA0MHB4O1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHdpZHRoOiAxMTgwcHg7XHJcblxyXG5cdFx0XHQmLmlzLWxvYWRpbmcgeyBhbmltYXRpb246IHNoYWtlIDAuMXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7IH1cclxuXHJcblx0XHRcdEBtZWRpYSAoLS13aWRlKSB7XHJcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAoLS1taWQpIHtcclxuXHRcdFx0XHQmLmlzLWxvYWRpbmcgeyBhbmltYXRpb246IG5vbmU7IH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYtdmlkZW97IGhlaWdodDogNDAwcHg7IH1cclxuXHJcblx0XHQmLWxpc3R7XHJcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdFxyXG5cdFx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuXHRcdFx0XHQubGlzdC1pdGVtIHNwYW4ge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogY29sb3IoJGNvbG9yLWJsYWNrIGEoNjAlKSk7XHJcblx0XHRcdFx0XHR6LWluZGV4OiAxO1xyXG5cdFx0XHRcdFx0QG1peGluIHNpemUgMTAwJSwgMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Lmxpc3QtaXRlbTpob3ZlciB7XHJcblx0XHRcdFx0XHRvdXRsaW5lOiAxMHB4IHNvbGlkICRjb2xvci1ibHVlO1xyXG5cdFx0XHRcdFx0c3BhbiB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRsaSB7XHJcblx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDA7XHJcblx0XHRcdFx0bWFyZ2luOiAwIDAuNjYlIDEuMzMlIDAuNjYlO1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuNHMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0d2lkdGg6IDMyJTtcclxuXHJcblx0XHRcdFx0c3BhbiB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHR0b3A6IDA7IGxlZnQ6IDA7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0XHRAbWl4aW4gc2l6ZSAwLCAwO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0YSB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0cGFkZGluZy10b3A6IDU2JTtcclxuXHRcdFx0XHRcdEBtaXhpbiBzaXplIDEwMCUsIDA7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLmlzLWhpZGRlbiB7XHJcblx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdEBtaXhpbiBzaXplIDAsIDA7XHJcblxyXG5cdFx0XHRcdFx0YTpiZWZvcmUsXHJcblx0XHRcdFx0XHRhOmFmdGVyIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vbGk6bnRoLWNoaWxkKDNuKzMpIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XHJcblx0XHRcdGxpW2RhdGEtdHlwZT1cInlvdXR1YmVcIl0gYSB7XHJcblx0XHRcdFx0JjpiZWZvcmUsICY6YWZ0ZXIgeyBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7IH1cclxuXHJcblx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0XHRcdG1hcmdpbjogLTI0cHggMCAwIC0yNHB4O1xyXG5cdFx0XHRcdFx0ei1pbmRleDogMTtcclxuXHRcdFx0XHRcdEBtaXhpbiBzaXplIDU3cHgsIDU3cHg7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAtOXB4IDAgMCAtNXB4O1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiAzNSUgNTAlO1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zNTAsIDAuMDA1LCAwLjkyMCwgMC4xNzApO1xyXG5cdFx0XHRcdFx0ei1pbmRleDogMjtcclxuXHRcdFx0XHRcdEBtaXhpbiB0cmlhbmdsZSByaWdodCwgJGNvbG9yLXdoaXRlLCAyNXB4LCAyOHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QG1lZGlhICgtLXRhYmxldCkge1xyXG5cdFx0XHRcdGxpIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMCAwLjUlIDEuMzMlO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDQ5JTtcclxuXHJcblx0XHRcdFx0XHQvLyY6bnRoLWNoaWxkKDNuKzMpIHsgbWFyZ2luOiAwIDIlIDIlIDA7IH1cclxuXHRcdFx0XHRcdC8vJjpudGgtY2hpbGQoMm4rMikgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBtZWRpYSAoLS1tb2JpbGUpIHtcclxuXHRcdFx0XHRsaS5saXN0LWl0ZW0geyB3aWR0aDogMTAwJTsgfVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0I3BsYXllciB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHRcdC53ZC1QbGF5ZXIge1xyXG5cdFx0XHRib3R0b206IDA7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cclxuXHQmLXRlZXRoLWxvYWRlciB7XHJcblx0XHRsZWZ0OiAwOyB0b3A6IDA7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZS1pbi1vdXQ7XHJcblx0XHRAbWl4aW4gc2l6ZSAxMDAlLCAxMDAlO1xyXG5cclxuXHRcdCY6YmVmb3JlLFxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuXHRcdFx0QG1peGluIHNpemUgMTAwJSwgMTAwJTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdC8vYmFja2dyb3VuZDogdXJsKCd3ZF9tZWRhLXByZWxvYWRlci10ZWV0aF9uY3NhLmdpZicpIDAgMTAlIG5vLXJlcGVhdCwgdXJsKCd3ZF9tZWRhLXByZWxvYWRlci10ZWV0aF9uY3NhLmdpZicpIDAgNjAlIG5vLXJlcGVhdDtcclxuXHRcdFx0YW5pbWF0aW9uOiBtb3ZlVGVldGhMZWZ0IDNzIGluZmluaXRlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJ3dkX21lZGEtcHJlbG9hZGVyLXRlZXRoX25jc2EuZ2lmJykgOTAlIDEwJSBuby1yZXBlYXQsICB1cmwoJ3dkX21lZGEtcHJlbG9hZGVyLXRlZXRoX25jc2EuZ2lmJykgNzAlIDEwMCUgbm8tcmVwZWF0O1xyXG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgtMSkgdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cdFx0XHRmaWx0ZXI6IGZsaXBIO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJ3dkX21lZGEtcHJlbG9hZGVyLXRlZXRoX25jc2EuZ2lmJykgMjAlIDEwJSBuby1yZXBlYXQsIHVybCgnd2RfbWVkYS1wcmVsb2FkZXItdGVldGhfbmNzYS5naWYnKSAtNSUgNjAlIG5vLXJlcGVhdDtcclxuXHRcdFx0YW5pbWF0aW9uOiBtb3ZlVGVldGhSaWdodCAzcyBpbmZpbml0ZTtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHRcdH1cclxuXHJcblx0XHQmLmlzLWhpZGRlbiB7XHJcblx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdHotaW5kZXg6ICR6SW5kZXgtbmVnLS1wcmVsb2FkZXJIaWRlO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBtZWRpYSAoLS1taWQpIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIud2QtTWVkaWFMaXN0IHtcclxuXHRiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcblx0bG9zdC1jZW50ZXI6IDExODBweDtcclxuXHRtYXJnaW4tdG9wOiA3MHB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0QG1lZGlhICgtLXdpZGUpIHtcclxuXHRcdHdpZHRoOiAxMDAlXHJcblx0XHRcclxuXHR9XHJcbn0iLCIvLyA0MDQgU3R5bGVzXHJcbi5wYWdlLTQwNCB7XHJcbiAgI21haW4ge1xyXG4gICAgcGFkZGluZy10b3A6IDIyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2Vycm9yLWJvZHktYmVmb3JlX25jc2EucG5nJykgMCAwIG5vLXJlcGVhdDtcclxuICAgICAgbGVmdDogMDsgdG9wOiAxMCU7XHJcbiAgICAgIG9wYWNpdHk6IDAuNzU7XHJcbiAgICAgIEBtaXhpbiBzaXplIDEzMHB4LCAxNTdweFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0U21hbGwpIHtcclxuICAgICNtYWluIHtcclxuICAgICAgcGFkZGluZy10b3A6IDE0MHB4O1xyXG4gICAgICAmOmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5lcnJvcjQwNCB7XHJcbiAgYmFja2dyb3VuZDogdXJsKCd3ZF9lcnJvci00MDQtYmdfbmNzYS5wbmcnKSA1MCUgNTAlIG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBtaXhpbiBzaXplIDEwMHZ3LCA1MHZoO1xyXG5cclxuXHJcbiAgJi1tZXNzYWdlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlOyBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICB9XHJcbiAgaDEsIGgzIHsgbGluZS1oZWlnaHQ6IDE7IH1cclxuICBoMSB7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDIwMDtcclxuICAgIEBtaXhpbiBmb250LXNhbnNBbHRONDtcclxuICB9XHJcbiAgaDMgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICBoMSB7IEBtaXhpbiBmb250LXNpemUgMTQwOyB9XHJcbiAgICBoMyB7IEBtaXhpbiBmb250LXNpemUgMzI7IH1cclxuICB9XHJcbn0iLCIvLyBUcmFpbGVyIFBhZ2UgU3R5bGVzXHJcbi5wYWdlLXRyYWlsZXIgI21haW4ge1xyXG4gIGJhY2tncm91bmQ6IHVybCgnd2RfZ2FtZWluZm8tbWFwLWJvbHRzLTFfbmNzYS5wbmcnKSAxMHB4IDUwJSBuby1yZXBlYXQsIHVybCgnd2RfZ2FtZWluZm8tbWFwLWJvbHRzLTJfbmNzYS5wbmcnKSBjYWxjKDEwMCUgKyA0MHB4KSAwIG5vLXJlcGVhdDtcclxuICBwYWRkaW5nOiAyNzBweCAwO1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQpIHtcclxuICAgIHBhZGRpbmctdG9wOiAxNjBweDtcclxuICB9XHJcbn1cclxuXHJcbi53ZC10cmFpbGVyV3JhcCB7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICBsb3N0LWNlbnRlcjogMTIwMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEyMHB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBAbWl4aW4gZm9udC1zYW5zTjY7XHJcblxyXG4gIGgxIHtcclxuICAgIEBleHRlbmQgLmFscGhhO1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgcGFkZGluZzogM3B4IDIwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7XHJcbiAgICBoMSB7IEBtaXhpbiBmb250LXNpemUgNDI7IH1cclxuICB9XHJcbn1cclxuXHJcbi53ZC10cmFpbGVyIHtcclxuICBtYXJnaW46IDAgYXV0byAzMHB4O1xyXG4gIG1heC13aWR0aDogNzUlO1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQpIHtcclxuICAgIG1heC13aWR0aDogOTUlO1xyXG4gIH1cclxufSIsIi5tZWRpYU1vZGFsIHtcclxuXHRiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG5cdHRvcDogLTEwMCU7IGxlZnQ6IDA7XHJcblx0b3BhY2l0eTogMDtcclxuXHR6LWluZGV4OiAkekluZGV4LW5lZy0taGlkZGVuTWVkaWE7XHJcblx0QG1peGluIHNpemUgMTAwJSwgMTAwdmg7XHJcblxyXG4gICYuaXMtYWN0aXZlIHtcclxuXHR0b3A6IDA7XHJcblx0b3BhY2l0eTogMTtcclxuXHR6LWluZGV4OiAkemluZGV4LW1heC0tbWVkaWFNb2RhbDtcclxuICB9XHJcblxyXG4gIC5tZWRpYU1vZGFsLWhlYWRlciB7XHJcblx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7IGxlZnQ6IDA7XHJcblx0ei1pbmRleDogJHpJbmRleC01LS1tb2RhbEhlYWRlcjtcclxuXHRAbWl4aW4gc2l6ZSAxMDAlLCA2MHB4O1xyXG4gIH1cclxuXHJcbiAgLm1lZGlhTW9kYWwtbWV0YSB7XHJcblx0bGluZS1oZWlnaHQ6IDYwcHg7XHJcblx0cGFkZGluZzogMCAyMHB4O1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dCAwLjRzO1xyXG5cclxuXHQ+ICoge1xyXG5cdCAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdH1cclxuXHJcblx0Lmxpc3Qtc29jaWFsIHtcclxuXHJcblx0ICBsaSB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRtYXJnaW46IDAgMTBweDtcclxuXHQgIH1cclxuXHR9XHJcblxyXG5cdC5pcy1hY3RpdmUmIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG5cdH1cclxuICB9XHJcblxyXG4gIC5tZWRpYU1vZGFsLXBvc2l0aW9uLCAubWVkaWFNb2RhbC1kb3dubG9hZCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHQubWVkaWFNb2RhbC1wb3NpdGlvbiB7XHJcblx0XHRAZXh0ZW5kICVjYXJvdXNlbC1wb3NpdGlvbjtcclxuXHRcdEBtaXhpbiBmb250LXNpemUgMTEsIDA7XHJcblx0XHRAbWl4aW4gc2l6ZSAzNXB4LCAzNXB4O1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0dG9wOiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcbiAgLm1lZGlhTW9kYWwtdGl0bGUge31cclxuXHJcbiAgLm1lZGlhTW9kYWwtZG93bmxvYWQge31cclxuXHJcbiAgLm1lZGlhTW9kYWwtY2xvc2Uge1xyXG5cdGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG5cdGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTsgcmlnaHQ6IDIwcHg7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTIwMCUpO1xyXG5cdHRyYW5zaXRpb246IHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQgMC40cztcclxuXHRAbWl4aW4gc2l6ZSAzMHB4LCAzMHB4O1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBleHRlbmQgLmljb247XHJcblx0XHRAZXh0ZW5kIC5pY29uLWJ1dHRvbi14OmJlZm9yZTtcclxuXHRcdGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblx0XHRmb250LXNpemU6IDMwcHg7XHJcblx0XHRsaW5lLWhlaWdodDogMDtcclxuXHRcdGxlZnQ6IC0xcHg7IHRvcDogMTZweDtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRyYW5zaXRpb246IDAuM3M7XHJcblx0XHRAbWl4aW4gc2l6ZSAzMHB4LCAzMHB4O1xyXG5cdH1cclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG5cdFx0dHJhbnNpdGlvbjogd2lkdGggMC4ycyBlYXNlLWluLW91dDtcclxuXHRcdEBtaXhpbiBzaXplIDAsIDEwMCU7XHJcblx0fVxyXG5cclxuXHRodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBtaXhpbiBzaXplIDEwMCUsIDEwMCU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuaXMtYWN0aXZlJiB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuXHR9XHJcbiAgfVxyXG5cclxuXHQubWVkaWFNb2RhbC1jb250cm9scyB7fVxyXG5cdC5tZWRpYU1vZGFsLXByZXYsIC5tZWRpYU1vZGFsLW5leHQge1xyXG5cdFx0QGV4dGVuZCAlY2Fyb3VzZWwtYXJyb3dzO1xyXG5cdFx0QG1peGluIGZvbnQtc2l6ZSAzMCwgMjA7XHJcbiAgXHR9XHJcblxyXG5cdC5tZWRpYU1vZGFsLXByZXYge1xyXG5cdFx0QGV4dGVuZCAlYXJyb3ctcHJldjtcclxuXHJcblx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyOmFmdGVyIHtcclxuXHRcdFx0Y2xpcDogcmVjdCgwLCAzMHB4LCAzNXB4LCAwKTtcclxuXHRcdH1cclxuXHR9XHJcblx0Lm1lZGlhTW9kYWwtbmV4dCB7XHJcblx0XHRAZXh0ZW5kICVhcnJvdy1uZXh0O1xyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRjbGlwOiByZWN0KDAsIDM1cHgsIDM1cHgsIDI1cHgpO1xyXG5cdFx0fVxyXG5cclxuXHRcdGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXI6YWZ0ZXIge1xyXG5cdFx0XHRjbGlwOiByZWN0KDAsIDM1cHgsIDM1cHgsIDVweCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuICAubWVkaWFNb2RhbC1jb250ZW50IHtcclxuICBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHRpbWcge1xyXG5cdCAgZGlzcGxheTogYmxvY2s7XHJcblx0ICBtYXJnaW46IDAgYXV0bztcclxuXHQgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQgIHRvcDogNTAlO1xyXG5cdCAgbWF4LXdpZHRoOiAxMDAlO1xyXG5cdCAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcblx0fVxyXG5cclxuXHQud2QtUGxheWVyIHtcclxuXHRcdG1hcmdpbjogMCBhdXRvIDA7XHJcblx0fVxyXG5cdFxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi5wYWdlLWdhbWVpbmZvIHtcclxuXHQubWVkaWFNb2RhbCAubWVkaWFNb2RhbC1jb250cm9scyB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHQubWVkaWFNb2RhbCAubWVkaWFNb2RhbC1jb250ZW50IC53ZC1QbGF5ZXIgeyB0b3A6IC01MXB4OyB9XHJcbn0iLCIvLyBBZ2VnYXRlIFN0eWxlc1xyXG5cclxuLy8gU2hhcmVkXHJcbi52ZXJpZnkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAuZXNyYl9wYyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDEwcHg7IGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gIH1cclxuICAuZXJyb3Ige1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgc3BhbiB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogMjBweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDc4MHB4KSB7XHJcbiAgLy8gICAuZXNyYl9wYyB7XHJcbiAgLy8gICAgIHRvcDogMTBweDsgYm90dG9tOiBhdXRvOyBsZWZ0OiAxMHB4OyByaWdodDogYXV0bztcclxuICAvLyAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIC8vICAgfVxyXG4gIC8vIH1cclxuXHJcbiAgLy8gQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzM2cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gIC8vICAgLmVzcmJfcGMge1xyXG4gIC8vICAgICB0b3A6IDEwcHg7IGJvdHRvbTogYXV0bzsgbGVmdDogMTBweDsgcmlnaHQ6IGF1dG87XHJcbiAgLy8gICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAvLyAgIH1cclxuICAvLyB9XHJcbiAgLy8gQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTY4cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gIC8vICAgLmVzcmJfcGMge1xyXG4gIC8vICAgICB0b3A6IGF1dG87IGJvdHRvbTogMTBweDsgbGVmdDogYXV0bzsgcmlnaHQ6IDEwcHg7XHJcbiAgLy8gICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAvLyAgIH1cclxuICAvLyB9XHJcbn1cclxuXHJcbi8vIEZ1bGwgUGFnZSBBZ2VnYXRlXHJcbi5oaWRlLWJvZHksIC53ZC1GdWxsc2NyZWVuIC52ZXJpZnlbY2xhc3NePVwiaGlkZS1jb21wXCJdLFxyXG4ud2QtRnVsbHNjcmVlbiAudmVyaWZ5W2NsYXNzKj1cIiBoaWRlLWNvbXBcIl0ge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjayB1cmwoJ3dkX2FnZWdhdGUtYmdfbmNzYS5qcGcnKSA1MCUgMCBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uanMtYWdlZ2F0ZS1yZXR1cm4ge1xyXG4gIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMTBweDsgcmlnaHQ6IDEwcHg7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBAbWl4aW4gZm9udC1zaXplIDE2O1xyXG4gIEBtaXhpbiBmb250LXNhbnNONztcclxuXHJcbiAgaSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IDRweDtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMjQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBBc3NldCBMZXZlbCBBZ2VnYXRlc1xyXG4udmVyaWZ5W2NsYXNzXj1cImhpZGUtY29tcFwiXSwgLnZlcmlmeVtjbGFzcyo9XCIgaGlkZS1jb21wXCJdIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2sgdXJsKCd3ZF9hZ2VnYXRlLWFzc2V0LWJnX25jc2EuanBnJykgNTAlIDAgIHJlcGVhdDtcclxuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG5cclxuICAvLyAuZXNyYl9wYyB7XHJcbiAgLy8gICBib3R0b206IGF1dG87IGxlZnQ6IGF1dG87IHRvcDogMTBweDsgcmlnaHQ6IDEwcHg7XHJcbiAgLy8gICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgLy8gfVxyXG59XHJcblxyXG4vLyBJbm5lcnNcclxuLmFnZS1jb250IHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlOyBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgd2lkdGg6IDUwJTtcclxuXHJcbiAgLmFnZS1nYXRlLWxpbmsgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gIC5sb2dvIHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnd2RfYWdlZ2F0ZS1sb2dvX25jc2EucG5nJykgNTAlIDAgbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgYXV0byA4MHB4O1xyXG4gICAgQG1peGluIHNpemUgMTgwcHgsIDIxMHB4O1xyXG4gIH1cclxuXHJcbiAgLmxlZ2FsLW1zZywgLmFnZS1nYXRlLWZvcm0ge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcclxuICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ3dkX2FnZWdhdGUtYXJ0aWZhY3RzX25jc2EucG5nJyk7XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuICAgIH1cclxuICB9XHJcbiAgLmxlZ2FsLW1zZyB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDsgLy8ganVzdCB0byBhdm9pZCBhIGxpbmUgdGhyb3VnaCB0aGUgY29udGVudFxyXG4gICAgcGFkZGluZzogNDBweCAwIDMwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDIyO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjVweDtcclxuICAgICAgYm90dG9tOiAxMDAlOyByaWdodDogMDtcclxuICAgICAgQG1peGluIHNpemUgMjU0cHgsIDE3cHg7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTJweDtcclxuICAgICAgdG9wOiAwOyBsZWZ0OiBjYWxjKDEwMCUgLSAycHgpO1xyXG4gICAgICBAbWl4aW4gc2l6ZSA1NnB4LCAxNTRweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmFnZS1nYXRlLWZvcm0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU5cHggLTE1OHB4O1xyXG4gICAgICByaWdodDogY2FsYygxMDAlIC0gMnB4KTsgdG9wOiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgICBAbWl4aW4gc2l6ZSAxMHB4LCA0OHB4O1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuICAgICAgbGVmdDogMjBweDsgdG9wOiBjYWxjKDEwMCUgLSAycHgpO1xyXG4gICAgICBAbWl4aW4gc2l6ZSA0MDBweCwgMTVweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmJpcnRoZGF5LXBpY2tlciB7XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2sgdXJsKCd3ZF9hZ2VnYXRlLWRyb3Bkb3duLWFycm93X25jc2EucG5nJykgY2FsYygxMDAlIC0gMTVweCkgNTAlIG5vLXJlcGVhdDtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLWJsdWU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgbWFyZ2luOiAwIDEwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgd2lkdGg6IGNhbGMoMzAlIC0gMjBweCk7XHJcbiAgICAgIC1tb3otYXBwZWFyYW5jZTpub25lO1xyXG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgQG1peGluIGZvbnQtc2l6ZSAxNDtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAuc3VibWl0IHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgIG1hcmdpbjogMTVweCBhdXRvIDIwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgd2lkdGg6IDE0MHB4O1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxNDtcclxuICAgIEBtaXhpbiBmb250LXNhbnNONztcclxuXHJcbiAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogY29sb3IoJGNvbG9yLWJsdWUgYmxhY2tuZXNzKDE1JSkpOyB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1taWQpIHsgd2lkdGg6IDkwJTsgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDczNnB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcclxuICAgIGJvdHRvbTogMjBweDsgdG9wOiBhdXRvO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcblxyXG4gICAgLmxvZ28ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgLmxlZ2FsLW1zZyB7IHBhZGRpbmc6IDIwcHggMDsgfVxyXG4gICAgLmFnZS1nYXRlLWZvcm0ge1xyXG4gICAgICBtaW4taGVpZ2h0OiA4MHB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMjBweDtcclxuICAgIH1cclxuICAgIC5iaXJ0aGRheS1waWNrZXIge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyMHB4KTtcclxuICAgIH1cclxuICAgIC5zdWJtaXQge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyMHB4KTtcclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0U21hbGwpIHtcclxuICAgIC5sb2dvIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgQG1peGluIHNpemUgODVweCwgMTA0cHg7XHJcbiAgICB9XHJcbiAgICAuYmlydGhkYXktcGlja2VyIHtcclxuICAgICAgc2VsZWN0IHtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDVweCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTY4cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgdG9wOiA1MHB4O1xyXG4gICAgLmxvZ28geyBkaXNwbGF5OiBub25lOyB9XHJcbiAgICAuYmlydGhkYXktcGlja2VyIHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICB3aWR0aDogOTAlO1xyXG4gICAgICBzZWxlY3Qge1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW46IDVweDtcclxuICAgICAgICB3aWR0aDogMzAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3VibWl0IHsgZmxvYXQ6IG5vbmU7IH1cclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbW9iaWxlKSB7XHJcbiAgICB0b3A6IDEwcHg7IGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xyXG4gICAgdG9wOiA1MHB4O1xyXG4gICAgLmxvZ28geyBkaXNwbGF5OiBub25lOyB9XHJcbiAgICAubGVnYWwtbXNnIHtcclxuICAgICAgQG1peGluIGZvbnQtc2l6ZSAxNjtcclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XHJcbiAgICB0b3A6IGF1dG87IGJvdHRvbTogNTBweDtcclxuICB9XHJcbn0iLCJAa2V5ZnJhbWVzIGN1cnNvciB7XHJcblx0MCUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHR9XHJcblx0NDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ5MCUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxufVxyXG5cclxuLmNvbW1hbmQtbGlzdHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ud2R7XHJcblx0Ji1UZXJtaW5hbHtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHR3aWR0aDogNTAlO1xyXG5cdFx0aGVpZ2h0OiA1MCU7XHJcblx0XHRtaW4td2lkdGg6IDMyMHB4O1xyXG5cdFx0bWF4LXdpZHRoOiA2NDBweDtcclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQvL2hlaWdodDogMTAwdmg7XHJcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcblx0XHRvdmVyZmxvdzogYXV0bztcclxuXHRcdHotaW5kZXg6IDEwMDAwO1xyXG5cdFx0bGVmdDogMjUlO1xyXG5cdFx0dG9wOiAyNSU7XHJcblx0XHRib3gtc2hhZG93OiAxMHB4IDEwcHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcclxuXHRcdGJvcmRlcjogNXB4IHNvbGlkIHdoaXRlO1xyXG5cdFx0Ji1oZWFkZXJ7XHJcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdFx0aGVpZ2h0OiAyNXB4O1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdH1cclxuXHRcdCYtY21ke1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cclxuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKC0tbW9iaWxlKXtcclxuXHRcdFx0XHRwYWRkaW5nOiAxNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Ji1saW5le1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYtcHJlZml4e1xyXG5cdFx0XHRjb2xvcjogcmVkO1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zYW5zQWx0TjQ7XHJcblx0XHRcdGZvbnQtc2l6ZTogOXB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdCYtaW5wdXR7XHJcblx0XHRcdEBtaXhpbiBmb250LXNhbnNBbHRONDtcclxuXHRcdFx0Zm9udC1zaXplOiA5cHg7XHJcblx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcblx0XHRcdHdoaXRlLXNwYWNlOiBwcmU7XHJcblxyXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAoLS1tb2JpbGUpe1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogNzAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Ji1pbnB1dEhpZGRlbntcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHR0b3A6IDA7XHJcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHR9XHJcblx0XHRcclxuXHJcblx0XHQmLS1hY3RpdmV7XHJcblxyXG5cdFx0XHQud2QtVGVybWluYWwtaW5wdXR7XHJcblxyXG5cdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0Y29udGVudDpcIl9cIjtcclxuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdFx0XHRhbmltYXRpb246IGN1cnNvciAxcyBpbmZpbml0ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIvKiBDdWx0dXJlIFN0eWxlc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4ucGFnZS1jdWx0dXJlIHtcclxuICAud2QtZ2xvYmFsRm9vdGVyIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gIH1cclxufVxyXG5cclxuLndkLUN1bHR1cmVDYWxsb3V0IHtcclxuICBwYWRkaW5nOiAyNDBweCAwIDIwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB6LWluZGV4OiAxMDtcclxuXHJcbiAgJi10aXRsZSB7XHJcbiAgICBAZXh0ZW5kIC5hbHBoYTtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICAgIGNvbG9yOiAkY29sb3ItcGluaztcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHBhZGRpbmc6IDNweCAyMHB4O1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gIH1cclxuICAmLWJhY2tkcm9wIHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnd2RfY3VsdHVyZS1iZ19uY3NhLnBuZycpIDUwJSAwIG5vLXJlcGVhdDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgdG9wOiAwOyBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIEBtaXhpbiBzaXplIDE3NDhweCwgMTAwMHB4O1xyXG5cclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICB9XHJcbiAgLmRlZHNlYy1jaGFyYWN0ZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICYuaXMtdmlzaWJsZSB7XHJcbiAgICAgIGltZywgY2FudmFzIHsgb3BhY2l0eTogMTsgfVxyXG4gICAgfVxyXG4gICAgaW1nLCBjYW52YXMgeyBvcGFjaXR5OiAwOyB9XHJcbiAgICBjYW52YXMge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDsgbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLmRlZHNlYy1jaGFyYWN0ZXItMSB7XHJcbiAgICAgIHRvcDogMjQwcHg7IGxlZnQ6IDA7XHJcbiAgICAgIEBtaXhpbiBzaXplIDE3NHB4LCA0MjFweDtcclxuICAgIH1cclxuICAgICYuZGVkc2VjLWNoYXJhY3Rlci0yIHtcclxuICAgICAgdG9wOiAyMjBweDsgcmlnaHQ6IDA7XHJcbiAgICAgIEBtaXhpbiBzaXplIDg3cHgsIDI5OHB4O1xyXG4gICAgfVxyXG4gICAgJi5kZWRzZWMtY2hhcmFjdGVyLTMge1xyXG4gICAgICB0b3A6IDI2MHB4OyBsZWZ0OiAyNSU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgQG1peGluIHNpemUgODhweCwgMjYycHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIEBtZWRpYSAoLS1taWQpIHtcclxuICAgICYtdGl0bGUgeyBAbWl4aW4gZm9udC1zaXplIDQ1OyB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEoLS10YWJsZXRTbWFsbCkge1xyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xyXG4gICAgICBAbWl4aW4gZm9udC1zaXplIDMwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLndkLUN1bHR1cmUge1xyXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIGNvbG9yKCM0NjQ2NDYgYSg1MCUpKSAwJSwgdHJhbnNwYXJlbnQgNTAlLCB0cmFuc3BhcmVudCAxMDAlKTtcclxuICBwYWRkaW5nOiAwIDAgNDBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogJHpJbmRleC01LS1jdWx0dXJlO1xyXG5cclxuICAmLWZpbHRlcldyYXAge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMjBweCBhdXRvO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG4gIH1cclxuICAmLWZpbHRlciB7XHJcbiAgICBAZXh0ZW5kIC51LWNsZWFyZml4O1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIEBtaXhpbiBmb250LXNhbnNONztcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICBtYXJnaW46IDEwcHg7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgJjpob3ZlciwgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLndkLWZpbHRlck1vYmlsZSB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB3aWR0aDogOTclO1xyXG5cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKC0td2lkZSkge1xyXG4gICAgJi1maWx0ZXIgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgfVxyXG59XHJcblxyXG5AZGVmaW5lLWV4dGVuZCAlY3VsdHVyZUJsb2NrU3R5bGUge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICBib3JkZXI6IDE1cHggc29saWQgJGNvbG9yLWJsYWNrO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi53ZC1DdWx0dXJlRmVhdHVyZWQsIC53ZC1DdWx0dXJlTGlzdCB7XHJcbiAgQGV4dGVuZCAudS1jbGVhcmZpeDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgXHJcbiAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlOyB9XHJcbiAgYSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcbi53ZC1pdGVtQ29udGVudHMgeyBkaXNwbGF5OiBub25lOyB9XHJcbi53ZC1pdGVtU3VtbWFyeSB7XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgY29sb3I6ICNhM2EzYTM7XHJcbiAgcGFkZGluZzogMTBweCA1cHggMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYm90dG9tOiAwOyBsZWZ0OiAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogNzU7XHJcbiAgQG1peGluIGZvbnQtc2l6ZSAxMSwgMTQ7XHJcbiAgQG1peGluIGZvbnQtc2Fuc040O1xyXG4gIFxyXG4gIHN0cm9uZywgcCwgc3BhbiB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgc3Ryb25nIHtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDE0O1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gIH1cclxuICBwIHsgbWFyZ2luOiAxMHB4IDA7IH1cclxuICBzcGFuIHtcclxuICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgIG1pbi1oZWlnaHQ6IDIwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMTI7XHJcbiAgICBAbWl4aW4gZm9udC1zYW5zTjc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBGZWF0dXJlZFxyXG4kZmVhdHVyZWRJdGVtV2lkdGg6IDUwJTtcclxuJGZlYXR1cmVkSXRlbU1vYmlsZVdpZHRoOiAxMDAlO1xyXG4ud2QtQ3VsdHVyZUZlYXR1cmVkIHtcclxuICBtYXJnaW46IDEwcHggYXV0byAwO1xyXG5cclxuICAmLWl0ZW0ge1xyXG4gICAgQGV4dGVuZCAlY3VsdHVyZUJsb2NrU3R5bGU7XHJcbiAgICBtYXJnaW46IDEwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygkZmVhdHVyZWRJdGVtV2lkdGggKiA5LzE2KTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgd2lkdGg6IGNhbGMoJGZlYXR1cmVkSXRlbVdpZHRoIC0gMjBweCk7XHJcbiAgfVxyXG4gIC53ZC1pdGVtU3VtbWFyeSB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDVweDtcclxuICAgIGJvdHRvbTogMjBweDtcclxuICAgIHdpZHRoOiA0MCU7XHJcbiAgfVxyXG4gIFxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1pZCkge1xyXG4gICAgLndkLWl0ZW1TdW1tYXJ5IHsgd2lkdGg6IDYwJTsgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXRTbWFsbCkge1xyXG4gICAgJi1pdGVtIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoJGZlYXR1cmVkSXRlbU1vYmlsZVdpZHRoICogOS8xNikgIWltcG9ydGFudDtcclxuICAgICAgd2lkdGg6IGNhbGMoJGZlYXR1cmVkSXRlbU1vYmlsZVdpZHRoIC0gMjBweCkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC53ZC1pdGVtU3VtbWFyeSB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggNXB4IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5kZWRzZWMtaGF4ZWQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTsgbGVmdDogNTAlO1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcclxuICB6LWluZGV4OiA1MDtcclxuICBAbWl4aW4gc2l6ZSA3NjhweCwgNDMycHg7XHJcblxyXG4gICYuZGVkc2VjLWhheGVkLXBpbmsgeyBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2N1bHR1cmUtaGF4LXNwcml0ZS1waW5rX25jc2EucG5nJyk7IH1cclxuICAmLmRlZHNlYy1oYXhlZC1ncmVlbiB7IGJhY2tncm91bmQ6IHVybCgnd2RfY3VsdHVyZS1oYXgtc3ByaXRlLWdyZWVuX25jc2EucG5nJyk7IH1cclxuICAmLmRlZHNlYy1oYXhlZC1ibHVlIHsgYmFja2dyb3VuZDogdXJsKCd3ZF9jdWx0dXJlLWhheC1zcHJpdGUtYmx1ZV9uY3NhLnBuZycpOyB9XHJcbn1cclxuXHJcbi8vIExpc3RcclxuJGxpc3RJdGVtV2lkdGg6IDMzLjMzJTtcclxuJGxpc3RJdGVtTWlkV2lkdGg6IDUwJTtcclxuJGxpc3RJdGVtTW9iaWxlV2lkdGg6IDEwMCU7XHJcbi53ZC1DdWx0dXJlTGlzdCB7XHJcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIC53ZC1DdWx0dXJlTGlzdC1pdGVtIHtcclxuICAgICAgYTpiZWZvcmUgeyBvcGFjaXR5OiAxOyB9XHJcbiAgICAgICY6aG92ZXIgYTpiZWZvcmUgeyBvcGFjaXR5OiAwOyB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLWl0ZW0ge1xyXG4gICAgQGV4dGVuZCAlY3VsdHVyZUJsb2NrU3R5bGU7XHJcbiAgICBtYXJnaW46IDEwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygkbGlzdEl0ZW1XaWR0aCAqIDkvMTYpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlLWluLW91dDtcclxuICAgIHdpZHRoOiBjYWxjKCRsaXN0SXRlbVdpZHRoIC0gMjBweCk7XHJcbiAgICBcclxuICAgICY6aG92ZXIgeyBib3JkZXItY29sb3I6ICRjb2xvci1ibHVlOyB9XHJcbiAgICAmLmlzLWhpZGRlbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmLmlzLWhheGVkLXBpbmsgeyBvdXRsaW5lOiAycHggc29saWQgJGNvbG9yLXBpbms7IH1cclxuICAgICYuaXMtaGF4ZWQtZ3JlZW4geyBvdXRsaW5lOiAycHggc29saWQgJGNvbG9yLWdyZWVuOyB9XHJcbiAgICAmLmlzLWhheGVkLWJsdWUgeyBvdXRsaW5lOiAycHggc29saWQgJGNvbG9yLWJsdWU7IH1cclxuICAgIFxyXG4gICAgYSB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICBhOmJlZm9yZSB7XHJcbiAgICAgIEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuICAgICAgYmFja2dyb3VuZDogY29sb3IoJGNvbG9yLWJsYWNrIGEoNjAlKSk7XHJcbiAgICAgIHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgbGVmdDogMDtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmRlZHNlYy1oYXhlZCB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtaXRlbVN1bW1hcnkge31cclxuXHJcbiAgQG1lZGlhICgtLXdpZGUpIHtcclxuICAgICYtaXRlbSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCRsaXN0SXRlbU1pZFdpZHRoICogOS8xNik7XHJcbiAgICAgIHdpZHRoOiBjYWxjKCRsaXN0SXRlbU1pZFdpZHRoIC0gMjBweCk7XHJcblxyXG4gICAgICAuZGVkc2VjLWhheGVkIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygkbGlzdEl0ZW1Nb2JpbGVXaWR0aCAqIDkvMTYpICFpbXBvcnRhbnQ7XHJcbiAgICAgIHdpZHRoOiBjYWxjKCRsaXN0SXRlbU1vYmlsZVdpZHRoIC0gMjBweCkgIWltcG9ydGFudDtcclxuXHJcbiAgICAgIC5kZWRzZWMtaGF4ZWQge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNb2RhbFxyXG4ud2QtQ3VsdHVyZS1tb2RhbFdyYXAge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwOyByaWdodDogMDsgYm90dG9tOiAwOyBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6ICR6SW5kZXgtOC0tY3VsdHVyZU1vZGFsV3JhcDtcclxuXHJcbiAgJi5pcy1vcGVuIHsgZGlzcGxheTogYmxvY2s7IH1cclxuICBpbWcgeyBtYXgtd2lkdGg6IDEwMCU7IH1cclxuICBcclxuICAud2QtQ3VsdHVyZS1tb2RhbCwgLndkLUN1bHR1cmUtbW9kYWxPdmVybGF5IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB9XHJcbiAgLndkLUN1bHR1cmUtbW9kYWwge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgYm9yZGVyOiAxMHB4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBjb2xvcjogI2ExYTFhMTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiAxMTgwcHg7XHJcbiAgICBwYWRkaW5nOiA4MHB4IDM1cHg7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgei1pbmRleDogJHpJbmRleC04LS1jdWx0dXJlTW9kYWw7XHJcbiAgICBAbWl4aW4gc2l6ZSA5NiUsIDU3MHB4O1xyXG4gIH1cclxuICAud2QtQ3VsdHVyZS1tb2RhbENvbnRlbnQge1xyXG4gICAgQGV4dGVuZCAudS1jbGVhcmZpeDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gIC53ZC1DdWx0dXJlLW1vZGFsQ2xvc2Uge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAtNTBweDsgcmlnaHQ6IC0xMHB4O1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIEBtaXhpbiBzaXplIDI2cHgsIDI2cHg7XHJcbiAgfVxyXG4gIC53ZC1DdWx0dXJlLW1vZGFsT3ZlcmxheSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBjb2xvcigkY29sb3ItYmxhY2sgYSg5MCUpKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgbGVmdDogMDtcclxuICAgIHotaW5kZXg6ICR6SW5kZXgtNy0tY3VsdHVyZU1vZGFsT3ZlcmxheTtcclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgLndkLUN1bHR1cmUtbW9kYWwgeyBwYWRkaW5nOiAzMHB4OyB9XHJcbiAgfVxyXG59XHJcblxyXG4ubW9kYWwtdGV4dE5vZGUge1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5bY2xhc3NePVwibW9kYWwtY29sLVwiXSwgW2NsYXNzKj1cIiBtb2RhbC1jb2wtXCJdIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIG1hcmdpbjogMCAxMHB4O1xyXG59XHJcbi5tb2RhbC1jb2wtMS0zIHtcclxuICB3aWR0aDogY2FsYygzMy4zMyUgLSAyMHB4KTtcclxufVxyXG4ubW9kYWwtY29sLTItMyB7XHJcbiAgd2lkdGg6IGNhbGMoNjYuNjYlIC0gMjBweCk7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kICgtLXdpZGUpIHtcclxuICAubW9kYWwtY29sLTEtMywgLm1vZGFsLWNvbC0yLTMge1xyXG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gIC5tb2RhbC1jb2wtMS0zLCAubW9kYWwtY29sLTItMyB7XHJcbiAgICBtYXJnaW46IDEwcHggYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IGNhbGMoNTAlIC0gMjBweCk7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKC0tbW9iaWxlKSB7XHJcbiAgLm1vZGFsLWNvbC0xLTMsIC5tb2RhbC1jb2wtMi0zIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxyXG4gIC5tb2RhbC1jb2wtMS0zLCAubW9kYWwtY29sLTItMyB7XHJcbiAgICBpbWcgeyBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XHJcbiAgLndkLUN1bHR1cmUtbW9kYWxXcmFwIHtcclxuICAgIC53ZC1DdWx0dXJlLW1vZGFsIHtcclxuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDUwcHgpO1xyXG4gICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIGFuZCAobWF4LWhlaWdodDogNTY4cHgpLCAobWF4LWhlaWdodDogNjAwcHgpIHtcclxuICAud2QtQ3VsdHVyZS1tb2RhbFdyYXAge1xyXG4gICAgLndkLUN1bHR1cmUtbW9kYWwge1xyXG4gICAgICBib3R0b206IDE1cHg7XHJcbiAgICAgIHRvcDogYXV0bztcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgICAgIGhlaWdodDogODAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDQyMHB4KSB7XHJcbiAgLndkLUN1bHR1cmUtbW9kYWxXcmFwIHtcclxuICAgIC53ZC1DdWx0dXJlLW1vZGFsIHtcclxuICAgICAgYm90dG9tOiAxNXB4O1xyXG4gICAgICB0b3A6IGF1dG87XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgICBoZWlnaHQ6IDcwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDM4MHB4KSB7XHJcbiAgLndkLUN1bHR1cmUtbW9kYWxXcmFwIHtcclxuICAgIC53ZC1DdWx0dXJlLW1vZGFsIHsgaGVpZ2h0OiA2NSU7IH1cclxuICB9XHJcbn1cclxuIiwiLy8gU2hhcmVkIENyb3dkdHdpc3Qgc3R5bGVzXHJcbi5wYWdlLWNyb3dkdHdpc3QgI21haW4ge1xyXG4gIGJhY2tncm91bmQ6IHVybCgnd2RfY3QtZGVmYXVsdC1wYWdlLWJnX25jc2EucG5nJykgNTAlIDAgbm8tcmVwZWF0O1xyXG4gIHBhZGRpbmctdG9wOiAyNzBweDtcclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbmF2V2lkZSkge1xyXG4gICAgcGFkZGluZy10b3A6IDE0MHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmN0LXBhZ2VIZWFkZXIge1xyXG4gIEBleHRlbmQgLmdhbW1hO1xyXG4gIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgbWFyZ2luOiA4MHB4IGF1dG8gMCBhdXRvO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICsgLmN0LXJlZ2lvbkhlYWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmN0LXBhZ2VIZWFkZXItZGVzY3JpcHRpb24ge1xyXG4gIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBAbWl4aW4gZm9udC1zaXplIDE0LCAxNiwgMTAwO1xyXG4gIEBtaXhpbiBmb250LXNhbnNONDtcclxufVxyXG5cclxuLmN0LXJlZ2lvbkhlYWRlciB7XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIC8vbWFyZ2luOiA1MHB4IGF1dG87XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XHJcbiAgcGFkZGluZzogMTVweCA0NXB4IDVweCA0NXB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIEBtaXhpbiBmb250LXNpemUgMTQsIDI0O1xyXG5cclxuICBoMSwgaDIsIGgzIHtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIEBtaXhpbiBmb250LXNhbnNONztcclxuICAgIEBtaXhpbiBmb250LXNpemUgNDgsIDQwO1xyXG4gIH1cclxuXHJcbiAgaDMge1xyXG4gICAgbGluZS1oZWlnaHQ6IDQ4cHg7XHJcbiAgfVxyXG5cclxuICAuaGlnaGxpZ2h0LWdyZWVuIHtcclxuICAgIGNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICAubG93ZXJjYXNlIHtcclxuICAgIEBleHRlbmQgLmRlbHRhO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLW1vYmlsZSkge1xyXG4gICAgcGFkZGluZzogMTVweCAwIDVweCAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgaDMge1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY3QtZmlsdGVycyB7XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG4gIG1hcmdpbjogMjBweCBhdXRvO1xyXG4gIHBhZGRpbmc6IDE1cHg7XHJcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gIEBtaXhpbiBmb250LXNpemUgMTg7XHJcbiAgQG1peGluIGZvbnQtc2Fuc043O1xyXG5cclxuICBsaSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgMTBweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tbGVmdDogMDsgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICAgICAgY29sb3I6ICRjb2xvci1iYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICAgICAgY29sb3I6ICRjb2xvci1iYWNrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuYm9keS5hZ2VnYXRlLXBhc3NlZCB7XHJcbiAgICAuY3QtZmlsdGVycyBsaSB7XHJcbiAgICAgICAgY3Vyc29yOiB1cmwoJ3dkX21pZGRsZS1maW5nZXItY3Vyc29yX25jc2EuY3VyJyksIHBvaW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFxyXG4gICBCYXNpYyBDcm93ZHR3aXN0IFdpZGdldCBTdHlsaW5nXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi5jdC13aWRnZXRzIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgXHJcbiAgaWZyYW1lIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAuYnRuLWNvbnRhaW5lciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiA1cHggMjVweCAyMHB4IDI1cHg7XHJcbiAgfVxyXG5cclxuICAvLyBPdmVycmlkZSBDcm93ZHRpc3QgYnV0dG9ucyB0eWxpbmdcclxuICAuYnRuIHtcclxuICAgIGJhY2tncm91bmQ6ICMxMmNmZmUgIWltcG9ydGFudDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICBsaW5lLWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiAwIDI1cHggIWltcG9ydGFudDtcclxuXHJcbiAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogY29sb3IoJGNvbG9yLWJsdWUgYmxhY2tuZXNzKDE1JSkpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY3Qtd2lkZ2V0cy0tZnVsbCB7XHJcbiAgaWZyYW1lIHtcclxuICAgIG1heC13aWR0aDogMTIwMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmN0LXdpZGdldHMtLWNvbmRlbnNlZCB7XHJcbiAgaWZyYW1lIHtcclxuICAgIG1heC13aWR0aDogMTExM3B4O1xyXG4gIH1cclxufVxyXG5cclxuLmN0LXdpZGdldC0tcmV3YXJkc0hpc3Rvcnkge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCd3ZF9kaWdpdGFsLXdhdmUtYmVmb3JlX25jc2EucG5nJyksIHVybCgnd2RfZGlnaXRhbC13YXZlLWFmdGVyX25jc2EucG5nJykgMCBib3R0b20sICRjb2xvci1ibHVlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gICAgbWFyZ2luLXRvcDogMTI1cHg7XHJcbiAgICBwYWRkaW5nOiA4MHB4IDAgMTY1cHggMDtcclxuXHJcbiAgICBpZnJhbWUge1xyXG4gICAgICBwYWRkaW5nOiA3MHB4IDI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLXdpZGVzdCkge1xyXG4gICAgICBpZnJhbWV7XHJcbiAgICAgICAgcGFkZGluZzogNDVweCA0MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLW1heFdpZHRoKSB7XHJcbiAgICAgIGlmcmFtZSB7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdC1yZXdhcmRzLWZ1bGwge1xyXG4gIC5jdC1wYWdlSGVhZGVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY3QtcmV3YXJkcy1hY3Rpdml0ZXMge1xyXG4gICAgcGFkZGluZzogNTBweCAwIDE3MHB4IDA7XHJcbn1cclxuXHJcbi5jdC13aWRnZXQtLWZlYXR1cmVkUmV3YXJkcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2RpZ2l0YWwtd2F2ZS1iZWZvcmVfbmNzYS5wbmcnKSwgdXJsKCd3ZF9kaWdpdGFsLXdhdmUtYWZ0ZXJfbmNzYS5wbmcnKSAwIGJvdHRvbSwgJGNvbG9yLWJsdWU7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbiAgICBtYXJnaW4tdG9wOiAxMjVweDtcclxuICAgIHBhZGRpbmc6IDgwcHggMCAxNjVweCAwO1xyXG5cclxuICAgICYuZnVsbC1yZXdhcmRzIHtcclxuICAgICAgcGFkZGluZzogNTBweCAwIDMwcHggMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gUHJldmVudCBjcm93ZHR3aXN0IGJyZWFrcG9pbnRzIGZyb20gbWVzc2luZyB1cCBwYWdlXHJcbi5wYWdlLWNyb3dkdHdpc3Qge1xyXG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxufSIsIi8vIENyb3dkVHdpc3QgbmF2aWdhdGlvblxyXG4uY3QtbmF2aWdhdGlvbiB7XHJcbiAgQGV4dGVuZCAudS1jbGVhcmZpeDtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIG1heC13aWR0aDogMTIwMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIEBtaXhpbiBmb250LXNhbnNONztcclxuICBAbWl4aW4gZm9udC1zaXplIDE0O1xyXG5cclxuICAuY3QtbmF2aWdhdGlvbkN1cnJlbnQge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMTg7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuICAgICAgYm9yZGVyLXRvcDogMTNweCBzb2xpZCAkY29sb3ItYmx1ZTtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7IHJpZ2h0OiAyMHB4O1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIEBleHRlbmQgLnUtY2xlYXJmaXg7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMzBweCAxNXB4O1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gIH1cclxuXHJcbiAgbGkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKTpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnLyc7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luOiAwIDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhIHtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICBib3R0b206IDVweDtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAmOmJlZm9yZSB7IG9wYWNpdHk6IDE7IH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbmF2V2lkZSkge1xyXG4gICAgd2lkdGg6IDk2JTtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7XHJcbiAgICAuY3QtbmF2aWdhdGlvbkN1cnJlbnQgeyBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgJi5pcy1vcGVuIHtcclxuICAgICAgdWwgeyBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgfVxyXG4gICAgdWwge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZSB1cmwoJ3dkX2JnLW5hdi10aWxlX25jc2EuanBnJykgcmVwZWF0O1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMTAwJTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgQG1peGluIGZvbnQtc2l6ZSAyMTtcclxuICAgIH1cclxuICAgIGxpIHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCk6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGNvbnRlbnQ6ICcvJztcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJvdHRvbTogYXV0bzsgbGVmdDogYXV0bzsgcmlnaHQ6IGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmJvZHkuYWdlZ2F0ZS1wYXNzZWQge1xyXG4gICAgLmN0LW5hdmlnYXRpb24gLmN0LW5hdmlnYXRpb25DdXJyZW50IHtcclxuICAgICAgICBjdXJzb3I6IHVybCgnd2RfbWlkZGxlLWZpbmdlci1jdXJzb3JfbmNzYS5jdXInKSwgcG9pbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmN0LW5hdmlnYXRpb24tLW92ZXJ2aWV3IHtcclxuICAgIC8vIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjayAhaW1wb3J0YW50O1xyXG4gICAgLy8gYm9yZGVyOiAxNHB4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIC8vIG1heC13aWR0aDogMTIwMHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBpZnJhbWUge1xyXG4gICAgICBoZWlnaHQ6IDk1cHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuY3QtbmF2aWdhdGlvbi0tbGVmdCxcclxuICAgIC5jdC1uYXZpZ2F0aW9uLS1yaWdodCB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5jdC1uYXZpZ2F0aW9uLS1sZWZ0IHtcclxuICAgICAgd2lkdGg6IDc1JTtcclxuICAgIH1cclxuXHJcbiAgICAuY3QtbmF2aWdhdGlvbi0tcmlnaHQge1xyXG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBhZGRlZCBwZXIgY2xpZW50XHJcbiAgICAgIHdpZHRoOiAyNSU7XHJcblxyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZ3JleS00MDtcclxuICAgICAgICAgIHRvcDogMTBweDsgbGVmdDogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI1ZGVnKTtcclxuICAgICAgICAgIEBtaXhpbiBzaXplIDJweCwgNzlweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLW5hdldpZGUpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufSIsIi8vIENyb3dkdHdpc3QgTGFuZGluZyBQYWdlXHJcbi5wYWdlLWNyb3dkdHdpc3QtbGFuZGluZyAjbWFpbiB7XHJcbiAgYmFja2dyb3VuZDogdXJsKCd3ZF9jdC1jYWxsb3V0LWJnX25jc2EucG5nJykgNTAlIDAgbm8tcmVwZWF0O1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS13aWRlKSB7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE1MCUgYXV0bztcclxuICB9XHJcbn1cclxuXHJcbi8vIENhbGxvdXRcclxuLmN0LWxhbmRpbmdDYWxsb3V0IHtcclxuICBwYWRkaW5nOiA0MDBweCAzMHB4IDA7XHJcblxyXG4gIC5jdC1sYW5kaW5nQ2FsbG91dC1jb250ZW50IHtcclxuICAgIGNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogNjAwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAbWl4aW4gZm9udC1zYW5zTjc7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDE0LCAyNDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKCd3ZF9jdC1zaGFkb3dfbmNzYS5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICBsZWZ0OiA1MCU7IHRvcDogLTc1JTtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAtMTUwJTtcclxuICAgICAgQG1peGluIHNpemUgMzAwJSwgMzAwJTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0td2lkZSkge1xyXG4gICAgcGFkZGluZy10b3A6IDQwJTtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMzAlO1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXRTbWFsbCkge1xyXG4gICAgcGFkZGluZy10b3A6IDIwJTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFN0ZXBzXHJcbi5jdC1sYW5kaW5nU3RlcHMge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgbWFyZ2luOiA2MHB4IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1heFdpZHRoKSB7XHJcbiAgICBwYWRkaW5nOiAwIDMwcHg7XHJcbiAgfVxyXG59XHJcbi5jdC1sYW5kaW5nU3RlcHMtc3RlcCB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjb2xvcjogIzk5OTtcclxuICBmbG9hdDogbGVmdDtcclxuICBtYXJnaW46IDAgMjBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gMjhweCk7XHJcbiAgQG1peGluIGZvbnQtc2l6ZSAxNDtcclxuXHJcbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xyXG4gICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gIH1cclxuICAmOmJlZm9yZSB7XHJcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuICAgIHRvcDogMTBweDsgbGVmdDogMTBweDtcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvdHRvbTogMTBweDsgcmlnaHQ6IDEwcHg7XHJcbiAgfVxyXG5cclxuICAmLmN0LWxhbmRpbmdTdGVwcy1zdGVwLS1maXJzdCB7IG1hcmdpbi1sZWZ0OiAwOyB9XHJcbiAgJi5jdC1sYW5kaW5nU3RlcHMtc3RlcC0tbGFzdCB7IG1hcmdpbi1yaWdodDogMDsgfVxyXG5cclxuICBhIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWluLWhlaWdodDogMTkwcHg7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHggMjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICBAbWl4aW4gc2l6ZSAxMDAlLCAxMDAlO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHRvcDogMDsgbGVmdDogMDsgYm90dG9tOiAwO1xyXG4gICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBAbWl4aW4gZm9udC1zYW5zTjc7XHJcbiAgICB9XHJcbiAgICBzdHJvbmcge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBAbWl4aW4gZm9udC1zaXplIDI0O1xyXG4gICAgfVxyXG5cclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIge1xyXG4gICAgICBoNCB7IGNvbG9yOiAkY29sb3ItYmx1ZTsgfVxyXG4gICAgICBzdHJvbmcgeyBjb2xvcjogJGNvbG9yLWJsYWNrOyB9XHJcbiAgICAgICY6YmVmb3JlIHsgd2lkdGg6IDEwMCU7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgbWFyZ2luOiAyMHB4IDAgMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBtaW4taGVpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uY3QtbGFuZGluZ1N0ZXBzLXNpZ251cCB7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICBjbGVhcjogYm90aDtcclxuICBwYWRkaW5nLXRvcDogNDBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gIC5idG4geyBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XHJcbn1cclxuXHJcbi8vIEFjdGl2aXRpZXNcclxuLmN0LWxhbmRpbmdBY3Rpdml0aWVzIHtcclxuICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2N0X211bW15X25jc2EucG5nJykgY2VudGVyIHRvcCBuby1yZXBlYXQ7XHJcblxyXG4gIC5idG4ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTVweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFJld2FyZHNcclxuLmN0LWxhbmRpbmdSZXdhcmRzIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICBwYWRkaW5nOiAxMzBweCAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgei1pbmRleDogNTtcclxuXHJcbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xyXG4gICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgQG1peGluIHNpemUgMTAwJSwgNDI2cHg7XHJcbiAgfVxyXG4gICY6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnd2RfZGlnaXRhbC13YXZlLWJlZm9yZV9uY3NhLnBuZycpIDAgMCByZXBlYXQteDtcclxuICAgIHRvcDogMDtcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2RpZ2l0YWwtd2F2ZS1hZnRlcl9uY3NhLnBuZycpIDAgMCByZXBlYXQteDtcclxuICAgIGJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIC5jdC1sYW5kaW5nUmV3YXJkcy1jb250YWluZXIge1xyXG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcblxyXG4gIC5jdC1yZWdpb25IZWFkZXIge1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gNTBweCBhdXRvO1xyXG5cclxuICAgIGgzIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDI1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1tYXhXaWR0aCkge1xyXG4gICAgcGFkZGluZzogMTMwcHggMzBweDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1vYmlsZSkge1xyXG4gICAgcGFkZGluZzogMTMwcHggMTBweDtcclxuICB9XHJcbn1cclxuLmN0LWxhbmRpbmdSZXdhcmRzLXJld2FyZCB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBmbG9hdDogbGVmdDtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIHdpZHRoOiAzMy4zMyU7XHJcbiAgXHJcbiAgLmN0LWxhbmRpbmdSZXdhcmRzLXJld2FyZEltZyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAuY3QtbGFuZGluZ1Jld2FyZHMtcmV3YXJkQ29udGVudCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIG1pbi1oZWlnaHQ6IDI2MHB4O1xyXG4gICAgcGFkZGluZzogNTBweCAzMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc0FsdE40O1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxNCwgMjQ7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuICAgICAgYmFja2dyb3VuZDogIzRkNGQ0ZDtcclxuICAgICAgdG9wOiAzMHB4OyBib3R0b206IDIwcHg7IHJpZ2h0OiAwO1xyXG4gICAgICB3aWR0aDogMXB4O1xyXG4gICAgfVxyXG5cclxuICAgIHN0cm9uZyB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIEBtaXhpbiBmb250LXNhbnNONztcclxuICAgICAgQG1peGluIGZvbnQtc2l6ZSAyNDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1pZCkge1xyXG4gICAgbWFyZ2luOiA1MHB4IGF1dG8gMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KSB7XHJcbiAgICAuY3QtbGFuZGluZ1Jld2FyZHMtcmV3YXJkQ29udGVudCB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgICBzdHJvbmcgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jdC1sYW5kaW5nUmV3YXJkcy12aWV3QWxsIHtcclxuICAvKmJhY2tncm91bmQ6ICRjb2xvci1ibGFjazsqL1xyXG4gIGNsZWFyOiBib3RoO1xyXG4gIG1heC13aWR0aDogMTIwMHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIHBhZGRpbmc6IDMwcHggMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8vIEpvaW5cclxuLmN0LWxhbmRpbmdKb2luIHtcclxuICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2N0LWpvaW5kZWRzZWMtYmdfbmNzYS5wbmcnKSA1MCUgMTAwJSBuby1yZXBlYXQsIC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMCwwLDAsMC4zKSAwJSwgcmdiYSg3OSw3OSw3OSwwLjMpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xyXG4gIGJhY2tncm91bmQ6IHVybCgnd2RfY3Qtam9pbmRlZHNlYy1iZ19uY3NhLnBuZycpIDUwJSAxMDAlIG5vLXJlcGVhdCwgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwLjMpIDAlLHJnYmEoNzksNzksNzksMC4zKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cclxuICBiYWNrZ3JvdW5kOiB1cmwoJ3dkX2N0LWpvaW5kZWRzZWMtYmdfbmNzYS5wbmcnKSA1MCUgMTAwJSBuby1yZXBlYXQsIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICByZ2JhKDAsMCwwLDAuMykgMCUscmdiYSg3OSw3OSw3OSwwLjMpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cclxuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzRkMDAwMDAwJywgZW5kQ29sb3JzdHI9JyM0ZDRmNGY0ZicsR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTkgKi9cclxuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIHBhZGRpbmc6IDI4MHB4IDAgODBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIGgzIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogM3B4IDE1cHg7XHJcbiAgICB9XHJcbiAgICAmOmZpcnN0LW9mLXR5cGUgc3BhbiB7IHBhZGRpbmctdG9wOiAxMHB4OyB9XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IC03cHg7XHJcblxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBwYWRkaW5nOiAzcHggMTVweCAwIDE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jdC1sYW5kaW5nSm9pbi1jb250ZW50IHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogMjgwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDE1cHggMTVweDtcclxuXHJcbiAgICAuYnRuIHsgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxyXG4gIH1cclxufSIsIi8vIENyb3dkdHdpc3QgQWN0aXZpdGllcyBTdHlsZXNcclxuIiwiLy8gRkFRIENyb3dkdHdpc3Qgc3R5bGVzXHJcbi5hY2NvcmRpb24uY3QtZmFxc0xpc3Qge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBtYXgtd2lkdGg6IDEyMDBweDtcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgPiBkaXYgeyBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XHJcblxyXG4gIGgyIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LTMwO1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLWdyZXktMzA7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDI1cHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxODtcclxuXHJcbiAgICBhIHsgY29sb3I6ICRjb2xvci13aGl0ZTsgfVxyXG4gIH1cclxuXHJcbiAgLnBhbmUge1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLWJsdWU7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDYwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDE0LCAzMDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG5cclxuICAgICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBPcGVuZWQgU3R5bGVzXHJcbiAgLmFjY29yZGlvbkhlYWQuY3VycmVudCBoMiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWJsdWU7XHJcblxyXG4gICAgYSB7IGNvbG9yOiAkY29sb3ItYmxhY2s7IH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1heFdpZHRoKSB7XHJcbiAgICB3aWR0aDogOTQlO1xyXG4gIH1cclxufVxyXG5cclxuYm9keS5hZ2VnYXRlLXBhc3NlZCB7XHJcbiAgICAuYWNjb3JkaW9uLmN0LWZhcXNMaXN0IGgyIHtcclxuICAgICAgICBjdXJzb3I6IHVybCgnd2RfbWlkZGxlLWZpbmdlci1jdXJzb3JfbmNzYS5jdXInKSwgcG9pbnRlcjtcclxuICAgIH1cclxufSIsIi8vIENyb3dkdHdpc3QgZXJyb3Igc3R5bGVzXHJcbi5wYWdlLWNyb3dkdHdpc3QtZXJyb3IgI21haW4ge1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCkge1xyXG4gICAgcGFkZGluZy10b3A6IDE0MHB4O1xyXG4gIH1cclxufVxyXG4uY3QtcmVnaW9uSGVhZGVyLS1lcnJvciB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDAgMzBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgQG1peGluIGZvbnQtc2l6ZSAxNDtcclxuXHJcbiAgcCB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xyXG4gIH1cclxuICBcclxuICBoMyB7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSA2MCwgNjAsIC01MDtcclxuICB9XHJcbiAgc3Ryb25nIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIEBtaXhpbiBmb250LXNhbnNONjtcclxuICAgIEBtaXhpbiBmb250LXNpemUgMTg7XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQpIHtcclxuICAgIGgzIHsgQG1peGluIGZvbnQtc2l6ZSA0MiwgNDI7IH1cclxuICB9XHJcbn1cclxuLmN0LWVycm9yV3JhcCB7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBtYXgtd2lkdGg6IDEyMDBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgXHJcbiAgaDIgeyBAbWl4aW4gZm9udC1zYW5zTjc7IH1cclxuICBoNCB7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY3QtZXJyb3ItcmVhc29ucyB7XHJcbiAgY29sb3I6ICM5OTk7XHJcbiAgbWFyZ2luOiA0MHB4IGF1dG87XHJcbiAgcGFkZGluZzogMDtcclxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblxyXG4gIHN0cm9uZyB7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgQG1peGluIGZvbnQtc2l6ZSAxODtcclxuICAgIEBtaXhpbiBmb250LXNhbnNONztcclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJjpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgJjpudGgtY2hpbGQob2RkKSB7IGJhY2tncm91bmQ6IGNvbG9yKCM0ZjRmNGYgYSgzMCUpKTsgfVxyXG4gIH1cclxufSIsIi8vIEZvb3RlciBOYXZpZ2F0aW9uXHJcbi5jdC1mb290ZXItbmF2aWdhdGlvbiB7XHJcbiAgLy9iYWNrZ3JvdW5kOiB1cmwoJ3dkX2N0LWZvb3Rlci1uYXYtYmdfbmNzYS5wbmcnKSA1MCUgNTAlIG5vLXJlcGVhdCwgdXJsKCd3ZF9nbG9iYWwtYm9keS1ncmFkaWVudC1iZ19uY3NhLmpwZycpIDAgMCByZXBlYXQteDtcclxuXHJcbiAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzAwMDAwMCswLDRmNGY0ZisxMDAmMC4zKzAsMC4zKzEwMCAqL1xyXG4gIGJhY2tncm91bmQ6ICB1cmwoJ3dkX2N0LWZvb3Rlci1uYXYtYmdfbmNzYS5wbmcnKSA1MCUgNTAlIG5vLXJlcGVhdCwgLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwLjMpIDAlLCByZ2JhKDc5LDc5LDc5LDAuMykgMTAwJSk7IC8qIEZGMy42LTE1ICovXHJcbiAgYmFja2dyb3VuZDogIHVybCgnd2RfY3QtZm9vdGVyLW5hdi1iZ19uY3NhLnBuZycpIDUwJSA1MCUgbm8tcmVwZWF0LCAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDAsMCwwLDAuMykgMCUscmdiYSg3OSw3OSw3OSwwLjMpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xyXG4gIGJhY2tncm91bmQ6ICB1cmwoJ3dkX2N0LWZvb3Rlci1uYXYtYmdfbmNzYS5wbmcnKSA1MCUgNTAlIG5vLXJlcGVhdCwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIHJnYmEoMCwwLDAsMC4zKSAwJSxyZ2JhKDc5LDc5LDc5LDAuMykgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjNGQwMDAwMDAnLCBlbmRDb2xvcnN0cj0nIzRkNGY0ZjRmJyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqL1xyXG5cclxuICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgbWFyZ2luLXRvcDogNTBweDtcclxuICBwYWRkaW5nOiAxMTBweCAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgQG1peGluIGZvbnQtc2Fuc043O1xyXG4gIEBtaXhpbiBmb250LXNpemUgMTQ7XHJcblxyXG4gIHVsIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBwYWRkaW5nOiAxMHB4IDUwcHg7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJy8nO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgQGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICBsZWZ0OiAxMHB4O1xyXG4gICAgICByaWdodDogMTBweDtcclxuICAgICAgYm90dG9tOiA1cHg7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG4gICAgfVxyXG5cclxuICAgIGh0bWw6bm90KC5pcy1tb2JpbGUpICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAmOmJlZm9yZSB7IG9wYWNpdHk6IDE7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldFNtYWxsKSB7XHJcbiAgICBAbWl4aW4gZm9udC1zaXplIDE4O1xyXG5cclxuICAgIHVsIHsgcGFkZGluZzogMTBweDsgfVxyXG4gICAgbGkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjb250ZW50OiAnLyc7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGxlZnQ6IGF1dG87IHJpZ2h0OiBhdXRvOyBib3R0b206IGF1dG87XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIiN0b3NEaWFsb2cge1xyXG5cdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHJcblx0Lm1vZGFsLWhlYWRlciB7XHJcblx0XHRib3JkZXItYm90dG9tOiBub25lO1xyXG5cdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG5cdFx0aDMge1xyXG5cdFx0XHRsaW5lLWhlaWdodDogNTRweDtcclxuXHRcdFx0bWFyZ2luOiAxMHB4IDAgLTEwcHggMCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Lm1vZGFsLWJvZHkge1xyXG5cdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcblx0XHRoNCB7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAzNnB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHAge1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0XHRAbWl4aW4gZm9udC1zYW5zTjQ7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQubW9kYWwtZm9vdGVyIHtcclxuXHRcdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcclxuXHRcdGJvcmRlci10b3A6IG5vbmU7XHJcblx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cclxuXHRcdC5oYXZlLXJlYWQge1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cdFx0XHRtYXJnaW46IDAgMCAxMnB4IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0IC8vIE92ZXJyaWRlIENyb3dkdGlzdCBidXR0b25zIHR5bGluZ1xyXG5cdFx0LmJ0biB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICMxMmNmZmUgIWltcG9ydGFudDtcclxuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdFx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG5cdFx0XHRjb2xvcjogIzAwMDtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xyXG5cdFx0XHRwYWRkaW5nOiAwIDI1cHggIWltcG9ydGFudDtcclxuXHRcdFx0dGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcblx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogY29sb3IoJGNvbG9yLWJsdWUgYmxhY2tuZXNzKDE1JSkpICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuYWN0aXZpdHktbGlzdCwgI2FjdGl2aXR5LWxpc3Qge1xyXG5cdC5jdC1oZWFkZXItY29sb3IgeyBkaXNwbGF5OiBub25lOyB9XHJcblx0LmNvbnRhaW5lciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxyXG5cdFxyXG5cdHVsIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxyXG5cdGxpLCAuYWN0aXZpdHkge1xyXG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRcdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0bWFyZ2luOiAxNXB4O1xyXG5cdFx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0QG1peGluIHNpemUgMzUwcHgsIDM1MHB4O1xyXG5cclxuXHRcdCY6YmVmb3JlLFxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuXHRcdFx0bGVmdDogNTAlOyB0b3A6IDA7XHJcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG5cdFx0XHRAbWl4aW4gc2l6ZSAyNDVweCwgMjQ1cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XHJcblx0XHRcdHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0XHR9XHJcblxyXG5cdFx0JjphZnRlcntcclxuXHRcdFx0QGV4dGVuZCAlcHNldWRvRWxlbWVudEFic29sdXRlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgNTAlLCB0cmFuc3BhcmVudCA1MCUpLCBcclxuXHRcdFx0XHRcdFx0bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmZmIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSwgXHJcblx0XHRcdFx0XHRcdGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmYgNTAlLCB0cmFuc3BhcmVudCA1MCUpLCBcclxuXHRcdFx0XHRcdFx0bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiA1MCUsIHRyYW5zcGFyZW50IDUwJSk7XHJcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogNTVweCAzcHgsIDU1cHggM3B4LCAzcHggNTVweCwgM3B4IDU1cHg7XHJcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMCAxMDAlLCAwIDAsIDEwMCUgMDtcclxuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14LCByZXBlYXQteCwgcmVwZWF0LXksIHJlcGVhdC15O1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IGNvbG9yKCRjb2xvci13aGl0ZSBhKDEwJSkpO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdGFuaW1hdGlvbjogY3QtbW92aW5nLWJvcmRlciAxLjVzIGxpbmVhciBpbmZpbml0ZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGRpdiB7XHJcblx0XHRcdGNsZWFyOiBib3RoO1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cdFx0XHRmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdHotaW5kZXg6ICR6SW5kZXgtMS1jdFJld2FyZHNJdGVtcztcclxuXHRcdFx0QG1peGluIGZvbnQtc2l6ZSAxNCwgMTYsIC01MDtcclxuXHRcdH1cclxuXHJcblx0XHQuaW1hZ2UtY29udGFpbmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRcdFx0bWFyZ2luLXRvcDogMTE1cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0LnRpdGxlIHtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdEBtaXhpbiBmb250LXNhbnNONDtcclxuXHRcdH1cclxuXHJcblx0XHQuZGVzY3JpcHRpb24ge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblxyXG5cdFx0LmN0LXBvaW50cy1jb2xvciB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItZ3JlZW4gIWltcG9ydGFudDtcclxuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XHJcblx0XHRcdEBtaXhpbiBmb250LXNhbnNONztcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSAoLS1kYXNoYm9hcmRBY3Rpdml0eSkge1xyXG5cdFx0dWwge1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdG1heC13aWR0aDogOTcwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0dWwgbGksIC5hY3Rpdml0eSB7XHJcblx0XHRcdG1hcmdpbjogMTBweDtcclxuXHRcdFx0QG1peGluIHNpemUgMzAwcHgsIDMwMHB4O1xyXG5cclxuXHRcdFx0JjpiZWZvcmUsICY6YWZ0ZXIgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgc2NhbGUoMC44NSk7IH1cclxuXHRcdFx0LmltYWdlLWNvbnRhaW5lciB7IG1hcmdpbi10b3A6IDg3cHg7IH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSAoLS13aWRlKSB7XHJcblx0XHR1bCB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxyXG5cdH1cclxufVxyXG4iLCIvLyBVYmliYXIgU3R5bGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4udWJpYmFyIHtcclxuXHR0b3A6IDA7IGxlZnQ6IDA7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHotaW5kZXg6ICR6aW5kZXgtMTAtLXViaWJhcjtcclxufSIsIi53ZCB7XHJcbiAgICAmLVByZWxvYWRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB0b3A6IDA7IGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogJHppbmRleC1tYXgtLXByZWxvYWRlcjtcclxuICAgICAgICBAbWl4aW4gc2l6ZSAxMDAlLDEwMCU7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIEBleHRlbmQgJXBzZXVkb0VsZW1lbnRBYnNvbHV0ZTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnd2RfcHJlbG9hZGVyLWJyYWluX25jc2EuZ2lmJykgNTAlIDAgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgIGNvbnRlbnQ6ICdMb2FkaW5nLi4uJztcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAyNDBweDtcclxuICAgICAgICAgIHRvcDogNTAlOyBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICB3aWR0aDogMjQwcHg7XHJcbiAgICAgICAgICBAbWl4aW4gZm9udC1zYW5zQWx0TjQ7XHJcbiAgICAgICAgICBAbWl4aW4gZm9udC1zaXplIDIxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvLyBLZXlwYWQgU3R5bGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi53ZC1LZXlwYWQge1xyXG4gICAgYmFja2dyb3VuZDogIzE0MTQxNDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBmb250LWZhbWlseTogJ1BleGljb01pY3JvTW9ubyc7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiAkekluZGV4LTEwLS1rZXlwYWQ7XHJcbiAgICAmLmlzLXNob3dpbmcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2QtS2V5cGFkLWNsb3NlIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAwLCAwLCAwLjUpO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBsaW5lLWhlaWdodDogMjhweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi53ZC1LZXlwYWQtaW5wdXQge1xyXG4gICAgQGV4dGVuZCAudS1jbGVhcmZpeDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1zaXplOiA0MnB4O1xyXG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDk1JTtcclxuICAgIGxpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMTcxNzE3O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwIDJweCAwIDNweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDtcclxuICAgICAgICBwYWRkaW5nOiAyNXB4IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDVweCk7XHJcbiAgICAgICAgJi5pcy1jb3JyZWN0IHtcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiBmbGFzaC1jb3JyZWN0IDAuOHMgMiBsaW5lYXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaXMtaW5jb3JyZWN0IHtcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiBmbGFzaC1pbmNvcnJlY3QgMC44cyAyIGxpbmVhcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZC1LZXlwYWQta2V5cyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGxpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMmEyYTJhO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgY29sb3I6ICNmNWY1ZjU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBsaW5lLWhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICBtYXJnaW46IDJweCAzcHggM3B4IDJweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMlIC0gNXB4KTtcclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM5YmU4Mjg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndkLUtleXBhZC1rZXlzLS1pbmFjdGl2ZSB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLndkIHtcclxuICAgICYtTWFwIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgY3Vyc29yOiBncmFiO1xyXG4gICAgICAgICYtV3JhcHBlciB7XHJcbiAgICAgICAgICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgICAgICAgICAgIGRpcmVjdGlvbjogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLVRpbGVzIHtcclxuICAgICAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLVRpbGUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLU1hcmtlcnMge1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtTWFya2VyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLU5hdmlnYXRpb24ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogNjRweDtcclxuICAgICAgICAgICAgcmlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtWm9vbWluIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCdleHBlcmllbmNlLW1hcC16b29taW4ucG5nJyk7XHJcbiAgICAgICAgICAgIGN1cnNvcjogaGFuZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ab29tb3V0IHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB0b3A6IDMycHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCdleHBlcmllbmNlLW1hcC16b29tb3V0LnBuZycpO1xyXG4gICAgICAgICAgICBjdXJzb3I6IGhhbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vIFBPQyBFeHBlcmllbmNlIFN0eWxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ucGFnZS1leHBlcmllbmNlLXBvYyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ2JnLWV4cGVyaWVuY2UtbWFwLXBvYy5qcGcnKSA1MCUgMCBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLndkLU1hcCB7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgfVxyXG4gICAgLndkLWdsb2JhbEZvb3RlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgID4gLnNvY2tldC10b2tlbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBcIkx1Y2lkYSBHcmFuZGVcIiwgc2Fucy1zZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDhweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzI4cHgpIHtcclxuICAgICAgICAud2QtZ2xvYmFsSGVhZGVyLFxyXG4gICAgICAgIC53ZC1xckNvZGUsXHJcbiAgICAgICAgPiAuc29ja2V0LXRva2VuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZC1NYXAtY3RhV3JhcCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIFwiTHVjaWRhIEdyYW5kZVwiLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIGgyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDYwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMTJjZmZlO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XHJcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgLnNvY2tldC10b2tlbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAud2QtTWFwLWpvaW5Sb29tIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmlzLW1vYmlsZSB7XHJcbiAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNvY2tldC10b2tlbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud2QtTW9kYWwge1xyXG4gICAgQGV4dGVuZCAudS1jbGVhcmZpeDtcclxuICAgIGJhY2tncm91bmQ6ICMwMDA7XHJcbiAgICBib3JkZXI6IDhweCBzb2xpZCAjZmZmO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGZvbnQtZmFtaWx5OiAnUGV4aWNvTWljcm9Nb25vJztcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICB3aWR0aDogNzAwcHg7XHJcbiAgICAmLmlzLW9wZW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAud2QtTW9kYWwtYXNzZXQsXHJcbiAgICAud2QtTW9kYWwtZGV0YWlscyB7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgLndkLU1vZGFsLWFzc2V0IHtcclxuICAgICAgICB3aWR0aDogNjUlO1xyXG4gICAgfVxyXG4gICAgLndkLU1vZGFsLWRldGFpbHMge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3NHB4O1xyXG4gICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAgICAgICB3aWR0aDogMzUlO1xyXG4gICAgICAgIC53ZC1xckNvZGUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHVzZXItZHJhZzogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubG9yZW0ge1xyXG4gICAgICAgIGNvbG9yOiAjNjc2NzY3O1xyXG4gICAgfVxyXG4gICAgLndkLUtleXBhZFRyaWdnZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMxMmNmZmU7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XHJcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICM4OGNiMjQ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQwcHgpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAud2QtTW9kYWwtYXNzZXQsXHJcbiAgICAgICAgLndkLU1vZGFsLWRldGFpbHMge1xyXG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLndkLU1vZGFsLWRldGFpbHMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1vYmlsZS1ub3RlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLndkLUtleXBhZFRyaWdnZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLy8gTWFpbnRhaW4gYXNwZWN0IHJhdGlvXHJcbkBkZWZpbmUtbWl4aW4gc2xpZGVzaG93LXJhdGlvICR3aWR0aDoxNiwgJGhlaWdodDo5IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZXNvbHZlKCQoaGVpZ2h0KS8kKHdpZHRoKSoxMDApJTtcclxuICAgIH1cclxuICAgID4gLnNsaWRlLWltYWdlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIHNsaWRlc2hvdy1yYXRpby1tb2JpbGUgJHdpZHRoOjE2LCAkaGVpZ2h0Ojkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlc29sdmUoJChoZWlnaHQpLyQod2lkdGgpKjEwMCklO1xyXG4gICAgfVxyXG4gICAgPiAuc2xpZGUtaW1hZ2Uge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGlkZXNob3cge1xyXG4gICAgQG1peGluIHNsaWRlc2hvd3M7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJ3dkX2hvbWUtc2xpZGVzaG93LWJnX25jc2EuanBnJykgbm8tcmVwZWF0IHJpZ2h0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIHBhZGRpbmc6IDg1cHggNXB4IDA7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA0NXB4KTtcclxuICAgIG1hcmdpbjogNDVweCAwIDA7XHJcbiAgICBtaW4taGVpZ2h0OiA5ODBweDtcclxuICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW5hdldpZGUpIHtcclxuICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTE1cHhcclxuICAgIH1cclxuICAgIC5zbGlkZXNob3ctd3JhcHBlciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB3aWR0aDogOTYwcHg7XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW5hdldpZGUpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIC8qIG1heC13aWR0aDogNDI1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bzsgKi9cclxuICAgICAgICAgICAgdG9wOiBpbmhlcml0O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IGluaGVyaXQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsaWRlLWltYWdlcyB7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDY1N3B4O1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDk2MHB4KXtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIEBtaXhpbiBzbGlkZXNob3ctcmF0aW8gOTgwLCA2NTc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1tb2JpbGUpe1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgQG1peGluIHNsaWRlc2hvdy1yYXRpby1tb2JpbGUgNzEwLCA4MzM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsaWRlLWltYWdlIHtcclxuICAgICAgICAvL292ZXJpZGUgZ2xvYmFsXHJcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgYm9yZGVyOiAxNHB4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1vYmlsZSl7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgICAuY3RhIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMDBweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1taWQpIHtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgLmJnLWZpdHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYmctZnVsbHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1vYmlsZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTUwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC5vdmVybGF5e1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtNzFweCAwIDAtMzBweDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbmF2V2lkZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01NXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbW9iaWxlKXtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDUwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBAbWl4aW4gZm9udC1zYW5zTjc7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDUycHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1pZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzFweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIEBtaXhpbiBmb250LXNhbnNBbHRONDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMjVweCAyMHB4IDA7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAyNjBweCA1MHB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcclxuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1pZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbWlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYnRue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8qIGltZyB7XHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1taWQpIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSAqL1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYW52YXMge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsaWRlLWNvbnRyb2xzIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1uYXZXaWRlKSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kKC0tbW9iaWxlKXtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpZGUtdGFicyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW46IDIycHggMjJweDtcclxuICAgICAgICBjbGVhcjogaW5oZXJpdDtcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1taWQpIHtcclxuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgQG1peGluIHNwcml0ZSAtLXRhYjtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XHJcbiAgICAgICAgICAgICYuY3VycmVudCB7XHJcbiAgICAgICAgICAgICAgICBAbWl4aW4gc3ByaXRlIC0tdGFiLXNlbGVjdGVkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb3J3YXJkLCAuYmFja3dhcmQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgICAgICB0b3A6IC05cHg7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIEBtaXhpbiBzaXplIDQycHgsIDQycHg7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbjtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZS1pbiAwLjFzO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBAbWl4aW4gZm9udC1zaXplIDQ4LCAwLCAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluO1xyXG4gICAgICAgICAgICBAbWl4aW4gc2l6ZSAxMDAlLCAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJiB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW1pZCkge1xyXG4gICAgICAgICAgICB0b3A6IC0xNXB4O1xyXG4gICAgICAgICAgICBAbWl4aW4gc2l6ZSAzMnB4LCAzMnB4O1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgQG1peGluIGZvbnQtc2l6ZSAzOCwgMCwgMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZm9yd2FyZCB7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbi1hcnJvdy10aGluLXJpZ2h0OmJlZm9yZTtcclxuICAgICAgICAgICAgdG9wOiAtN3B4O1xyXG4gICAgICAgICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICAgICAgICAgICB0b3A6IC0xMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaHRtbDpub3QoLmlzLW1vYmlsZSkgJiB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG5cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1taWQpIHtcclxuICAgICAgICAgICAgLy9AbWl4aW4gc3ByaXRlIC0tYXJyb3dtb2JpbGU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogM3B4IDA7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC02cHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJhY2t3YXJkIHtcclxuICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29uLWFycm93LXRoaW4tbGVmdDpiZWZvcmU7XHJcbiAgICAgICAgICAgIHRvcDogNHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAtNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICAgICAgYm90dG9tOiAtMTAwJTtcclxuICAgICAgICAgICAgbGVmdDogLTEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBodG1sOm5vdCguaXMtbW9iaWxlKSAmIHtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcblxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhICgtLW1pZCkge1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDJweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC0zcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZyb250ZXllcyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgbGVmdDogY2FsYyggNTAlIC0gNTE2cHgpO1xyXG4gICAgICAgIGJvdHRvbTogY2FsYyggNTAlIC0gNDkzcHgpO1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW5hdldpZGUpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmFja2V5ZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgYm90dG9tOiBjYWxjKCA1MCUgLSA0MDBweCk7XHJcbiAgICAgICAgbGVmdDogY2FsYyggNTAlIC0gMjAwcHgpO1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLW5hdldpZGUpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFydGlmYWN0cy13cmFwcGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbmF2V2lkZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc2xpZGVzaG93LWV5ZXMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogLTMwcHg7IHRvcDogY2FsYygxMDAlIC0gMTIwcHgpO1xyXG4gICAgQG1peGluIHNpemUgNDQwcHgsIDI5MHB4O1xyXG5cclxuICAgIC5leWUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICB9XHJcbiAgICAuZXllLTEge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAxMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgICAuZXllLTIge1xyXG4gICAgICAgIHRvcDogODBweDtcclxuICAgICAgICBsZWZ0OiAxOTBweDtcclxuICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgfVxyXG4gICAgLmV5ZS0zIHtcclxuICAgICAgICBib3R0b206IDEwcHg7XHJcbiAgICAgICAgbGVmdDogMTEwcHg7XHJcbiAgICAgICAgei1pbmRleDogNTtcclxuICAgIH1cclxuICAgIC5leWUtNCB7XHJcbiAgICAgICAgYm90dG9tOiA1NXB4O1xyXG4gICAgICAgIGxlZnQ6IDI2MHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDQ7XHJcbiAgICB9XHJcbiAgICAuZXllLTUge1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAzNXB4O1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbiAgICAuZXllLTYge1xyXG4gICAgICAgIGJvdHRvbTogNzVweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbiAgICAuZXllLTcge1xyXG4gICAgICAgIGJvdHRvbTogNzVweDtcclxuICAgICAgICByaWdodDogMTBweDtcclxuICAgfVxyXG4gICAgLmV5ZS04IHtcclxuICAgICAgICBib3R0b206IDEyMHB4O1xyXG4gICAgICAgIHJpZ2h0OiAzNXB4O1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tbmF2V2lkZSkgeyBkaXNwbGF5OiBub25lOyB9XHJcbn1cclxuIiwiLy8gTWFpbnRhaW4gYXNwZWN0IHJhdGlvXHJcbkBkZWZpbmUtbWl4aW4gcGxheWVyLXJhdGlvICR3aWR0aDoxNiwgJGhlaWdodDo5IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZXNvbHZlKCQoaGVpZ2h0KS8kKHdpZHRoKSoxMDApJTtcclxuICAgIH1cclxuICAgID4gI3BsYXllciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIHRodW1icy1yYXRpbyAkd2lkdGg6MTYsICRoZWlnaHQ6OSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVzb2x2ZSgkKGhlaWdodCkvJCh3aWR0aCkqMTAwKSU7XHJcbiAgICB9XHJcbiAgICA+IGEge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uZ2FtZWluZm97XHJcblx0LmNhcm91c2VsLWRhdGF7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHRcclxuXHQuY2Fyb3VzZWx7XHJcblxyXG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCd3ZF9nYW1laW5mby1jYXJvdXNlbC1iZ19uY3NhLnBuZycpIHRvcCBjZW50ZXI7XHJcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0cGFkZGluZy10b3A6IDUxNXB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDE1MHB4O1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRcdEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCl7XHJcblx0XHRcdHBhZGRpbmctdG9wOiA0MCU7XHJcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHRcdH1cclxuXHJcblx0XHQuY2Fyb3VzZWxfZnVsbHNjcmVlbl9jbG9zZXtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdFx0ei1pbmRleDogMTAwMTtcclxuXHRcdFx0dG9wOiA5MHB4O1xyXG5cdFx0XHRyaWdodDogNDBweDtcclxuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjAwJSk7XHJcblx0XHRcdHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0IDAuNHM7XHJcblx0XHRcdEBtaXhpbiBzaXplIDMwcHgsIDMwcHg7XHJcblxyXG5cdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0QGV4dGVuZCAuaWNvbjtcclxuXHRcdFx0XHRAZXh0ZW5kIC5pY29uLWJ1dHRvbi14OmJlZm9yZTtcclxuXHRcdFx0XHRjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMzBweDtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMDtcclxuXHRcdFx0XHRsZWZ0OiAtMXB4OyB0b3A6IDE2cHg7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IDAuM3M7XHJcblx0XHRcdFx0QG1peGluIHNpemUgMzBweCwgMzBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmIHtcclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRjYW52YXN7XHJcblx0XHRcdHdpZHRoOiAxMzUycHg7XHJcblx0XHRcdGhlaWdodDogMTI2NXB4O1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblx0XHRcdHotaW5kZXg6IDA7XHJcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCl7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0XHJcblx0XHQuY2Fyb3VzZWxfZmluZ2Vyc3tcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJ3dkX2dhbWVpbmZvLWNhcm91c2VsLWZpbmdlcnNfbmNzYS5wbmcnKSB0b3AgY2VudGVyO1xyXG5cdFx0XHR6LWluZGV4OiAyO1xyXG5cdFx0XHR3aWR0aDogODMycHg7XHJcblx0XHRcdGhlaWdodDogMTA3cHg7XHJcblx0XHRcdHRvcDogNDI1cHg7XHJcblx0XHRcdGxlZnQ6IGNhbGMoIDUwJSAtIDQwMXB4KTtcclxuXHJcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldCl7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdH1cclxuXHJcblx0XHQuY2Fyb3VzZWxfY29udGFpbmVye1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdG1heC13aWR0aDogOTYwcHg7XHJcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0XHR6LWluZGV4OiAxO1xyXG5cclxuXHRcdFx0LmNhcm91c2VsX3RpdGxle1xyXG5cdFx0XHRcdEBtaXhpbiBmb250LXNhbnNOODtcclxuXHRcdFx0XHRmb250LXNpemU6IDQ4cHg7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHR3aWR0aDogNzc4cHg7XHJcblx0XHRcdFx0aGVpZ2h0OiA4NnB4O1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDg5cHg7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRtYXJnaW46IDAgYXV0byA1cHg7XHJcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcblx0XHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0KXtcclxuXHRcdFx0XHRcdHdpZHRoOiBjYWxjKCAxMDAlIC0gODBweCk7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogNDJweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5jYXJvdXNlbF93cmFwe1xyXG5cdFx0XHRcdEBtaXhpbiBwbGF5ZXItcmF0aW87XHJcblx0XHRcdFx0bWF4LXdpZHRoOiA3NzhweDtcclxuXHRcdFx0XHRtYXgtaGVpZ2h0OiA0NDBweDtcclxuXHRcdFx0XHRtYXJnaW46IDAgYXV0byAxMHB4O1xyXG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0XHRcdGhlaWdodDogYXV0bztcclxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsYWNrO1xyXG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdFx0XHRvdXRsaW5lOiBub25lO1xyXG5cclxuXHRcdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAoLS1uYXZXaWRlKSB7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgNDBweCAxMHB4O1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0LnBsYXllci1wcmV2aWV3e1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cdFx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0ei1pbmRleDogMTtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQucGxheWVyLXBsYXktb3ZlcmxheXtcclxuXHRcdFx0XHRcdC8vQG1peGluIHNwcml0ZSAtLXBsYXllci1vdmVybGF5LXBsYXk7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0XHRcdGxlZnQ6IDUwJTtcclxuICBcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgXHRcdFx0XHRcdHotaW5kZXg6IDI7XHJcblxyXG4gIFx0XHRcdFx0XHQmOmJlZm9yZSxcclxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0XHRAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuXHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdFx0XHRtYXJnaW46IC02MXB4IDAgMCAtNjFweDtcclxuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuXHRcdFx0XHRcdFx0ei1pbmRleDogMTtcclxuXHRcdFx0XHRcdFx0QG1peGluIHNpemUgMTIycHgsIDEyMnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdFx0XHRtYXJnaW46IC0zMHB4IDAgMCAtMTdweDtcclxuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcblx0XHRcdFx0XHRcdHRyYW5zZm9ybS1vcmlnaW46IDM1JSA1MCU7XHJcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0XHRcdHotaW5kZXg6IDI7XHJcblx0XHRcdFx0XHRcdEBtaXhpbiB0cmlhbmdsZSByaWdodCwgJGNvbG9yLXdoaXRlLCA1N3B4LCA2MXB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0aHRtbDpub3QoLmlzLW1vYmlsZSkgJiB7XHJcblx0XHRcdFx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0XHRcdFx0QG1peGluIHRyaWFuZ2xlIHJpZ2h0LCAkY29sb3ItYmx1ZSwgNTdweCwgNjFweDtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0XHRcdC5pcy1tb2JpbGUgJntcclxuICBcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG4gIFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQucGxheWVyX2NvbnRyb2xze1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRoZWlnaHQ6IDUxcHg7XHJcblx0XHRcdFx0d2lkdGg6IDc3OHB4O1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcclxuXHRcdFx0XHRtYXJnaW46IDAgYXV0byAxNXB4O1xyXG5cclxuXHRcdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAoLS1uYXZXaWRlKSB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0LnBsYXllci1wbGF5OmJlZm9yZSxcclxuXHRcdFx0XHQucGxheWVyLXBhdXNlOmJlZm9yZSxcclxuXHRcdFx0XHQucGxheWVyLXNvdW5kOmJlZm9yZSxcclxuXHRcdFx0XHQucGxheWVyLW11dGVkOmJlZm9yZSxcclxuXHRcdFx0XHQucGxheWVyLWZ1bGxzY3JlZW46YmVmb3JlIHtcclxuXHRcdFx0XHRcdEBleHRlbmQgLmljb247XHJcblx0XHRcdFx0XHRjb2xvcjogJGNvbG9yLWJsdWU7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRsZWZ0OiAtM3B4O1xyXG5cdFx0XHRcdFx0dG9wOiAtOHB4O1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluLW91dDtcclxuXHRcdFx0XHRcdEBtaXhpbiBmb250LXNpemUgMjIsIDIwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmIHtcclxuXHRcdFx0XHRcdC5wbGF5ZXItcGxheTpob3ZlcjpiZWZvcmUsXHJcblx0XHRcdFx0XHQucGxheWVyLXBhdXNlOmhvdmVyOmJlZm9yZSxcclxuXHRcdFx0XHRcdC5wbGF5ZXItc291bmQ6aG92ZXI6YmVmb3JlLFxyXG5cdFx0XHRcdFx0LnBsYXllci1tdXRlZDpob3ZlcjpiZWZvcmUsXHJcblx0XHRcdFx0XHQucGxheWVyLWZ1bGxzY3JlZW46aG92ZXI6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC5wbGF5ZXItcGxheXtcclxuXHRcdFx0XHRcdC8vQG1peGluIHNwcml0ZSAtLXBsYXllci1wbGF5O1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0bGVmdDogMjdweDtcclxuXHRcdFx0XHRcdHRvcDogMThweDtcclxuXHJcblx0XHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdEBleHRlbmQgLmljb24tcGxheTpiZWZvcmU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQucGxheWVyLXBhdXNle1xyXG5cdFx0XHRcdFx0Ly9AbWl4aW4gc3ByaXRlIC0tcGxheWVyLXBhdXNlO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0bGVmdDogMjdweDtcclxuXHRcdFx0XHRcdHRvcDogMThweDtcclxuXHJcblx0XHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdEBleHRlbmQgLmljb24tcGF1c2U6YmVmb3JlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0LnBsYXllci10cmFja3tcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdHRvcDogMjNweDtcclxuXHRcdFx0XHRcdGxlZnQ6IDcwcHg7XHJcblx0XHRcdFx0XHR3aWR0aDogNTEwcHg7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IDVweDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LTQwO1xyXG5cclxuXHRcdFx0XHRcdC5wbGF5ZXItcHJvZ3Jlc3N7XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdFx0dG9wOiAwcHg7XHJcblx0XHRcdFx0XHRcdGxlZnQ6IDBweDtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDBweDtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiA1cHg7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0LnBsYXllci10aW1lcntcclxuXHRcdFx0XHRcdEBtaXhpbiBmb250LXNhbnNONjtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdHJpZ2h0OiAxMDVweDtcclxuXHRcdFx0XHRcdHRvcDogMThweDtcclxuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQucGxheWVyLXNvdW5ke1xyXG5cdFx0XHRcdFx0Ly9AbWl4aW4gc3ByaXRlIC0tcGxheWVyLXNvdW5kLW9uO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDYwcHg7XHJcblx0XHRcdFx0XHR0b3A6IDE5cHg7XHJcblxyXG5cdFx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0XHRAZXh0ZW5kIC5pY29uLXZvbHVtZS1tZWRpdW06YmVmb3JlO1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiAtMTdweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC5wbGF5ZXItbXV0ZWR7XHJcblx0XHRcdFx0XHQvL0BtaXhpbiBzcHJpdGUgLS1wbGF5ZXItc291bmQtb2ZmO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDYwcHg7XHJcblx0XHRcdFx0XHR0b3A6IDE5cHg7XHJcblxyXG5cdFx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0XHRAZXh0ZW5kIC5pY29uLXZvbHVtZS1tdXRlOmJlZm9yZTtcclxuXHRcdFx0XHRcdFx0bGVmdDogLTE3cHg7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0LnBsYXllci1mdWxsc2NyZWVue1xyXG5cdFx0XHRcdFx0Ly9AbWl4aW4gc3ByaXRlIC0tcGxheWVyLWZ1bGxzY3JlZW47XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRyaWdodDogMjBweDtcclxuXHRcdFx0XHRcdHRvcDogMThweDtcclxuXHJcblx0XHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdEBleHRlbmQgLmljb24tZnVsbHNjcmVlbjpiZWZvcmU7XHJcblx0XHRcdFx0XHRcdGxlZnQ6IC0xN3B4O1xyXG5cdFx0XHRcdFx0XHRAbWl4aW4gZm9udC1zaXplIDMwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0LmNhcm91c2VsX3RodW1ibmFpbHN7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdEBkZWZpbmUtbWl4aW4gbGVmdC1yaWdodHtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0XHRcdGZsb2F0OiBub25lO1xyXG5cdFx0XHRcdFx0dG9wOiA0MCU7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0XHRcdFx0XHRjb2xvcjogJGNvbG9yLWJsdWU7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0YTphZnRlciB7XHJcblx0XHRcdFx0XHRAZXh0ZW5kIC5pY29uO1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdHRvcDogLTFweDsgXHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBjbGlwIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRhLmxlZnR7XHJcblx0XHRcdFx0XHRAbWl4aW4gbGVmdC1yaWdodDtcclxuXHRcdFx0XHRcdGxlZnQ6IC00MHB4O1xyXG5cclxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0XHRAZXh0ZW5kIC5pY29uLWFycm93LWxlZnQ6YmVmb3JlO1xyXG5cdFx0XHRcdFx0XHRjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0aHRtbDpub3QoLmlzLW1vYmlsZSkgJiB7XHJcblx0XHRcdFx0XHRcdCY6aG92ZXI6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0XHRcdGNsaXA6IHJlY3QoMCwgMzBweCwgNDBweCwgMCk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0YS5yaWdodHtcclxuXHRcdFx0XHRcdEBtaXhpbiBsZWZ0LXJpZ2h0O1xyXG5cdFx0XHRcdFx0cmlnaHQ6IC00MHB4O1xyXG5cclxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0XHRAZXh0ZW5kIC5pY29uLWFycm93LXJpZ2h0OmJlZm9yZTtcclxuXHRcdFx0XHRcdFx0Y2xpcDogcmVjdCgwLCAzNXB4LCAzNXB4LCAzMHB4KTtcclxuXHRcdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmIHtcclxuXHRcdFx0XHRcdFx0Jjpob3ZlcjphZnRlciB7XHJcblx0XHRcdFx0XHRcdFx0Y2xpcDogcmVjdCgwLCAzNXB4LCA0MHB4LCA1cHgpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQuY2Fyb3VzZWxfaXRlbXN7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IDEyNXB4O1xyXG5cdFx0XHRcdFx0d2lkdGg6IDk2MHB4O1xyXG5cdFx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG5cdFx0XHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKC0tbmF2V2lkZSkge1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiAyMDBweDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZzogMCAyMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQuc2Nyb2xsYWJsZXtcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHJcblx0XHRcdFx0XHRcdC8qIEBtZWRpYSBzY3JlZW4gYW5kICgtLW5hdldpZGUpIHtcclxuXHRcdFx0XHRcdFx0XHRsZWZ0OiAyMHB4O1xyXG5cdFx0XHRcdFx0XHR9ICovXHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0LmNhcm91c2VsX2l0ZW17XHJcblx0XHRcdFx0XHRcdEBtaXhpbiB0aHVtYnMtcmF0aW87XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRcdFx0XHRcdC8qIDUgYWNyb3NzICovXHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxOC43NSU7XHJcblx0XHRcdFx0XHRcdC8vbWFyZ2luLXJpZ2h0OiAxLjI1JTtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEuNTYlO1xyXG5cclxuXHRcdFx0XHRcdFx0LyogJjpmaXJzdC1jaGlsZHtcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0XHRcdFx0fSAqL1xyXG5cdFx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG5cdFx0XHRcdFx0XHQmOm50aC1jaGlsZCg1bisxKXtcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHRcdFx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kICgtLW5hdldpZGUpIHtcclxuXHRcdFx0XHRcdFx0XHQvKiAzIGFjcm9zcyAqL1xyXG5cdFx0XHRcdFx0XHRcdHdpZHRoOiAzMC40MyU7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDQuMzUlO1xyXG5cclxuXHRcdFx0XHRcdFx0XHQmOm50aC1jaGlsZCg1bisxKXtcclxuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA0LjM1JTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdCY6bnRoLWNoaWxkKDNuKzEpe1xyXG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHQuY2Fyb3VzZWxfaXRlbV90aXRsZXtcclxuXHRcdFx0XHRcdFx0XHRAbWl4aW4gZm9udC1zYW5zTjg7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdFx0XHRcdFx0Ym90dG9tOiAtMjBweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cclxuXHRcdFx0XHRcdFx0XHQmLmlzLWFjdGl2ZXtcclxuXHRcdFx0XHRcdFx0XHRcdGJvcmRlcjogMTBweCBzb2xpZCAkY29sb3ItYmx1ZTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQuY2Fyb3VzZWxfcGFnaW5hdGlvbntcclxuXHRcdFx0XHRcdEBtaXhpbiBidWxsZXRzO1xyXG5cclxuXHRcdFx0XHRcdEBtZWRpYSAoLS10YWJsZXQpIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5jYXJvdXNlbF9pdGVtIHtcclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRAZXh0ZW5kICVwc2V1ZG9FbGVtZW50QWJzb2x1dGU7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xyXG5cdFx0XHRAbWl4aW4gc2l6ZSAwLCAxMDAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGh0bWw6bm90KC5pcy1tb2JpbGUpICYge1xyXG5cdFx0XHQmOmhvdmVyOmFmdGVyIHtcclxuXHRcdCAgICBcdGJhY2tncm91bmQ6IHJnYmEoMTgsIDIwNywgMjU0LCAwLjQpO1xyXG5cdFx0ICAgIFx0QG1peGluIHNpemUgMTAwJSwgMTAwJTtcclxuXHRcdCAgICB9XHJcblxyXG5cdFx0ICAgICY6aG92ZXIgYSB7XHJcblx0XHQgICAgXHRmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcclxuXHRcdCAgICB9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuY2Fyb3VzZWxNb2JpbGVfY29udHJvbHMge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0XHQuY2Fyb3VzZWxNb2JpbGVfcHJldiwgLmNhcm91c2VsTW9iaWxlX25leHQge1xyXG5cdFx0XHRAZXh0ZW5kICVjYXJvdXNlbC1hcnJvd3M7XHJcblx0XHRcdEBtaXhpbiBmb250LXNpemUgNDAsIDMwO1xyXG5cdCAgXHR9XHJcblxyXG5cdCAgXHQuY2Fyb3VzZWxNb2JpbGVfcHJldiB7XHJcblx0XHRcdEBleHRlbmQgJWFycm93LXByZXY7XHJcblxyXG5cdFx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmIHtcclxuXHRcdFx0XHQmOmhvdmVyOmFmdGVyIHtcclxuXHRcdFx0XHRcdGNsaXA6IHJlY3QoMCwgMzBweCwgNDBweCwgMCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuY2Fyb3VzZWxNb2JpbGVfbmV4dCB7XHJcblx0XHRcdEBleHRlbmQgJWFycm93LW5leHQ7XHJcblxyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRjbGlwOiByZWN0KDAsIDM1cHgsIDM1cHgsIDMwcHgpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRodG1sOm5vdCguaXMtbW9iaWxlKSAmIHtcclxuXHRcdFx0XHQmOmhvdmVyOmFmdGVyIHtcclxuXHRcdFx0XHRcdGNsaXA6IHJlY3QoMCwgMzVweCwgNDBweCwgNXB4KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuY2Fyb3VzZWxNb2JpbGVfcG9zaXRpb24ge1xyXG5cdFx0XHRAZXh0ZW5kICVjYXJvdXNlbC1wb3NpdGlvbjtcclxuXHRcdFx0bWFyZ2luOiAwIDUwcHg7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0QG1peGluIGZvbnQtc2l6ZSAxOCwgMDtcclxuXHRcdFx0QG1peGluIHNpemUgNDBweCwgNDVweDtcclxuXHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHR0b3A6IDIwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRAbWVkaWEgKC0tdGFibGV0KSB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLndkLUNhcm91c2VsTW9kdWxlLnNpbmdsZS12aWV3IHtcclxuXHQuY2Fyb3VzZWxfcGFnaW5hdGlvbixcclxuXHQuY2Fyb3VzZWxfdGh1bWJuYWlscyBhLnJpZ2h0LFxyXG5cdC5jYXJvdXNlbF90aHVtYm5haWxzIGEubGVmdCB7XHJcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59IiwiLndke1xyXG5cdCYtUGxheWVyIHtcclxuXHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRoZWlnaHQ6IDUxcHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcclxuXHRcdG1hcmdpbjogMCBhdXRvIDE1cHg7XHJcblxyXG5cdFx0Ji1wbGF5IHtcclxuXHRcdFx0Ly9AbWl4aW4gc3ByaXRlIC0tcGxheWVyLXBsYXk7XHJcblx0XHRcdEBleHRlbmQgLmljb24tcGxheTtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci1ibHVlO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGxlZnQ6IDI3cHg7XHJcblx0XHRcdHRvcDogMTVweDtcclxuXHRcdFx0QG1peGluIGZvbnQtc2l6ZSAyMDtcclxuXHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRAZXh0ZW5kIC5pY29uO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Ji1wYXVzZXtcclxuXHRcdFx0QG1peGluIHNwcml0ZSAtLXBsYXllci1wYXVzZTtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRsZWZ0OiAyN3B4O1xyXG5cdFx0XHR0b3A6IDE4cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji10cmFja3tcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDIzcHg7XHJcblx0XHRcdGxlZnQ6IDcwcHg7XHJcblx0XHRcdHdpZHRoOiA3NyU7XHJcblx0XHRcdGhlaWdodDogNXB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS00MDtcclxuXHJcblx0XHR9XHJcblxyXG5cdFx0Ji1wcm9ncmVzc3tcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDBweDtcclxuXHRcdFx0bGVmdDogMHB4O1xyXG5cdFx0XHR3aWR0aDogMHB4O1xyXG5cdFx0XHRoZWlnaHQ6IDVweDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji10aW1lcntcclxuXHRcdFx0QG1peGluIGZvbnQtc2Fuc042O1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHJpZ2h0OiAxMDVweDtcclxuXHRcdFx0dG9wOiAxOHB4O1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji1zb3VuZHtcclxuXHRcdFx0QG1peGluIHNwcml0ZSAtLXBsYXllci1zb3VuZC1vbjtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRyaWdodDogNjBweDtcclxuXHRcdFx0dG9wOiAxOXB4O1xyXG5cclxuXHRcdH1cclxuXHJcblx0XHQmLW11dGVke1xyXG5cdFx0XHRAbWl4aW4gc3ByaXRlIC0tcGxheWVyLXNvdW5kLW9mZjtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRyaWdodDogNjBweDtcclxuXHRcdFx0dG9wOiAxOXB4O1xyXG5cclxuXHRcdH1cclxuXHJcblx0XHQmLWZ1bGxzY3JlZW57XHJcblx0XHRcdEBtaXhpbiBzcHJpdGUgLS1wbGF5ZXItZnVsbHNjcmVlbjtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRyaWdodDogMjBweDtcclxuXHRcdFx0dG9wOiAxOHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdEBtZWRpYSAoLS1tYXhXaWR0aCkge1xyXG5cdFx0XHQmLXRyYWNrIHtcclxuXHRcdFx0XHR3aWR0aDogNzElO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0QG1lZGlhICgtLXdpZGUpIHtcclxuXHRcdFx0Lm1lZGlhTW9kYWwtY29udGVudCAmIHtcclxuXHRcdFx0XHQmLXRyYWNrIHtcclxuXHRcdFx0XHRcdHdpZHRoOiA2NiU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0QG1lZGlhICgtLXRhYmxldCkge1xyXG5cdFx0XHQubWVkaWFNb2RhbCAmIHtcclxuXHRcdFx0XHQmLXRyYWNrIHtcclxuXHRcdFx0XHRcdHdpZHRoOiA1MiU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0QG1lZGlhICgtLXRhYmxldFNtYWxsKSB7XHJcblx0XHRcdC53ZC1tZWRpYU1vZHVsZSAmIHtcclxuXHRcdFx0XHQmLXRyYWNrIHtcclxuXHRcdFx0XHRcdHdpZHRoOiA0MiU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0QG1lZGlhICgtLW1vYmlsZSkge1xyXG5cdFx0XHQmLXRpbWVyIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLndke1xyXG5cdCYtRnVsbHNjcmVlbiB7XHJcblxyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHJcblx0XHQud2QtUGxheWVye1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmcmFtZXtcclxuXHRcdFx0bWFyZ2luOiA2MHB4IDA7XHJcblx0XHRcdGhlaWdodDogY2FsYygxMDAlIC0gMTExcHgpO1xyXG5cdFx0fVxyXG5cdH1cclxufSJdfQ== */