﻿@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
    outline: 0;
}

article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section,
main {
    display: block;
}

html {
    overflow-y: scroll;
    overflow: -moz-scrollbars-vertical;
    box-sizing: border-box;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
}

body {
    line-height: 1;
}

blockquote,
q {
    quotes: none;
}

ul,
ol {
    list-style: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

*,
*::before,
*::after {
    box-sizing: inherit;
    -ms-touch-action: inherit;
    touch-action: inherit;
}

.svg-sprite {
    position: absolute;
    z-index: -1;
    left: -1px;
    top: -1px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

@-ms-viewport {
    width: device-width;
}

/*
.block {
  @include serif(18, 25, 500, italic);

  @include breakpoint(large) {
    font-size: 25px;
    line-height: 35px;
  }
}
*/
/*
  @mixin font_smoothing

  Set font smoothing ON or OFF
*/
/*
  @mixin text-underline

  Inserts vendor prefixed box shadows

  Parameters:
  $off - color
  $on - color for hover
  $pos - vertical position
*/
/*
  @mixin hide_text

  Hides text in an element
*/
/*
  @mixin active

  Combines hover, focus and active styles
*/
.icon--facebook {
    height: 18px;
    width: 18px;
}

.icon--twitter {
    height: 18px;
    width: 18px;
}

.icon--youtube {
    height: 18px;
    width: 18px;
}

.icon--instagram {
    height: 18px;
    width: 18px;
}

.icon--arrow-circle-left,
.icon--arrow-circle-right,
.icon--shuffle-circle {
    width: 45px;
    height: 45px;
}

.icon--plus-alt {
    width: 13px;
    height: 13px;
}

.icon--minus {
    width: 13px;
    height: 3px;
}

.design-grid-toggles {
    position: fixed;
    z-index: 9999;
    left: 0;
    bottom: 0;
    font-size: 0;
}

    .design-grid-toggles::before, .design-grid-toggles::after {
        display: block;
        position: absolute;
        left: 5px;
        bottom: 100%;
        color: #00a449;
        font-size: 11px;
        font-weight: bold;
        text-transform: uppercase;
        white-space: nowrap;
    }

    .design-grid-toggles::before {
        margin-bottom: 3px;
    }

    .design-grid-toggles::after {
        content: attr(data-env);
        margin-bottom: 17px;
    }

.design-grid-toggle {
    display: inline-block;
    margin-right: 5px;
    padding: 10px 15px;
    background: #000;
    color: #fff;
    font-size: 11px;
    cursor: pointer;
    transition: all 200ms linear;
}

    .design-grid-toggle.js-active {
        background-color: #f00;
    }

    .design-grid-toggle svg {
        display: block;
        width: 10px;
        height: 10px;
    }

.design-grid--baseline {
    display: block;
    position: absolute;
    z-index: 9998;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: repeating-linear-gradient(180deg, transparent, transparent 5px, #ff0000 5px, #ff0000 10px);
    opacity: .25;
    pointer-events: none;
}

    .design-grid--baseline.js-hide {
        display: none;
    }

.design-grid--columns {
    display: block;
    position: fixed;
    z-index: 9998;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 60px 10px 0;
    background-color: transparent;
    opacity: .25;
    pointer-events: none;
}

@media screen and (min-width: 40em) {
    .design-grid--columns {
        padding: 60px 20px 0;
    }
}

@media screen and (min-width: 61.25em) {
    .design-grid--columns {
        padding: 0 30px;
    }
}

@media screen and (min-width: 72.5em) {
    .design-grid--columns {
        padding: 0 40px;
    }
}

@media screen and (min-width: 90.625em) {
    .design-grid--columns {
        padding: 0 60px;
    }
}

.design-grid--columns.js-hide {
    display: none;
}

.design-grid--columns .row {
    height: 100%;
}

.design-grid--columns .columns {
    height: 100%;
}

    .design-grid--columns .columns::before {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        background-color: #7fffff;
    }

.cta--double-line {
    display: inline-block;
    position: relative;
    border-bottom: 2px solid #E42A1D;
    color: #E42A1D;
    font-weight: 900;
    line-height: 15px;
    font-size: 10px;
    letter-spacing: 0.05rem;
    text-decoration: none;
    text-transform: uppercase;
    -webkit-transform: translate3D(0, 0, 0);
    -ms-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
}

    .cta--double-line:after {
        background: #E42A1D;
        bottom: -6px;
        content: '';
        display: inline-block;
        height: 2px;
        left: 0;
        position: absolute;
        width: 100%;
    }

    .cta--double-line:hover {
        border-bottom-width: 2px;
    }

.btn--link {
    background: none;
    border: 0;
    color: inherit;
    font: inherit;
    outline: 0;
}

.o-heroFullScreen__title,
.f-h1 {
    font-family: "neue-display-random";
    -o-font-feature-settings: 'liga' 1;
    -ms-font-feature-settings: 'liga' 1;
    font-feature-settings: 'liga' 1;
    font-size: 25px;
    line-height: 25px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 30em) {
    .o-heroFullScreen__title,
    .f-h1 {
        font-size: 40px;
        line-height: 40px;
        letter-spacing: -0.01rem;
    }
}

@media screen and (min-width: 40em) {
    .o-heroFullScreen__title,
    .f-h1 {
        font-size: 65px;
        line-height: 65px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__title,
    .f-h1 {
        font-size: 85px;
        line-height: 80px;
        letter-spacing: -0.03rem;
    }
}

@media screen and (min-width: 72.5em) {
    .o-heroFullScreen__title,
    .f-h1 {
        font-size: 110px;
        line-height: 100px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-heroFullScreen__title,
    .f-h1 {
        font-size: 130px;
        line-height: 125px;
    }
}

.pageClass--l2 .m-featurePanel:not(.m-featurePanel--small) .m-landingPanel__title, .m-moduleHeader__title, .o-heroFlyout__title, .o-heroFullScreen__main-title, .o-sectionInfo__title,
.f-h18 {
    font-family: "neue-display-random";
    -o-font-feature-settings: 'liga' 1;
    -ms-font-feature-settings: 'liga' 1;
    font-feature-settings: 'liga' 1;
    font-size: 25px;
    line-height: 25px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: -0.01rem;
}

@media screen and (min-width: 40em) {
    .pageClass--l2 .m-featurePanel:not(.m-featurePanel--small) .m-landingPanel__title, .m-moduleHeader__title, .o-heroFlyout__title, .o-heroFullScreen__main-title, .o-sectionInfo__title,
    .f-h18 {
        font-size: 50px;
        line-height: 50px;
    }
}

@media screen and (min-width: 61.25em) {
    .pageClass--l2 .m-featurePanel:not(.m-featurePanel--small) .m-landingPanel__title, .m-moduleHeader__title, .o-heroFlyout__title, .o-heroFullScreen__main-title, .o-sectionInfo__title,
    .f-h18 {
        font-size: 55px;
        line-height: 55px;
    }
}

@media screen and (min-width: 72.5em) {
    .pageClass--l2 .m-featurePanel:not(.m-featurePanel--small) .m-landingPanel__title, .m-moduleHeader__title, .o-heroFlyout__title, .o-heroFullScreen__main-title, .o-sectionInfo__title,
    .f-h18 {
        font-size: 70px;
        line-height: 70px;
        letter-spacing: -0.02rem;
    }
}

@media screen and (min-width: 90.625em) {
    .pageClass--l2 .m-featurePanel:not(.m-featurePanel--small) .m-landingPanel__title, .m-moduleHeader__title, .o-heroFlyout__title, .o-heroFullScreen__main-title, .o-sectionInfo__title,
    .f-h18 {
        font-size: 85px;
        line-height: 85px;
    }
}

.o-heroSidebySide__title,
.f-h2 {
    font-family: "neue-display-random";
    -o-font-feature-settings: 'liga' 1;
    -ms-font-feature-settings: 'liga' 1;
    font-feature-settings: 'liga' 1;
    font-size: 25px;
    line-height: 25px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 61.25em) {
    .o-heroSidebySide__title,
    .f-h2 {
        font-size: 40px;
        line-height: 40px;
        letter-spacing: -0.01rem;
    }
}

@media screen and (min-width: 72.5em) {
    .o-heroSidebySide__title,
    .f-h2 {
        font-size: 50px;
        line-height: 50px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-heroSidebySide__title,
    .f-h2 {
        font-size: 60px;
        line-height: 60px;
    }
}


.f-h3 {
    font-family: "neue-display-random";
    -o-font-feature-settings: 'liga' 1;
    -ms-font-feature-settings: 'liga' 1;
    font-feature-settings: 'liga' 1;
    font-size: 18px;
    line-height: 18px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 61.25em) {

    .f-h3 {
        font-size: 30px;
        line-height: 30px;
        letter-spacing: -0.01rem;
    }
}

@media screen and (min-width: 72.5em) {

    .f-h3 {
        font-size: 35px;
        line-height: 35px;
    }
}

@media screen and (min-width: 90.625em) {

    .f-h3 {
        font-size: 40px;
        line-height: 40px;
    }
}


.f-h20 {
    font-family: "neue";
    font-size: 30px;
    line-height: 40px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 30em) {

    .f-h20 {
        font-size: 32px;
        line-height: 40px;
    }
}

@media screen and (min-width: 40em) {

    .f-h20 {
        font-size: 38px;
        line-height: 45px;
    }
}

@media screen and (min-width: 61.25em) {

    .f-h20 {
        font-size: 50px;
        line-height: 60px;
    }
}

.m-contentFilters__title, .m-post--feature .m-post__title, .o-quoteMedia__main blockquote p, .o-studyAreas__more-title,
.f-h4 {
    font-family: "neue";
    font-size: 22px;
    line-height: 30px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 30em) {
    .m-contentFilters__title, .m-post--feature .m-post__title, .o-quoteMedia__main blockquote p, .o-studyAreas__more-title,
    .f-h4 {
        font-size: 25px;
        line-height: 35px;
    }
}

@media screen and (min-width: 40em) {
    .m-contentFilters__title, .m-post--feature .m-post__title, .o-quoteMedia__main blockquote p, .o-studyAreas__more-title,
    .f-h4 {
        font-size: 30px;
        line-height: 40px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-contentFilters__title, .m-post--feature .m-post__title, .o-quoteMedia__main blockquote p, .o-studyAreas__more-title,
    .f-h4 {
        font-size: 40px;
        line-height: 50px;
    }
}


.f-h44 {
    font-family: "neue";
    font-size: 25px;
    line-height: 25px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 61.25em) {

    .f-h44 {
        font-size: 30px;
        line-height: 35px;
    }
}

.a-accordionCard__title, .m-drawers--alt .m-drawers__toggle span, .m-post__title, .m-post__quote p, .m-postInline__title, .o-fastFactsDetail__content, .o-shuffler__data .o-shuffler__data--large,
.f-h5 {
    font-family: "neue";
    font-size: 18px;
    line-height: 30px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 40em) {
    .a-accordionCard__title, .m-drawers--alt .m-drawers__toggle span, .m-post__title, .m-post__quote p, .m-postInline__title, .o-fastFactsDetail__content, .o-shuffler__data .o-shuffler__data--large,
    .f-h5 {
        font-size: 22px;
        line-height: 35px;
    }
}

.m-landingIntro--large p, .o-heroFullScreen__text, .o-textLongForm__content .a-img + p,
.o-textLongForm__content p:first-child,
.f-h6 {
    font-family: "neue";
    font-size: 14px;
    line-height: 25px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 40em) {
    .m-landingIntro--large p, .o-heroFullScreen__text, .o-textLongForm__content .a-img + p,
    .o-textLongForm__content p:first-child,
    .f-h6 {
        font-size: 18px;
        line-height: 30px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-landingIntro--large p, .o-heroFullScreen__text, .o-textLongForm__content .a-img + p,
    .o-textLongForm__content p:first-child,
    .f-h6 {
        font-size: 22px;
        line-height: 35px;
    }
}


.f-h7 {
    font-family: "neue";
    font-size: 10px;
    line-height: 15px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0.03rem;
}

@media screen and (min-width: 40em) {

    .f-h7 {
        font-size: 12px;
        line-height: 18px;
    }
}

@media screen and (min-width: 72.5em) {

    .f-h7 {
        font-size: 13px;
        line-height: 20px;
    }
}

.m-contentList--grid-view .a-program--simple .a-program__blockLinkTitle, .o-careerOutcomes__role, .o-studyAreas__footer,
.f-h8 {
    font-family: "neue";
    font-size: 15px;
    line-height: 25px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 72.5em) {
    .m-contentList--grid-view .a-program--simple .a-program__blockLinkTitle, .o-careerOutcomes__role, .o-studyAreas__footer,
    .f-h8 {
        font-size: 17px;
        line-height: 30px;
    }
}

@media screen and (min-width: 90.625em) {
    .m-contentList--grid-view .a-program--simple .a-program__blockLinkTitle, .o-careerOutcomes__role, .o-studyAreas__footer,
    .f-h8 {
        font-size: 18px;
        line-height: 32px;
    }
}

.o-fastFacts__item,
.f-h8-b {
    font-family: "neue";
    font-size: 15px;
    line-height: 25px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 72.5em) {
    .o-fastFacts__item,
    .f-h8-b {
        font-size: 25px;
        line-height: 30px;
    }
}

.m-contentList--grid-view .a-program__content--alt .a-program__description,
.m-contentList--list-view .a-program__content--alt .a-program__description, .m-ctaPanel p, .m-moduleHeader__intro, .m-postInline__excerpt, .o-careerOutcomes__content p, .o-sectionInfo--alt .o-sectionInfo__content, .o-studyAreas__more p, .o-textLongForm__content p,
.f-h15 {
    font-family: "neue";
    font-size: 13px;
    line-height: 20px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 72.5em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description,
    .m-contentList--list-view .a-program__content--alt .a-program__description, .m-ctaPanel p, .m-moduleHeader__intro, .m-postInline__excerpt, .o-careerOutcomes__content p, .o-sectionInfo--alt .o-sectionInfo__content, .o-studyAreas__more p, .o-textLongForm__content p,
    .f-h15 {
        font-size: 17px;
        line-height: 30px;
    }
}

@media screen and (min-width: 90.625em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description,
    .m-contentList--list-view .a-program__content--alt .a-program__description, .m-ctaPanel p, .m-moduleHeader__intro, .m-postInline__excerpt, .o-careerOutcomes__content p, .o-sectionInfo--alt .o-sectionInfo__content, .o-studyAreas__more p, .o-textLongForm__content p,
    .f-h15 {
        font-size: 18px;
        line-height: 32px;
    }
}

.m-listPanel__item, .m-pub__title,
.f-h14 {
    font-family: "neue";
    font-size: 13px;
    line-height: 20px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 30em) {
    .m-listPanel__item, .m-pub__title,
    .f-h14 {
        line-height: 23px;
    }
}

@media screen and (min-width: 72.5em) {
    .m-listPanel__item, .m-pub__title,
    .f-h14 {
        font-size: 14px;
        line-height: 25px;
    }
}

@media screen and (min-width: 90.625em) {
    .m-listPanel__item, .m-pub__title,
    .f-h14 {
        font-size: 15px;
        line-height: 25px;
    }
}

.m-contentList--grid-view .a-program__content--alt .a-program__description p.a-program__note,
.m-contentList--list-view .a-program__content--alt .a-program__description p.a-program__note, .m-post__excerpt, .m-post__link, .m-post__quote cite, .m-pub__subtitle, .m-pub__meta, .m-sidebarModule__events-title, .o-accordionHorizontal__item-title, .o-careerOutcomes__name, .o-careerOutcomes__course, .o-fastFactsDetail__footer, .o-quoteCarousel cite, .o-quoteMedia__main blockquote cite, .o-quotePortrait__main blockquote cite, .o-shuffler__data dd, .o-textLongForm__trigger,
.f-h10 {
    font-family: "neue";
    font-size: 13px;
    line-height: 20px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 30em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description p.a-program__note,
    .m-contentList--list-view .a-program__content--alt .a-program__description p.a-program__note, .m-post__excerpt, .m-post__link, .m-post__quote cite, .m-pub__subtitle, .m-pub__meta, .m-sidebarModule__events-title, .o-accordionHorizontal__item-title, .o-careerOutcomes__name, .o-careerOutcomes__course, .o-fastFactsDetail__footer, .o-quoteCarousel cite, .o-quoteMedia__main blockquote cite, .o-quotePortrait__main blockquote cite, .o-shuffler__data dd, .o-textLongForm__trigger,
    .f-h10 {
        line-height: 23px;
    }
}

@media screen and (min-width: 72.5em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description p.a-program__note,
    .m-contentList--list-view .a-program__content--alt .a-program__description p.a-program__note, .m-post__excerpt, .m-post__link, .m-post__quote cite, .m-pub__subtitle, .m-pub__meta, .m-sidebarModule__events-title, .o-accordionHorizontal__item-title, .o-careerOutcomes__name, .o-careerOutcomes__course, .o-fastFactsDetail__footer, .o-quoteCarousel cite, .o-quoteMedia__main blockquote cite, .o-quotePortrait__main blockquote cite, .o-shuffler__data dd, .o-textLongForm__trigger,
    .f-h10 {
        font-size: 14px;
        line-height: 25px;
    }
}

@media screen and (min-width: 90.625em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description p.a-program__note,
    .m-contentList--list-view .a-program__content--alt .a-program__description p.a-program__note, .m-post__excerpt, .m-post__link, .m-post__quote cite, .m-pub__subtitle, .m-pub__meta, .m-sidebarModule__events-title, .o-accordionHorizontal__item-title, .o-careerOutcomes__name, .o-careerOutcomes__course, .o-fastFactsDetail__footer, .o-quoteCarousel cite, .o-quoteMedia__main blockquote cite, .o-quotePortrait__main blockquote cite, .o-shuffler__data dd, .o-textLongForm__trigger,
    .f-h10 {
        font-size: 15px;
        line-height: 25px;
    }
}

.m-drawers--alt .m-drawers__toggle span.m-drawers__subtitle, .m-listPanel__title, .m-post__tag, .m-postInline__meta, .m-sidebarModule__events-meta, .o-fastFactsDetail__title, .o-quoteCarousel__nav-item, .o-shuffler__data dt, .o-shuffler__nav, .o-three-col__nav-item,
.f-h11 {
    font-family: "neue";
    font-size: 8px;
    line-height: 10px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0.03rem;
    text-transform: uppercase;
}

@media screen and (min-width: 40em) {
    .m-drawers--alt .m-drawers__toggle span.m-drawers__subtitle, .m-listPanel__title, .m-post__tag, .m-postInline__meta, .m-sidebarModule__events-meta, .o-fastFactsDetail__title, .o-quoteCarousel__nav-item, .o-shuffler__data dt, .o-shuffler__nav, .o-three-col__nav-item,
    .f-h11 {
        font-size: 10px;
        line-height: 15px;
    }
}

.o-quoteCarousel blockquote p, .o-quotePortrait__main blockquote p,
.f-h19 {
    font-family: "neue";
    font-size: 22px;
    line-height: 30px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 30em) {
    .o-quoteCarousel blockquote p, .o-quotePortrait__main blockquote p,
    .f-h19 {
        font-size: 25px;
        line-height: 35px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-quoteCarousel blockquote p, .o-quotePortrait__main blockquote p,
    .f-h19 {
        font-size: 30px;
        line-height: 40px;
    }
}

@media screen and (min-width: 61.25em) {
    .g-breadcrumbs {
        max-width: calc(100% - 80px);
    }
}

@media screen and (min-width: 72.5em) {
    .g-breadcrumbs {
        max-width: calc(100% - 120px);
    }
}

@media screen and (min-width: 90.625em) {
    .g-breadcrumbs {
        max-width: 80%;
    }
}

.g-header--has-utility-on-mobile {
    top: 0;
}

@media screen and (max-width: 39.9375em) {
    .g-header--college.g-header--has-utility-on-mobile + main {
        padding-top: 70px;
    }
}

@media print, screen and (min-width: 40em) {
    .g-header--college.g-header--has-utility-on-mobile + main {
        padding-top: 85px;
    }
}

.a-btn--grey--light {
    border: 2px solid #D9D9D9;
    color: #8C8C8C;
}

@media screen and (min-width: 61.25em) {
    .a-btn--grey--light:hover, .a-btn--grey--light:active {
        background: #D9D9D9;
        border: 2px solid #D9D9D9;
        color: #FFFFFF;
        cursor: pointer;
    }
}

.body--highlight .a-btn--grey--light {
    border: 2px solid #FFFFFF;
    color: #FFFFFF;
}

    .body--highlight .a-btn--grey--light:hover, .body--highlight .a-btn--grey--light:active {
        background: #FFFFFF;
        border: 2px solid #FFFFFF;
        color: #E42A1D;
    }

.a-accordionCard__cta, .m-moduleHeader__cta, .m-post__cta, .o-accordionHorizontal__footer-cta, .o-careerOutcomes__cta, .o-fiveCol__footer-cta, .o-listingFull__cta, .o-quoteCarousel__cta, .o-quotePortrait__cta, .o-sectionInfo__cta, .o-studyAreas__more-cta, .o-three-col__footer-cta, .o-twoThirds__cta,
.a-cta--dual-line {
    font-family: "neue";
    font-size: 10px;
    line-height: 15px;
    font-weight: 900;
    font-style: normal;
    letter-spacing: 0.05rem;
    border-bottom: 2px solid;
    clear: both;
    color: #E42A1D;
    display: inline-block;
    margin: 0;
    position: relative;
    text-decoration: none;
    text-transform: uppercase;
    -webkit-transform: translate3D(0, 0, 0);
    -ms-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
    transition: border-bottom ease-in-out 180ms;
}

    .a-accordionCard__cta:after, .m-moduleHeader__cta:after, .m-post__cta:after, .o-accordionHorizontal__footer-cta:after, .o-careerOutcomes__cta:after, .o-fiveCol__footer-cta:after, .o-listingFull__cta:after, .o-quoteCarousel__cta:after, .o-quotePortrait__cta:after, .o-sectionInfo__cta:after, .o-studyAreas__more-cta:after, .o-three-col__footer-cta:after, .o-twoThirds__cta:after,
    .a-cta--dual-line:after {
        content: '';
        display: inline-block;
        position: absolute;
        bottom: -6px;
        left: 0;
        width: 100%;
        border-top: 2px solid;
    }

.a-accordionCard {
    height: 100%;
    padding-top: 18px;
    padding-bottom: 12px;
    border-top: 1px solid #D9D9D9;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard {
        min-height: 490px;
        padding-top: 0;
        padding-bottom: 0;
        border-top: 0;
    }

        .a-accordionCard:hover .a-accordionCard__hover-off, .a-accordionCard:active .a-accordionCard__hover-off {
            opacity: 0;
            pointer-events: none;
        }

        .a-accordionCard:hover .a-accordionCard__hover-on, .a-accordionCard:active .a-accordionCard__hover-on {
            transition-delay: 0.1s;
        }

        .a-accordionCard:hover .a-accordionCard__hover-on,
        .a-accordionCard:hover .a-accordionCard__trigger .a-accordionCard__cta,
        .a-accordionCard:hover .a-accordionCard__trigger .a-accordionCard__link, .a-accordionCard:active .a-accordionCard__hover-on,
        .a-accordionCard:active .a-accordionCard__trigger .a-accordionCard__cta,
        .a-accordionCard:active .a-accordionCard__trigger .a-accordionCard__link {
            opacity: 1;
            pointer-events: all;
        }
}

.a-accordionCard a {
    text-decoration: none;
}

.a-accordionCard__body,
.a-accordionCard__title a,
.a-accordionCard__subtitle,
.a-accordionCard__secondary li a,
.a-accordionCard__body .a-accordionCard__link,
.a-accordionCard__body .a-accordionCard__cta,
.a-accordionCard__body .a-accordionCard__cta:after {
    transition: all ease-in-out 180ms;
}

.a-accordionCard__body {
    font-family: "neue";
    font-size: 13px;
    line-height: 20px;
    font-weight: normal;
    font-style: normal;
    letter-spacing: 0;
    position: relative;
}

    .a-accordionCard__body p {
        margin-top: 0;
        padding-top: 15px;
    }

@media screen and (min-width: 40em) {
    .a-accordionCard__body {
        font-family: "neue";
        font-size: 14px;
        line-height: 25px;
        font-weight: normal;
        font-style: normal;
        letter-spacing: 0;
    }

        .a-accordionCard__body p {
            margin-top: 22px;
            padding-top: 0;
        }
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__body {
        display: block;
        height: 100%;
        min-height: 450px;
        padding: 28px 30px 79px;
        background: #F1F2F2;
    }

        .a-accordionCard__body .a-accordionCard__cta,
        .a-accordionCard__body .a-accordionCard__link {
            position: absolute;
        }

        .a-accordionCard__body .a-accordionCard__cta {
            margin: 0;
        }
}

.a-accordionCard__trigger {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column nowrap;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    cursor: pointer;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__trigger {
        display: block;
        position: relative;
        cursor: default;
    }
}

.a-accordionCard__trigger:hover .a-accordionCard__title, .a-accordionCard__trigger:active .a-accordionCard__title {
    color: #E42A1D;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__trigger:hover .a-accordionCard__title, .a-accordionCard__trigger:active .a-accordionCard__title {
        color: inherit;
    }
}

.a-accordionCard__trigger .a-accordionCard__cta,
.a-accordionCard__trigger .a-accordionCard__link {
    display: none;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__trigger .a-accordionCard__cta,
    .a-accordionCard__trigger .a-accordionCard__link {
        display: inline-block;
        top: 100%;
        margin-top: 12px;
        opacity: 0;
    }
}

.a-accordionCard__subtitle {
    display: block;
    color: #8c8c8c;
    font-size: 10px;
    line-height: 15px;
    letter-spacing: 0.03rem;
    text-transform: uppercase;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
}

.a-accordionCard__title {
    display: block;
    margin: 0;
    padding-right: 35px;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__title {
        padding-right: 0;
    }
}

.a-accordionCard__title a {
    pointer-events: none;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__title a {
        pointer-events: all;
    }
}

.a-accordionCard__title a:hover, .a-accordionCard__title a:active {
    color: #E42A1D;
}

.a-accordionCard__title a:hover, .a-accordionCard__title a:active {
    color: #E42A1D;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__subtitle + .a-accordionCard__title {
        margin-top: 15px;
    }
}

.a-accordionCard__inner {
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
    height: 0;
    overflow: hidden;
    transition: height 0.2s cubic-bezier(0.5, 0, 0.5, 0);
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__inner {
        height: auto;
        overflow: visible;
    }
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__inner .a-accordionCard__cta,
    .a-accordionCard__inner .a-accordionCard__link {
        bottom: 45px;
    }
}

.a-accordionCard__link {
    border-bottom: 1px solid transparent;
    display: inline-block;
    margin: -1px 0 0 20px;
    padding: 1px 0 1px;
    position: relative;
    text-decoration: none;
    transition: border-bottom ease-in-out 180ms, color ease-in-out 180ms;
}

    .a-accordionCard__link:hover, .a-accordionCard__link:active {
        color: #E42A1D;
    }

    .a-accordionCard__link:before {
        content: '';
        display: block;
        position: absolute;
        top: 3px;
        left: -25px;
        width: 16px;
        height: 16px;
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='1024' height='1024' viewBox='0 0 1024 1024'%3E%3Cpath fill='none' stroke='%23000' stroke-width='56.8889' stroke-miterlimit='4' stroke-linecap='butt' stroke-linejoin='miter' d='M432.356 113.778l369.778 369.778-369.778 369.778'%3E%3C/path%3E%3C/svg%3E");
        background-size: 100% auto;
        transition: opacity ease-in-out 180ms;
    }

@media screen and (min-width: 61.25em) {
    .a-accordionCard__link:before {
        top: 6px;
    }
}

.a-accordionCard--dark {
    color: #FFFFFF;
    background: #212121;
}

.a-accordionCard__cta,
.a-accordionCard__link {
    margin-top: 15px;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__cta,
    .a-accordionCard__link {
        margin-top: 0;
    }
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__hover-off {
        transition: opacity 0.2s cubic-bezier(0.4, 0, 1, 1);
    }
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__hover-on {
        position: absolute;
        bottom: 0;
        min-height: 172px;
        margin-top: 0;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.2s cubic-bezier(0, 0, 0.2, 1);
    }
}

.a-accordionCard__hover-on,
.a-accordionCard__secondary {
    margin-top: 30px;
    padding-bottom: 33px;
}

.a-accordionCard__inner .a-accordionCard__subtitle {
    margin-bottom: 17px;
    color: #191919;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__inner .a-accordionCard__subtitle {
        margin-bottom: 19px;
    }
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard__inner ul {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }
}

.a-accordionCard__inner li {
    margin-top: 15px;
}

    .a-accordionCard__inner li:first-child {
        margin-top: 0;
    }

@media screen and (min-width: 61.25em) {
    .a-accordionCard__inner li {
        width: 50%;
        margin-top: 0;
    }

        .a-accordionCard__inner li:nth-child(2n+1) {
            padding-right: 10px;
        }
}

.a-accordionCard__inner li a {
    border-bottom: 1px solid;
}

    .a-accordionCard__inner li a:hover, .a-accordionCard__inner li a:active {
        color: #E42A1D;
        border-bottom-color: transparent;
    }

.a-accordionCard .icon--minus,
.a-accordionCard .icon--plus-alt {
    position: absolute;
    right: 0;
    color: #D9D9D9;
    pointer-events: none;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard .icon--minus,
    .a-accordionCard .icon--plus-alt {
        display: none;
    }
}

.a-accordionCard .icon--minus {
    top: 13px;
}

.a-accordionCard .icon--plus-alt {
    top: 8px;
}

.a-accordionCard--active .icon--plus-alt {
    display: none;
}

.o-three-col__item .a-accordionCard {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}

.a-accordionCard--no-hover .a-accordionCard__cta,
.a-accordionCard--no-hover .a-accordionCard__link {
    position: relative;
    bottom: auto;
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard--no-hover .a-accordionCard__cta,
    .a-accordionCard--no-hover .a-accordionCard__link {
        margin-top: 30px;
    }
}

@media screen and (min-width: 61.25em) {
    .a-accordionCard--no-hover .a-accordionCard__secondary {
        position: absolute;
        bottom: 0;
        padding-bottom: 53px;
    }
}

.m-contentList--grid-view .a-program--simple {
    border-top: 1px solid #D9D9D9;
}

    .m-contentList--grid-view .a-program--simple.is-active::before, .m-contentList--grid-view .a-program--simple.is-active::after {
        bottom: -1px;
    }

    .m-contentList--grid-view .a-program--simple .a-program__blockLink {
        padding-top: 13px;
        padding-bottom: 18px;
    }

@media screen and (min-width: 40em) {
    .m-contentList--grid-view .a-program--simple .a-program__blockLink {
        padding-top: 27px;
        padding-bottom: 31px;
    }
}

.m-contentList--grid-view .a-program--simple .a-program__blockLinkTitle {
    position: relative;
    margin-top: 0;
    padding-right: 25px;
}

.m-contentList--grid-view .a-program--simple .a-program__blockLinkSubTitle {
    display: none;
}

.m-contentList--grid-view .a-program--simple .icon--chevron-down-alt {
    position: absolute;
    top: 10px;
    right: 0;
    width: 12px;
    height: 8px;
}

@media screen and (min-width: 72.5em) {
    .m-contentList--grid-view .a-program--simple .icon--chevron-down-alt {
        top: 15px;
    }
}

.a-program__description .a-program__description-list {
    padding-left: 1.25em;
    list-style-type: square;
}

.m-contentList--list-view .a-program--simple .icon--chevron-down-alt {
    display: none;
}

.m-contentList--grid-view .a-program__content--alt,
.m-contentList--list-view .a-program__content--alt {
    margin-bottom: 0;
    border-bottom: 0;
}

@media screen and (min-width: 61.25em) {
    .m-contentList--grid-view .a-program__content--alt,
    .m-contentList--list-view .a-program__content--alt {
        padding-bottom: 95px;
    }
}

.m-contentList--grid-view .a-program__content--alt .a-program__contentTitle,
.m-contentList--list-view .a-program__content--alt .a-program__contentTitle {
    display: block;
    margin-top: 0;
}

.m-contentList--grid-view .a-program__content--alt .a-program__description,
.m-contentList--list-view .a-program__content--alt .a-program__description {
    margin-top: 10px;
}

@media screen and (min-width: 61.25em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description,
    .m-contentList--list-view .a-program__content--alt .a-program__description {
        margin-top: 30px;
    }
}

.m-contentList--grid-view .a-program__content--alt .a-program__description ul,
.m-contentList--list-view .a-program__content--alt .a-program__description ul {
    margin-top: 17px;
}

.m-contentList--grid-view .a-program__content--alt .a-program__description li a,
.m-contentList--list-view .a-program__content--alt .a-program__description li a {
    margin-top: 0;
}

@media screen and (min-width: 61.25em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description li a::before,
    .m-contentList--list-view .a-program__content--alt .a-program__description li a::before {
        top: 4px;
    }
}

@media screen and (min-width: 72.5em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description li a::before,
    .m-contentList--list-view .a-program__content--alt .a-program__description li a::before {
        top: 9px;
    }
}

@media screen and (min-width: 90.625em) {
    .m-contentList--grid-view .a-program__content--alt .a-program__description li a::before,
    .m-contentList--list-view .a-program__content--alt .a-program__description li a::before {
        top: 10px;
    }
}

.m-contentList--grid-view .a-program__content--alt .a-program__description h5,
.m-contentList--list-view .a-program__content--alt .a-program__description h5 {
    margin-top: 13px;
}

.m-contentList--grid-view .a-program--alt .icon--plus-alt {
    display: none;
}

@media screen and (min-width: 61.25em) {
    .m-contentList--list-view .a-program--alt .a-program__blockLinkTitle {
        width: 86%;
    }
}

.m-contentList--list-view .a-program--alt .a-program__blockLink {
    position: relative;
    padding-right: 25px;
}

    .m-contentList--list-view .a-program--alt .a-program__blockLink:hover .icon--plus-alt {
        color: #585858;
    }

.m-contentList--list-view .a-program--alt .icon--plus-alt {
    position: absolute;
    top: 50%;
    right: 0;
    color: #D9D9D9;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.o-primaryContent ul .a-program ul,
.o-primaryContent ul .a-program ol,
.o-primaryContent ul .a-program__description ul,
.o-primaryContent ul .a-program__description ol {
    padding-left: 0;
}

    .o-primaryContent ul .a-program ul li,
    .o-primaryContent ul .a-program ol li,
    .o-primaryContent ul .a-program__description ul li,
    .o-primaryContent ul .a-program__description ol li {
        margin-top: 0;
    }

        .o-primaryContent ul .a-program ul li::before,
        .o-primaryContent ul .a-program ol li::before,
        .o-primaryContent ul .a-program__description ul li::before,
        .o-primaryContent ul .a-program__description ol li::before {
            display: none;
        }

        .o-primaryContent ul .a-program ul li a,
        .o-primaryContent ul .a-program ol li a,
        .o-primaryContent ul .a-program__description ul li a,
        .o-primaryContent ul .a-program__description ol li a {
            border: 0;
        }

        .o-primaryContent ul .a-program ul li:first-child a,
        .o-primaryContent ul .a-program ol li:first-child a,
        .o-primaryContent ul .a-program__description ul li:first-child a,
        .o-primaryContent ul .a-program__description ol li:first-child a {
            margin-top: 0;
        }

.o-primaryContent .a-table ul,
.o-primaryContent .a-table ol,
.o-primaryContent .a-table li,
.a-table p {
    margin-top: 15px;
}

    .o-primaryContent .a-table ul:first-child,
    .o-primaryContent .a-table ol:first-child,
    .o-primaryContent .a-table li:first-child,
    .a-table p:first-child {
        margin-top: 0;
    }

    .o-primaryContent .a-table ul li::before {
        top: 8px;
    }

@media screen and (min-width: 61.25em) {
    .m-cards {
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }
}

.m-collegeList__item {
    margin-top: 19px;
    padding-top: 16px;
}

@media screen and (min-width: 61.25em) {
    .m-collegeList__item {
        margin-top: 0;
        padding-top: 0;
    }
}

@media screen and (max-width: 61.1875em) {
    .m-collegeList__toggle {
        font-size: 16px;
        line-height: 25px;
    }
}

@media screen and (max-width: 61.1875em) {
    .m-collegeList__content {
        padding-top: 17px;
    }
}

@media screen and (max-width: 61.1875em) {
    .m-collegeList__cta {
        margin-top: 20px;
        margin-bottom: 20px;
    }
}

.m-contentFilters--simple,
.m-contentFilters--title {
    margin: 0;
    border-top: 0;
}

.m-contentList--list-view .m-contentFilters--title {
    margin-top: 26px;
}

@media screen and (min-width: 40em) {
    .m-contentList--list-view .m-contentFilters--title {
        margin-top: 107px;
    }
}

.m-contentFilters--title:first-child {
    margin-top: 0;
}

.m-contentFilters__title {
    margin-top: 0;
    margin-bottom: 15px;
}

@media screen and (min-width: 40em) {
    .m-contentFilters__title {
        margin-bottom: 41px;
    }
}

.m-contentFilters__displayOptions {
    margin-top: 18px;
}

@media screen and (min-width: 40em) {
    .pageClass--l2 .m-contentList__noResults {
        padding-right: 0;
        padding-left: 0;
    }
}

.pageClass--l2 h4 + .m-contentList {
    margin-top: 20px;
}

@media screen and (min-width: 61.25em) {
    .pageClass--l2 h4 + .m-contentList {
        margin-top: 30px;
    }
}

.m-contentList--list-view .ais-infinite-hits--showmore {
    margin-top: 0;
}

.m-contentList--list-view .ais-infinite-hits--showmoreButton {
    margin-top: 80px;
}

.m-contentFiltersAjax {
    width: 100%;
}

@media screen and (min-width: 40em) {
    .m-contentFilters__items.m-contentFilters__items--vertical {
        -webkit-column-count: 3;
        column-count: 3;
        -webkit-column-gap: 40px;
        column-gap: 40px;
        padding-right: 55px !important;
    }
}

@media screen and (min-width: 40em) {
    .m-contentFilters__items.m-contentFilters__items--vertical .m-contentFilters__item {
        float: none;
        width: auto;
        padding: 0;
    }
}

.m-contentFilters__list.is-active {
    max-height: 800px;
}

.m-courses {
    padding-bottom: 0;
}

    .m-courses .m-moduleHeader__intro {
        margin-bottom: 0;
    }

.m-ctaPanel.s-module-bkgd {
    margin-bottom: 0;
    padding-top: 24px;
    padding-bottom: 39px;
}

@media screen and (min-width: 40em) {
    .m-ctaPanel.s-module-bkgd {
        padding-top: 69px;
        padding-bottom: 75px;
    }
}

.m-ctaPanel h2,
.pageClass--l0 .m-ctaPanel h2,
.pageClass--l1 .m-ctaPanel h2 {
    margin-top: 0;
}

.m-ctaPanel p {
    margin-top: 30px;
}

    .m-ctaPanel p:first-child {
        margin-top: 15px;
    }

@media screen and (min-width: 40em) {
    .m-ctaPanel p:first-child {
        margin-top: 4px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-ctaPanel p:first-child {
        margin-top: 19px;
    }
}

.m-drawers__content.m-drawers__content {
    padding-top: 10px;
}

.m-drawers--alt .m-drawers__toggle:hover span, .m-drawers--alt .m-drawers__toggle:active span {
    border-bottom-color: transparent;
    color: #E42A1D;
}

.m-drawers--alt .m-drawers__toggle span {
    display: block;
    color: #191919;
}

    .m-drawers--alt .m-drawers__toggle span.m-drawers__subtitle {
        margin-top: 3px;
        color: #E42A1D;
    }

@media screen and (min-width: 61.25em) {
    .m-drawers--alt .m-drawers__toggle span.m-drawers__subtitle {
        margin-top: 8px;
    }
}

.m-textBlock + .m-drawers,
.m-textBlock + .o-primaryContent .m-drawers {
    margin-top: 0;
}

.m-featurePanel .m-landingPanel {
    padding-bottom: 0;
}

@media screen and (min-width: 61.25em) {
    .m-featurePanel .m-landingPanel .row {
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.m-featurePanel--link-list .m-landingPanel__content .f-h11,
.m-landingPanel__content .m-featurePanel--link-list .f-h11 {
    color: #E42A1D;
}

.m-featurePanel .m-landingPanel__content ul {
    margin-left: 0;
    padding-left: 0;
    list-style: none;
}

    .m-featurePanel .m-landingPanel__content ul li::before {
        display: none;
    }

.m-landingPanel__content .m-featurePanel--bullet-list ul {
    margin: 30px 0 0;
    padding: 0 0 0 25px;
}

    .m-landingPanel__content .m-featurePanel--bullet-list ul li::before {
        display: inline;
    }

@media screen and (min-width: 61.25em) {
    .pageClass--l2 .m-featurePanel .m-landingPanel--alt.m-landingPanel--small .m-landingPanel__title {
        -webkit-transform: translateX(-40px);
        -ms-transform: translateX(-40px);
        transform: translateX(-40px);
    }
}

@media screen and (min-width: 61.25em) {
    .pageClass--l2 .m-featurePanel .m-landingPanel__title,
    .pageClass--l2 .m-featurePanel .m-landingPanel--alt .m-landingPanel__title {
        top: 19px;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 61.1875em) {
    .m-featurePanel + .m-featurePanel--small {
        margin-top: 15px;
    }
}

@media screen and (max-width: 61.1875em) {
    .m-featurePanel--small + .m-featurePanel--small {
        margin-top: -39px;
    }
}

.m-featurePanel .m-landingPanel__content .m-landingPanel__cta-list {
    margin: 15px 0 0;
}

    .m-featurePanel .m-landingPanel__content .m-landingPanel__cta-list li {
        margin: 0 0 15px;
    }

    .m-featurePanel .m-landingPanel__content .m-landingPanel__cta-list a {
        margin: 0;
        border-bottom: 2px solid #E42A1D;
    }

        .m-featurePanel .m-landingPanel__content .m-landingPanel__cta-list a:hover, .m-featurePanel .m-landingPanel__content .m-landingPanel__cta-list a:active {
            border-bottom: 2px solid #E42A1D;
        }

        .m-featurePanel .m-landingPanel__content .m-landingPanel__cta-list a::before {
            display: none;
        }

@media screen and (min-width: 61.25em) {
    .m-featurePanel--small-alt .m-landingPanel__title {
        font-family: "neue-display-random";
        -o-font-feature-settings: 'liga' 1;
        -ms-font-feature-settings: 'liga' 1;
        font-feature-settings: 'liga' 1;
        font-size: 45px;
        line-height: 45px;
        font-weight: 700;
        font-style: normal;
        letter-spacing: -0.01rem;
        border: none;
        top: 20px;
    }
}

@media screen and (min-width: 72.5em) {
    .m-featurePanel--small-alt .m-landingPanel__title {
        font-family: "neue-display-random";
        -o-font-feature-settings: 'liga' 1;
        -ms-font-feature-settings: 'liga' 1;
        font-feature-settings: 'liga' 1;
        font-size: 50px;
        line-height: 50px;
        font-weight: 700;
        font-style: normal;
        letter-spacing: -0.01rem;
    }
}

@media screen and (min-width: 90.625em) {
    .m-featurePanel--small-alt .m-landingPanel__title {
        font-family: "neue-display-random";
        -o-font-feature-settings: 'liga' 1;
        -ms-font-feature-settings: 'liga' 1;
        font-feature-settings: 'liga' 1;
        font-size: 60px;
        line-height: 60px;
        font-weight: 700;
        font-style: normal;
        letter-spacing: -0.01rem;
    }
}

@media screen and (min-width: 61.25em) {
    .m-featurePanel--small-alt .m-landingPanel__imageLink::after {
        width: calc(100% - 40px);
    }
}

@media screen and (min-width: 61.25em) {
    .m-featurePanel--small-alt .m-landingPanel--alt .m-landingPanel__imageLink::after {
        left: 40px;
        width: calc(100% - 40px);
    }
}

@media screen and (min-width: 61.25em) {
    .m-featurePanel--small-alt .m-landingPanel--alt .m-landingPanel__imageLink p {
        left: 60px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-featurePanel--small-alt .m-landingPanel__image {
        padding: 0 40px 0 0;
    }
}

@media screen and (min-width: 61.25em) {
    .m-featurePanel--small-alt .m-landingPanel--alt .m-landingPanel__image {
        padding: 0 0 0 40px;
    }
}

.m-highlightsGrid {
    display: block;
    width: 100%;
    padding-top: 25px;
    padding-bottom: 43px;
}

    .m-highlightsGrid.add-separator--top:before {
        width: 100%;
    }

@media screen and (min-width: 40em) {
    .m-highlightsGrid {
        padding-top: 22px;
        padding-bottom: 66px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-highlightsGrid h2 {
        margin-top: 45px;
    }
}

.m-highlightsGrid__items,
.o-primaryContent ul .m-highlightsGrid__items {
    margin-top: 20px;
    margin-bottom: 0;
    padding: 0;
    list-style: none;
}

@media screen and (min-width: 40em) {
    .m-highlightsGrid__items,
    .o-primaryContent ul .m-highlightsGrid__items {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        margin-top: 29px;
    }
}

.m-highlightsGrid li,
.o-primaryContent ul .m-highlightsGrid li {
    float: none !important;
    margin-top: 20px;
}

    .m-highlightsGrid li:first-child,
    .o-primaryContent ul .m-highlightsGrid li:first-child {
        margin-top: 0;
    }

    .m-highlightsGrid li::before,
    .o-primaryContent ul .m-highlightsGrid li::before {
        display: none;
    }

@media screen and (min-width: 40em) {
    .m-highlightsGrid li,
    .o-primaryContent ul .m-highlightsGrid li {
        width: 50%;
        margin-top: 29px;
    }

        .m-highlightsGrid li:nth-child(-n+2),
        .o-primaryContent ul .m-highlightsGrid li:nth-child(-n+2) {
            margin-top: 0;
        }
}

.m-highlightsGrid__title {
    margin-top: 0;
}

.o-primaryContent.m-textBlock .m-highlightsGrid li::before {
    display: none;
}

.m-landingIntro--large {
    margin-bottom: -7px;
}

@media screen and (min-width: 40em) {
    .m-landingIntro--large {
        margin-bottom: -8px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-landingIntro--large {
        margin-bottom: -9px;
    }
}

.body--highlight .m-landingIntro p a {
    border-color: #FFFFFF;
}

.m-listPanel {
    background: #F1F2F2;
}

.m-listPanel__title {
    display: block;
    padding: 18px 20px 16px;
    color: #E42A1D;
}

.m-listPanel__item {
    border-top: 1px solid #D9D9D9;
}

    .m-listPanel__item a {
        display: block;
        padding: 16px 20px 18px;
        text-decoration: none;
    }

        .m-listPanel__item a:hover {
            color: #E42A1D;
        }

@media screen and (min-width: 61.25em) {
    .o-twoThirds .m-listPanel {
        min-height: calc(100% - 48px);
    }
}

.m-moduleHeader__title-wrap {
    float: none;
}

.m-moduleHeader__title {
    margin-top: 0;
    color: #E42A1D;
}

.body--highlight .m-moduleHeader__title {
    color: #FFFFFF;
}

.m-moduleHeader__title.m-moduleHeader__title--has-anchor::before {
    display: block;
    content: " ";
    margin-top: -75px;
    height: 75px;
    visibility: hidden;
    pointer-events: none;
}

@media screen and (min-width: 61.25em) {
    .m-moduleHeader__title.m-moduleHeader__title--has-anchor::before {
        margin-top: -150px;
        height: 150px;
    }
}

.m-moduleHeader__intro {
    float: none;
    margin-top: 18px;
    margin-bottom: 45px;
}

@media screen and (min-width: 61.25em) {
    .m-moduleHeader__intro {
        margin-top: 31px;
    }
}

.m-moduleHeader__intro p:first-child {
    margin-top: 0;
}

.m-moduleHeader__cta {
    margin-top: 22px;
}

@media screen and (max-width: 72.4375em) {
    .m-navList__container .row {
        margin: 0;
    }
}

@media screen and (max-width: 39.9375em) {
    .m-navList--tertiary {
        padding-left: 10px;
        padding-right: 10px;
    }

        .m-navList--tertiary .m-navList__item {
            margin: 0 5px;
        }
}

.m-pageHeader + .xsmall-show.small-show.medium-show {
    margin-top: 30px;
    margin-bottom: -25px;
}

.m-post {
    position: relative;
    height: 100%;
}

    .m-post a {
        text-decoration: none;
    }

    .m-post > a:not(.m-post__cta) {
        display: block;
        transition: color ease-in-out 180ms;
    }

        .m-post > a:not(.m-post__cta):hover, .m-post > a:not(.m-post__cta):active {
            color: #E42A1D;
        }

    .m-post > a + .m-post__tag {
        margin-top: 23px;
    }

@media screen and (min-width: 40em) {
    .m-post.m-post--has-cta,
    .m-post.m-post--has-link {
        padding-bottom: 50px;
    }
}

.m-post__image,
.m-post .a-video__link.a-video__link {
    margin: 0;
}

.m-post__image {
    position: relative;
    width: 100%;
}

@media screen and (min-width: 61.25em) {
    .m-post__image::after {
        background: #E42A1D;
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        z-index: 1;
        transition: -webkit-transform ease-out 360ms;
        transition: transform ease-out 360ms;
        transition: transform ease-out 360ms, -webkit-transform ease-out 360ms;
    }

    .body--highlight .m-post__image::after {
        background: #191919;
    }
}

@media screen and (min-width: 61.25em) {
    a:hover .m-post__image:after {
        -webkit-transform: translate3D(10px, 10px, 0);
        -ms-transform: translate3D(10px, 10px, 0);
        transform: translate3D(10px, 10px, 0);
    }

    a:hover .m-post__image img {
        -webkit-transform: translate3D(-10px, -10px, 0);
        -ms-transform: translate3D(-10px, -10px, 0);
        transform: translate3D(-10px, -10px, 0);
    }
}

.m-post__image img {
    position: relative;
    display: block;
    width: 100%;
    max-width: 100%;
    z-index: 2;
    transition: -webkit-transform ease-out 360ms;
    transition: transform ease-out 360ms;
    transition: transform ease-out 360ms, -webkit-transform ease-out 360ms;
}

.m-post__tag {
    display: block;
    color: #E42A1D;
}

.m-post__title {
    margin-top: 18px;
    color: inherit;
}

    .m-post__title:first-child {
        margin-top: 0;
    }

    .m-post__title a,
    .m-post__quote a {
        display: block;
        text-decoration: none;
        transition: color ease-in-out 180ms;
    }

        .m-post__title a:hover,
        .m-post__quote a:hover {
            color: #E42A1D;
        }

.m-post__tag + .m-post__title {
    margin-top: 11px;
}

.m-post__excerpt {
    margin-top: 11px;
}

    .m-post__excerpt p:first-child {
        margin-top: 0;
    }

.m-post__cta,
.m-post__link {
    position: relative;
    margin-top: 22px;
}

@media screen and (min-width: 40em) {
    .m-post__cta,
    .m-post__link {
        position: absolute;
        left: 0;
    }
}

@media screen and (min-width: 40em) {
    .m-post--extra .m-post__cta, .m-post--extra
    .m-post__link {
        position: static;
    }
}

.m-post__cta {
    margin-bottom: 4px;
}

@media screen and (min-width: 40em) {
    .m-post__cta {
        margin-top: 0;
        margin-bottom: 0;
        bottom: 4px;
    }
}

.m-post__link {
    margin-left: 17px;
    border-bottom: 1px solid transparent;
    text-decoration: none;
    transition: border-bottom ease-out 180ms, color ease-out 180ms;
}

@media screen and (min-width: 40em) {
    .m-post__link {
        bottom: 0;
    }
}

.m-post__link:before {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='1024' height='1024' viewBox='0 0 1024 1024'%3E%3Cpath fill='none' stroke='%23000' stroke-width='56.8889' stroke-miterlimit='4' stroke-linecap='butt' stroke-linejoin='miter' d='M432.356 113.778l369.778 369.778-369.778 369.778'%3E%3C/path%3E%3C/svg%3E");
    background-size: 100% auto;
    content: '';
    display: block;
    height: 16px;
    width: 16px;
    position: absolute;
    top: 1px;
    left: -23px;
    transition: opacity ease-out 180ms;
}

@media screen and (min-width: 40em) {
    .m-post__link:before {
        top: 4px;
    }
}

@media screen and (min-width: 90.625em) {
    .m-post__link:before {
        top: 6px;
    }
}

.s-module-bkgd.s-module-bkgd--dark .m-post__link:before {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='1024' height='1024' viewBox='0 0 1024 1024'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='56.8889' stroke-miterlimit='4' stroke-linecap='butt' stroke-linejoin='miter' d='M432.356 113.778l369.778 369.778-369.778 369.778'%3E%3C/path%3E%3C/svg%3E");
}

@media screen and (min-width: 61.25em) {
    .m-post__link:hover, .m-post__link:active {
        border-bottom: 1px solid #E42A1D;
        color: #E42A1D;
    }
}

@media screen and (min-width: 61.25em) {
    .m-post__slide {
        position: relative;
        z-index: 10;
        background-color: #FFFFFF;
        transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1);
        transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1);
        transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1);
    }
}

.m-post__slide-inner {
    padding-top: 23px;
    background-color: #FFFFFF;
}

@media screen and (min-width: 61.25em) {
    .m-post__slide-hidden {
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        z-index: 2;
        min-height: 92px;
        padding-bottom: 20px;
        background-color: #FFFFFF;
        pointer-events: none;
    }

        .m-post__slide-hidden > * {
            opacity: 0;
            transition: opacity 0.3s cubic-bezier(0, 0, 0.2, 1);
        }
}

.m-post__quote {
    margin: 0;
    padding: 0;
    border: 0;
}

@media screen and (min-width: 61.25em) {
    .m-post__quote {
        margin-top: 6px;
    }
}

.m-post__quote cite {
    display: block;
    margin-top: 25px;
}

@media screen and (min-width: 61.25em) {
    .m-post__quote cite {
        width: 90%;
        margin-top: 28px;
    }
}

.m-post__quote cite::before {
    content: '\2014';
    margin-right: 5px;
}

.m-post__quote p:first-child::before {
    content: '“';
}

.m-post__quote p:last-of-type::after {
    content: '”';
}

.m-post--extra {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column nowrap;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
}

    .m-post--extra > * {
        transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1);
        transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1);
        transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1);
    }

    .m-post--extra .a-video {
        transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1);
        transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1);
        transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1);
    }

    .m-post--extra .m-post__image,
    .m-post--extra .a-video {
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
    }

    .m-post--extra .m-post__slide {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

        .m-post--extra .m-post__slide > * {
            transition: all 0.3s cubic-bezier(0, 0, 0.2, 1);
        }

@media screen and (min-width: 61.25em) {
    .m-post--extra:not(.m-post--video):hover > * {
        -webkit-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        transform: translateY(-40px);
    }

    .m-post--extra:not(.m-post--video):hover .m-post__slide {
        -webkit-transform: translateY(-150px);
        -ms-transform: translateY(-150px);
        transform: translateY(-150px);
    }

    .m-post--extra:not(.m-post--video):hover .m-post__slide-hidden {
        pointer-events: all;
    }

        .m-post--extra:not(.m-post--video):hover .m-post__slide-hidden > * {
            opacity: 1;
            transition-delay: 0.15s;
        }
}

@media screen and (min-width: 61.25em) {
    .m-post--video .m-post__slide:hover > * {
        -webkit-transform: translateY(-150px);
        -ms-transform: translateY(-150px);
        transform: translateY(-150px);
    }

    .m-post--video .m-post__slide:hover .m-post__slide-hidden {
        pointer-events: all;
    }

        .m-post--video .m-post__slide:hover .m-post__slide-hidden > * {
            opacity: 1;
        }

    .m-post--video .m-post__slide:hover + .a-video {
        -webkit-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        transform: translateY(-40px);
    }
}

@media screen and (min-width: 61.25em) {
    .m-post--video .m-post__slide-hidden {
        min-height: 240px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-post--feature .m-post__title {
        margin-top: 34px;
    }
}

.body--highlight .m-post > a:hover, .body--highlight .m-post > a:active,
.s-module-bkgd--highlight .m-post > a:hover,
.s-module-bkgd--highlight .m-post > a:active {
    color: #191919;
}

.body--highlight .m-post__title,
.body--highlight .m-post__title a,
.body--highlight .m-post__quote p,
.s-module-bkgd--highlight .m-post__title,
.s-module-bkgd--highlight .m-post__title a,
.s-module-bkgd--highlight .m-post__quote p {
    color: #191919;
}

.body--highlight .m-post__slide,
.body--highlight .m-post__slide::after,
.body--highlight .m-post__slide-inner,
.body--highlight .m-post__slide-hidden,
.s-module-bkgd--highlight .m-post__slide,
.s-module-bkgd--highlight .m-post__slide::after,
.s-module-bkgd--highlight .m-post__slide-inner,
.s-module-bkgd--highlight .m-post__slide-hidden {
    background-color: #E42A1D;
}

.body--highlight .m-post__cta,
.body--highlight .m-post__tag,
.s-module-bkgd--highlight .m-post__cta,
.s-module-bkgd--highlight .m-post__tag {
    color: #FFFFFF;
}

.body--highlight .s-module-bkgd--dark .m-post__title,
.body--highlight .s-module-bkgd--dark .m-post__title a,
.body--highlight .s-module-bkgd--dark .m-post__quote p,
.s-module-bkgd--highlight .s-module-bkgd--dark .m-post__title,
.s-module-bkgd--highlight .s-module-bkgd--dark .m-post__title a,
.s-module-bkgd--highlight .s-module-bkgd--dark .m-post__quote p {
    color: #FFFFFF;
}

    .body--highlight .s-module-bkgd--dark .m-post__cta:hover,
    .body--highlight .s-module-bkgd--dark .m-post__link:hover,
    .body--highlight .s-module-bkgd--dark .m-post__title a:hover,
    .s-module-bkgd--highlight .s-module-bkgd--dark .m-post__cta:hover,
    .s-module-bkgd--highlight .s-module-bkgd--dark .m-post__link:hover,
    .s-module-bkgd--highlight .s-module-bkgd--dark .m-post__title a:hover {
        color: #E42A1D;
    }

.body--highlight .s-module-bkgd--dark .m-post__image::after,
.s-module-bkgd--highlight .s-module-bkgd--dark .m-post__image::after {
    background-color: #E42A1D;
}

.m-postInline {
    margin-top: 20px;
    padding-top: 30px;
    border-top: 1px solid #D9D9D9;
}

    .m-postInline:first-child {
        margin-top: 0;
    }

@media screen and (max-width: 61.1875em) {
    .m-postInline:first-child {
        padding-top: 0;
        border-top: 0;
    }
}

@media screen and (min-width: 61.25em) {
    .m-postInline {
        margin-top: 35px;
        padding-top: 35px;
    }
}

.m-postInline > a {
    display: block;
}

    .m-postInline > a,
    .m-postInline > a .m-postInline__title {
        transition: color ease-in-out 180ms;
    }

        .m-postInline > a:hover,
        .m-postInline > a:hover .m-postInline__title, .m-postInline > a:active,
        .m-postInline > a:active .m-postInline__title {
            color: #E42A1D;
        }

.m-postInline__image {
    margin: 0;
}

    .m-postInline__image img {
        display: block;
        max-width: 100%;
    }

.m-postInline__meta {
    display: block;
    margin-top: 22px;
    color: #8c8c8c;
}

@media screen and (min-width: 61.25em) {
    .m-postInline__meta {
        margin-top: 0;
    }
}

.m-postInline__title {
    margin-top: 11px;
    color: #191919;
}

.dark .m-postInline__title {
    color: #FFFFFF;
}

.m-postInline__excerpt {
    margin-top: 4px;
}

@media screen and (min-width: 61.25em) {
    .o-twoThirds .m-postInline__image {
        width: 30.4%;
    }
}

@media screen and (min-width: 61.25em) {
    .o-twoThirds .m-postInline__main {
        width: 69.6%;
    }
}

.o-twoThirds .m-postInline:last-child,
.o-listingFull .m-postInline:last-child {
    padding-bottom: 30px;
    border-bottom: 1px solid #D9D9D9;
}

@media screen and (min-width: 61.25em) {
    .o-twoThirds .m-postInline:last-child,
    .o-listingFull .m-postInline:last-child {
        padding-bottom: 35px;
    }
}

@media screen and (max-width: 39.9375em) {
    .o-twoThirds .m-postInline:last-child {
        padding-bottom: 0;
        border-bottom: 0;
    }
}

.m-pub > a {
    display: block;
    text-decoration: none;
}

    .m-pub > a:hover .m-pub__title, .m-pub > a:active .m-pub__title {
        color: #E42A1D;
    }

.m-pub__image {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 275px;
}

    .m-pub__image .a-img {
        display: inline-block;
        position: relative;
        max-height: 275px;
        margin: 0;
    }

        .m-pub__image .a-img::after {
            background: #E42A1D;
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            width: 100%;
            height: 100%;
            margin: 0 auto;
            z-index: 1;
            transition: -webkit-transform ease-in-out 360ms;
            transition: transform ease-in-out 360ms;
            transition: transform ease-in-out 360ms, -webkit-transform ease-in-out 360ms;
        }

a:hover .m-pub__image .a-img:after {
    -webkit-transform: translate3D(10px, 10px, 0);
    -ms-transform: translate3D(10px, 10px, 0);
    transform: translate3D(10px, 10px, 0);
}

a:hover .m-pub__image .a-img img {
    box-shadow: 0 0 0 0 transparent;
    -webkit-transform: translate3D(-10px, -10px, 0);
    -ms-transform: translate3D(-10px, -10px, 0);
    transform: translate3D(-10px, -10px, 0);
}

.m-pub__image img {
    display: block;
    position: relative;
    z-index: 2;
    max-width: 100%;
    margin: 0 auto;
    object-fit: contain;
    box-shadow: 0 0 10px 4px rgba(0, 0, 0, 0.25);
    transition: box-shadow ease-in-out 360ms, -webkit-transform ease-in-out 360ms;
    transition: transform ease-in-out 360ms, box-shadow ease-in-out 360ms;
    transition: transform ease-in-out 360ms, box-shadow ease-in-out 360ms, -webkit-transform ease-in-out 360ms;
}

.m-pub__title {
    margin: 22px 0 0;
    color: inherit;
}

.m-pub__subtitle {
    margin: 0;
}

.m-pub__meta {
    display: block;
    margin-top: 5px;
    color: #8c8c8c;
}

@media screen and (min-width: 30em) {
    .m-pub__meta {
        line-height: 20px;
    }
}

.body--highlight .m-pub__title,
.s-module-bkgd--highlight .m-pub__title {
    color: #191919;
}

.body--highlight .m-pub__meta,
.s-module-bkgd--highlight .m-pub__meta {
    color: rgba(255, 255, 255, 0.4);
}

.body--highlight .m-pub__image .a-img::after,
.s-module-bkgd--highlight .m-pub__image .a-img::after {
    background-color: #191919;
}

.body--highlight a:hover .m-pub__title, .body--highlight a:active .m-pub__title,
.s-module-bkgd--highlight a:hover .m-pub__title,
.s-module-bkgd--highlight a:active .m-pub__title {
    color: #191919;
}

.m-sidebarModule {
    margin-bottom: 35px;
}

@media screen and (min-width: 61.25em) {
    .m-sidebarModule {
        margin-bottom: 50px;
    }
}

.m-sidebarModule__content iframe {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
}

@media screen and (min-width: 61.25em) {
    .m-sidebarModule__events {
        padding-bottom: 23px;
        border-bottom: 1px solid #D9D9D9;
    }
}

.m-sidebarModule__events li {
    margin-top: 23px;
    padding-top: 18px;
    border-top: 1px solid #D9D9D9;
}

.m-sidebarModule__events a {
    display: block;
    text-decoration: none;
}

    .m-sidebarModule__events a:hover, .m-sidebarModule__events a:active {
        color: #E42A1D;
    }

.m-sidebarModule__events-meta {
    display: block;
    color: #8c8c8c;
}

.m-sidebarModule__events-title {
    margin: 0;
}

@media screen and (max-width: 61.1875em) {
    .m-sidebarNavigation + .m-sidebarModule {
        margin-top: 35px;
    }
}

.m-sidebar-dropzone {
    margin-top: 40px;
}

@media screen and (min-width: 61.25em) {
    .m-sidebar-dropzone {
        margin-top: 0;
    }
}

@media screen and (max-width: 39.9375em) {
    .m-sidebarNavigation {
        margin-left: -10px;
        margin-right: -10px;
    }
}

.m-sidebarNavigation__itemsWrapper {
    margin-left: 0;
    margin-right: 0;
}

@media screen and (max-width: 61.1875em) {
    .m-statsPanel {
        padding-bottom: 0;
    }
}

@media screen and (max-width: 61.1875em) {
    .m-statsPanel .m-statsList {
        margin-bottom: 0;
    }
}

.m-textBlock:last-child {
    padding-bottom: 0;
}

@media screen and (min-width: 61.25em) {
    .m-textBlock h2 {
        margin-top: 45px;
    }
}

.m-textBlock.o-primaryContent h5 + ul {
    margin-top: 0;
}

.m-textBlock.o-primaryContent ul li {
    margin-top: 0;
}

.m-textBlock.o-primaryContent .inline-cta {
    display: inline-block;
    margin-top: 0;
    color: #E42A1D;
}

    .m-textBlock.o-primaryContent .inline-cta::before {
        top: 7px;
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='1024' height='1024' viewBox='0 0 1024 1024'%3E%3Cpath fill='none' stroke='%23E82E21' stroke-width='56.8889' stroke-miterlimit='4' stroke-linecap='butt' stroke-linejoin='miter' d='M432.356 113.778l369.778 369.778-369.778 369.778'%3E%3C/path%3E%3C/svg%3E");
    }

[data-ux-pagebuilder] > ul > li:first-child .m-textBlock.add-separator--top:first-child,
[data-ux-pagebuilder] > ul > li:first-child span + .m-textBlock.add-separator--top {
    padding-top: 0;
}

    [data-ux-pagebuilder] > ul > li:first-child .m-textBlock.add-separator--top:first-child:before,
    [data-ux-pagebuilder] > ul > li:first-child span + .m-textBlock.add-separator--top:before {
        display: none;
    }

.m-workList__cta {
    margin-bottom: 0;
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal__inner {
        position: relative;
    }

        .o-accordionHorizontal__inner::before, .o-accordionHorizontal__inner::after {
            content: '';
            position: absolute;
            top: 0;
            bottom: 0;
            border-left: 1px solid #D9D9D9;
            z-index: 5;
        }

        .o-accordionHorizontal__inner::before {
            left: 0;
        }

        .o-accordionHorizontal__inner::after {
            right: 0;
        }
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal__wrapper {
        max-width: 9999px;
        border-top: 1px solid #D9D9D9;
        border-bottom: 1px solid #D9D9D9;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

.o-accordionHorizontal__footer {
    margin-top: 20px;
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal__footer {
        margin-top: 23px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal__items {
        position: relative;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal__item {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row-reverse nowrap;
        -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
        -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 80px;
        border-left: 1px solid #D9D9D9;
        overflow: hidden;
        transition: all 0.3s cubic-bezier(0.5, 0, 0.5, 0);
        box-shadow: inset 10px 0 10px -10px transparent;
    }

        .o-accordionHorizontal__item:hover, .o-accordionHorizontal__item:active {
            width: 200px;
            background: #F1F2F2;
            box-shadow: inset 10px 0 10px -10px rgba(0, 0, 0, 0.3);
        }

        .o-accordionHorizontal__item:first-child {
            border-left: 0;
            box-shadow: none;
        }

            .o-accordionHorizontal__item:first-child:hover, .o-accordionHorizontal__item:first-child:active {
                box-shadow: none;
            }

        .o-accordionHorizontal__item:last-child {
            border-right: 1px solid #D9D9D9;
        }
}

.o-accordionHorizontal__item-title {
    display: none;
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal__item-title {
        display: block;
        width: 80px;
        transition: opacity 0.3s cubic-bezier(0.5, 0, 0.5, 0);
    }
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal__item-trigger {
        display: block;
        width: 605px;
        height: 605px;
        padding: 27px 45px;
        text-decoration: none;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
        -webkit-transform: translateX(80px) rotate(90deg);
        -ms-transform: translateX(80px) rotate(90deg);
        transform: translateX(80px) rotate(90deg);
        -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
        transform-origin: left top;
    }
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal__item-content {
        pointer-events: none;
    }
}

@media screen and (min-width: 61.25em) {
    .a-accordionHorizontal--active.o-accordionHorizontal__item {
        background: #F1F2F2;
        box-shadow: inset 10px 0 10px -10px rgba(0, 0, 0, 0.3);
    }

        .a-accordionHorizontal--active.o-accordionHorizontal__item:first-child {
            box-shadow: none;
        }
}

@media screen and (min-width: 61.25em) {
    .a-accordionHorizontal--active .o-accordionHorizontal__item-title {
        opacity: 0;
    }
}

@media screen and (min-width: 61.25em) {
    .a-accordionHorizontal--active .o-accordionHorizontal__item-content {
        pointer-events: all;
    }
}

@media screen and (min-width: 61.25em) {
    .o-accordionHorizontal .a-accordionCard .a-accordionCard__body {
        background: transparent;
    }

    .o-accordionHorizontal .a-accordionCard:hover .a-accordionCard__body, .o-accordionHorizontal .a-accordionCard:active .a-accordionCard__body {
        background: transparent;
        color: #191919;
    }

        .o-accordionHorizontal .a-accordionCard:hover .a-accordionCard__body .a-accordionCard__cta, .o-accordionHorizontal .a-accordionCard:active .a-accordionCard__body .a-accordionCard__cta {
            color: #E42A1D;
            border-color: #E42A1D;
        }

            .o-accordionHorizontal .a-accordionCard:hover .a-accordionCard__body .a-accordionCard__cta:after, .o-accordionHorizontal .a-accordionCard:active .a-accordionCard__body .a-accordionCard__cta:after {
                background-color: #E42A1D;
            }

        .o-accordionHorizontal .a-accordionCard:hover .a-accordionCard__body .a-accordionCard__subtitle, .o-accordionHorizontal .a-accordionCard:active .a-accordionCard__body .a-accordionCard__subtitle {
            color: #8c8c8c;
        }

        .o-accordionHorizontal .a-accordionCard:hover .a-accordionCard__body .a-accordionCard__hover-on .a-accordionCard__subtitle, .o-accordionHorizontal .a-accordionCard:active .a-accordionCard__body .a-accordionCard__hover-on .a-accordionCard__subtitle {
            color: #191919;
        }
}

.o-careerOutcomes {
    overflow: hidden;
}

    .o-careerOutcomes .m-moduleHeader {
        position: relative;
        z-index: 2;
    }

.o-careerOutcomes__items {
    margin-top: -5px;
}

@media screen and (min-width: 40em) {
    .o-careerOutcomes__items {
        margin-top: -20px;
    }
}

.o-careerOutcomes__item {
    text-align: center;
}

@media screen and (min-width: 40em) {
    .o-careerOutcomes__item:nth-child(3n-1) {
        margin-top: 95px;
    }
}

.o-careerOutcomes__item a {
    display: block;
    text-decoration: none;
}

.o-careerOutcomes .flickity-viewport {
    overflow: visible;
}

.o-careerOutcomes .carousel-cell {
    margin-left: -60px;
    margin-right: -60px;
    opacity: 0.2;
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

    .o-careerOutcomes .carousel-cell.is-selected {
        opacity: 1;
        z-index: 5;
    }

@media screen and (min-width: 40em) {
    .o-careerOutcomes .carousel-cell {
        margin-left: 0;
        margin-right: 0;
        padding: 0;
        opacity: 1;
    }
}

.o-careerOutcomes__image {
    margin: 0;
    height: 200px;
}

@media screen and (min-width: 40em) {
    .o-careerOutcomes__image {
        height: auto;
    }
}

.o-careerOutcomes__image img {
    display: block;
    width: 200px;
    margin: 0 auto;
    border-radius: 50%;
    -webkit-transform: scale(0.66);
    -ms-transform: scale(0.66);
    transform: scale(0.66);
    transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.is-selected .o-careerOutcomes__image img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

@media screen and (min-width: 40em) {
    .o-careerOutcomes__image img {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
}

.o-careerOutcomes__name,
.o-careerOutcomes__role,
.o-careerOutcomes__course {
    display: block;
    opacity: 0;
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.is-selected .o-careerOutcomes__name, .is-selected
.o-careerOutcomes__role, .is-selected
.o-careerOutcomes__course {
    opacity: 1;
}

@media screen and (min-width: 40em) {
    .o-careerOutcomes__name,
    .o-careerOutcomes__role,
    .o-careerOutcomes__course {
        opacity: 1;
    }
}

.o-careerOutcomes__name {
    margin-top: 25px;
}

@media screen and (min-width: 40em) {
    .o-careerOutcomes__name {
        margin-top: 22px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-careerOutcomes__role {
        margin-top: 10px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-careerOutcomes__course {
        margin-top: 7px;
    }
}

.o-careerOutcomes__content {
    position: relative;
    margin-top: 25px;
    padding-top: 30px;
}

@media screen and (min-width: 40em) {
    .o-careerOutcomes__content {
        margin-top: 49px;
        padding-top: 0;
    }
}

@media screen and (min-width: 72.5em) {
    .o-careerOutcomes__content {
        margin-top: 71px;
    }
}

.o-careerOutcomes__content::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 10px;
    right: 10px;
    border-top: 1px solid rgba(20, 20, 20, 0.15);
}

@media screen and (min-width: 40em) {
    .o-careerOutcomes__content::before {
        display: none;
    }
}

.o-careerOutcomes__content p:first-child {
    margin-top: 0;
}

.o-careerOutcomes__cta {
    color: #191919;
}

@media screen and (min-width: 61.25em) {
    .o-careerOutcomes__cta {
        margin-top: 23px;
    }
}

.o-fastFacts {
    margin-top: 30px;
    margin-bottom: 10px;
}

@media screen and (min-width: 61.25em) {
    .o-fastFacts {
        margin-top: 65px;
        margin-bottom: 43px;
    }
}

@media screen and (min-width: 40em) {
    .o-fastFacts__items {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }
}

.o-fastFacts__item {
    float: none !important;
    margin-top: 23px;
}

    .o-fastFacts__item:first-child {
        margin-top: 0;
    }

@media screen and (min-width: 40em) {
    .o-fastFacts__item {
        margin-top: 0;
    }
}

.o-fastFacts__item-inner {
    padding-top: 20px;
    border-top: 1px solid #D9D9D9;
}

@media screen and (min-width: 40em) {
    .o-fastFacts__item-inner {
        padding-top: 0;
        border-top: 0;
    }
}

.o-fastFacts__item:first-child .o-fastFacts__item-inner {
    padding-top: 0;
    border-top: 0;
}

.o-fastFactsDetail {
    padding-top: 28px;
    padding-bottom: 35px;
    border-top: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
}

@media screen and (min-width: 61.25em) {
    .o-fastFactsDetail {
        padding-bottom: 65px;
    }
}

.o-fastFactsDetail__items,
.o-primaryContent ul .o-fastFactsDetail__items {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
}

@media screen and (min-width: 40em) {
    .o-fastFactsDetail__items,
    .o-primaryContent ul .o-fastFactsDetail__items {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }
}

.o-fastFactsDetail__item,
.o-primaryContent ul .o-fastFactsDetail__items .o-fastFactsDetail__item {
    float: none !important;
    margin-top: 14px;
}

    .o-fastFactsDetail__item:first-child,
    .o-primaryContent ul .o-fastFactsDetail__items .o-fastFactsDetail__item:first-child {
        margin-top: 0;
    }

    .o-fastFactsDetail__item::before,
    .o-primaryContent ul .o-fastFactsDetail__items .o-fastFactsDetail__item::before {
        display: none;
    }

@media screen and (min-width: 40em) {
    .o-fastFactsDetail__item,
    .o-primaryContent ul .o-fastFactsDetail__items .o-fastFactsDetail__item {
        width: 50%;
        margin-top: 19px;
    }

        .o-fastFactsDetail__item:nth-child(-n+2),
        .o-primaryContent ul .o-fastFactsDetail__items .o-fastFactsDetail__item:nth-child(-n+2) {
            margin-top: 0;
        }
}

.o-fastFactsDetail__title,
.o-fastFactsDetail__content {
    display: block;
}

.o-fastFactsDetail__title {
    color: #E42A1D;
}

.o-fastFactsDetail__content {
    margin-top: 5px;
}

.o-fastFactsDetail__footer {
    margin-top: 15px;
}

@media screen and (min-width: 61.25em) {
    .o-fastFactsDetail__footer {
        margin-top: 29px;
    }
}

.o-fastFactsDetail__footer-link {
    border-bottom: 1px solid;
    text-decoration: none;
}

    .o-fastFactsDetail__footer-link:hover, .o-fastFactsDetail__footer-link:active {
        color: #E42A1D;
    }

.o-fastFactsDetail + .add-separator--top::before {
    display: none;
}

.o-primaryContent .m-heroHeading + .o-fastFactsDetail {
    margin-top: 43px;
}

@media screen and (min-width: 40em) {
    .o-primaryContent .m-heroHeading + .o-fastFactsDetail {
        margin-top: 66px;
    }
}

@media screen and (min-width: 40em) {
    .o-featuredPosts__twoThirds {
        margin-top: 37px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-featuredPosts__twoThirds {
        margin-top: 42px;
    }
}

@media screen and (min-width: 40em) {
    .o-featuredPosts__threeCol {
        margin-top: 37px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-featuredPosts__threeCol {
        margin-top: 103px;
    }
}

@media screen and (max-width: 39.9375em) {
    .o-featuredPosts .m-post {
        margin-top: 45px;
    }
}

.o-fiveCol {
    overflow: hidden;
}

    .o-fiveCol .flickity-viewport {
        overflow: visible;
    }

.o-fiveCol__footer {
    margin-top: 20px;
}

@media screen and (min-width: 61.25em) {
    .o-fiveCol__footer {
        margin-top: 23px;
    }
}

.o-fiveCol__footer-cta {
    margin-bottom: 4px;
}

.body--highlight .o-fiveCol__footer-cta,
.s-module-bkgd--highlight .o-fiveCol__footer-cta {
    color: #191919;
}

.o-heroFlyout {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-bottom: -200px;
    padding-top: 46px;
}

@media screen and (min-width: 61.25em) {
    .o-heroFlyout {
        display: block;
        min-height: 2765px;
        padding-top: 0;
        margin-bottom: 0;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFlyout__wrapper {
        height: 2765px;
        padding-bottom: 300px;
    }
}

.o-heroFlyout__title-wrap {
    position: relative;
    z-index: 5;
    margin-bottom: -8px;
}

@media screen and (min-width: 61.25em) {
    .o-heroFlyout__title-wrap {
        position: -webkit-sticky;
        position: sticky;
        bottom: 44px;
        margin-bottom: 0;
    }
}

.o-heroFlyout__title {
    float: none !important;
    margin: 0;
}

    .o-heroFlyout__title span {
        color: #E42A1D;
    }

.o-heroFlyout__inner {
    position: relative;
    height: 985px;
}

@media screen and (min-width: 40em) {
    .o-heroFlyout__inner {
        height: 1200px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFlyout__inner {
        position: -webkit-sticky;
        position: sticky;
        top: 95px;
        height: calc(100vh - 95px);
        margin-bottom: 500px;
    }
}

.o-heroFlyout__images {
    height: 985px;
}

@media screen and (min-width: 40em) {
    .o-heroFlyout__images {
        height: 1200px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFlyout__images {
        position: relative;
        height: 2265px;
    }
}

.o-heroFlyout__images .a-img {
    position: absolute;
    margin: 0;
    float: none !important;
    opacity: 0;
}

@media screen and (min-width: 61.25em) {
    .o-heroFlyout__images .a-img {
        top: 25%;
        left: 50%;
        -webkit-transform: translateY(-50%) translateX(-50%);
        -ms-transform: translateY(-50%) translateX(-50%);
        transform: translateY(-50%) translateX(-50%);
    }

        .o-heroFlyout__images .a-img:nth-child(1) {
            top: 25%;
            left: 50%;
            z-index: 6;
            -webkit-animation-delay: 1200ms;
            animation-delay: 1200ms;
        }

            .o-heroFlyout__images .a-img:nth-child(1) img {
                max-width: 440px;
            }

        .o-heroFlyout__images .a-img:nth-child(2) {
            z-index: 1;
            -webkit-animation-delay: 200ms;
            animation-delay: 200ms;
        }

            .o-heroFlyout__images .a-img:nth-child(2) img {
                max-width: 440px;
            }

        .o-heroFlyout__images .a-img:nth-child(3) {
            z-index: 4;
            -webkit-animation-delay: 800ms;
            animation-delay: 800ms;
        }

            .o-heroFlyout__images .a-img:nth-child(3) img {
                max-width: 365px;
            }

        .o-heroFlyout__images .a-img:nth-child(4) {
            z-index: 3;
            -webkit-animation-delay: 600ms;
            animation-delay: 600ms;
        }

            .o-heroFlyout__images .a-img:nth-child(4) img {
                max-width: 580px;
            }

        .o-heroFlyout__images .a-img:nth-child(5) {
            z-index: 5;
            -webkit-animation-delay: 1000ms;
            animation-delay: 1000ms;
        }

            .o-heroFlyout__images .a-img:nth-child(5) img {
                max-width: 520px;
            }

        .o-heroFlyout__images .a-img:nth-child(6) {
            top: auto;
            z-index: 2;
            -webkit-animation-delay: 400ms;
            animation-delay: 400ms;
        }

            .o-heroFlyout__images .a-img:nth-child(6) img {
                max-width: 440px;
            }
}

@media screen and (max-width: 61.1875em) {
    .o-heroFlyout__images .a-img:nth-child(1) {
        top: 200px;
        left: 30px;
        z-index: 3;
    }

    .o-heroFlyout__images .a-img:nth-child(2) {
        top: 0;
        left: -30px;
        z-index: 2;
    }

    .o-heroFlyout__images .a-img:nth-child(3) {
        top: 80px;
        right: -30px;
        z-index: 1;
    }

    .o-heroFlyout__images .a-img:nth-child(4) {
        top: 406px;
        right: -30px;
        z-index: 4;
    }

    .o-heroFlyout__images .a-img:nth-child(5) {
        top: 475px;
        left: -30px;
        z-index: 5;
    }

    .o-heroFlyout__images .a-img:nth-child(6) {
        top: 605px;
        right: 30px;
        z-index: 6;
    }
}

@media screen and (max-width: 39.9375em) {
    .o-heroFlyout__images .a-img:nth-child(1) {
        left: 20px;
    }

    .o-heroFlyout__images .a-img:nth-child(2) {
        left: -20px;
    }

    .o-heroFlyout__images .a-img:nth-child(3) {
        right: -10px;
        padding-right: 0;
    }

    .o-heroFlyout__images .a-img:nth-child(4) {
        right: -10px;
        padding-right: 0;
    }

    .o-heroFlyout__images .a-img:nth-child(5) {
        left: -20px;
    }

    .o-heroFlyout__images .a-img:nth-child(6) {
        right: 20px;
    }
}

.o-heroFlyout__images .a-img img {
    display: block;
    width: 100%;
    max-width: 100%;
}

.o-heroFlyout--active .o-heroFlyout__images .a-img {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-timing-function: cubic-bezier(0.1, 0.3, 0.25, 1);
    animation-timing-function: cubic-bezier(0.1, 0.3, 0.25, 1);
}

@media screen and (min-width: 61.25em) {
    .o-heroFlyout--active .o-heroFlyout__images .a-img:nth-child(n+2) {
        left: auto;
    }
}

.o-heroFullScreen {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
    margin-top: -70px;
    padding-bottom: 25px;
}

@media screen and (min-width: 40em) {
    .o-heroFullScreen {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen {
        margin-left: -30px;
        margin-right: -30px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-heroFullScreen {
        margin-left: -40px;
        margin-right: -40px;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-heroFullScreen {
        margin-left: -60px;
        margin-right: -60px;
        padding-left: 60px;
        padding-right: 60px;
    }
}

@media screen and (min-width: 40em) {
    .o-heroFullScreen {
        margin-top: -85px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen {
        margin-top: -100px;
        padding-bottom: 74px;
    }
}

.o-heroFullScreen .icon--chevron-thin-down {
    display: none;
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen .icon--chevron-thin-down {
        display: block;
        position: fixed;
        bottom: 50px;
        right: 60px;
        z-index: 30;
        width: 30px;
        height: 30px;
        fill: #FFFFFF;
        cursor: pointer;
    }
}

.o-heroFullScreen__main {
    position: relative;
}

.o-heroFullScreen__main-image .a-img {
    position: relative;
    width: 100vw;
    min-height: 240px;
    margin: 0 -10px;
}

@media screen and (min-width: 40em) {
    .o-heroFullScreen__main-image .a-img {
        margin: 0 -20px;
        height: 100vh;
        min-height: 800px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__main-image .a-img {
        position: relative;
        height: calc(100vh - 60px);
        margin: 0 -30px;
        overflow: hidden;
    }
}

@media screen and (min-width: 72.5em) {
    .o-heroFullScreen__main-image .a-img {
        margin: 0 -40px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-heroFullScreen__main-image .a-img {
        margin: 0 -60px;
    }
}

.o-heroFullScreen__main-image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 2;
    height: 110px;
    margin-left: -10px;
    margin-right: -10px;
    background: linear-gradient(rgba(0, 0, 0, 0.4), transparent);
    pointer-events: none;
}

@media screen and (min-width: 40em) {
    .o-heroFullScreen__main-image::before {
        height: 150px;
        margin-left: -20px;
        margin-right: -20px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__main-image::before {
        margin-left: -30px;
        margin-right: -30px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-heroFullScreen__main-image::before {
        margin-left: -40px;
        margin-right: -40px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-heroFullScreen__main-image::before {
        margin-left: -60px;
        margin-right: -60px;
    }
}

.o-heroFullScreen__main-image .a-img__image {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.o-heroFullScreen__main-title {
    position: absolute;
    bottom: 13px;
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__main-title {
        position: -webkit-sticky;
        position: sticky;
        bottom: 50px;
    }
}

.o-heroFullScreen__main-title span {
    display: block;
    float: none !important;
}

.o-heroFullScreen__title {
    position: absolute;
    bottom: 12px;
    z-index: 26;
    float: none !important;
    margin-top: 0;
    margin-bottom: 0;
    color: #FFFFFF;
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__title {
        position: -webkit-sticky;
        position: sticky;
        bottom: 46px;
    }
}

.o-heroFullScreen__text {
    position: relative;
    z-index: 27;
    padding-top: 32px;
    padding-bottom: 34px;
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__text {
        padding-top: 83px;
        padding-bottom: 107px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__text--last {
        padding-bottom: 69px;
    }
}

.o-heroFullScreen__text p:first-child {
    margin-top: 0;
}

.o-heroFullScreen__item {
    position: relative;
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__item {
        padding-bottom: 46px;
    }
}

.o-heroFullScreen__item .a-video.is-active {
    position: relative;
    z-index: 25;
}

.o-heroFullScreen__item .a-video__link,
.o-heroFullScreen__item .a-video__figure {
    float: none !important;
}

.o-heroFullScreen__item .a-img,
.o-heroFullScreen__item .a-video,
.o-heroFullScreen__item .a-video__link {
    margin: 0;
}

.o-heroFullScreen__item .a-img__image,
.o-heroFullScreen__item .a-video {
    display: block;
    width: calc(100% + 20px);
    margin-right: -20px;
}

@media screen and (min-width: 40em) {
    .o-heroFullScreen__item .a-img__image,
    .o-heroFullScreen__item .a-video {
        width: calc(100% + 30px);
        margin-right: -30px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__item .a-img__image,
    .o-heroFullScreen__item .a-video {
        width: calc(100% + 45px);
        min-height: calc(((100vw - (160px)) * 0.66) * 0.625);
        margin-right: -45px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-heroFullScreen__item .a-img__image,
    .o-heroFullScreen__item .a-video {
        width: calc(100% + 60px);
        margin-right: -60px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-heroFullScreen__item .a-img__image,
    .o-heroFullScreen__item .a-video {
        width: calc(100% + 80px);
        min-height: calc(((100vw - (320px)) * 0.66) * 0.625);
        margin-right: -80px;
    }
}

@media screen and (min-width: 108.75em) {
    .o-heroFullScreen__item .a-img__image,
    .o-heroFullScreen__item .a-video {
        min-height: auto;
    }
}

.o-heroFullScreen__item .a-video {
    min-height: 0;
}

.o-heroFullScreen__item .a-img__image {
    display: block;
    max-width: 100%;
}

.o-heroFullScreen__item:nth-child(even) .o-heroFullScreen__title {
    left: 15px;
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__item:nth-child(even) .o-heroFullScreen__title span {
        float: right !important;
        text-align: right;
    }
}

.o-heroFullScreen__item:nth-child(odd) .o-heroFullScreen__title span {
    left: 0;
}

.o-heroFullScreen__item:nth-child(odd) .a-img,
.o-heroFullScreen__item:nth-child(odd) .a-video {
    left: 0;
}

.o-heroFullScreen__item:nth-child(odd) .a-img__image,
.o-heroFullScreen__item:nth-child(odd) .a-video {
    margin-right: 0;
    margin-left: -20px;
}

@media screen and (min-width: 40em) {
    .o-heroFullScreen__item:nth-child(odd) .a-img__image,
    .o-heroFullScreen__item:nth-child(odd) .a-video {
        margin-left: -40px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroFullScreen__item:nth-child(odd) .a-img__image,
    .o-heroFullScreen__item:nth-child(odd) .a-video {
        margin-left: -60px;
    }
}

.o-heroFullScreen__item:nth-child(odd) .a-video__figure {
    padding-left: 0;
}

.o-heroFullScreen__item:nth-child(even) .a-video__figure {
    padding-right: 0;
}

.dark .o-heroFullScreen,
.dark .o-heroFullScreen__item,
.dark .o-heroFullScreen__text {
    background-color: #191919;
    color: #FFFFFF;
}

.o-heroFullScreen,
.o-heroFullScreen__item,
.o-heroFullScreen__text {
    background-color: #FFFFFF;
    color: #191919;
    transition: background-color 0.2s cubic-bezier(0.5, 0, 0.5, 0), color 0.2s cubic-bezier(0.5, 0, 0.5, 0);
}

.o-heroGallery {
    margin-top: 19px;
}

@media screen and (min-width: 40em) {
    .o-heroGallery {
        margin-top: 39px;
        margin-bottom: 60px;
    }
}

.o-heroGallery__header {
    position: -webkit-sticky;
    position: sticky;
    top: 107px;
    z-index: 5;
}

@media screen and (min-width: 61.25em) {
    .o-heroGallery__header {
        top: 140px;
    }
}

.o-heroGallery__title {
    font-family: "neue-display-random";
    -o-font-feature-settings: 'liga' 1;
    -ms-font-feature-settings: 'liga' 1;
    font-feature-settings: 'liga' 1;
    font-size: 25px;
    line-height: 25px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 30em) {
    .o-heroGallery__title {
        font-size: 40px;
        line-height: 40px;
        letter-spacing: -0.01rem;
    }
}

@media screen and (min-width: 40em) {
    .o-heroGallery__title {
        font-size: 50px;
        line-height: 50px;
    }
}

.o-heroGallery__title span {
    color: #E42A1D;
}

.o-heroGallery__images {
    margin-top: 21px;
}

@media screen and (min-width: 61.25em) {
    .o-heroGallery__images {
        margin-top: 50px;
    }
}

.o-heroGallery__image {
    position: relative;
}

    .o-heroGallery__image:nth-child(1) {
        z-index: 1;
    }

    .o-heroGallery__image:nth-child(2) {
        z-index: 2;
        margin-top: -3%;
    }

@media screen and (min-width: 61.25em) {
    .o-heroGallery__image:nth-child(2) {
        margin-top: -13%;
    }
}

.o-heroGallery__image:nth-child(3) {
    z-index: 3;
    margin-top: -3%;
}

@media screen and (min-width: 61.25em) {
    .o-heroGallery__image:nth-child(3) {
        margin-top: -16%;
    }
}

.o-heroGallery__image .columns {
    float: none;
}

.o-heroGallery__images .a-img {
    margin: 0;
}

    .o-heroGallery__images .a-img img {
        display: block;
        max-width: 100%;
    }

.o-heroGallery__image--right .a-img {
    display: block;
    margin: 0 0 0 -20px;
    width: calc(100% + 40px);
}

@media screen and (min-width: 30em) {
    .o-heroGallery__image--right .a-img {
        margin: 0 0 0 -30px;
        width: calc(100% + 30px);
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroGallery__image--right .a-img {
        margin: 0;
        min-height: calc(((100vw - (160px)) * 0.66) * 0.625);
        width: calc(100% + 45px);
    }
}

@media screen and (min-width: 72.5em) {
    .o-heroGallery__image--right .a-img {
        width: calc(100% + 60px);
    }
}

@media screen and (min-width: 90.625em) {
    .o-heroGallery__image--right .a-img {
        min-height: calc(((100vw - (320px)) * 0.66) * 0.625);
        width: 100%;
    }
}

@media screen and (min-width: 108.75em) {
    .o-heroGallery__image--right .a-img {
        min-height: auto;
    }
}

@media screen and (min-width: 40em) {
    .o-heroSidebySide {
        margin-bottom: 50px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroSidebySide {
        margin-bottom: 75px;
    }
}

.o-heroSidebySide__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column-reverse nowrap;
    -ms-flex-flow: column-reverse nowrap;
    flex-flow: column-reverse nowrap;
}

@media screen and (min-width: 61.25em) {
    .o-heroSidebySide__inner {
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.o-heroSidebySide__main {
    position: relative;
    z-index: 5;
}

@media screen and (min-width: 61.25em) {
    .o-heroSidebySide__title {
        width: calc(100% + 80px);
    }
}

.o-heroSidebySide__title strong {
    color: #E42A1D;
}

.o-heroSidebySide__media .a-img,
.o-heroSidebySide__media .a-video__link {
    margin: 0;
}

.o-heroSidebySide__media img {
    display: block;
    max-width: 100%;
}

.o-heroSidebySide__media--right .a-img,
.o-heroSidebySide__media--right .a-video {
    display: block;
    margin: 0 0 22px -20px;
    width: calc(100% + 40px);
}

@media screen and (min-width: 30em) {
    .o-heroSidebySide__media--right .a-img,
    .o-heroSidebySide__media--right .a-video {
        margin: 0 0 22px -30px;
        width: calc(100% + 30px);
    }
}

@media screen and (min-width: 61.25em) {
    .o-heroSidebySide__media--right .a-img,
    .o-heroSidebySide__media--right .a-video {
        margin: 0;
        min-height: calc(((100vw - (160px)) * 0.66) * 0.625);
        width: calc(100% + 45px);
    }
}

@media screen and (min-width: 72.5em) {
    .o-heroSidebySide__media--right .a-img,
    .o-heroSidebySide__media--right .a-video {
        width: calc(100% + 60px);
    }
}

@media screen and (min-width: 90.625em) {
    .o-heroSidebySide__media--right .a-img,
    .o-heroSidebySide__media--right .a-video {
        min-height: calc(((100vw - (320px)) * 0.66) * 0.625);
        width: 100%;
    }
}

@media screen and (min-width: 108.75em) {
    .o-heroSidebySide__media--right .a-img,
    .o-heroSidebySide__media--right .a-video {
        min-height: auto;
    }
}

@media screen and (max-width: 61.1875em) {
    .o-heroTitleFirst {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: column-reverse;
        -ms-flex-flow: column-reverse;
        flex-flow: column-reverse;
    }
}

@media screen and (max-width: 61.1875em) {
    .o-heroTitleFirst .o-landing__copy {
        background-color: #FFFFFF;
    }

    .dark .o-heroTitleFirst .o-landing__copy {
        background-color: #191919;
    }

    .body--highlight .o-heroTitleFirst .o-landing__copy {
        background-color: #E42A1D;
    }
}

@media screen and (max-width: 61.1875em) {
    .o-heroTitleFirst .o-landing__title {
        margin-top: 0;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 39.9375em) {
    .o-heroTitleFirst .o-landing__title-wrapper {
        padding-bottom: 0;
    }
}

@media screen and (max-width: 61.1875em) {
    .o-heroTitleFirst .o-landing__title-wrapper {
        margin-top: -35px;
    }
}

@media screen and (max-width: 61.1875em) {
    .o-heroTitleFirst .o-landing__copy:first-child + .o-landing__media {
        margin-bottom: 0;
    }
}

.o-heroTitleFirst .o-landing__media img {
    display: block;
    max-width: 100%;
    margin: 0;
}

@media screen and (max-width: 61.1875em) {
    .o-heroTitleFirst .o-landing__mediaImageRight {
        margin-bottom: 0;
    }
}

.o-multimediaGallery {
    overflow: hidden;
}

@media screen and (max-width: 39.9375em) {
    .o-multimediaGallery {
        margin-left: -10px;
        margin-right: -10px;
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-multimediaGallery .m-moduleHeader__intro {
        margin-bottom: 0;
    }
}

.o-multimediaGallery .flickity-viewport {
    overflow: visible;
}

.o-multimediaGallery__items {
    position: relative;
    z-index: 1;
}

.o-multimediaGallery__item {
    width: calc(100% - 20px);
}

@media screen and (min-width: 61.25em) {
    .o-multimediaGallery__item {
        position: relative;
        z-index: 2;
        float: none !important;
        width: auto;
        margin-bottom: 40px;
        pointer-events: none;
    }

        .o-multimediaGallery__item > * {
            pointer-events: all;
        }

        .o-multimediaGallery__item .columns {
            float: none !important;
        }

        .o-multimediaGallery__item:nth-child(1) .columns {
            margin-top: -40px;
        }
}

.o-multimediaGallery__footer {
    position: relative;
    z-index: 2;
    margin-top: 41px;
}

@media screen and (min-width: 61.25em) {
    .o-multimediaGallery__footer {
        margin-top: 38px;
    }
}

.o-multimediaGallery__items .m-post {
    width: 100%;
    height: auto;
}

.o-nav__college-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.m-moduleHeader + .o-listingFull__inner {
    margin-top: 23px;
}

@media screen and (min-width: 61.25em) {
    .m-moduleHeader + .o-listingFull__inner {
        margin-top: 63px;
    }
}

.o-listingFull__inner {
    overflow: hidden;
    transition: height 0.3s cubic-bezier(0.5, 0, 0.5, 0);
}

.o-listingFull__footer {
    margin-top: 8px;
}

@media screen and (min-width: 61.25em) {
    .o-listingFull__footer {
        margin-top: 18px;
    }
}

.o-listingFull__footer .a-btn {
    margin-top: 42px;
}

@media screen and (min-width: 61.25em) {
    .o-listingFull__footer .a-btn {
        margin-top: 57px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-primaryContent .a-video__link {
        margin-top: 60px;
    }
}

.m-courses ul li ul li:before,
.m-composedList__description ul li ul li:before,
.m-featurePanel .m-landingPanel__content ul li ul li:before,
.m-heroHeading ul li ul li:before,
.m-textBlock.o-primaryContent ul li ul li:before,
.m-courses ol li ul li:before,
.m-composedList__description ol li ul li:before,
.m-featurePanel .m-landingPanel__content ol li ul li:before,
.m-heroHeading ol li ul li:before,
.m-textBlock.o-primaryContent ol li ul li:before {
    counter-increment: none;
}

.o-quoteCarousel .m-moduleHeader {
    margin-bottom: 34px;
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel .m-moduleHeader {
        margin-bottom: 75px;
    }
}

.o-quoteCarousel a {
    text-decoration: none;
}

.o-quoteCarousel__cta {
    margin-top: 11px;
    color: inherit;
}

.o-quoteCarousel__main {
    margin-top: 11px;
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel__main {
        margin-top: 40px;
    }
}

.o-quoteCarousel__items {
    position: relative;
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel__items {
        margin-top: 30px;
    }
}

.o-quoteCarousel__main + .o-quoteCarousel__items {
    margin-top: 18px;
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel__main + .o-quoteCarousel__items {
        margin-top: 40px;
    }
}

.o-quoteCarousel__item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    min-height: 100%;
    padding-bottom: 1px;
}

.o-quoteCarousel blockquote {
    margin: 0;
    padding: 0;
    border: 0;
}

    .o-quoteCarousel blockquote p:first-child::before {
        content: '“';
    }

    .o-quoteCarousel blockquote p:last-of-type::after {
        content: '”';
    }

.o-quoteCarousel cite {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 25px;
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel cite {
        margin-top: 28px;
    }
}

.o-quoteCarousel cite .a-img {
    width: 35px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin: 0;
    margin-right: 15px;
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel cite .a-img {
        width: 55px;
        margin-right: 20px;
    }
}

.o-quoteCarousel cite img {
    max-width: 100%;
    border-radius: 50%;
}

.o-quoteCarousel cite .a-img + span {
    margin-top: -5px;
}

.o-quoteCarousel__nav {
    margin-top: 30px;
    text-align: right;
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel__nav {
        margin-top: 0;
    }
}

.o-quoteCarousel__nav-item {
    margin: 0 0 20px;
    padding: 0;
    border: 0;
    background: none;
    color: inherit;
    cursor: pointer;
    outline: none;
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel__nav-item {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel__nav--prev {
        left: 6.66667%;
        margin-left: 15px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-quoteCarousel__nav--prev {
        margin-left: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-quoteCarousel__nav--next {
        right: 6.66667%;
        margin-right: 15px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-quoteCarousel__nav--next {
        margin-right: 20px;
    }
}

body {
    overflow: visible;
}

.o-quoteMedia {
    position: relative;
}

@media screen and (min-width: 61.25em) {
    .o-quoteMedia {
        height: 200vh;
    }
}

@media screen and (min-width: 61.25em) {
    .o-quoteMedia__inner {
        position: -webkit-sticky;
        position: sticky;
        top: 170px;
        left: 0;
    }
}

@media screen and (min-width: 61.25em) {
    .o-quoteMedia__main {
        position: absolute;
        top: 75px;
        z-index: 2;
        transition: -webkit-transform 0.1s linear;
        transition: transform 0.1s linear;
        transition: transform 0.1s linear, -webkit-transform 0.1s linear;
    }
}

.o-quoteMedia__main blockquote {
    margin: 0;
    padding: 0;
    border: 0;
}

    .o-quoteMedia__main blockquote cite {
        display: block;
        margin-top: 25px;
    }

@media screen and (min-width: 61.25em) {
    .o-quoteMedia__main blockquote cite {
        width: 30%;
        margin-top: 28px;
    }
}

.o-quoteMedia__main blockquote cite::before {
    content: '\2014';
    margin-right: 5px;
}

.o-quoteMedia__main blockquote p:first-child::before {
    content: '“';
}

.o-quoteMedia__main blockquote p:last-of-type::after {
    content: '”';
}

.o-quoteMedia__media {
    margin-top: 25px;
}

@media screen and (min-width: 61.25em) {
    .o-quoteMedia__media {
        margin-top: 80px;
        opacity: 0.25;
    }
}

.o-quoteMedia__media .a-img {
    margin: 0;
}

.o-quoteMedia__media .a-img__image {
    display: block;
    max-width: 100%;
}

.o-quotePortrait {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
}

@media screen and (min-width: 40em) {
    .o-quotePortrait {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-quotePortrait {
        margin-left: -30px;
        margin-right: -30px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-quotePortrait {
        margin-left: -40px;
        margin-right: -40px;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-quotePortrait {
        margin-left: -60px;
        margin-right: -60px;
        padding-left: 60px;
        padding-right: 60px;
    }
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__inner {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }
}

.o-quotePortrait__images {
    float: right;
    margin-left: 30px;
}

@media screen and (max-width: 39.9375em) {
    .o-quotePortrait__images {
        padding-left: 0;
        width: 130px;
    }
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__images {
        float: none;
        margin-left: 0;
    }
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__images-inner {
        display: inline-block;
        position: relative;
        padding-bottom: 30px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-quotePortrait__images-inner {
        padding-bottom: 40px;
    }
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__image {
        position: relative;
    }

        .o-quotePortrait__image::after {
            content: '';
            position: absolute;
            top: 0;
            bottom: 0;
            right: 0;
            left: 0;
            z-index: 1;
            background: #191919;
        }
}

.o-quotePortrait__image,
.o-quotePortrait__image img {
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__image:first-child {
        z-index: 2;
    }
}

.o-quotePortrait__image:last-child:not(:first-child) {
    display: none;
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__image:last-child:not(:first-child) {
        display: block;
        position: absolute;
        z-index: 1;
        top: 30px;
        left: 30px;
    }

        .o-quotePortrait__image:last-child:not(:first-child) img {
            opacity: 0.2;
        }
}

@media screen and (min-width: 61.25em) {
    .o-quotePortrait__image:last-child:not(:first-child) {
        top: 40px;
        left: 40px;
    }
}

.o-quotePortrait__image img {
    display: block;
    position: relative;
    z-index: 2;
    max-width: 100%;
}

@media screen and (min-width: 40em) {
    .o-quotePortrait--hover img {
        opacity: 0.2;
    }
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__image:hover, .o-quotePortrait__image:active {
        z-index: 5;
    }

        .o-quotePortrait__image:hover img, .o-quotePortrait__image:active img {
            opacity: 1;
        }
}

.o-quotePortrait__main {
    position: relative;
    float: none !important;
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__main {
        padding-bottom: 48px;
    }
}

.o-quotePortrait__main blockquote {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    border-top: 0;
    border-bottom: 0;
}

    .o-quotePortrait__main blockquote p:first-child::before {
        content: '“';
    }

    .o-quotePortrait__main blockquote p:last-of-type::after {
        content: '”';
    }

    .o-quotePortrait__main blockquote cite {
        display: block;
        margin-top: 14px;
    }

@media screen and (min-width: 40em) {
    .o-quotePortrait__main blockquote cite {
        margin-top: 25px;
    }
}

.o-quotePortrait__cta {
    margin-top: 23px;
}

@media screen and (min-width: 40em) {
    .o-quotePortrait__cta {
        position: absolute;
        bottom: 3px;
    }
}

.o-sectionInfo .m-moduleHeader {
    margin-bottom: 25px;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo .m-moduleHeader {
        margin-bottom: 60px;
    }
}

.o-sectionInfo .m-moduleHeader__intro {
    display: none;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo .m-moduleHeader__intro {
        display: block;
        margin-bottom: 0;
    }
}

.o-sectionInfo__header {
    position: relative;
    z-index: 2;
    margin: -60px 0 0 -20px;
    padding: 25px 20px 15px;
    background: #FFFFFF;
}

@media screen and (min-width: 30em) {
    .o-sectionInfo__header {
        padding: 33px 20px 44px;
    }
}

@media screen and (min-width: 40em) {
    .o-sectionInfo__header {
        margin: -60px 0 0 -30px;
        padding: 27px 30px 48px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo__header {
        margin: 0;
        padding: 0;
        background: none;
    }
}

.o-sectionInfo__title {
    position: relative;
    margin-bottom: -10px;
    color: #E42A1D;
    opacity: 0;
}

@media screen and (min-width: 40em) {
    .o-sectionInfo__title {
        margin-bottom: -15px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo__title {
        margin-bottom: -22px;
    }
}

.wf-neuedisplayrandom-n7-active .o-sectionInfo__title {
    opacity: 1;
}

.o-sectionInfo__mediaImage {
    display: block;
    margin: 0 0 22px -20px;
    width: calc(100% + 40px);
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo__mediaImage {
        margin: 0 0 0 -60px;
        min-height: calc(((100vw - (160px)) * 0.66) * 0.625);
        width: calc(100% + 60px);
    }
}

@media screen and (min-width: 80.0625em) {
    .o-sectionInfo__mediaImage {
        margin-left: calc((20px + ((100vw - 1200px) / 2)) * -1);
        min-height: calc(((100vw - (160px)) * 0.66) * 0.625);
        width: calc(100% + 20px + ((100vw - 1200px) / 2));
    }
}

@media screen and (min-width: 90.625em) {
    .o-sectionInfo__mediaImage {
        margin-left: 0;
        min-height: calc(((100vw - (320px)) * 0.66) * 0.625);
        width: 100%;
    }
}

@media screen and (min-width: 108.75em) {
    .o-sectionInfo__mediaImage {
        height: auto;
        min-height: auto;
    }
}

.o-sectionInfo__mediaImageRight {
    display: block;
    margin: 0 0 0 -20px;
    width: calc(100% + 40px);
}

@media screen and (min-width: 30em) {
    .o-sectionInfo__mediaImageRight {
        margin: 0 0 0 -30px;
        width: calc(100% + 30px);
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo__mediaImageRight {
        margin: 0;
        min-height: calc(((100vw - (160px)) * 0.66) * 0.625);
        width: calc(100% + 45px);
    }
}

@media screen and (min-width: 72.5em) {
    .o-sectionInfo__mediaImageRight {
        width: calc(100% + 60px);
    }
}

@media screen and (min-width: 90.625em) {
    .o-sectionInfo__mediaImageRight {
        min-height: calc(((100vw - (320px)) * 0.66) * 0.625);
        width: 100%;
    }
}

@media screen and (min-width: 108.75em) {
    .o-sectionInfo__mediaImageRight {
        min-height: auto;
    }
}

.o-sectionInfo__mediaImageRight--absolute {
    display: none;
    opacity: 0;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo__mediaImageRight--absolute {
        display: block;
        transition: opacity ease-in-out 180ms;
        width: calc(100% + 15px);
        position: absolute;
        top: 0;
    }
}

@media screen and (min-width: 72.5em) {
    .o-sectionInfo__mediaImageRight--absolute {
        width: calc(100% + 20px);
    }
}

@media screen and (min-width: 80.0625em) {
    .o-sectionInfo__mediaImageRight--absolute {
        width: calc(100% - 20px + ((100vw - 1200px) / 2));
    }
}

@media screen and (min-width: 90.625em) {
    .o-sectionInfo__mediaImageRight--absolute {
        width: calc(100% - 40px);
    }
}

.o-sectionInfo__mediaImageRight--absolute.is-active {
    opacity: 1;
}

.o-sectionInfo__cta {
    float: left;
    margin: 38px 0 46px;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo__cta {
        float: none;
        margin: 19px 0;
    }
}

.o-sectionInfo__content {
    margin-top: 5px;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo__content {
        margin-top: 0;
    }
}

.o-sectionInfo .m-collegeList {
    margin: 45px 0 0;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo .m-collegeList {
        height: 100%;
        margin-top: 36px;
    }
}

.o-sectionInfo .m-collegeList:first-child {
    margin-top: 38px;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo .m-collegeList:first-child {
        margin-top: 102px;
    }
}

.o-sectionInfo .m-collegeList__items {
    height: 100%;
    padding-bottom: 13px;
    border-bottom: 1px solid #D9D9D9;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo .m-collegeList__items {
        padding-bottom: 0;
        border-bottom: 0;
    }
}

.o-sectionInfo .a-video__link {
    margin: 0;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .m-moduleHeader {
        margin-bottom: 150px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .o-sectionInfo__inner {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .o-sectionInfo__main,
    .o-sectionInfo--alt .o-sectionInfo__aside {
        float: none !important;
    }
}

.o-sectionInfo--alt .o-sectionInfo__main {
    margin-top: -7px;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .o-sectionInfo__main {
        margin-top: 0;
        padding-bottom: 24px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .o-sectionInfo__aside {
        margin-top: 30px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .o-sectionInfo__sticky {
        position: -webkit-sticky;
        position: sticky;
        top: 95px;
        margin-top: -80px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .o-sectionInfo__content {
        display: none;
    }
}

.o-sectionInfo--alt .m-collegeList:first-child {
    margin-top: 0;
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .is-active .m-collegeList__content-wrapper {
        bottom: -55px;
        overflow: visible;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sectionInfo--alt .is-active .m-collegeList__content {
        position: -webkit-sticky;
        position: sticky;
        top: 100px;
        padding-bottom: 0;
    }
}

.o-sectionInfo--alt .m-collegeList__content p:first-child {
    margin-top: 0;
}

.o-shuffler .m-moduleHeader__intro {
    margin-bottom: 20px;
}

.o-shuffler__items .carousel {
    margin-left: -20px;
    margin-right: -20px;
    overflow: hidden;
}

@media screen and (min-width: 40em) {
    .o-shuffler__items .carousel {
        margin-left: 0;
        margin-right: 0;
    }
}

.o-shuffler .flickity-viewport {
    overflow: visible;
}

@media screen and (min-width: 40em) {
    .o-shuffler .flickity-viewport {
        overflow: hidden;
    }
}

.o-shuffler .carousel-cell {
    width: 100%;
    margin: 0 -30px;
    padding: 0 40px;
}

@media screen and (min-width: 40em) {
    .o-shuffler .carousel-cell {
        width: 100%;
        margin: 0 10px;
        padding: 0;
    }
}

.o-shuffler .carousel-cell img {
    width: 100%;
}

.o-shuffler__carousel-image {
    margin: 0;
    opacity: 0.45;
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.is-selected .o-shuffler__carousel-image {
    opacity: 1;
}

@media screen and (min-width: 40em) {
    .o-shuffler__carousel-image {
        display: none;
    }
}

.o-shuffler__group {
    display: none;
}

    .o-shuffler__group.o-shuffler__group--active {
        display: block;
    }

.o-shuffler__images {
    display: none;
}

@media screen and (min-width: 40em) {
    .o-shuffler__images {
        display: block;
    }
}

.o-shuffler__images-inner {
    position: relative;
    height: 575px;
}

.o-shuffler__image {
    position: absolute;
    margin: 0;
    background-color: #000000;
}

    .o-shuffler__image:nth-child(1) {
        bottom: 14.78261%;
        left: 47.02381%;
        z-index: 6;
    }

    .o-shuffler__image:nth-child(2) {
        top: 19.13043%;
        left: 33.33333%;
        z-index: 5;
    }

    .o-shuffler__image:nth-child(3) {
        bottom: 2.6087%;
        left: 0;
        z-index: 4;
    }

    .o-shuffler__image:nth-child(4) {
        bottom: 0;
        right: 0;
        z-index: 3;
    }

    .o-shuffler__image:nth-child(5) {
        top: 5.21739%;
        left: 9.40476%;
        z-index: 2;
    }

    .o-shuffler__image:nth-child(6) {
        top: 0;
        left: 55.95238%;
        z-index: 1;
    }

    .o-shuffler__image:hover {
        z-index: 11;
    }

    .o-shuffler__image img {
        display: block;
        opacity: 0.35;
        cursor: pointer;
        transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .o-shuffler__image:hover img {
        opacity: 0.75;
    }

    .o-shuffler__image.o-shuffler__image--active {
        z-index: 10;
    }

        .o-shuffler__image.o-shuffler__image--active img {
            opacity: 1;
        }

.o-shuffler__data {
    margin: 19px 0 0;
    opacity: 0;
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.is-selected .o-shuffler__data {
    opacity: 1;
}

@media print, screen and (min-width: 40em) {
    .o-shuffler__data {
        margin: 30px 0 0;
        opacity: 1;
    }
}

.o-shuffler__data dt {
    margin-top: 22px;
    color: #E42A1D;
}

@media screen and (min-width: 40em) {
    .o-shuffler__data dt {
        margin-top: 31px;
    }
}

.o-shuffler__data dt:first-child {
    margin-top: 0;
}

.o-shuffler__data dd {
    margin-top: 13px;
}

@media screen and (min-width: 40em) {
    .o-shuffler__data dd {
        margin-top: 9px;
    }
}

.o-shuffler__data .o-shuffler__data--large {
    margin-top: 11px;
}

@media screen and (min-width: 40em) {
    .o-shuffler__data .o-shuffler__data--large {
        margin-top: 6px;
    }
}

.o-shuffler__data .o-shuffler__data--large + dt {
    margin-top: 19px;
}

@media screen and (min-width: 40em) {
    .o-shuffler__data .o-shuffler__data--large + dt {
        margin-top: 29px;
    }
}

.o-shuffler__footer {
    display: none;
}

@media screen and (min-width: 40em) {
    .o-shuffler__footer {
        display: block;
        margin-top: 30px;
    }
}

.o-shuffler__nav {
    background: none;
    margin: 0;
    padding: 0;
    border: 0;
    color: inherit;
    cursor: pointer;
    outline: none;
}

    .o-shuffler__nav .icon {
        vertical-align: middle;
    }

    .o-shuffler__nav span {
        margin-left: 5px;
    }

.o-shuffler__nav--next {
    margin-left: 5px;
}

.o-shuffler__nav--shuffle {
    margin-left: 40px;
}

.m-featurePanel + .o-shuffler {
    margin-top: 5px;
}

@media screen and (min-width: 40em) {
    .m-featurePanel + .o-shuffler {
        margin-top: 65px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-featurePanel + .o-shuffler {
        margin-top: 35px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-sidebar > :first-child,
    .o-sidebar--top-mobile > :first-child {
        margin-top: 60px;
    }
}

.o-socialFeed .m-moduleHeader {
    margin-bottom: 16px;
}

@media screen and (min-width: 61.25em) {
    .o-socialFeed .m-moduleHeader {
        margin-bottom: 45px;
    }
}

.o-socialFeed + .m-cta {
    margin-top: 0;
}

.pageClass--lang .o-socialFeed__title {
    color: #E42A1D;
}

.o-stats {
    position: relative;
    margin-top: 45px;
    border-bottom: 1px solid #D9D9D9;
}

    .o-stats::before {
        content: '';
        position: absolute;
        top: 0;
        left: 10px;
        right: 10px;
        border-top: 1px solid #D9D9D9;
    }

@media screen and (min-width: 61.25em) {
    .o-stats {
        border-bottom: 0;
    }

        .o-stats::before {
            display: none;
        }
}

.o-stats .m-statsList {
    margin-bottom: 0;
    padding-bottom: 0;
    border-top: 0;
    border-bottom: 0;
}

@media screen and (min-width: 61.25em) {
    .m-statsList__oversized {
        font-size: 6.9vw;
        line-height: 1.2;
    }
}

@media screen and (min-width: 90.625em) {
    .m-statsList__oversized {
        font-size: 110px;
        line-height: 120px;
    }
}

.o-studyAreas__inner {
    position: relative;
}

.o-studyAreas__footer {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 5;
    margin-top: -1px;
    background-color: #F5F5F5;
}

@media screen and (min-width: 40em) {
    .o-studyAreas__footer {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-studyAreas__footer {
        margin-left: -30px;
        margin-right: -30px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-studyAreas__footer {
        margin-left: -40px;
        margin-right: -40px;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-studyAreas__footer {
        margin-left: -60px;
        margin-right: -60px;
        padding-left: 60px;
        padding-right: 60px;
    }
}

.o-studyAreas__footer a {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
    display: block;
    padding-top: 21px;
    padding-bottom: 24px;
    background-color: #F5F5F5;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

@media screen and (min-width: 40em) {
    .o-studyAreas__footer a {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-studyAreas__footer a {
        margin-left: -30px;
        margin-right: -30px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-studyAreas__footer a {
        margin-left: -40px;
        margin-right: -40px;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 90.625em) {
    .o-studyAreas__footer a {
        margin-left: -60px;
        margin-right: -60px;
        padding-left: 60px;
        padding-right: 60px;
    }
}

.o-studyAreas__footer a:hover, .o-studyAreas__footer a:active {
    background-color: #E42A1D;
    color: #FFFFFF;
}

@media screen and (min-width: 72.5em) {
    .o-studyAreas__footer a {
        margin-left: -9999px;
        margin-right: -9999px;
        padding-left: 9999px;
        padding-right: 9999px;
    }
}

.o-studyAreas .m-moduleHeader__intro {
    margin-bottom: 18px;
}

.o-studyAreas .m-contentList {
    margin-top: 0;
    padding-top: 0;
}

    .o-studyAreas .m-contentList .ais-infinite-hits {
        margin-top: 0;
    }

    .o-studyAreas .m-contentList .m-contentFilters + .o-studyAreas__items .ais-infinite-hits {
        margin-top: 11px;
    }

.o-studyAreas:not(.o-studyAreas--alt) .m-contentList .ais-infinite-hits--item {
    margin-bottom: 0;
}

@media screen and (min-width: 61.25em) {
    .o-studyAreas__more-header {
        padding-top: 20px;
    }
}

.o-studyAreas__more-title {
    margin: 0;
}

.o-studyAreas__more-main {
    padding-bottom: 15px;
}

@media screen and (min-width: 61.25em) {
    .o-studyAreas__more-main {
        padding-top: 35px;
        padding-bottom: 75px;
    }
}

.o-studyAreas__more p:first-child {
    margin-top: 0;
}

.o-studyAreas__more-cta {
    margin-top: 20px;
}

.o-studyAreas--alt .o-studyAreas__footer {
    margin-top: 35px;
}

@media screen and (min-width: 61.25em) {
    .o-studyAreas--alt .o-studyAreas__footer {
        margin-top: 100px;
    }
}

@media screen and (min-width: 72.5em) {
    .o-studyAreas--alt .m-contentList--grid-view .a-program.is-active::before, .o-studyAreas--alt .m-contentList--grid-view .a-program.is-active::after {
        bottom: -115px;
    }
}

.o-textLongForm__content {
    margin-top: 33px;
    overflow: hidden;
    transition: height 0.3s cubic-bezier(0, 0, 0.2, 1);
}

@media screen and (min-width: 61.25em) {
    .o-textLongForm__content {
        margin-top: 64px;
    }
}

.o-textLongForm__content .a-img {
    margin: 0;
}

.o-textLongForm__content img {
    display: block;
    max-width: 100%;
}

.o-textLongForm__content .a-img + p {
    margin-top: 32px;
}

@media screen and (min-width: 61.25em) {
    .o-textLongForm__content .a-img + p {
        margin-top: 66px;
    }
}

.o-textLongForm__trigger {
    display: inline-block;
    margin-top: 24px;
    color: #E42A1D;
    text-decoration: none;
}

    .o-textLongForm__trigger svg {
        width: 11px;
        height: 7px;
        transition: -webkit-transform 0.3s cubic-bezier(0.5, 0, 0.5, 0);
        transition: transform 0.3s cubic-bezier(0.5, 0, 0.5, 0);
        transition: transform 0.3s cubic-bezier(0.5, 0, 0.5, 0), -webkit-transform 0.3s cubic-bezier(0.5, 0, 0.5, 0);
    }

.o-textLongForm--open .o-textLongForm__trigger svg {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

.o-three-col {
    overflow: hidden;
}

@media screen and (max-width: 39.9375em) {
    .o-three-col .m-moduleHeader__intro {
        margin-bottom: 35px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-three-col__items {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }

        .o-three-col__items::before, .o-three-col__items::after {
            display: none;
        }
}

.o-three-col__item {
    float: none !important;
    margin-top: 40px;
}

    .o-three-col__item:first-child {
        margin-top: 0;
    }

    .o-three-col__item:last-child .a-accordionCard {
        border-bottom: 1px solid #D9D9D9;
    }

@media screen and (min-width: 61.25em) {
    .o-three-col__item {
        border-left: 1px solid #D9D9D9;
    }

        .o-three-col__item:nth-child(3n+1) {
            border-left: 0;
        }

        .o-three-col__item:nth-child(-n+3) {
            margin-top: 0;
        }

        .o-three-col__item:last-child .a-accordionCard {
            border-bottom: 0;
        }

    .flickity-viewport .o-three-col__item {
        margin-top: 0;
    }
}

.o-three-col__item > .m-post {
    padding-top: 30px;
    border-top: 1px solid #D9D9D9;
}

@media screen and (min-width: 61.25em) {
    .o-three-col__item > .m-post {
        padding-top: 0;
        border-top: 0;
    }
}

.o-three-col__items:first-child .o-three-col__item:first-child > .m-post {
    padding-top: 0;
    border-top: 0;
}

.o-three-col__footer {
    margin-top: 20px;
}

@media screen and (min-width: 61.25em) {
    .o-three-col__footer {
        margin-top: 23px;
    }
}

.o-three-col__footer-cta {
    margin-bottom: 4px;
}

.o-three-col__nav {
    display: none;
    text-align: right;
}

@media screen and (min-width: 61.25em) {
    .o-three-col__nav.show {
        display: block;
    }
}

.o-three-col__nav-item {
    margin: 0 0 20px;
    padding: 0;
    border: 0;
    background: none;
    color: #A7A9AC;
    cursor: pointer;
    outline: none;
}

    .o-three-col__nav-item:hover {
        color: #E42A1D;
    }

    .o-three-col__nav-item .icon {
        vertical-align: middle;
    }

.o-three-col__nav--next {
    margin-left: 5px;
}

@media screen and (min-width: 61.25em) {
    .s-module-bkgd--dark .o-three-col__item {
        border-color: #333333;
    }
}

.o-three-col--carousel {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
}

@media print, screen and (min-width: 40em) {
    .o-three-col--carousel {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-three-col--carousel {
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 61.25em) {
    .o-three-col--carousel .m-moduleHeader__intro {
        margin-bottom: 17px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-three-col--carousel .o-three-col__items {
        display: block;
    }
}

.o-three-col--carousel .flickity-viewport {
    width: 100%;
}

@media screen and (max-width: 61.1875em) {
    .o-three-col--carousel .flickity-viewport {
        overflow: visible;
    }
}

@media screen and (min-width: 61.25em) {
    .o-three-col--carousel .flickity-viewport {
        margin-top: -10px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-three-col--carousel .flickity-slider {
        padding-top: 10px;
    }
}

@media screen and (max-width: 61.1875em) {
    .o-three-col--carousel .flickity-viewport .o-three-col__item {
        margin-top: 0;
    }
}

@media screen and (min-width: 61.25em) {
    .o-three-col--carousel .flickity-viewport .o-three-col__item {
        padding-bottom: 10px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-three-col--carousel.o-three-col--set-height .o-three-col__item {
        height: 100%;
    }
}

.o-three-col--no-divider .o-three-col__item {
    border-left: 0;
}

@media screen and (max-width: 39.9375em) {
    .o-three-col--no-divider .o-three-col__item {
        margin-top: 0;
    }
}

.o-three-col--carousel .flickity-viewport .m-post,
.o-heroGallery + .o-three-col .o-three-col__item:first-child > .m-post {
    padding-top: 0;
    border-top: 0;
}

.o-twoThirds__inner {
    margin-top: 37px;
}

@media screen and (min-width: 61.25em) {
    .o-twoThirds__inner {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        margin-top: 42px;
    }
}

@media screen and (min-width: 61.25em) {
    .o-twoThirds__aside,
    .o-twoThirds__main {
        float: none !important;
    }
}

.o-twoThirds__aside {
    margin-top: 45px;
}

@media screen and (min-width: 61.25em) {
    .o-twoThirds__aside {
        margin-top: 0;
    }
}

.o-twoThirds__cta {
    margin-top: 28px;
}

.s-header-fixed .o-utility-nav__tertiary .m-navList--secondary .m-navList__link--primary {
    line-height: 15px;
}

.o-utility-nav__tertiary .m-navList--secondary > :last-child:after {
    position: absolute;
    top: -7px;
    height: 30px;
    background-color: #585858;
}

body {
    transition: background-color 0.2s cubic-bezier(0.5, 0, 0.5, 0), color 0.2s cubic-bezier(0.5, 0, 0.5, 0);
}

    body .body--highlight {
        margin-left: -10px;
        margin-right: -10px;
        padding-left: 10px;
        padding-right: 10px;
        background: #E42A1D;
        color: #FFFFFF;
        -webkit-font-smoothing: antialiased;
    }

@media screen and (min-width: 40em) {
    body .body--highlight {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    body .body--highlight {
        margin-left: -30px;
        margin-right: -30px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (min-width: 72.5em) {
    body .body--highlight {
        margin-left: -40px;
        margin-right: -40px;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 90.625em) {
    body .body--highlight {
        margin-left: -60px;
        margin-right: -60px;
        padding-left: 60px;
        padding-right: 60px;
    }
}

.g-footer {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
}

.pageClass--spe .o-sectionInfo__title,
.pageClass--spe .m-landingPanel__title,
.pageClass--spe .m-moduleHeader__title {
    color: #191919;
}

.pageClass--spe.dark .o-sectionInfo__title,
.pageClass--spe.dark .m-landingPanel__title,
.pageClass--spe.dark .m-moduleHeader__title,
.pageClass--spe .s-module-bkgd--dark .o-sectionInfo__title,
.pageClass--spe .s-module-bkgd--dark .m-landingPanel__title,
.pageClass--spe .s-module-bkgd--dark .m-moduleHeader__title,
.pageClass--spe .s-module-bkgd--highlight .o-sectionInfo__title,
.pageClass--spe .s-module-bkgd--highlight .m-landingPanel__title,
.pageClass--spe .s-module-bkgd--highlight .m-moduleHeader__title {
    color: #FFFFFF;
}

@media screen and (min-width: 61.25em) {
    .pageClass--spe .o-sectionInfo__header {
        margin-bottom: 43px;
    }
}

.pageClass--spe .o-sectionInfo__title {
    margin-bottom: 0;
}

.pageClass--spe .m-featurePanel--small-alt .m-landingPanel--alt .m-landingPanel__image,
.pageClass--spe .m-landingPanel--alt.m-landingPanel--small .m-landingPanel__image {
    padding-left: 0;
}

@media screen and (min-width: 61.25em) {
    .pageClass--spe .m-featurePanel--small-alt .m-landingPanel--alt .m-landingPanel__imageLink p,
    .pageClass--spe .m-landingPanel--alt.m-landingPanel--small .m-landingPanel__imageLink p {
        left: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .pageClass--spe .m-featurePanel--small-alt .m-landingPanel--alt .m-landingPanel__imageLink::after,
    .pageClass--spe .m-landingPanel--alt.m-landingPanel--small .m-landingPanel__imageLink::after {
        left: 0;
        width: 100%;
    }
}

.pageClass--spe .m-featurePanel .m-landingPanel__title,
.pageClass--spe .m-featurePanel .m-landingPanel--alt .m-landingPanel__title {
    top: 0;
    margin-bottom: 23px;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}

@media screen and (min-width: 61.25em) {
    .pageClass--spe .m-featurePanel .m-landingPanel__title,
    .pageClass--spe .m-featurePanel .m-landingPanel--alt .m-landingPanel__title {
        margin-bottom: 42px;
    }
}

@media screen and (max-width: 61.1875em) {
    .pageClass--spe .m-featurePanel--small .m-landingPanel__title,
    .pageClass--spe .m-featurePanel--small .m-landingPanel--alt .m-landingPanel__title {
        margin-bottom: 0;
    }
}

.s-module-spacer {
    margin-top: 75px;
}

@media screen and (min-width: 61.25em) {
    .s-module-spacer {
        margin-top: 145px;
    }
}

.s-module-spacer.o-three-col {
    margin-top: 65px;
    padding-top: 10px;
}

@media screen and (min-width: 61.25em) {
    .s-module-spacer.o-three-col {
        margin-top: 135px;
    }
}

.s-module-border {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
    margin-top: 45px;
    padding-top: 50px;
    border-top: 1px solid #D9D9D9;
    transition: border-top 0.2s cubic-bezier(0.5, 0, 0.5, 0);
}

@media screen and (min-width: 40em) {
    .s-module-border {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .s-module-border {
        margin-left: -30px;
        margin-right: -30px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (min-width: 72.5em) {
    .s-module-border {
        margin-left: -40px;
        margin-right: -40px;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 90.625em) {
    .s-module-border {
        margin-left: -60px;
        margin-right: -60px;
        padding-left: 60px;
        padding-right: 60px;
    }
}

@media screen and (min-width: 40em) {
    .s-module-border {
        margin-top: 110px;
        padding-top: 65px;
    }
}

.dark .s-module-border {
    border-top-color: #333333;
}

.body--highlight .s-module-border {
    border-top-color: transparent;
}

@media screen and (max-width: 61.1875em) {
    .s-module-border--mobile {
        margin-top: 45px;
        margin-left: -20px;
        margin-right: -20px;
        padding-top: 50px;
        padding-left: 20px;
        padding-right: 20px;
        border-top: 1px solid #D9D9D9;
        transition: border-top 0.2s cubic-bezier(0.5, 0, 0.5, 0);
    }

    .dark .s-module-border--mobile {
        border-top-color: #333333;
    }

    .body--highlight .s-module-border--mobile {
        border-top-color: transparent;
    }
}

@media screen and (max-width: 39.9375em) {
    .s-module-border--mobile {
        margin-left: -10px;
        margin-right: -10px;
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media screen and (min-width: 40em) {
    .s-module-border.m-featurePanel {
        padding-top: 35px;
    }
}

@media screen and (max-width: 39.9375em) {
    .s-module-border.m-featurePanel--small {
        padding-top: 0;
        border-top: 0;
    }
}

.m-featurePanel + .s-module-border {
    margin-top: 7px;
}

@media screen and (min-width: 40em) {
    .m-featurePanel + .s-module-border {
        margin-top: 72px;
    }
}

@media screen and (min-width: 61.25em) {
    .m-featurePanel + .s-module-border {
        margin-top: 35px;
    }
}

.m-featurePanel + .s-module-spacer {
    margin-top: 35px;
}

@media screen and (min-width: 40em) {
    .m-featurePanel + .s-module-spacer {
        margin-top: 125px;
    }
}

.s-module-border:first-child,
.o-heroGallery + .o-three-col.s-module-border,
.o-studyAreas + .s-module-border,
.body--highlight + .s-module-border,
.s-module-bkgd + .s-module-border {
    margin-top: 0;
    border-top: 0;
}

.s-module-bkgd {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
    margin-top: 50px;
    padding-top: 51px;
    padding-bottom: 45px;
    background-color: #F5F5F5;
}

@media screen and (min-width: 40em) {
    .s-module-bkgd {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 61.25em) {
    .s-module-bkgd {
        margin-left: -30px;
        margin-right: -30px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (min-width: 72.5em) {
    .s-module-bkgd {
        margin-left: -40px;
        margin-right: -40px;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 90.625em) {
    .s-module-bkgd {
        margin-left: -60px;
        margin-right: -60px;
        padding-left: 60px;
        padding-right: 60px;
    }
}

@media screen and (min-width: 40em) {
    .s-module-bkgd {
        margin-top: 110px;
        padding-top: 75px;
        padding-bottom: 110px;
    }
}

.s-module-bkgd.s-module-bkgd--dark {
    background-color: #191919;
    color: #FFFFFF;
}

.s-module-bkgd.s-module-bkgd--highlight {
    background-color: #E42A1D;
    color: #FFFFFF;
}

    .s-module-bkgd.s-module-bkgd--highlight .m-moduleHeader__title {
        color: #191919;
    }

.s-module-bkgd + .s-module-bkgd,
.s-module-bkgd + .m-cta {
    margin-top: 0;
}

.s-sticky-body {
    position: relative;
}

.s-sticky-body--abs,
.s-sticky-body--active {
    position: fixed;
    top: auto;
    bottom: 49px;
}

.s-sticky-body--abs {
    position: absolute;
}

.s-sticky-body--sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 120px;
    bottom: auto;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBoYXNlLTMuY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwic2V0dXAvX3Jlc2V0cy5zY3NzIiwic2V0dXAvbWl4aW5zL190eXBvZ3JhcGh5LnNjc3MiLCJzZXR1cC9faWNvbnMuc2NzcyIsInNldHVwL19kZXNpZ24tZ3JpZHMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsInNldHVwL19idXR0b25zLnNjc3MiLCJzZXR1cC9fY29sb3JzLnNjc3MiLCJzZXR1cC9fdHlwb2dyYXBoeS5zY3NzIiwic2V0dXAvX3ZhcmlhYmxlcy5zY3NzIiwicGhhc2UtMy9fZ2xvYmFscy9fZy1icmVhZGNydW1icy5zY3NzIiwicGhhc2UtMy9fZ2xvYmFscy9fZy1oZWFkZXIuc2NzcyIsInBoYXNlLTMvX2F0b21zL19hLWJ0bi5zY3NzIiwicGhhc2UtMy9fYXRvbXMvX2EtY3RhLnNjc3MiLCJwaGFzZS0zL19hdG9tcy9fYS1hY2NvcmRpb25DYXJkLnNjc3MiLCJwaGFzZS0zL19hdG9tcy9fYS1wcm9ncmFtLnNjc3MiLCJwaGFzZS0zL19hdG9tcy9fYS10YWJsZS5zY3NzIiwicGhhc2UtMy9fbW9sZWN1bGVzL19tLWNhcmRzLnNjc3MiLCJwaGFzZS0zL19tb2xlY3VsZXMvX20tY29sbGVnZUxpc3Quc2NzcyIsInBoYXNlLTMvX21vbGVjdWxlcy9fbS1jb250ZW50RmlsdGVycy5zY3NzIiwicGhhc2UtMy9fbW9sZWN1bGVzL19tLWNvdXJzZXMuc2NzcyIsInBoYXNlLTMvX21vbGVjdWxlcy9fbS1jdGFQYW5lbC5zY3NzIiwicGhhc2UtMy9fbW9sZWN1bGVzL19tLWRyYXdlcnMuc2NzcyIsInBoYXNlLTMvX21vbGVjdWxlcy9fbS1mZWF0dXJlUGFuZWwuc2NzcyIsInBoYXNlLTMvX21vbGVjdWxlcy9fbS1oaWdobGlnaHRzR3JpZC5zY3NzIiwicGhhc2UtMy9fbW9sZWN1bGVzL19tLWxhbmRpbmdJbnRyby5zY3NzIiwicGhhc2UtMy9fbW9sZWN1bGVzL19tLWxpc3RQYW5lbC5zY3NzIiwicGhhc2UtMy9fbW9sZWN1bGVzL19tLW1vZHVsZUhlYWRlci5zY3NzIiwicGhhc2UtMy9fbW9sZWN1bGVzL19tLW5hdkxpc3Quc2NzcyIsInBoYXNlLTMvX21vbGVjdWxlcy9fbS1wYWdlSGVhZGVyLnNjc3MiLCJwaGFzZS0zL19tb2xlY3VsZXMvX20tcG9zdC5zY3NzIiwicGhhc2UtMy9fbW9sZWN1bGVzL19tLXBvc3RJbmxpbmUuc2NzcyIsInBoYXNlLTMvX21vbGVjdWxlcy9fbS1wdWIuc2NzcyIsInBoYXNlLTMvX21vbGVjdWxlcy9fbS1zaWRlYmFyTW9kdWxlLnNjc3MiLCJwaGFzZS0zL19tb2xlY3VsZXMvX20tc2lkZWJhck5hdmlnYXRpb24uc2NzcyIsInBoYXNlLTMvX21vbGVjdWxlcy9fbS1zdGF0c1BhbmVsLnNjc3MiLCJwaGFzZS0zL19tb2xlY3VsZXMvX20tdGV4dEJsb2NrLnNjc3MiLCJwaGFzZS0zL19tb2xlY3VsZXMvX20td29ya0xpc3Quc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1hY2NvcmRpb25Ib3Jpem9udGFsLnNjc3MiLCJwaGFzZS0zL19vcmdhbmlzbXMvX28tY2FyZWVyT3V0Y29tZXMuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1mYXN0RmFjdHMuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1mYXN0RmFjdHNEZXRhaWwuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1mZWF0dXJlZFBvc3RzLnNjc3MiLCJwaGFzZS0zL19vcmdhbmlzbXMvX28tZml2ZUNvbC5zY3NzIiwicGhhc2UtMy9fb3JnYW5pc21zL19vLWhlcm9GbHlvdXQuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1oZXJvRnVsbFNjcmVlbi5zY3NzIiwic2V0dXAvbWl4aW5zL19sYXlvdXQuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1oZXJvR2FsbGVyeS5zY3NzIiwicGhhc2UtMy9fb3JnYW5pc21zL19vLWhlcm9TaWRlYnlTaWRlLnNjc3MiLCJwaGFzZS0zL19vcmdhbmlzbXMvX28taGVyb1RpdGxlRmlyc3Quc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1tdWx0aW1lZGlhR2FsbGVyeS5zY3NzIiwicGhhc2UtMy9fb3JnYW5pc21zL19vLW5hdi5zY3NzIiwicGhhc2UtMy9fb3JnYW5pc21zL19vLWxpc3RpbmdGdWxsLnNjc3MiLCJwaGFzZS0zL19vcmdhbmlzbXMvX28tcHJpbWFyeUNvbnRlbnQuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1xdW90ZUNhcm91c2VsLnNjc3MiLCJwaGFzZS0zL19vcmdhbmlzbXMvX28tcXVvdGVNZWRpYS5zY3NzIiwicGhhc2UtMy9fb3JnYW5pc21zL19vLXF1b3RlUG9ydHJhaXQuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1zZWN0aW9uSW5mby5zY3NzIiwicGhhc2UtMy9fb3JnYW5pc21zL19vLXNodWZmbGVyLnNjc3MiLCJwaGFzZS0zL19vcmdhbmlzbXMvX28tc2lkZWJhci5zY3NzIiwicGhhc2UtMy9fb3JnYW5pc21zL19vLXNvY2lhbEZlZWQuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby1zdGF0cy5zY3NzIiwicGhhc2UtMy9fb3JnYW5pc21zL19vLXN0dWR5QXJlYXMuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby10ZXh0TG9uZ0Zvcm0uc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby10aHJlZS1jb2wuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby10d29UaGlyZHMuc2NzcyIsInBoYXNlLTMvX29yZ2FuaXNtcy9fby11dGlsaXR5LW5hdi5zY3NzIiwicGhhc2UtMy9sYXlvdXQvX2JvZHkuc2NzcyIsInBoYXNlLTMvbGF5b3V0L19wYWdlQ2xhc3MtLXNwZS5zY3NzIiwicGhhc2UtMy9zdGF0ZS9fcy1tb2R1bGUtYm9yZGVyLnNjc3MiLCJwaGFzZS0zL3N0YXRlL19zLXN0aWNreS1ib2R5LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUtHO0FDTEg7Ozs7Ozs7Ozs7OztFQVlFLFVBQVU7RUFDVixXQUFXO0VBQ1gsVUFBVTtFQUNWLHdCQUF3QjtFQUN4QixjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtFQUN6QixXQUFXLEVBQ1o7O0FBRUQ7Ozs7Ozs7Ozs7RUFVRSxlQUFlLEVBQ2hCOztBQUVEO0VBQ0UsbUJBQW1CO0VBQ25CLG1DQUFtQztFQUNuQyx1QkFBdUI7RUFDdkIsK0JBQTJCO01BQTNCLDJCQUEyQixFQUM1Qjs7QUFFRDtFQUNFLGVBQWUsRUFDaEI7O0FBRUQ7O0VBRUUsYUFBYSxFQUNkOztBQUVEOztFQUVFLGlCQUFpQixFQUNsQjs7QUFFRDs7OztFQUlFLFlBQVk7RUFDWixjQUFjLEVBQ2Y7O0FBRUQ7RUFDRSwwQkFBMEI7RUFDMUIsa0JBQWtCLEVBQ25COztBQUVEOzs7RUFHRSxvQkFBb0I7RUFDcEIsMEJBQXNCO01BQXRCLHNCQUFzQixFQUN2Qjs7QUFFRDtFQUNFLG1CQUFtQjtFQUNuQixZQUFZO0VBQ1osV0FBVztFQUNYLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLGlCQUFpQixFQUNsQjs7QUFFRDtFQUNFLG9CQUFvQixFQUFBOztBQ2pGdEI7Ozs7Ozs7OztFQVNFO0FBeUJGOzs7O0VBSUU7QUFZRjs7Ozs7Ozs7O0VBU0U7QUFvQkY7Ozs7RUFJRTtBQVdGOzs7O0VBSUU7QUN4R0Y7RUFDQyxhQUFhO0VBQ2IsWUFBWSxFQUNaOztBQUVEO0VBQ0MsYUFBYTtFQUNiLFlBQVksRUFDWjs7QUFFRDtFQUNDLGFBQWE7RUFDYixZQUFZLEVBQ1o7O0FBRUQ7RUFDQyxhQUFhO0VBQ2IsWUFBWSxFQUNaOztBQUVEOzs7RUFHRSxZQUFZO0VBQ1osYUFBYSxFQUNkOztBQUVEO0VBQ0UsWUFBWTtFQUNaLGFBQWEsRUFDZDs7QUFFRDtF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b0JBQW9CO01BQ3BCLG1CQUFtQjtNQUNuQixvQkFBb0IsRXVCZ0h2QixFQUFBO0VoRTJCSztJZ0V2Q047TXZCaEdJLG1CQUFtQjtNQUNuQixvQkFBb0I7TUFDcEIsbUJBQW1CO01BQ25CLG9CQUFvQixFdUJ5R3ZCLEVBQUE7RWhFMkJLO0lnRXZDTjtNdkJ6RkksbUJBQW1CO01BQ25CLG9CQUFvQjtNQUNwQixtQkFBbUI7TUFDbkIsb0JBQW9CLEV1QmtHdkIsRUFBQTtFaEUyQks7SWdFdkNOO01BUUksa0JBQWtCO01BQ2xCLGtCQUFrQjtNQUNsQixzQkFBc0IsRUFFekIsRUFBQTs7QUFFRDtFQUNFLDBCOUQ5SHdCO0U4RCtIeEIsZTlEN0dvQixFOEQ4R3JCOztBQUVEO0VBQ0UsMEI5RDVJa0I7RThENklsQixlOURsSG9CLEU4RG1IckI7O0FBRUQ7RUFDRSxlOUR4SXdCLEU4RHlJekI7O0FBRUQ7O0VBRUUsY0FBYyxFQUNmOztBQ3hKRDtFQUNFLG1CQUFtQixFQUNwQjs7QUFLRDs7RUFFRSxnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLGFBQWEsRUFDZDs7QUFFRDtFQUNFLG1CQUFtQixFQUNwQjs7QUFFRDtFQUNFLHlCQUFpQjtFQUFqQixpQkFBaUI7RUFDakIsV0FBVztFQUNYLGFBQWEsRUFDZCIsImZpbGUiOiJwaGFzZS0zLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjMuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3Bhbiwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hYmJyLCBhZGRyZXNzLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzYW1wLFxuc21hbGwsIHN0cm9uZywgc3ViLCBzdXAsIHZhcixcbmIsIGksXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcbmFydGljbGUsIGFzaWRlLCBkaWFsb2csIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsXG5oZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbixcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG91dGxpbmU6IDA7IH1cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGlhbG9nLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubmF2LFxuc2VjdGlvbixcbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5odG1sIHtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBvdmVyZmxvdzogLW1vei1zY3JvbGxiYXJzLXZlcnRpY2FsO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgfVxuXG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuYmxvY2txdW90ZSxcbnEge1xuICBxdW90ZXM6IG5vbmU7IH1cblxudWwsXG5vbCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuYmxvY2txdW90ZTpiZWZvcmUsXG5ibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsXG5xOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGNvbnRlbnQ6IG5vbmU7IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB0b3VjaC1hY3Rpb246IGluaGVyaXQ7IH1cblxuLnN2Zy1zcHJpdGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICBsZWZ0OiAtMXB4O1xuICB0b3A6IC0xcHg7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoOyB9XG5cbi8qXG4uYmxvY2sge1xuICBAaW5jbHVkZSBzZXJpZigxOCwgMjUsIDUwMCwgaXRhbGljKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICB9XG59XG4qL1xuLypcbiAgQG1peGluIGZvbnRfc21vb3RoaW5nXG5cbiAgU2V0IGZvbnQgc21vb3RoaW5nIE9OIG9yIE9GRlxuKi9cbi8qXG4gIEBtaXhpbiB0ZXh0LXVuZGVybGluZVxuXG4gIEluc2VydHMgdmVuZG9yIHByZWZpeGVkIGJveCBzaGFkb3dzXG5cbiAgUGFyYW1ldGVyczpcbiAgJG9mZiAtIGNvbG9yXG4gICRvbiAtIGNvbG9yIGZvciBob3ZlclxuICAkcG9zIC0gdmVydGljYWwgcG9zaXRpb25cbiovXG4vKlxuICBAbWl4aW4gaGlkZV90ZXh0XG5cbiAgSGlkZXMgdGV4dCBpbiBhbiBlbGVtZW50XG4qL1xuLypcbiAgQG1peGluIGFjdGl2ZVxuXG4gIENvbWJpbmVzIGhvdmVyLCBmb2N1cyBhbmQgYWN0aXZlIHN0eWxlc1xuKi9cbi5pY29uLS1mYWNlYm9vayB7XG4gIGhlaWdodDogMThweDtcbiAgd2lkdGg6IDE4cHg7IH1cblxuLmljb24tLXR3aXR0ZXIge1xuICBoZWlnaHQ6IDE4cHg7XG4gIHdpZHRoOiAxOHB4OyB9XG5cbi5pY29uLS15b3V0dWJlIHtcbiAgaGVpZ2h0OiAxOHB4O1xuICB3aWR0aDogMThweDsgfVxuXG4uaWNvbi0taW5zdGFncmFtIHtcbiAgaGVpZ2h0OiAxOHB4O1xuICB3aWR0aDogMThweDsgfVxuXG4uaWNvbi0tYXJyb3ctY2lyY2xlLWxlZnQsXG4uaWNvbi0tYXJyb3ctY2lyY2xlLXJpZ2h0LFxuLmljb24tLXNodWZmbGUtY2lyY2xlIHtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDsgfVxuXG4uaWNvbi0tcGx1cy1hbHQge1xuICB3aWR0aDogMTNweDtcbiAgaGVpZ2h0OiAxM3B4OyB9XG5cbi5pY29uLS1taW51cyB7XG4gIHdpZHRoOiAxM3B4O1xuICBoZWlnaHQ6IDNweDsgfVxuXG4uZGVzaWduLWdyaWQtdG9nZ2xlcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBmb250LXNpemU6IDA7IH1cbiAgLmRlc2lnbi1ncmlkLXRvZ2dsZXM6OmJlZm9yZSwgLmRlc2lnbi1ncmlkLXRvZ2dsZXM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNXB4O1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBjb2xvcjogIzAwYTQ0OTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5kZXNpZ24tZ3JpZC10b2dnbGVzOjpiZWZvcmUge1xuICAgIG1hcmdpbi1ib3R0b206IDNweDsgfVxuICAuZGVzaWduLWdyaWQtdG9nZ2xlczo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1lbnYpO1xuICAgIG1hcmdpbi1ib3R0b206IDE3cHg7IH1cblxuLmRlc2lnbi1ncmlkLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyOyB9XG5cbi5kZXNpZ24tZ3JpZC10b2dnbGUuanMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDsgfVxuXG4uZGVzaWduLWdyaWQtdG9nZ2xlIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4OyB9XG5cbi5kZXNpZ24tZ3JpZC0tYmFzZWxpbmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5OTk4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoMTgwZGVnLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQgNXB4LCAjZmYwMDAwIDVweCwgI2ZmMDAwMCAxMHB4KTtcbiAgb3BhY2l0eTogLjI1O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuZGVzaWduLWdyaWQtLWJhc2VsaW5lLmpzLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRlc2lnbi1ncmlkLS1jb2x1bW5zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5ODtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogNjBweCAxMHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAuMjU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZGVzaWduLWdyaWQtLWNvbHVtbnMge1xuICAgICAgcGFkZGluZzogNjBweCAyMHB4IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLmRlc2lnbi1ncmlkLS1jb2x1bW5zIHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5kZXNpZ24tZ3JpZC0tY29sdW1ucyB7XG4gICAgICBwYWRkaW5nOiAwIDQwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5kZXNpZ24tZ3JpZC0tY29sdW1ucyB7XG4gICAgICBwYWRkaW5nOiAwIDYwcHg7IH0gfVxuICAuZGVzaWduLWdyaWQtLWNvbHVtbnMuanMtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZGVzaWduLWdyaWQtLWNvbHVtbnMgLnJvdyB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5kZXNpZ24tZ3JpZC0tY29sdW1ucyAuY29sdW1ucyB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmRlc2lnbi1ncmlkLS1jb2x1bW5zIC5jb2x1bW5zOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdmZmZmZjsgfVxuXG4uY3RhLS1kb3VibGUtbGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0U0MkExRDtcbiAgY29sb3I6ICNFNDJBMUQ7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoMCwgMCwgMCk7IH1cbiAgLmN0YS0tZG91YmxlLWxpbmU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNFNDJBMUQ7XG4gICAgYm90dG9tOiAtNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuY3RhLS1kb3VibGUtbGluZTpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4OyB9XG5cbi5idG4tLWxpbmsge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250OiBpbmhlcml0O1xuICBvdXRsaW5lOiAwOyB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX190aXRsZSxcbi5mLWgxIHtcbiAgZm9udC1mYW1pbHk6IFwibmV1ZS1kaXNwbGF5LXJhbmRvbVwiO1xuICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gIC1vLWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gIC1tb3otZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgLW1zLWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5vLWhlcm9GdWxsU2NyZWVuX190aXRsZSxcbiAgICAuZi1oMSB7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9fdGl0bGUsXG4gICAgLmYtaDEge1xuICAgICAgZm9udC1zaXplOiA2NXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX3RpdGxlLFxuICAgIC5mLWgxIHtcbiAgICAgIGZvbnQtc2l6ZTogODVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA4MHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX3RpdGxlLFxuICAgIC5mLWgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMTEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5vLWhlcm9GdWxsU2NyZWVuX190aXRsZSxcbiAgICAuZi1oMSB7XG4gICAgICBmb250LXNpemU6IDEzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEyNXB4OyB9IH1cblxuLnBhZ2VDbGFzcy0tbDIgLm0tZmVhdHVyZVBhbmVsOm5vdCgubS1mZWF0dXJlUGFuZWwtLXNtYWxsKSAubS1sYW5kaW5nUGFuZWxfX3RpdGxlLCAubS1tb2R1bGVIZWFkZXJfX3RpdGxlLCAuby1oZXJvRmx5b3V0X190aXRsZSwgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4tdGl0bGUsIC5vLXNlY3Rpb25JbmZvX190aXRsZSxcbi5mLWgxOCB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWUtZGlzcGxheS1yYW5kb21cIjtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtby1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gIC1tcy1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICBmb250LXNpemU6IDI1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhZ2VDbGFzcy0tbDIgLm0tZmVhdHVyZVBhbmVsOm5vdCgubS1mZWF0dXJlUGFuZWwtLXNtYWxsKSAubS1sYW5kaW5nUGFuZWxfX3RpdGxlLCAubS1tb2R1bGVIZWFkZXJfX3RpdGxlLCAuby1oZXJvRmx5b3V0X190aXRsZSwgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4tdGl0bGUsIC5vLXNlY3Rpb25JbmZvX190aXRsZSxcbiAgICAuZi1oMTgge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLnBhZ2VDbGFzcy0tbDIgLm0tZmVhdHVyZVBhbmVsOm5vdCgubS1mZWF0dXJlUGFuZWwtLXNtYWxsKSAubS1sYW5kaW5nUGFuZWxfX3RpdGxlLCAubS1tb2R1bGVIZWFkZXJfX3RpdGxlLCAuby1oZXJvRmx5b3V0X190aXRsZSwgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4tdGl0bGUsIC5vLXNlY3Rpb25JbmZvX190aXRsZSxcbiAgICAuZi1oMTgge1xuICAgICAgZm9udC1zaXplOiA1NXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDU1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Mi41ZW0pIHtcbiAgICAucGFnZUNsYXNzLS1sMiAubS1mZWF0dXJlUGFuZWw6bm90KC5tLWZlYXR1cmVQYW5lbC0tc21hbGwpIC5tLWxhbmRpbmdQYW5lbF9fdGl0bGUsIC5tLW1vZHVsZUhlYWRlcl9fdGl0bGUsIC5vLWhlcm9GbHlvdXRfX3RpdGxlLCAuby1oZXJvRnVsbFNjcmVlbl9fbWFpbi10aXRsZSwgLm8tc2VjdGlvbkluZm9fX3RpdGxlLFxuICAgIC5mLWgxOCB7XG4gICAgICBmb250LXNpemU6IDcwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjYyNWVtKSB7XG4gICAgLnBhZ2VDbGFzcy0tbDIgLm0tZmVhdHVyZVBhbmVsOm5vdCgubS1mZWF0dXJlUGFuZWwtLXNtYWxsKSAubS1sYW5kaW5nUGFuZWxfX3RpdGxlLCAubS1tb2R1bGVIZWFkZXJfX3RpdGxlLCAuby1oZXJvRmx5b3V0X190aXRsZSwgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4tdGl0bGUsIC5vLXNlY3Rpb25JbmZvX190aXRsZSxcbiAgICAuZi1oMTgge1xuICAgICAgZm9udC1zaXplOiA4NXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDg1cHg7IH0gfVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fdGl0bGUsXG4uZi1oMiB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWUtZGlzcGxheS1yYW5kb21cIjtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtby1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gIC1tcy1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICBmb250LXNpemU6IDI1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvU2lkZWJ5U2lkZV9fdGl0bGUsXG4gICAgLmYtaDIge1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Mi41ZW0pIHtcbiAgICAuby1oZXJvU2lkZWJ5U2lkZV9fdGl0bGUsXG4gICAgLmYtaDIge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5vLWhlcm9TaWRlYnlTaWRlX190aXRsZSxcbiAgICAuZi1oMiB7XG4gICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNjBweDsgfSB9XG5cblxuLmYtaDMge1xuICBmb250LWZhbWlseTogXCJuZXVlLWRpc3BsYXktcmFuZG9tXCI7XG4gIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgLW8tZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgLW1vei1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtbXMtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgXG4gICAgLmYtaDMge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Mi41ZW0pIHtcbiAgICBcbiAgICAuZi1oMyB7XG4gICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjYyNWVtKSB7XG4gICAgXG4gICAgLmYtaDMge1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7IH0gfVxuXG5cbi5mLWgyMCB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWVcIjtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgXG4gICAgLmYtaDIwIHtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIFxuICAgIC5mLWgyMCB7XG4gICAgICBmb250LXNpemU6IDM4cHg7XG4gICAgICBsaW5lLWhlaWdodDogNDVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICBcbiAgICAuZi1oMjAge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7IH0gfVxuXG4ubS1jb250ZW50RmlsdGVyc19fdGl0bGUsIC5tLXBvc3QtLWZlYXR1cmUgLm0tcG9zdF9fdGl0bGUsIC5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBwLCAuby1zdHVkeUFyZWFzX19tb3JlLXRpdGxlLFxuLmYtaDQge1xuICBmb250LWZhbWlseTogXCJuZXVlXCI7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5tLWNvbnRlbnRGaWx0ZXJzX190aXRsZSwgLm0tcG9zdC0tZmVhdHVyZSAubS1wb3N0X190aXRsZSwgLm8tcXVvdGVNZWRpYV9fbWFpbiBibG9ja3F1b3RlIHAsIC5vLXN0dWR5QXJlYXNfX21vcmUtdGl0bGUsXG4gICAgLmYtaDQge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm0tY29udGVudEZpbHRlcnNfX3RpdGxlLCAubS1wb3N0LS1mZWF0dXJlIC5tLXBvc3RfX3RpdGxlLCAuby1xdW90ZU1lZGlhX19tYWluIGJsb2NrcXVvdGUgcCwgLm8tc3R1ZHlBcmVhc19fbW9yZS10aXRsZSxcbiAgICAuZi1oNCB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAubS1jb250ZW50RmlsdGVyc19fdGl0bGUsIC5tLXBvc3QtLWZlYXR1cmUgLm0tcG9zdF9fdGl0bGUsIC5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBwLCAuby1zdHVkeUFyZWFzX19tb3JlLXRpdGxlLFxuICAgIC5mLWg0IHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4OyB9IH1cblxuXG4uZi1oNDQge1xuICBmb250LWZhbWlseTogXCJuZXVlXCI7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIFxuICAgIC5mLWg0NCB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzVweDsgfSB9XG5cbi5hLWFjY29yZGlvbkNhcmRfX3RpdGxlLCAubS1kcmF3ZXJzLS1hbHQgLm0tZHJhd2Vyc19fdG9nZ2xlIHNwYW4sIC5tLXBvc3RfX3RpdGxlLCAubS1wb3N0X19xdW90ZSBwLCAubS1wb3N0SW5saW5lX190aXRsZSwgLm8tZmFzdEZhY3RzRGV0YWlsX19jb250ZW50LCAuby1zaHVmZmxlcl9fZGF0YSAuby1zaHVmZmxlcl9fZGF0YS0tbGFyZ2UsXG4uZi1oNSB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWVcIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9fdGl0bGUsIC5tLWRyYXdlcnMtLWFsdCAubS1kcmF3ZXJzX190b2dnbGUgc3BhbiwgLm0tcG9zdF9fdGl0bGUsIC5tLXBvc3RfX3F1b3RlIHAsIC5tLXBvc3RJbmxpbmVfX3RpdGxlLCAuby1mYXN0RmFjdHNEZXRhaWxfX2NvbnRlbnQsIC5vLXNodWZmbGVyX19kYXRhIC5vLXNodWZmbGVyX19kYXRhLS1sYXJnZSxcbiAgICAuZi1oNSB7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBsaW5lLWhlaWdodDogMzVweDsgfSB9XG5cbi5tLWxhbmRpbmdJbnRyby0tbGFyZ2UgcCwgLm8taGVyb0Z1bGxTY3JlZW5fX3RleHQsIC5vLXRleHRMb25nRm9ybV9fY29udGVudCAuYS1pbWcgKyBwLFxuLm8tdGV4dExvbmdGb3JtX19jb250ZW50IHA6Zmlyc3QtY2hpbGQsXG4uZi1oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWVcIjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm0tbGFuZGluZ0ludHJvLS1sYXJnZSBwLCAuby1oZXJvRnVsbFNjcmVlbl9fdGV4dCwgLm8tdGV4dExvbmdGb3JtX19jb250ZW50IC5hLWltZyArIHAsXG4gICAgLm8tdGV4dExvbmdGb3JtX19jb250ZW50IHA6Zmlyc3QtY2hpbGQsXG4gICAgLmYtaDYge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm0tbGFuZGluZ0ludHJvLS1sYXJnZSBwLCAuby1oZXJvRnVsbFNjcmVlbl9fdGV4dCwgLm8tdGV4dExvbmdGb3JtX19jb250ZW50IC5hLWltZyArIHAsXG4gICAgLm8tdGV4dExvbmdGb3JtX19jb250ZW50IHA6Zmlyc3QtY2hpbGQsXG4gICAgLmYtaDYge1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7IH0gfVxuXG5cbi5mLWg3IHtcbiAgZm9udC1mYW1pbHk6IFwibmV1ZVwiO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBcbiAgICAuZi1oNyB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMThweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIFxuICAgIC5mLWg3IHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyB9IH1cblxuLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtLS1zaW1wbGUgLmEtcHJvZ3JhbV9fYmxvY2tMaW5rVGl0bGUsIC5vLWNhcmVlck91dGNvbWVzX19yb2xlLCAuby1zdHVkeUFyZWFzX19mb290ZXIsXG4uZi1oOCB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWVcIjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Mi41ZW0pIHtcbiAgICAubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW0tLXNpbXBsZSAuYS1wcm9ncmFtX19ibG9ja0xpbmtUaXRsZSwgLm8tY2FyZWVyT3V0Y29tZXNfX3JvbGUsIC5vLXN0dWR5QXJlYXNfX2Zvb3RlcixcbiAgICAuZi1oOCB7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjYyNWVtKSB7XG4gICAgLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtLS1zaW1wbGUgLmEtcHJvZ3JhbV9fYmxvY2tMaW5rVGl0bGUsIC5vLWNhcmVlck91dGNvbWVzX19yb2xlLCAuby1zdHVkeUFyZWFzX19mb290ZXIsXG4gICAgLmYtaDgge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7IH0gfVxuXG4uby1mYXN0RmFjdHNfX2l0ZW0sXG4uZi1oOC1iIHtcbiAgZm9udC1mYW1pbHk6IFwibmV1ZVwiO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5vLWZhc3RGYWN0c19faXRlbSxcbiAgICAuZi1oOC1iIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9IH1cblxuLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24sXG4ubS1jb250ZW50TGlzdC0tbGlzdC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiwgLm0tY3RhUGFuZWwgcCwgLm0tbW9kdWxlSGVhZGVyX19pbnRybywgLm0tcG9zdElubGluZV9fZXhjZXJwdCwgLm8tY2FyZWVyT3V0Y29tZXNfX2NvbnRlbnQgcCwgLm8tc2VjdGlvbkluZm8tLWFsdCAuby1zZWN0aW9uSW5mb19fY29udGVudCwgLm8tc3R1ZHlBcmVhc19fbW9yZSBwLCAuby10ZXh0TG9uZ0Zvcm1fX2NvbnRlbnQgcCxcbi5mLWgxNSB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWVcIjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Mi41ZW0pIHtcbiAgICAubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbixcbiAgICAubS1jb250ZW50TGlzdC0tbGlzdC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiwgLm0tY3RhUGFuZWwgcCwgLm0tbW9kdWxlSGVhZGVyX19pbnRybywgLm0tcG9zdElubGluZV9fZXhjZXJwdCwgLm8tY2FyZWVyT3V0Y29tZXNfX2NvbnRlbnQgcCwgLm8tc2VjdGlvbkluZm8tLWFsdCAuby1zZWN0aW9uSW5mb19fY29udGVudCwgLm8tc3R1ZHlBcmVhc19fbW9yZSBwLCAuby10ZXh0TG9uZ0Zvcm1fX2NvbnRlbnQgcCxcbiAgICAuZi1oMTUge1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uLFxuICAgIC5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uLCAubS1jdGFQYW5lbCBwLCAubS1tb2R1bGVIZWFkZXJfX2ludHJvLCAubS1wb3N0SW5saW5lX19leGNlcnB0LCAuby1jYXJlZXJPdXRjb21lc19fY29udGVudCBwLCAuby1zZWN0aW9uSW5mby0tYWx0IC5vLXNlY3Rpb25JbmZvX19jb250ZW50LCAuby1zdHVkeUFyZWFzX19tb3JlIHAsIC5vLXRleHRMb25nRm9ybV9fY29udGVudCBwLFxuICAgIC5mLWgxNSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDsgfSB9XG5cbi5tLWxpc3RQYW5lbF9faXRlbSwgLm0tcHViX190aXRsZSxcbi5mLWgxNCB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWVcIjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLm0tbGlzdFBhbmVsX19pdGVtLCAubS1wdWJfX3RpdGxlLFxuICAgIC5mLWgxNCB7XG4gICAgICBsaW5lLWhlaWdodDogMjNweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5tLWxpc3RQYW5lbF9faXRlbSwgLm0tcHViX190aXRsZSxcbiAgICAuZi1oMTQge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5tLWxpc3RQYW5lbF9faXRlbSwgLm0tcHViX190aXRsZSxcbiAgICAuZi1oMTQge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7IH0gfVxuXG4ubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiBwLmEtcHJvZ3JhbV9fbm90ZSxcbi5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIHAuYS1wcm9ncmFtX19ub3RlLCAubS1wb3N0X19leGNlcnB0LCAubS1wb3N0X19saW5rLCAubS1wb3N0X19xdW90ZSBjaXRlLCAubS1wdWJfX3N1YnRpdGxlLCAubS1wdWJfX21ldGEsIC5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cy10aXRsZSwgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbS10aXRsZSwgLm8tY2FyZWVyT3V0Y29tZXNfX25hbWUsIC5vLWNhcmVlck91dGNvbWVzX19jb3Vyc2UsIC5vLWZhc3RGYWN0c0RldGFpbF9fZm9vdGVyLCAuby1xdW90ZUNhcm91c2VsIGNpdGUsIC5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBjaXRlLCAuby1xdW90ZVBvcnRyYWl0X19tYWluIGJsb2NrcXVvdGUgY2l0ZSwgLm8tc2h1ZmZsZXJfX2RhdGEgZGQsIC5vLXRleHRMb25nRm9ybV9fdHJpZ2dlcixcbi5mLWgxMCB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWVcIjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gcC5hLXByb2dyYW1fX25vdGUsXG4gICAgLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gcC5hLXByb2dyYW1fX25vdGUsIC5tLXBvc3RfX2V4Y2VycHQsIC5tLXBvc3RfX2xpbmssIC5tLXBvc3RfX3F1b3RlIGNpdGUsIC5tLXB1Yl9fc3VidGl0bGUsIC5tLXB1Yl9fbWV0YSwgLm0tc2lkZWJhck1vZHVsZV9fZXZlbnRzLXRpdGxlLCAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtLXRpdGxlLCAuby1jYXJlZXJPdXRjb21lc19fbmFtZSwgLm8tY2FyZWVyT3V0Y29tZXNfX2NvdXJzZSwgLm8tZmFzdEZhY3RzRGV0YWlsX19mb290ZXIsIC5vLXF1b3RlQ2Fyb3VzZWwgY2l0ZSwgLm8tcXVvdGVNZWRpYV9fbWFpbiBibG9ja3F1b3RlIGNpdGUsIC5vLXF1b3RlUG9ydHJhaXRfX21haW4gYmxvY2txdW90ZSBjaXRlLCAuby1zaHVmZmxlcl9fZGF0YSBkZCwgLm8tdGV4dExvbmdGb3JtX190cmlnZ2VyLFxuICAgIC5mLWgxMCB7XG4gICAgICBsaW5lLWhlaWdodDogMjNweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIHAuYS1wcm9ncmFtX19ub3RlLFxuICAgIC5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIHAuYS1wcm9ncmFtX19ub3RlLCAubS1wb3N0X19leGNlcnB0LCAubS1wb3N0X19saW5rLCAubS1wb3N0X19xdW90ZSBjaXRlLCAubS1wdWJfX3N1YnRpdGxlLCAubS1wdWJfX21ldGEsIC5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cy10aXRsZSwgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbS10aXRsZSwgLm8tY2FyZWVyT3V0Y29tZXNfX25hbWUsIC5vLWNhcmVlck91dGNvbWVzX19jb3Vyc2UsIC5vLWZhc3RGYWN0c0RldGFpbF9fZm9vdGVyLCAuby1xdW90ZUNhcm91c2VsIGNpdGUsIC5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBjaXRlLCAuby1xdW90ZVBvcnRyYWl0X19tYWluIGJsb2NrcXVvdGUgY2l0ZSwgLm8tc2h1ZmZsZXJfX2RhdGEgZGQsIC5vLXRleHRMb25nRm9ybV9fdHJpZ2dlcixcbiAgICAuZi1oMTAge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIHAuYS1wcm9ncmFtX19ub3RlLFxuICAgIC5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIHAuYS1wcm9ncmFtX19ub3RlLCAubS1wb3N0X19leGNlcnB0LCAubS1wb3N0X19saW5rLCAubS1wb3N0X19xdW90ZSBjaXRlLCAubS1wdWJfX3N1YnRpdGxlLCAubS1wdWJfX21ldGEsIC5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cy10aXRsZSwgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbS10aXRsZSwgLm8tY2FyZWVyT3V0Y29tZXNfX25hbWUsIC5vLWNhcmVlck91dGNvbWVzX19jb3Vyc2UsIC5vLWZhc3RGYWN0c0RldGFpbF9fZm9vdGVyLCAuby1xdW90ZUNhcm91c2VsIGNpdGUsIC5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBjaXRlLCAuby1xdW90ZVBvcnRyYWl0X19tYWluIGJsb2NrcXVvdGUgY2l0ZSwgLm8tc2h1ZmZsZXJfX2RhdGEgZGQsIC5vLXRleHRMb25nRm9ybV9fdHJpZ2dlcixcbiAgICAuZi1oMTAge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7IH0gfVxuXG4ubS1kcmF3ZXJzLS1hbHQgLm0tZHJhd2Vyc19fdG9nZ2xlIHNwYW4ubS1kcmF3ZXJzX19zdWJ0aXRsZSwgLm0tbGlzdFBhbmVsX190aXRsZSwgLm0tcG9zdF9fdGFnLCAubS1wb3N0SW5saW5lX19tZXRhLCAubS1zaWRlYmFyTW9kdWxlX19ldmVudHMtbWV0YSwgLm8tZmFzdEZhY3RzRGV0YWlsX190aXRsZSwgLm8tcXVvdGVDYXJvdXNlbF9fbmF2LWl0ZW0sIC5vLXNodWZmbGVyX19kYXRhIGR0LCAuby1zaHVmZmxlcl9fbmF2LCAuby10aHJlZS1jb2xfX25hdi1pdGVtLFxuLmYtaDExIHtcbiAgZm9udC1mYW1pbHk6IFwibmV1ZVwiO1xuICBmb250LXNpemU6IDhweDtcbiAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDNyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tLWRyYXdlcnMtLWFsdCAubS1kcmF3ZXJzX190b2dnbGUgc3Bhbi5tLWRyYXdlcnNfX3N1YnRpdGxlLCAubS1saXN0UGFuZWxfX3RpdGxlLCAubS1wb3N0X190YWcsIC5tLXBvc3RJbmxpbmVfX21ldGEsIC5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cy1tZXRhLCAuby1mYXN0RmFjdHNEZXRhaWxfX3RpdGxlLCAuby1xdW90ZUNhcm91c2VsX19uYXYtaXRlbSwgLm8tc2h1ZmZsZXJfX2RhdGEgZHQsIC5vLXNodWZmbGVyX19uYXYsIC5vLXRocmVlLWNvbF9fbmF2LWl0ZW0sXG4gICAgLmYtaDExIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4OyB9IH1cblxuLm8tcXVvdGVDYXJvdXNlbCBibG9ja3F1b3RlIHAsIC5vLXF1b3RlUG9ydHJhaXRfX21haW4gYmxvY2txdW90ZSBwLFxuLmYtaDE5IHtcbiAgZm9udC1mYW1pbHk6IFwibmV1ZVwiO1xuICBmb250LXNpemU6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuby1xdW90ZUNhcm91c2VsIGJsb2NrcXVvdGUgcCwgLm8tcXVvdGVQb3J0cmFpdF9fbWFpbiBibG9ja3F1b3RlIHAsXG4gICAgLmYtaDE5IHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAuby1xdW90ZUNhcm91c2VsIGJsb2NrcXVvdGUgcCwgLm8tcXVvdGVQb3J0cmFpdF9fbWFpbiBibG9ja3F1b3RlIHAsXG4gICAgLmYtaDE5IHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuZy1icmVhZGNydW1icyB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAuZy1icmVhZGNydW1icyB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAuZy1icmVhZGNydW1icyB7XG4gICAgbWF4LXdpZHRoOiA4MCU7IH0gfVxuXG4uZy1oZWFkZXItLWhhcy11dGlsaXR5LW9uLW1vYmlsZSB7XG4gIHRvcDogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmctaGVhZGVyLS1jb2xsZWdlLmctaGVhZGVyLS1oYXMtdXRpbGl0eS1vbi1tb2JpbGUgKyBtYWluIHtcbiAgICBwYWRkaW5nLXRvcDogNzBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5nLWhlYWRlci0tY29sbGVnZS5nLWhlYWRlci0taGFzLXV0aWxpdHktb24tbW9iaWxlICsgbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDg1cHg7IH0gfVxuXG4uYS1idG4tLWdyZXktLWxpZ2h0IHtcbiAgYm9yZGVyOiAycHggc29saWQgI0Q5RDlEOTtcbiAgY29sb3I6ICM4QzhDOEM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5hLWJ0bi0tZ3JleS0tbGlnaHQ6aG92ZXIsIC5hLWJ0bi0tZ3JleS0tbGlnaHQ6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNEOUQ5RDk7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjRDlEOUQ5O1xuICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH0gfVxuICAuYm9keS0taGlnaGxpZ2h0IC5hLWJ0bi0tZ3JleS0tbGlnaHQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkZGRkY7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAuYm9keS0taGlnaGxpZ2h0IC5hLWJ0bi0tZ3JleS0tbGlnaHQ6aG92ZXIsIC5ib2R5LS1oaWdobGlnaHQgLmEtYnRuLS1ncmV5LS1saWdodDphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkZGRkY7XG4gICAgICBjb2xvcjogI0U0MkExRDsgfVxuXG4uYS1hY2NvcmRpb25DYXJkX19jdGEsIC5tLW1vZHVsZUhlYWRlcl9fY3RhLCAubS1wb3N0X19jdGEsIC5vLWFjY29yZGlvbkhvcml6b250YWxfX2Zvb3Rlci1jdGEsIC5vLWNhcmVlck91dGNvbWVzX19jdGEsIC5vLWZpdmVDb2xfX2Zvb3Rlci1jdGEsIC5vLWxpc3RpbmdGdWxsX19jdGEsIC5vLXF1b3RlQ2Fyb3VzZWxfX2N0YSwgLm8tcXVvdGVQb3J0cmFpdF9fY3RhLCAuby1zZWN0aW9uSW5mb19fY3RhLCAuby1zdHVkeUFyZWFzX19tb3JlLWN0YSwgLm8tdGhyZWUtY29sX19mb290ZXItY3RhLCAuby10d29UaGlyZHNfX2N0YSxcbi5hLWN0YS0tZHVhbC1saW5lIHtcbiAgZm9udC1mYW1pbHk6IFwibmV1ZVwiO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogI0U0MkExRDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIGVhc2UtaW4tb3V0IDE4MG1zOyB9XG4gIC5hLWFjY29yZGlvbkNhcmRfX2N0YTphZnRlciwgLm0tbW9kdWxlSGVhZGVyX19jdGE6YWZ0ZXIsIC5tLXBvc3RfX2N0YTphZnRlciwgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9fZm9vdGVyLWN0YTphZnRlciwgLm8tY2FyZWVyT3V0Y29tZXNfX2N0YTphZnRlciwgLm8tZml2ZUNvbF9fZm9vdGVyLWN0YTphZnRlciwgLm8tbGlzdGluZ0Z1bGxfX2N0YTphZnRlciwgLm8tcXVvdGVDYXJvdXNlbF9fY3RhOmFmdGVyLCAuby1xdW90ZVBvcnRyYWl0X19jdGE6YWZ0ZXIsIC5vLXNlY3Rpb25JbmZvX19jdGE6YWZ0ZXIsIC5vLXN0dWR5QXJlYXNfX21vcmUtY3RhOmFmdGVyLCAuby10aHJlZS1jb2xfX2Zvb3Rlci1jdGE6YWZ0ZXIsIC5vLXR3b1RoaXJkc19fY3RhOmFmdGVyLFxuICAuYS1jdGEtLWR1YWwtbGluZTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC02cHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQ7IH1cblxuLmEtYWNjb3JkaW9uQ2FyZCB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDE4cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q5RDlEOTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLmEtYWNjb3JkaW9uQ2FyZCB7XG4gICAgICBtaW4taGVpZ2h0OiA0OTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBib3JkZXItdG9wOiAwOyB9XG4gICAgICAuYS1hY2NvcmRpb25DYXJkOmhvdmVyIC5hLWFjY29yZGlvbkNhcmRfX2hvdmVyLW9mZiwgLmEtYWNjb3JkaW9uQ2FyZDphY3RpdmUgLmEtYWNjb3JkaW9uQ2FyZF9faG92ZXItb2ZmIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAgIC5hLWFjY29yZGlvbkNhcmQ6aG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9faG92ZXItb24sIC5hLWFjY29yZGlvbkNhcmQ6YWN0aXZlIC5hLWFjY29yZGlvbkNhcmRfX2hvdmVyLW9uIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xczsgfVxuICAgICAgLmEtYWNjb3JkaW9uQ2FyZDpob3ZlciAuYS1hY2NvcmRpb25DYXJkX19ob3Zlci1vbixcbiAgICAgIC5hLWFjY29yZGlvbkNhcmQ6aG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9fdHJpZ2dlciAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4gICAgICAuYS1hY2NvcmRpb25DYXJkOmhvdmVyIC5hLWFjY29yZGlvbkNhcmRfX3RyaWdnZXIgLmEtYWNjb3JkaW9uQ2FyZF9fbGluaywgLmEtYWNjb3JkaW9uQ2FyZDphY3RpdmUgLmEtYWNjb3JkaW9uQ2FyZF9faG92ZXItb24sXG4gICAgICAuYS1hY2NvcmRpb25DYXJkOmFjdGl2ZSAuYS1hY2NvcmRpb25DYXJkX190cmlnZ2VyIC5hLWFjY29yZGlvbkNhcmRfX2N0YSxcbiAgICAgIC5hLWFjY29yZGlvbkNhcmQ6YWN0aXZlIC5hLWFjY29yZGlvbkNhcmRfX3RyaWdnZXIgLmEtYWNjb3JkaW9uQ2FyZF9fbGluayB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH0gfVxuXG4uYS1hY2NvcmRpb25DYXJkIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSxcbi5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIGEsXG4uYS1hY2NvcmRpb25DYXJkX19zdWJ0aXRsZSxcbi5hLWFjY29yZGlvbkNhcmRfX3NlY29uZGFyeSBsaSBhLFxuLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSAuYS1hY2NvcmRpb25DYXJkX19saW5rLFxuLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4uYS1hY2NvcmRpb25DYXJkX19ib2R5IC5hLWFjY29yZGlvbkNhcmRfX2N0YTphZnRlciB7XG4gIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAxODBtczsgfVxuXG4uYS1hY2NvcmRpb25DYXJkX19ib2R5IHtcbiAgZm9udC1mYW1pbHk6IFwibmV1ZVwiO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSBwIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYS1hY2NvcmRpb25DYXJkX19ib2R5IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIm5ldWVcIjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwOyB9XG4gICAgICAuYS1hY2NvcmRpb25DYXJkX19ib2R5IHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuYS1hY2NvcmRpb25DYXJkX19ib2R5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogNDUwcHg7XG4gICAgICBwYWRkaW5nOiAyOHB4IDMwcHggNzlweDtcbiAgICAgIGJhY2tncm91bmQ6ICNGMUYyRjI7IH1cbiAgICAgIC5hLWFjY29yZGlvbkNhcmRfX2JvZHkgLmEtYWNjb3JkaW9uQ2FyZF9fY3RhLFxuICAgICAgLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSAuYS1hY2NvcmRpb25DYXJkX19saW5rIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAuYS1hY2NvcmRpb25DYXJkX19ib2R5IC5hLWFjY29yZGlvbkNhcmRfX2N0YSB7XG4gICAgICAgIG1hcmdpbjogMDsgfSB9XG5cbi5hLWFjY29yZGlvbkNhcmRfX3RyaWdnZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9fdHJpZ2dlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfSB9XG4gIC5hLWFjY29yZGlvbkNhcmRfX3RyaWdnZXI6aG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9fdGl0bGUsIC5hLWFjY29yZGlvbkNhcmRfX3RyaWdnZXI6YWN0aXZlIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIHtcbiAgICBjb2xvcjogI0U0MkExRDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAgIC5hLWFjY29yZGlvbkNhcmRfX3RyaWdnZXI6aG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9fdGl0bGUsIC5hLWFjY29yZGlvbkNhcmRfX3RyaWdnZXI6YWN0aXZlIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7IH0gfVxuICAuYS1hY2NvcmRpb25DYXJkX190cmlnZ2VyIC5hLWFjY29yZGlvbkNhcmRfX2N0YSxcbiAgLmEtYWNjb3JkaW9uQ2FyZF9fdHJpZ2dlciAuYS1hY2NvcmRpb25DYXJkX19saW5rIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgICAgLmEtYWNjb3JkaW9uQ2FyZF9fdHJpZ2dlciAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4gICAgICAuYS1hY2NvcmRpb25DYXJkX190cmlnZ2VyIC5hLWFjY29yZGlvbkNhcmRfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgICAgb3BhY2l0eTogMDsgfSB9XG5cbi5hLWFjY29yZGlvbkNhcmRfX3N1YnRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjOGM4YzhjO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wM3JlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgb3JkZXI6IDI7IH1cblxuLmEtYWNjb3JkaW9uQ2FyZF9fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICBvcmRlcjogMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9fdGl0bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIGEge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgICAgLmEtYWNjb3JkaW9uQ2FyZF9fdGl0bGUgYSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH0gfVxuICAgIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIGE6aG92ZXIsIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIGE6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjRTQyQTFEOyB9XG5cbi5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIGE6aG92ZXIsIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIGE6YWN0aXZlIHtcbiAgY29sb3I6ICNFNDJBMUQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuYS1hY2NvcmRpb25DYXJkX19zdWJ0aXRsZSArIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cblxuLmEtYWNjb3JkaW9uQ2FyZF9faW5uZXIge1xuICBvcmRlcjogMztcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4ycyBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjUsIDApOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuYS1hY2NvcmRpb25DYXJkX19pbm5lciB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuYS1hY2NvcmRpb25DYXJkX19pbm5lciAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9faW5uZXIgLmEtYWNjb3JkaW9uQ2FyZF9fbGluayB7XG4gICAgICBib3R0b206IDQ1cHg7IH0gfVxuXG4uYS1hY2NvcmRpb25DYXJkX19saW5rIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogLTFweCAwIDAgMjBweDtcbiAgcGFkZGluZzogMXB4IDAgMXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbSBlYXNlLWluLW91dCAxODBtcywgY29sb3IgZWFzZS1pbi1vdXQgMTgwbXM7IH1cbiAgLmEtYWNjb3JkaW9uQ2FyZF9fbGluazpob3ZlciwgLmEtYWNjb3JkaW9uQ2FyZF9fbGluazphY3RpdmUge1xuICAgIGNvbG9yOiAjRTQyQTFEOyB9XG4gIC5hLWFjY29yZGlvbkNhcmRfX2xpbms6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzcHg7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZlcnNpb249JzEuMScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAyNCcgaGVpZ2h0PScxMDI0JyB2aWV3Qm94PScwIDAgMTAyNCAxMDI0JyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwMDAnIHN0cm9rZS13aWR0aD0nNTYuODg4OScgc3Ryb2tlLW1pdGVybGltaXQ9JzQnIHN0cm9rZS1saW5lY2FwPSdidXR0JyBzdHJva2UtbGluZWpvaW49J21pdGVyJyBkPSdNNDMyLjM1NiAxMTMuNzc4bDM2OS43NzggMzY5Ljc3OC0zNjkuNzc4IDM2OS43NzgnJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1pbi1vdXQgMTgwbXM7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgICAuYS1hY2NvcmRpb25DYXJkX19saW5rOmJlZm9yZSB7XG4gICAgICAgIHRvcDogNnB4OyB9IH1cblxuLmEtYWNjb3JkaW9uQ2FyZC0tZGFyayB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kOiAjMjEyMTIxOyB9XG5cbi5hLWFjY29yZGlvbkNhcmRfX2N0YSxcbi5hLWFjY29yZGlvbkNhcmRfX2xpbmsge1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9fbGluayB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuYS1hY2NvcmRpb25DYXJkX19ob3Zlci1vZmYge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLmEtYWNjb3JkaW9uQ2FyZF9faG92ZXItb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbWluLWhlaWdodDogMTcycHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTsgfSB9XG5cbi5hLWFjY29yZGlvbkNhcmRfX2hvdmVyLW9uLFxuLmEtYWNjb3JkaW9uQ2FyZF9fc2Vjb25kYXJ5IHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgcGFkZGluZy1ib3R0b206IDMzcHg7IH1cblxuLmEtYWNjb3JkaW9uQ2FyZF9faW5uZXIgLmEtYWNjb3JkaW9uQ2FyZF9fc3VidGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxN3B4O1xuICBjb2xvcjogIzE5MTkxOTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9faW5uZXIgLmEtYWNjb3JkaW9uQ2FyZF9fc3VidGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTlweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLmEtYWNjb3JkaW9uQ2FyZF9faW5uZXIgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDsgfSB9XG5cbi5hLWFjY29yZGlvbkNhcmRfX2lubmVyIGxpIHtcbiAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAuYS1hY2NvcmRpb25DYXJkX19pbm5lciBsaTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9faW5uZXIgbGkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5hLWFjY29yZGlvbkNhcmRfX2lubmVyIGxpOm50aC1jaGlsZCgybisxKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH0gfVxuXG4uYS1hY2NvcmRpb25DYXJkX19pbm5lciBsaSBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkOyB9XG4gIC5hLWFjY29yZGlvbkNhcmRfX2lubmVyIGxpIGE6aG92ZXIsIC5hLWFjY29yZGlvbkNhcmRfX2lubmVyIGxpIGE6YWN0aXZlIHtcbiAgICBjb2xvcjogI0U0MkExRDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYS1hY2NvcmRpb25DYXJkIC5pY29uLS1taW51cyxcbi5hLWFjY29yZGlvbkNhcmQgLmljb24tLXBsdXMtYWx0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgY29sb3I6ICNEOUQ5RDk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuYS1hY2NvcmRpb25DYXJkIC5pY29uLS1taW51cyxcbiAgICAuYS1hY2NvcmRpb25DYXJkIC5pY29uLS1wbHVzLWFsdCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmEtYWNjb3JkaW9uQ2FyZCAuaWNvbi0tbWludXMge1xuICB0b3A6IDEzcHg7IH1cblxuLmEtYWNjb3JkaW9uQ2FyZCAuaWNvbi0tcGx1cy1hbHQge1xuICB0b3A6IDhweDsgfVxuXG4uYS1hY2NvcmRpb25DYXJkLS1hY3RpdmUgLmljb24tLXBsdXMtYWx0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uby10aHJlZS1jb2xfX2l0ZW0gLmEtYWNjb3JkaW9uQ2FyZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLmEtYWNjb3JkaW9uQ2FyZC0tbm8taG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9fY3RhLFxuLmEtYWNjb3JkaW9uQ2FyZC0tbm8taG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9fbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuYS1hY2NvcmRpb25DYXJkLS1uby1ob3ZlciAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4gICAgLmEtYWNjb3JkaW9uQ2FyZC0tbm8taG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9fbGluayB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuYS1hY2NvcmRpb25DYXJkLS1uby1ob3ZlciAuYS1hY2NvcmRpb25DYXJkX19zZWNvbmRhcnkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDUzcHg7IH0gfVxuXG4ubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW0tLXNpbXBsZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDlEOUQ5OyB9XG4gIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbS0tc2ltcGxlLmlzLWFjdGl2ZTo6YmVmb3JlLCAubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW0tLXNpbXBsZS5pcy1hY3RpdmU6OmFmdGVyIHtcbiAgICBib3R0b206IC0xcHg7IH1cbiAgLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtLS1zaW1wbGUgLmEtcHJvZ3JhbV9fYmxvY2tMaW5rIHtcbiAgICBwYWRkaW5nLXRvcDogMTNweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMThweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbS0tc2ltcGxlIC5hLXByb2dyYW1fX2Jsb2NrTGluayB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyN3B4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzFweDsgfSB9XG4gIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbS0tc2ltcGxlIC5hLXByb2dyYW1fX2Jsb2NrTGlua1RpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbS0tc2ltcGxlIC5hLXByb2dyYW1fX2Jsb2NrTGlua1N1YlRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbS0tc2ltcGxlIC5pY29uLS1jaGV2cm9uLWRvd24tYWx0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogOHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgICAubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW0tLXNpbXBsZSAuaWNvbi0tY2hldnJvbi1kb3duLWFsdCB7XG4gICAgICAgIHRvcDogMTVweDsgfSB9XG5cbi5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uLWxpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7IH1cblxuLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtLS1zaW1wbGUgLmljb24tLWNoZXZyb24tZG93bi1hbHQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0LFxuLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCxcbiAgICAubS1jb250ZW50TGlzdC0tbGlzdC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOTVweDsgfSB9XG4gIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2NvbnRlbnRUaXRsZSxcbiAgLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQgLmEtcHJvZ3JhbV9fY29udGVudFRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uLFxuICAubS1jb250ZW50TGlzdC0tbGlzdC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAgIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uLFxuICAgICAgLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gdWwsXG4gIC5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIHVsIHtcbiAgICBtYXJnaW4tdG9wOiAxN3B4OyB9XG4gIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIGxpIGEsXG4gIC5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIGxpIGEge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIGxpIGE6OmJlZm9yZSxcbiAgICAubS1jb250ZW50TGlzdC0tbGlzdC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiBsaSBhOjpiZWZvcmUge1xuICAgICAgdG9wOiA0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Mi41ZW0pIHtcbiAgICAubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiBsaSBhOjpiZWZvcmUsXG4gICAgLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gbGkgYTo6YmVmb3JlIHtcbiAgICAgIHRvcDogOXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiBsaSBhOjpiZWZvcmUsXG4gICAgLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtX19jb250ZW50LS1hbHQgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gbGkgYTo6YmVmb3JlIHtcbiAgICAgIHRvcDogMTBweDsgfSB9XG4gIC5tLWNvbnRlbnRMaXN0LS1ncmlkLXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIGg1LFxuICAubS1jb250ZW50TGlzdC0tbGlzdC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiBoNSB7XG4gICAgbWFyZ2luLXRvcDogMTNweDsgfVxuXG4ubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW0tLWFsdCAuaWNvbi0tcGx1cy1hbHQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtLS1hbHQgLmEtcHJvZ3JhbV9fYmxvY2tMaW5rVGl0bGUge1xuICAgIHdpZHRoOiA4NiU7IH0gfVxuXG4ubS1jb250ZW50TGlzdC0tbGlzdC12aWV3IC5hLXByb2dyYW0tLWFsdCAuYS1wcm9ncmFtX19ibG9ja0xpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtLS1hbHQgLmEtcHJvZ3JhbV9fYmxvY2tMaW5rOmhvdmVyIC5pY29uLS1wbHVzLWFsdCB7XG4gICAgY29sb3I6ICM1ODU4NTg7IH1cblxuLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtLS1hbHQgLmljb24tLXBsdXMtYWx0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIGNvbG9yOiAjRDlEOUQ5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLm8tcHJpbWFyeUNvbnRlbnQgdWwgLmEtcHJvZ3JhbSB1bCxcbi5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW0gb2wsXG4uby1wcmltYXJ5Q29udGVudCB1bCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiB1bCxcbi5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIG9sIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW0gdWwgbGksXG4gIC5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW0gb2wgbGksXG4gIC5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIHVsIGxpLFxuICAuby1wcmltYXJ5Q29udGVudCB1bCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiBvbCBsaSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuby1wcmltYXJ5Q29udGVudCB1bCAuYS1wcm9ncmFtIHVsIGxpOjpiZWZvcmUsXG4gIC5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW0gb2wgbGk6OmJlZm9yZSxcbiAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gdWwgbGk6OmJlZm9yZSxcbiAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gb2wgbGk6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuby1wcmltYXJ5Q29udGVudCB1bCAuYS1wcm9ncmFtIHVsIGxpIGEsXG4gIC5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW0gb2wgbGkgYSxcbiAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gdWwgbGkgYSxcbiAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gb2wgbGkgYSB7XG4gICAgYm9yZGVyOiAwOyB9XG4gIC5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW0gdWwgbGk6Zmlyc3QtY2hpbGQgYSxcbiAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLmEtcHJvZ3JhbSBvbCBsaTpmaXJzdC1jaGlsZCBhLFxuICAuby1wcmltYXJ5Q29udGVudCB1bCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiB1bCBsaTpmaXJzdC1jaGlsZCBhLFxuICAuby1wcmltYXJ5Q29udGVudCB1bCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiBvbCBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5vLXByaW1hcnlDb250ZW50IC5hLXRhYmxlIHVsLFxuLm8tcHJpbWFyeUNvbnRlbnQgLmEtdGFibGUgb2wsXG4uby1wcmltYXJ5Q29udGVudCAuYS10YWJsZSBsaSxcbi5hLXRhYmxlIHAge1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIC5vLXByaW1hcnlDb250ZW50IC5hLXRhYmxlIHVsOmZpcnN0LWNoaWxkLFxuICAuby1wcmltYXJ5Q29udGVudCAuYS10YWJsZSBvbDpmaXJzdC1jaGlsZCxcbiAgLm8tcHJpbWFyeUNvbnRlbnQgLmEtdGFibGUgbGk6Zmlyc3QtY2hpbGQsXG4gIC5hLXRhYmxlIHA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLm8tcHJpbWFyeUNvbnRlbnQgLmEtdGFibGUgdWwgbGk6OmJlZm9yZSB7XG4gIHRvcDogOHB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm0tY2FyZHMge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH0gfVxuXG4ubS1jb2xsZWdlTGlzdF9faXRlbSB7XG4gIG1hcmdpbi10b3A6IDE5cHg7XG4gIHBhZGRpbmctdG9wOiAxNnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAubS1jb2xsZWdlTGlzdF9faXRlbSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgLm0tY29sbGVnZUxpc3RfX3RvZ2dsZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjEuMTg3NWVtKSB7XG4gIC5tLWNvbGxlZ2VMaXN0X19jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMTdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYxLjE4NzVlbSkge1xuICAubS1jb2xsZWdlTGlzdF9fY3RhIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG4ubS1jb250ZW50RmlsdGVycy0tc2ltcGxlLFxuLm0tY29udGVudEZpbHRlcnMtLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItdG9wOiAwOyB9XG5cbi5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLm0tY29udGVudEZpbHRlcnMtLXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMjZweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAubS1jb250ZW50RmlsdGVycy0tdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMTA3cHg7IH0gfVxuXG4ubS1jb250ZW50RmlsdGVycy0tdGl0bGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5tLWNvbnRlbnRGaWx0ZXJzX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tLWNvbnRlbnRGaWx0ZXJzX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MXB4OyB9IH1cblxuLm0tY29udGVudEZpbHRlcnNfX2Rpc3BsYXlPcHRpb25zIHtcbiAgbWFyZ2luLXRvcDogMThweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWdlQ2xhc3MtLWwyIC5tLWNvbnRlbnRMaXN0X19ub1Jlc3VsdHMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLnBhZ2VDbGFzcy0tbDIgaDQgKyAubS1jb250ZW50TGlzdCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5wYWdlQ2xhc3MtLWwyIGg0ICsgLm0tY29udGVudExpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG5cbi5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLmFpcy1pbmZpbml0ZS1oaXRzLS1zaG93bW9yZSB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYWlzLWluZmluaXRlLWhpdHMtLXNob3dtb3JlQnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogODBweDsgfVxuXG4ubS1jb250ZW50RmlsdGVyc0FqYXgge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tLWNvbnRlbnRGaWx0ZXJzX19pdGVtcy5tLWNvbnRlbnRGaWx0ZXJzX19pdGVtcy0tdmVydGljYWwge1xuICAgIGNvbHVtbi1jb3VudDogMztcbiAgICBjb2x1bW4tZ2FwOiA0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDU1cHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm0tY29udGVudEZpbHRlcnNfX2l0ZW1zLm0tY29udGVudEZpbHRlcnNfX2l0ZW1zLS12ZXJ0aWNhbCAubS1jb250ZW50RmlsdGVyc19faXRlbSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbi5tLWNvbnRlbnRGaWx0ZXJzX19saXN0LmlzLWFjdGl2ZSB7XG4gIG1heC1oZWlnaHQ6IDgwMHB4OyB9XG5cbi5tLWNvdXJzZXMge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ubS1jb3Vyc2VzIC5tLW1vZHVsZUhlYWRlcl9faW50cm8ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5tLWN0YVBhbmVsLnMtbW9kdWxlLWJrZ2Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLXRvcDogMjRweDtcbiAgcGFkZGluZy1ib3R0b206IDM5cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tLWN0YVBhbmVsLnMtbW9kdWxlLWJrZ2Qge1xuICAgICAgcGFkZGluZy10b3A6IDY5cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNzVweDsgfSB9XG5cbi5tLWN0YVBhbmVsIGgyLFxuLnBhZ2VDbGFzcy0tbDAgLm0tY3RhUGFuZWwgaDIsXG4ucGFnZUNsYXNzLS1sMSAubS1jdGFQYW5lbCBoMiB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm0tY3RhUGFuZWwgcCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLm0tY3RhUGFuZWwgcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tLWN0YVBhbmVsIHA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogNHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5tLWN0YVBhbmVsIHA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMTlweDsgfSB9XG5cbi5tLWRyYXdlcnNfX2NvbnRlbnQubS1kcmF3ZXJzX19jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDEwcHg7IH1cblxuLm0tZHJhd2Vycy0tYWx0IC5tLWRyYXdlcnNfX3RvZ2dsZTpob3ZlciBzcGFuLCAubS1kcmF3ZXJzLS1hbHQgLm0tZHJhd2Vyc19fdG9nZ2xlOmFjdGl2ZSBzcGFuIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjRTQyQTFEOyB9XG5cbi5tLWRyYXdlcnMtLWFsdCAubS1kcmF3ZXJzX190b2dnbGUgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzE5MTkxOTsgfVxuXG4ubS1kcmF3ZXJzLS1hbHQgLm0tZHJhd2Vyc19fdG9nZ2xlIHNwYW4ubS1kcmF3ZXJzX19zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgY29sb3I6ICNFNDJBMUQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5tLWRyYXdlcnMtLWFsdCAubS1kcmF3ZXJzX190b2dnbGUgc3Bhbi5tLWRyYXdlcnNfX3N1YnRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDhweDsgfSB9XG5cbi5tLXRleHRCbG9jayArIC5tLWRyYXdlcnMsXG4ubS10ZXh0QmxvY2sgKyAuby1wcmltYXJ5Q29udGVudCAubS1kcmF3ZXJzIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4ubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsIC5yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cblxuLm0tZmVhdHVyZVBhbmVsLS1saW5rLWxpc3QgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IC5mLWgxMSxcbi5tLWxhbmRpbmdQYW5lbF9fY29udGVudCAubS1mZWF0dXJlUGFuZWwtLWxpbmstbGlzdCAuZi1oMTEge1xuICBjb2xvcjogI0U0MkExRDsgfVxuXG4ubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IHVsIGxpOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tLWxhbmRpbmdQYW5lbF9fY29udGVudCAubS1mZWF0dXJlUGFuZWwtLWJ1bGxldC1saXN0IHVsIHtcbiAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgcGFkZGluZzogMCAwIDAgMjVweDsgfVxuXG4ubS1sYW5kaW5nUGFuZWxfX2NvbnRlbnQgLm0tZmVhdHVyZVBhbmVsLS1idWxsZXQtbGlzdCB1bCBsaTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLnBhZ2VDbGFzcy0tbDIgLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbC0tYWx0Lm0tbGFuZGluZ1BhbmVsLS1zbWFsbCAubS1sYW5kaW5nUGFuZWxfX3RpdGxlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAucGFnZUNsYXNzLS1sMiAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX190aXRsZSxcbiAgLnBhZ2VDbGFzcy0tbDIgLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbC0tYWx0IC5tLWxhbmRpbmdQYW5lbF9fdGl0bGUge1xuICAgIHRvcDogMTlweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjEuMTg3NWVtKSB7XG4gIC5tLWZlYXR1cmVQYW5lbCArIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbCArIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwge1xuICAgIG1hcmdpbi10b3A6IC0zOXB4OyB9IH1cblxuLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbF9fY29udGVudCAubS1sYW5kaW5nUGFuZWxfX2N0YS1saXN0IHtcbiAgbWFyZ2luOiAxNXB4IDAgMDsgfVxuICAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IC5tLWxhbmRpbmdQYW5lbF9fY3RhLWxpc3QgbGkge1xuICAgIG1hcmdpbjogMCAwIDE1cHg7IH1cbiAgLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbF9fY29udGVudCAubS1sYW5kaW5nUGFuZWxfX2N0YS1saXN0IGEge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0U0MkExRDsgfVxuICAgIC5tLWZlYXR1cmVQYW5lbCAubS1sYW5kaW5nUGFuZWxfX2NvbnRlbnQgLm0tbGFuZGluZ1BhbmVsX19jdGEtbGlzdCBhOmhvdmVyLCAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IC5tLWxhbmRpbmdQYW5lbF9fY3RhLWxpc3QgYTphY3RpdmUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNFNDJBMUQ7IH1cbiAgICAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IC5tLWxhbmRpbmdQYW5lbF9fY3RhLWxpc3QgYTo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAubS1mZWF0dXJlUGFuZWwtLXNtYWxsLWFsdCAubS1sYW5kaW5nUGFuZWxfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogXCJuZXVlLWRpc3BsYXktcmFuZG9tXCI7XG4gICAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAgIC1vLWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gICAgLW1vei1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAgIC1tcy1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gICAgZm9udC1zaXplOiA0NXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMXJlbTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgdG9wOiAyMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwtYWx0IC5tLWxhbmRpbmdQYW5lbF9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBcIm5ldWUtZGlzcGxheS1yYW5kb21cIjtcbiAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gICAgLW8tZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gICAgLW1zLWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxcmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbC1hbHQgLm0tbGFuZGluZ1BhbmVsX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IFwibmV1ZS1kaXNwbGF5LXJhbmRvbVwiO1xuICAgIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgICAtby1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAgIC1tb3otZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgICAtbXMtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMTtcbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwtYWx0IC5tLWxhbmRpbmdQYW5lbF9faW1hZ2VMaW5rOjphZnRlciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAubS1mZWF0dXJlUGFuZWwtLXNtYWxsLWFsdCAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX2ltYWdlTGluazo6YWZ0ZXIge1xuICAgIGxlZnQ6IDQwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAubS1mZWF0dXJlUGFuZWwtLXNtYWxsLWFsdCAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX2ltYWdlTGluayBwIHtcbiAgICBsZWZ0OiA2MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAubS1mZWF0dXJlUGFuZWwtLXNtYWxsLWFsdCAubS1sYW5kaW5nUGFuZWxfX2ltYWdlIHtcbiAgICBwYWRkaW5nOiAwIDQwcHggMCAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAubS1mZWF0dXJlUGFuZWwtLXNtYWxsLWFsdCAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX2ltYWdlIHtcbiAgICBwYWRkaW5nOiAwIDAgMCA0MHB4OyB9IH1cblxuLm0taGlnaGxpZ2h0c0dyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAyNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDNweDsgfVxuICAubS1oaWdobGlnaHRzR3JpZC5hZGQtc2VwYXJhdG9yLS10b3A6YmVmb3JlIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm0taGlnaGxpZ2h0c0dyaWQge1xuICAgICAgcGFkZGluZy10b3A6IDIycHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjZweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm0taGlnaGxpZ2h0c0dyaWQgaDIge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7IH0gfVxuXG4ubS1oaWdobGlnaHRzR3JpZF9faXRlbXMsXG4uby1wcmltYXJ5Q29udGVudCB1bCAubS1oaWdobGlnaHRzR3JpZF9faXRlbXMge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubS1oaWdobGlnaHRzR3JpZF9faXRlbXMsXG4gICAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLm0taGlnaGxpZ2h0c0dyaWRfX2l0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgbWFyZ2luLXRvcDogMjlweDsgfSB9XG5cbi5tLWhpZ2hsaWdodHNHcmlkIGxpLFxuLm8tcHJpbWFyeUNvbnRlbnQgdWwgLm0taGlnaGxpZ2h0c0dyaWQgbGkge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5tLWhpZ2hsaWdodHNHcmlkIGxpOmZpcnN0LWNoaWxkLFxuICAuby1wcmltYXJ5Q29udGVudCB1bCAubS1oaWdobGlnaHRzR3JpZCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAubS1oaWdobGlnaHRzR3JpZCBsaTo6YmVmb3JlLFxuICAuby1wcmltYXJ5Q29udGVudCB1bCAubS1oaWdobGlnaHRzR3JpZCBsaTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubS1oaWdobGlnaHRzR3JpZCBsaSxcbiAgICAuby1wcmltYXJ5Q29udGVudCB1bCAubS1oaWdobGlnaHRzR3JpZCBsaSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogMjlweDsgfVxuICAgICAgLm0taGlnaGxpZ2h0c0dyaWQgbGk6bnRoLWNoaWxkKC1uKzIpLFxuICAgICAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLm0taGlnaGxpZ2h0c0dyaWQgbGk6bnRoLWNoaWxkKC1uKzIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5tLWhpZ2hsaWdodHNHcmlkX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm8tcHJpbWFyeUNvbnRlbnQubS10ZXh0QmxvY2sgLm0taGlnaGxpZ2h0c0dyaWQgbGk6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm0tbGFuZGluZ0ludHJvLS1sYXJnZSB7XG4gIG1hcmdpbi1ib3R0b206IC03cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tLWxhbmRpbmdJbnRyby0tbGFyZ2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLThweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAubS1sYW5kaW5nSW50cm8tLWxhcmdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC05cHg7IH0gfVxuXG4uYm9keS0taGlnaGxpZ2h0IC5tLWxhbmRpbmdJbnRybyBwIGEge1xuICBib3JkZXItY29sb3I6ICNGRkZGRkY7IH1cblxuLm0tbGlzdFBhbmVsIHtcbiAgYmFja2dyb3VuZDogI0YxRjJGMjsgfVxuXG4ubS1saXN0UGFuZWxfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDE4cHggMjBweCAxNnB4O1xuICBjb2xvcjogI0U0MkExRDsgfVxuXG4ubS1saXN0UGFuZWxfX2l0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q5RDlEOTsgfVxuXG4ubS1saXN0UGFuZWxfX2l0ZW0gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxNnB4IDIwcHggMThweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5tLWxpc3RQYW5lbF9faXRlbSBhOmhvdmVyIHtcbiAgICBjb2xvcjogI0U0MkExRDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXR3b1RoaXJkcyAubS1saXN0UGFuZWwge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDQ4cHgpOyB9IH1cblxuLm0tbW9kdWxlSGVhZGVyX190aXRsZS13cmFwIHtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuLm0tbW9kdWxlSGVhZGVyX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGNvbG9yOiAjRTQyQTFEOyB9XG4gIC5ib2R5LS1oaWdobGlnaHQgLm0tbW9kdWxlSGVhZGVyX190aXRsZSB7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgLm0tbW9kdWxlSGVhZGVyX190aXRsZS5tLW1vZHVsZUhlYWRlcl9fdGl0bGUtLWhhcy1hbmNob3I6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgbWFyZ2luLXRvcDogLTc1cHg7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAgIC5tLW1vZHVsZUhlYWRlcl9fdGl0bGUubS1tb2R1bGVIZWFkZXJfX3RpdGxlLS1oYXMtYW5jaG9yOjpiZWZvcmUge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTUwcHg7XG4gICAgICAgIGhlaWdodDogMTUwcHg7IH0gfVxuXG4ubS1tb2R1bGVIZWFkZXJfX2ludHJvIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDE4cHg7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5tLW1vZHVsZUhlYWRlcl9faW50cm8ge1xuICAgICAgbWFyZ2luLXRvcDogMzFweDsgfSB9XG5cbi5tLW1vZHVsZUhlYWRlcl9faW50cm8gcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm0tbW9kdWxlSGVhZGVyX19jdGEge1xuICBtYXJnaW4tdG9wOiAyMnB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyLjQzNzVlbSkge1xuICAubS1uYXZMaXN0X19jb250YWluZXIgLnJvdyB7XG4gICAgbWFyZ2luOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5tLW5hdkxpc3QtLXRlcnRpYXJ5IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAgIC5tLW5hdkxpc3QtLXRlcnRpYXJ5IC5tLW5hdkxpc3RfX2l0ZW0ge1xuICAgICAgbWFyZ2luOiAwIDVweDsgfSB9XG5cbi5tLXBhZ2VIZWFkZXIgKyAueHNtYWxsLXNob3cuc21hbGwtc2hvdy5tZWRpdW0tc2hvdyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IC0yNXB4OyB9XG5cbi5tLXBvc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4ubS1wb3N0IGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm0tcG9zdCA+IGE6bm90KC5tLXBvc3RfX2N0YSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNpdGlvbjogY29sb3IgZWFzZS1pbi1vdXQgMTgwbXM7IH1cbiAgLm0tcG9zdCA+IGE6bm90KC5tLXBvc3RfX2N0YSk6aG92ZXIsIC5tLXBvc3QgPiBhOm5vdCgubS1wb3N0X19jdGEpOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNFNDJBMUQ7IH1cblxuLm0tcG9zdCA+IGEgKyAubS1wb3N0X190YWcge1xuICBtYXJnaW4tdG9wOiAyM3B4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm0tcG9zdC5tLXBvc3QtLWhhcy1jdGEsXG4gIC5tLXBvc3QubS1wb3N0LS1oYXMtbGluayB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7IH0gfVxuXG4ubS1wb3N0X19pbWFnZSxcbi5tLXBvc3QgLmEtdmlkZW9fX2xpbmsuYS12aWRlb19fbGluayB7XG4gIG1hcmdpbjogMDsgfVxuXG4ubS1wb3N0X19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5tLXBvc3RfX2ltYWdlOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRTQyQTFEO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2Utb3V0IDM2MG1zOyB9XG4gICAgICAuYm9keS0taGlnaGxpZ2h0IC5tLXBvc3RfX2ltYWdlOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxOTE5MTk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgYTpob3ZlciAubS1wb3N0X19pbWFnZTphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKDEwcHgsIDEwcHgsIDApOyB9XG4gICAgYTpob3ZlciAubS1wb3N0X19pbWFnZSBpbWcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgtMTBweCwgLTEwcHgsIDApOyB9IH1cblxuLm0tcG9zdF9faW1hZ2UgaW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgei1pbmRleDogMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2Utb3V0IDM2MG1zOyB9XG5cbi5tLXBvc3RfX3RhZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI0U0MkExRDsgfVxuXG4ubS1wb3N0X190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDE4cHg7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5tLXBvc3RfX3RpdGxlOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5tLXBvc3RfX3RpdGxlIGEsXG4ubS1wb3N0X19xdW90ZSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgZWFzZS1pbi1vdXQgMTgwbXM7IH1cbiAgLm0tcG9zdF9fdGl0bGUgYTpob3ZlcixcbiAgLm0tcG9zdF9fcXVvdGUgYTpob3ZlciB7XG4gICAgY29sb3I6ICNFNDJBMUQ7IH1cblxuLm0tcG9zdF9fdGFnICsgLm0tcG9zdF9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAxMXB4OyB9XG5cbi5tLXBvc3RfX2V4Y2VycHQge1xuICBtYXJnaW4tdG9wOiAxMXB4OyB9XG5cbi5tLXBvc3RfX2V4Y2VycHQgcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm0tcG9zdF9fY3RhLFxuLm0tcG9zdF9fbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMjJweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm0tcG9zdF9fY3RhLFxuICAgIC5tLXBvc3RfX2xpbmsge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubS1wb3N0LS1leHRyYSAubS1wb3N0X19jdGEsIC5tLXBvc3QtLWV4dHJhXG4gICAgLm0tcG9zdF9fbGluayB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyB9IH1cblxuLm0tcG9zdF9fY3RhIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubS1wb3N0X19jdGEge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3R0b206IDRweDsgfSB9XG5cbi5tLXBvc3RfX2xpbmsge1xuICBtYXJnaW4tbGVmdDogMTdweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJvcmRlci1ib3R0b20gZWFzZS1vdXQgMTgwbXMsIGNvbG9yIGVhc2Utb3V0IDE4MG1zOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubS1wb3N0X19saW5rIHtcbiAgICAgIGJvdHRvbTogMDsgfSB9XG4gIC5tLXBvc3RfX2xpbms6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMjQnIGhlaWdodD0nMTAyNCcgdmlld0JveD0nMCAwIDEwMjQgMTAyNCclM0UlM0NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMDAwJyBzdHJva2Utd2lkdGg9JzU2Ljg4ODknIHN0cm9rZS1taXRlcmxpbWl0PSc0JyBzdHJva2UtbGluZWNhcD0nYnV0dCcgc3Ryb2tlLWxpbmVqb2luPSdtaXRlcicgZD0nTTQzMi4zNTYgMTEzLjc3OGwzNjkuNzc4IDM2OS43NzgtMzY5Ljc3OCAzNjkuNzc4JyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXB4O1xuICAgIGxlZnQ6IC0yM3B4O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1vdXQgMTgwbXM7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubS1wb3N0X19saW5rOmJlZm9yZSB7XG4gICAgICAgIHRvcDogNHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgICAgLm0tcG9zdF9fbGluazpiZWZvcmUge1xuICAgICAgICB0b3A6IDZweDsgfSB9XG4gICAgLnMtbW9kdWxlLWJrZ2Qucy1tb2R1bGUtYmtnZC0tZGFyayAubS1wb3N0X19saW5rOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMjQnIGhlaWdodD0nMTAyNCcgdmlld0JveD0nMCAwIDEwMjQgMTAyNCclM0UlM0NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2Utd2lkdGg9JzU2Ljg4ODknIHN0cm9rZS1taXRlcmxpbWl0PSc0JyBzdHJva2UtbGluZWNhcD0nYnV0dCcgc3Ryb2tlLWxpbmVqb2luPSdtaXRlcicgZD0nTTQzMi4zNTYgMTEzLjc3OGwzNjkuNzc4IDM2OS43NzgtMzY5Ljc3OCAzNjkuNzc4JyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRVwiKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm0tcG9zdF9fbGluazpob3ZlciwgLm0tcG9zdF9fbGluazphY3RpdmUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFNDJBMUQ7XG4gICAgICBjb2xvcjogI0U0MkExRDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm0tcG9zdF9fc2xpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpOyB9IH1cblxuLm0tcG9zdF9fc2xpZGUtaW5uZXIge1xuICBwYWRkaW5nLXRvcDogMjNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5tLXBvc3RfX3NsaWRlLWhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgbWluLWhlaWdodDogOTJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLm0tcG9zdF9fc2xpZGUtaGlkZGVuID4gKiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpOyB9IH1cblxuLm0tcG9zdF9fcXVvdGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm0tcG9zdF9fcXVvdGUge1xuICAgICAgbWFyZ2luLXRvcDogNnB4OyB9IH1cblxuLm0tcG9zdF9fcXVvdGUgY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAubS1wb3N0X19xdW90ZSBjaXRlIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXJnaW4tdG9wOiAyOHB4OyB9IH1cbiAgLm0tcG9zdF9fcXVvdGUgY2l0ZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDE0JztcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG4ubS1wb3N0X19xdW90ZSBwOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBjb250ZW50OiAn4oCcJzsgfVxuXG4ubS1wb3N0X19xdW90ZSBwOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIge1xuICBjb250ZW50OiAn4oCdJzsgfVxuXG4ubS1wb3N0LS1leHRyYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAubS1wb3N0LS1leHRyYSA+ICoge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpOyB9XG5cbi5tLXBvc3QtLWV4dHJhIC5hLXZpZGVvIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7IH1cblxuLm0tcG9zdC0tZXh0cmEgLm0tcG9zdF9faW1hZ2UsXG4ubS1wb3N0LS1leHRyYSAuYS12aWRlbyB7XG4gIG9yZGVyOiAxOyB9XG5cbi5tLXBvc3QtLWV4dHJhIC5tLXBvc3RfX3NsaWRlIHtcbiAgb3JkZXI6IDI7IH1cbiAgLm0tcG9zdC0tZXh0cmEgLm0tcG9zdF9fc2xpZGUgPiAqIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5tLXBvc3QtLWV4dHJhOm5vdCgubS1wb3N0LS12aWRlbyk6aG92ZXIgPiAqIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwcHgpOyB9XG4gIC5tLXBvc3QtLWV4dHJhOm5vdCgubS1wb3N0LS12aWRlbyk6aG92ZXIgLm0tcG9zdF9fc2xpZGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTUwcHgpOyB9XG4gIC5tLXBvc3QtLWV4dHJhOm5vdCgubS1wb3N0LS12aWRlbyk6aG92ZXIgLm0tcG9zdF9fc2xpZGUtaGlkZGVuIHtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsOyB9XG4gICAgLm0tcG9zdC0tZXh0cmE6bm90KC5tLXBvc3QtLXZpZGVvKTpob3ZlciAubS1wb3N0X19zbGlkZS1oaWRkZW4gPiAqIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE1czsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm0tcG9zdC0tdmlkZW8gLm0tcG9zdF9fc2xpZGU6aG92ZXIgPiAqIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1MHB4KTsgfVxuICAubS1wb3N0LS12aWRlbyAubS1wb3N0X19zbGlkZTpob3ZlciAubS1wb3N0X19zbGlkZS1oaWRkZW4ge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH1cbiAgICAubS1wb3N0LS12aWRlbyAubS1wb3N0X19zbGlkZTpob3ZlciAubS1wb3N0X19zbGlkZS1oaWRkZW4gPiAqIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLm0tcG9zdC0tdmlkZW8gLm0tcG9zdF9fc2xpZGU6aG92ZXIgKyAuYS12aWRlbyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MHB4KTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm0tcG9zdC0tdmlkZW8gLm0tcG9zdF9fc2xpZGUtaGlkZGVuIHtcbiAgICBtaW4taGVpZ2h0OiAyNDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm0tcG9zdC0tZmVhdHVyZSAubS1wb3N0X190aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMzRweDsgfSB9XG5cbi5ib2R5LS1oaWdobGlnaHQgLm0tcG9zdCA+IGE6aG92ZXIsIC5ib2R5LS1oaWdobGlnaHQgLm0tcG9zdCA+IGE6YWN0aXZlLFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAubS1wb3N0ID4gYTpob3Zlcixcbi5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgLm0tcG9zdCA+IGE6YWN0aXZlIHtcbiAgY29sb3I6ICMxOTE5MTk7IH1cblxuLmJvZHktLWhpZ2hsaWdodCAubS1wb3N0X190aXRsZSxcbi5ib2R5LS1oaWdobGlnaHQgLm0tcG9zdF9fdGl0bGUgYSxcbi5ib2R5LS1oaWdobGlnaHQgLm0tcG9zdF9fcXVvdGUgcCxcbi5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgLm0tcG9zdF9fdGl0bGUsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5tLXBvc3RfX3RpdGxlIGEsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5tLXBvc3RfX3F1b3RlIHAge1xuICBjb2xvcjogIzE5MTkxOTsgfVxuXG4uYm9keS0taGlnaGxpZ2h0IC5tLXBvc3RfX3NsaWRlLFxuLmJvZHktLWhpZ2hsaWdodCAubS1wb3N0X19zbGlkZTo6YWZ0ZXIsXG4uYm9keS0taGlnaGxpZ2h0IC5tLXBvc3RfX3NsaWRlLWlubmVyLFxuLmJvZHktLWhpZ2hsaWdodCAubS1wb3N0X19zbGlkZS1oaWRkZW4sXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5tLXBvc3RfX3NsaWRlLFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAubS1wb3N0X19zbGlkZTo6YWZ0ZXIsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5tLXBvc3RfX3NsaWRlLWlubmVyLFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAubS1wb3N0X19zbGlkZS1oaWRkZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTQyQTFEOyB9XG5cbi5ib2R5LS1oaWdobGlnaHQgLm0tcG9zdF9fY3RhLFxuLmJvZHktLWhpZ2hsaWdodCAubS1wb3N0X190YWcsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5tLXBvc3RfX2N0YSxcbi5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgLm0tcG9zdF9fdGFnIHtcbiAgY29sb3I6ICNGRkZGRkY7IH1cblxuLmJvZHktLWhpZ2hsaWdodCAucy1tb2R1bGUtYmtnZC0tZGFyayAubS1wb3N0X190aXRsZSxcbi5ib2R5LS1oaWdobGlnaHQgLnMtbW9kdWxlLWJrZ2QtLWRhcmsgLm0tcG9zdF9fdGl0bGUgYSxcbi5ib2R5LS1oaWdobGlnaHQgLnMtbW9kdWxlLWJrZ2QtLWRhcmsgLm0tcG9zdF9fcXVvdGUgcCxcbi5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgLnMtbW9kdWxlLWJrZ2QtLWRhcmsgLm0tcG9zdF9fdGl0bGUsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5zLW1vZHVsZS1ia2dkLS1kYXJrIC5tLXBvc3RfX3RpdGxlIGEsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5zLW1vZHVsZS1ia2dkLS1kYXJrIC5tLXBvc3RfX3F1b3RlIHAge1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4uYm9keS0taGlnaGxpZ2h0IC5zLW1vZHVsZS1ia2dkLS1kYXJrIC5tLXBvc3RfX2N0YTpob3Zlcixcbi5ib2R5LS1oaWdobGlnaHQgLnMtbW9kdWxlLWJrZ2QtLWRhcmsgLm0tcG9zdF9fbGluazpob3Zlcixcbi5ib2R5LS1oaWdobGlnaHQgLnMtbW9kdWxlLWJrZ2QtLWRhcmsgLm0tcG9zdF9fdGl0bGUgYTpob3Zlcixcbi5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgLnMtbW9kdWxlLWJrZ2QtLWRhcmsgLm0tcG9zdF9fY3RhOmhvdmVyLFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAucy1tb2R1bGUtYmtnZC0tZGFyayAubS1wb3N0X19saW5rOmhvdmVyLFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAucy1tb2R1bGUtYmtnZC0tZGFyayAubS1wb3N0X190aXRsZSBhOmhvdmVyIHtcbiAgY29sb3I6ICNFNDJBMUQ7IH1cblxuLmJvZHktLWhpZ2hsaWdodCAucy1tb2R1bGUtYmtnZC0tZGFyayAubS1wb3N0X19pbWFnZTo6YWZ0ZXIsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5zLW1vZHVsZS1ia2dkLS1kYXJrIC5tLXBvc3RfX2ltYWdlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNDJBMUQ7IH1cblxuLm0tcG9zdElubGluZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q5RDlEOTsgfVxuICAubS1wb3N0SW5saW5lOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYxLjE4NzVlbSkge1xuICAgIC5tLXBvc3RJbmxpbmU6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBib3JkZXItdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5tLXBvc3RJbmxpbmUge1xuICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgIHBhZGRpbmctdG9wOiAzNXB4OyB9IH1cblxuLm0tcG9zdElubGluZSA+IGEge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAubS1wb3N0SW5saW5lID4gYSxcbiAgLm0tcG9zdElubGluZSA+IGEgLm0tcG9zdElubGluZV9fdGl0bGUge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIGVhc2UtaW4tb3V0IDE4MG1zOyB9XG4gIC5tLXBvc3RJbmxpbmUgPiBhOmhvdmVyLFxuICAubS1wb3N0SW5saW5lID4gYTpob3ZlciAubS1wb3N0SW5saW5lX190aXRsZSwgLm0tcG9zdElubGluZSA+IGE6YWN0aXZlLFxuICAubS1wb3N0SW5saW5lID4gYTphY3RpdmUgLm0tcG9zdElubGluZV9fdGl0bGUge1xuICAgIGNvbG9yOiAjRTQyQTFEOyB9XG5cbi5tLXBvc3RJbmxpbmVfX2ltYWdlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5tLXBvc3RJbmxpbmVfX2ltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLm0tcG9zdElubGluZV9fbWV0YSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAyMnB4O1xuICBjb2xvcjogIzhjOGM4YzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm0tcG9zdElubGluZV9fbWV0YSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLm0tcG9zdElubGluZV9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAxMXB4O1xuICBjb2xvcjogIzE5MTkxOTsgfVxuICAuZGFyayAubS1wb3N0SW5saW5lX190aXRsZSB7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cblxuLm0tcG9zdElubGluZV9fZXhjZXJwdCB7XG4gIG1hcmdpbi10b3A6IDRweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXR3b1RoaXJkcyAubS1wb3N0SW5saW5lX19pbWFnZSB7XG4gICAgd2lkdGg6IDMwLjQlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby10d29UaGlyZHMgLm0tcG9zdElubGluZV9fbWFpbiB7XG4gICAgd2lkdGg6IDY5LjYlOyB9IH1cblxuLm8tdHdvVGhpcmRzIC5tLXBvc3RJbmxpbmU6bGFzdC1jaGlsZCxcbi5vLWxpc3RpbmdGdWxsIC5tLXBvc3RJbmxpbmU6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q5RDlEOTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tdHdvVGhpcmRzIC5tLXBvc3RJbmxpbmU6bGFzdC1jaGlsZCxcbiAgICAuby1saXN0aW5nRnVsbCAubS1wb3N0SW5saW5lOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLm8tdHdvVGhpcmRzIC5tLXBvc3RJbmxpbmU6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfSB9XG5cbi5tLXB1YiA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5tLXB1YiA+IGE6aG92ZXIgLm0tcHViX190aXRsZSwgLm0tcHViID4gYTphY3RpdmUgLm0tcHViX190aXRsZSB7XG4gICAgY29sb3I6ICNFNDJBMUQ7IH1cblxuLm0tcHViX19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMjc1cHg7IH1cblxuLm0tcHViX19pbWFnZSAuYS1pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LWhlaWdodDogMjc1cHg7XG4gIG1hcmdpbjogMDsgfVxuICAubS1wdWJfX2ltYWdlIC5hLWltZzo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNFNDJBMUQ7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSBlYXNlLWluLW91dCAzNjBtczsgfVxuICBhOmhvdmVyIC5tLXB1Yl9faW1hZ2UgLmEtaW1nOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKDEwcHgsIDEwcHgsIDApOyB9XG4gIGE6aG92ZXIgLm0tcHViX19pbWFnZSAuYS1pbWcgaW1nIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwIHRyYW5zcGFyZW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoLTEwcHgsIC0xMHB4LCAwKTsgfVxuXG4ubS1wdWJfX2ltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgMzYwbXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgMzYwbXM7IH1cblxuLm0tcHViX190aXRsZSB7XG4gIG1hcmdpbjogMjJweCAwIDA7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5tLXB1Yl9fc3VidGl0bGUge1xuICBtYXJnaW46IDA7IH1cblxuLm0tcHViX19tZXRhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgY29sb3I6ICM4YzhjOGM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5tLXB1Yl9fbWV0YSB7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDsgfSB9XG5cbi5ib2R5LS1oaWdobGlnaHQgLm0tcHViX190aXRsZSxcbi5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgLm0tcHViX190aXRsZSB7XG4gIGNvbG9yOiAjMTkxOTE5OyB9XG5cbi5ib2R5LS1oaWdobGlnaHQgLm0tcHViX19tZXRhLFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAubS1wdWJfX21ldGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpOyB9XG5cbi5ib2R5LS1oaWdobGlnaHQgLm0tcHViX19pbWFnZSAuYS1pbWc6OmFmdGVyLFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAubS1wdWJfX2ltYWdlIC5hLWltZzo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTkxOTE5OyB9XG5cbi5ib2R5LS1oaWdobGlnaHQgYTpob3ZlciAubS1wdWJfX3RpdGxlLCAuYm9keS0taGlnaGxpZ2h0IGE6YWN0aXZlIC5tLXB1Yl9fdGl0bGUsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IGE6aG92ZXIgLm0tcHViX190aXRsZSxcbi5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgYTphY3RpdmUgLm0tcHViX190aXRsZSB7XG4gIGNvbG9yOiAjMTkxOTE5OyB9XG5cbi5tLXNpZGViYXJNb2R1bGUge1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAubS1zaWRlYmFyTW9kdWxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH0gfVxuXG4ubS1zaWRlYmFyTW9kdWxlX19jb250ZW50IGlmcmFtZSB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cyB7XG4gICAgcGFkZGluZy1ib3R0b206IDIzcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOUQ5RDk7IH0gfVxuXG4ubS1zaWRlYmFyTW9kdWxlX19ldmVudHMgbGkge1xuICBtYXJnaW4tdG9wOiAyM3B4O1xuICBwYWRkaW5nLXRvcDogMThweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEOUQ5RDk7IH1cblxuLm0tc2lkZWJhck1vZHVsZV9fZXZlbnRzIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cyBhOmhvdmVyLCAubS1zaWRlYmFyTW9kdWxlX19ldmVudHMgYTphY3RpdmUge1xuICAgIGNvbG9yOiAjRTQyQTFEOyB9XG5cbi5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cy1tZXRhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjOGM4YzhjOyB9XG5cbi5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cy10aXRsZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgLm0tc2lkZWJhck5hdmlnYXRpb24gKyAubS1zaWRlYmFyTW9kdWxlIHtcbiAgICBtYXJnaW4tdG9wOiAzNXB4OyB9IH1cblxuLm0tc2lkZWJhci1kcm9wem9uZSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5tLXNpZGViYXItZHJvcHpvbmUge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAubS1zaWRlYmFyTmF2aWdhdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7IH0gfVxuXG4ubS1zaWRlYmFyTmF2aWdhdGlvbl9faXRlbXNXcmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgLm0tc3RhdHNQYW5lbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgLm0tc3RhdHNQYW5lbCAubS1zdGF0c0xpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ubS10ZXh0QmxvY2s6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm0tdGV4dEJsb2NrIGgyIHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4OyB9IH1cblxuLm0tdGV4dEJsb2NrLm8tcHJpbWFyeUNvbnRlbnQgaDUgKyB1bCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm0tdGV4dEJsb2NrLm8tcHJpbWFyeUNvbnRlbnQgdWwgbGkge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5tLXRleHRCbG9jay5vLXByaW1hcnlDb250ZW50IC5pbmxpbmUtY3RhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICBjb2xvcjogI0U0MkExRDsgfVxuICAubS10ZXh0QmxvY2suby1wcmltYXJ5Q29udGVudCAuaW5saW5lLWN0YTo6YmVmb3JlIHtcbiAgICB0b3A6IDdweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMjQnIGhlaWdodD0nMTAyNCcgdmlld0JveD0nMCAwIDEwMjQgMTAyNCclM0UlM0NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRTgyRTIxJyBzdHJva2Utd2lkdGg9JzU2Ljg4ODknIHN0cm9rZS1taXRlcmxpbWl0PSc0JyBzdHJva2UtbGluZWNhcD0nYnV0dCcgc3Ryb2tlLWxpbmVqb2luPSdtaXRlcicgZD0nTTQzMi4zNTYgMTEzLjc3OGwzNjkuNzc4IDM2OS43NzgtMzY5Ljc3OCAzNjkuNzc4JyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRVwiKTsgfVxuXG5bZGF0YS11eC1wYWdlYnVpbGRlcl0gPiB1bCA+IGxpOmZpcnN0LWNoaWxkIC5tLXRleHRCbG9jay5hZGQtc2VwYXJhdG9yLS10b3A6Zmlyc3QtY2hpbGQsXG5bZGF0YS11eC1wYWdlYnVpbGRlcl0gPiB1bCA+IGxpOmZpcnN0LWNoaWxkIHNwYW4gKyAubS10ZXh0QmxvY2suYWRkLXNlcGFyYXRvci0tdG9wIHtcbiAgcGFkZGluZy10b3A6IDA7IH1cbiAgW2RhdGEtdXgtcGFnZWJ1aWxkZXJdID4gdWwgPiBsaTpmaXJzdC1jaGlsZCAubS10ZXh0QmxvY2suYWRkLXNlcGFyYXRvci0tdG9wOmZpcnN0LWNoaWxkOmJlZm9yZSxcbiAgW2RhdGEtdXgtcGFnZWJ1aWxkZXJdID4gdWwgPiBsaTpmaXJzdC1jaGlsZCBzcGFuICsgLm0tdGV4dEJsb2NrLmFkZC1zZXBhcmF0b3ItLXRvcDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLm0td29ya0xpc3RfX2N0YSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faW5uZXI6OmJlZm9yZSwgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faW5uZXI6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRDlEOUQ5O1xuICAgICAgei1pbmRleDogNTsgfVxuICAgIC5vLWFjY29yZGlvbkhvcml6b250YWxfX2lubmVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDsgfVxuICAgIC5vLWFjY29yZGlvbkhvcml6b250YWxfX2lubmVyOjphZnRlciB7XG4gICAgICByaWdodDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9fd3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiA5OTk5cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEOUQ5RDk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOUQ5RDk7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH0gfVxuXG4uby1hY2NvcmRpb25Ib3Jpem9udGFsX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19mb290ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMjNweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlIG5vd3JhcDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogODBweDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEOUQ5RDk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjUsIDApO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDEwcHggMCAxMHB4IC0xMHB4IHRyYW5zcGFyZW50OyB9XG4gICAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbTpob3ZlciwgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbTphY3RpdmUge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgYmFja2dyb3VuZDogI0YxRjJGMjtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDEwcHggMCAxMHB4IC0xMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxuICAgIC5vLWFjY29yZGlvbkhvcml6b250YWxfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtOmZpcnN0LWNoaWxkOmhvdmVyLCAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtOmZpcnN0LWNoaWxkOmFjdGl2ZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0Q5RDlEOTsgfSB9XG5cbi5vLWFjY29yZGlvbkhvcml6b250YWxfX2l0ZW0tdGl0bGUge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAwKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbS10cmlnZ2VyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNjA1cHg7XG4gICAgaGVpZ2h0OiA2MDVweDtcbiAgICBwYWRkaW5nOiAyN3B4IDQ1cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODBweCkgcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbS1jb250ZW50IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLmEtYWNjb3JkaW9uSG9yaXpvbnRhbC0tYWN0aXZlLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbSB7XG4gICAgYmFja2dyb3VuZDogI0YxRjJGMjtcbiAgICBib3gtc2hhZG93OiBpbnNldCAxMHB4IDAgMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgICAuYS1hY2NvcmRpb25Ib3Jpem9udGFsLS1hY3RpdmUuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5hLWFjY29yZGlvbkhvcml6b250YWwtLWFjdGl2ZSAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtLXRpdGxlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuYS1hY2NvcmRpb25Ib3Jpem9udGFsLS1hY3RpdmUgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbS1jb250ZW50IHtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1hY2NvcmRpb25Ib3Jpem9udGFsIC5hLWFjY29yZGlvbkNhcmQgLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbCAuYS1hY2NvcmRpb25DYXJkOmhvdmVyIC5hLWFjY29yZGlvbkNhcmRfX2JvZHksIC5vLWFjY29yZGlvbkhvcml6b250YWwgLmEtYWNjb3JkaW9uQ2FyZDphY3RpdmUgLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICMxOTE5MTk7IH1cbiAgICAuby1hY2NvcmRpb25Ib3Jpem9udGFsIC5hLWFjY29yZGlvbkNhcmQ6aG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSAuYS1hY2NvcmRpb25DYXJkX19jdGEsIC5vLWFjY29yZGlvbkhvcml6b250YWwgLmEtYWNjb3JkaW9uQ2FyZDphY3RpdmUgLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSAuYS1hY2NvcmRpb25DYXJkX19jdGEge1xuICAgICAgY29sb3I6ICNFNDJBMUQ7XG4gICAgICBib3JkZXItY29sb3I6ICNFNDJBMUQ7IH1cbiAgICAgIC5vLWFjY29yZGlvbkhvcml6b250YWwgLmEtYWNjb3JkaW9uQ2FyZDpob3ZlciAuYS1hY2NvcmRpb25DYXJkX19ib2R5IC5hLWFjY29yZGlvbkNhcmRfX2N0YTphZnRlciwgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbCAuYS1hY2NvcmRpb25DYXJkOmFjdGl2ZSAuYS1hY2NvcmRpb25DYXJkX19ib2R5IC5hLWFjY29yZGlvbkNhcmRfX2N0YTphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFNDJBMUQ7IH1cbiAgICAuby1hY2NvcmRpb25Ib3Jpem9udGFsIC5hLWFjY29yZGlvbkNhcmQ6aG92ZXIgLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSAuYS1hY2NvcmRpb25DYXJkX19zdWJ0aXRsZSwgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbCAuYS1hY2NvcmRpb25DYXJkOmFjdGl2ZSAuYS1hY2NvcmRpb25DYXJkX19ib2R5IC5hLWFjY29yZGlvbkNhcmRfX3N1YnRpdGxlIHtcbiAgICAgIGNvbG9yOiAjOGM4YzhjOyB9XG4gICAgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbCAuYS1hY2NvcmRpb25DYXJkOmhvdmVyIC5hLWFjY29yZGlvbkNhcmRfX2JvZHkgLmEtYWNjb3JkaW9uQ2FyZF9faG92ZXItb24gLmEtYWNjb3JkaW9uQ2FyZF9fc3VidGl0bGUsIC5vLWFjY29yZGlvbkhvcml6b250YWwgLmEtYWNjb3JkaW9uQ2FyZDphY3RpdmUgLmEtYWNjb3JkaW9uQ2FyZF9fYm9keSAuYS1hY2NvcmRpb25DYXJkX19ob3Zlci1vbiAuYS1hY2NvcmRpb25DYXJkX19zdWJ0aXRsZSB7XG4gICAgICBjb2xvcjogIzE5MTkxOTsgfSB9XG5cbi5vLWNhcmVlck91dGNvbWVzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uby1jYXJlZXJPdXRjb21lcyAubS1tb2R1bGVIZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2l0ZW1zIHtcbiAgbWFyZ2luLXRvcDogLTVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tY2FyZWVyT3V0Y29tZXNfX2l0ZW1zIHtcbiAgICAgIG1hcmdpbi10b3A6IC0yMHB4OyB9IH1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2l0ZW0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWNhcmVlck91dGNvbWVzX19pdGVtOm50aC1jaGlsZCgzbi0xKSB7XG4gICAgICBtYXJnaW4tdG9wOiA5NXB4OyB9IH1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2l0ZW0gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm8tY2FyZWVyT3V0Y29tZXMgLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLm8tY2FyZWVyT3V0Y29tZXMgLmNhcm91c2VsLWNlbGwge1xuICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gIG1hcmdpbi1yaWdodDogLTYwcHg7XG4gIG9wYWNpdHk6IDAuMjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgLm8tY2FyZWVyT3V0Y29tZXMgLmNhcm91c2VsLWNlbGwuaXMtc2VsZWN0ZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogNTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tY2FyZWVyT3V0Y29tZXMgLmNhcm91c2VsLWNlbGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgb3BhY2l0eTogMTsgfSB9XG5cbi5vLWNhcmVlck91dGNvbWVzX19pbWFnZSB7XG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiAyMDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tY2FyZWVyT3V0Y29tZXNfX2ltYWdlIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfSB9XG5cbi5vLWNhcmVlck91dGNvbWVzX19pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gIC5pcy1zZWxlY3RlZCAuby1jYXJlZXJPdXRjb21lc19faW1hZ2UgaW1nIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1jYXJlZXJPdXRjb21lc19faW1hZ2UgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG4uby1jYXJlZXJPdXRjb21lc19fbmFtZSxcbi5vLWNhcmVlck91dGNvbWVzX19yb2xlLFxuLm8tY2FyZWVyT3V0Y29tZXNfX2NvdXJzZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAuaXMtc2VsZWN0ZWQgLm8tY2FyZWVyT3V0Y29tZXNfX25hbWUsIC5pcy1zZWxlY3RlZFxuICAuby1jYXJlZXJPdXRjb21lc19fcm9sZSwgLmlzLXNlbGVjdGVkXG4gIC5vLWNhcmVlck91dGNvbWVzX19jb3Vyc2Uge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWNhcmVlck91dGNvbWVzX19uYW1lLFxuICAgIC5vLWNhcmVlck91dGNvbWVzX19yb2xlLFxuICAgIC5vLWNhcmVlck91dGNvbWVzX19jb3Vyc2Uge1xuICAgICAgb3BhY2l0eTogMTsgfSB9XG5cbi5vLWNhcmVlck91dGNvbWVzX19uYW1lIHtcbiAgbWFyZ2luLXRvcDogMjVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tY2FyZWVyT3V0Y29tZXNfX25hbWUge1xuICAgICAgbWFyZ2luLXRvcDogMjJweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tY2FyZWVyT3V0Y29tZXNfX3JvbGUge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLWNhcmVlck91dGNvbWVzX19jb3Vyc2Uge1xuICAgIG1hcmdpbi10b3A6IDdweDsgfSB9XG5cbi5vLWNhcmVlck91dGNvbWVzX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBwYWRkaW5nLXRvcDogMzBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tY2FyZWVyT3V0Y29tZXNfX2NvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogNDlweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8tY2FyZWVyT3V0Y29tZXNfX2NvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogNzFweDsgfSB9XG4gIC5vLWNhcmVlck91dGNvbWVzX19jb250ZW50OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMTBweDtcbiAgICByaWdodDogMTBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyMCwgMjAsIDIwLCAwLjE1KTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vLWNhcmVlck91dGNvbWVzX19jb250ZW50OjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2NvbnRlbnQgcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2N0YSB7XG4gIGNvbG9yOiAjMTkxOTE5OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1jYXJlZXJPdXRjb21lc19fY3RhIHtcbiAgICAgIG1hcmdpbi10b3A6IDIzcHg7IH0gfVxuXG4uby1mYXN0RmFjdHMge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1mYXN0RmFjdHMge1xuICAgICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQzcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vLWZhc3RGYWN0c19faXRlbXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9IH1cblxuLm8tZmFzdEZhY3RzX19pdGVtIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogMjNweDsgfVxuICAuby1mYXN0RmFjdHNfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWZhc3RGYWN0c19faXRlbSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLm8tZmFzdEZhY3RzX19pdGVtLWlubmVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDlEOUQ5OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1mYXN0RmFjdHNfX2l0ZW0taW5uZXIge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBib3JkZXItdG9wOiAwOyB9IH1cblxuLm8tZmFzdEZhY3RzX19pdGVtOmZpcnN0LWNoaWxkIC5vLWZhc3RGYWN0c19faXRlbS1pbm5lciB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBib3JkZXItdG9wOiAwOyB9XG5cbi5vLWZhc3RGYWN0c0RldGFpbCB7XG4gIHBhZGRpbmctdG9wOiAyOHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEOUQ5RDk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDlEOUQ5OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1mYXN0RmFjdHNEZXRhaWwge1xuICAgICAgcGFkZGluZy1ib3R0b206IDY1cHg7IH0gfVxuXG4uby1mYXN0RmFjdHNEZXRhaWxfX2l0ZW1zLFxuLm8tcHJpbWFyeUNvbnRlbnQgdWwgLm8tZmFzdEZhY3RzRGV0YWlsX19pdGVtcyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWZhc3RGYWN0c0RldGFpbF9faXRlbXMsXG4gICAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLm8tZmFzdEZhY3RzRGV0YWlsX19pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDsgfSB9XG5cbi5vLWZhc3RGYWN0c0RldGFpbF9faXRlbSxcbi5vLXByaW1hcnlDb250ZW50IHVsIC5vLWZhc3RGYWN0c0RldGFpbF9faXRlbXMgLm8tZmFzdEZhY3RzRGV0YWlsX19pdGVtIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogMTRweDsgfVxuICAuby1mYXN0RmFjdHNEZXRhaWxfX2l0ZW06Zmlyc3QtY2hpbGQsXG4gIC5vLXByaW1hcnlDb250ZW50IHVsIC5vLWZhc3RGYWN0c0RldGFpbF9faXRlbXMgLm8tZmFzdEZhY3RzRGV0YWlsX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5vLWZhc3RGYWN0c0RldGFpbF9faXRlbTo6YmVmb3JlLFxuICAuby1wcmltYXJ5Q29udGVudCB1bCAuby1mYXN0RmFjdHNEZXRhaWxfX2l0ZW1zIC5vLWZhc3RGYWN0c0RldGFpbF9faXRlbTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1mYXN0RmFjdHNEZXRhaWxfX2l0ZW0sXG4gICAgLm8tcHJpbWFyeUNvbnRlbnQgdWwgLm8tZmFzdEZhY3RzRGV0YWlsX19pdGVtcyAuby1mYXN0RmFjdHNEZXRhaWxfX2l0ZW0ge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IDE5cHg7IH1cbiAgICAgIC5vLWZhc3RGYWN0c0RldGFpbF9faXRlbTpudGgtY2hpbGQoLW4rMiksXG4gICAgICAuby1wcmltYXJ5Q29udGVudCB1bCAuby1mYXN0RmFjdHNEZXRhaWxfX2l0ZW1zIC5vLWZhc3RGYWN0c0RldGFpbF9faXRlbTpudGgtY2hpbGQoLW4rMikge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLm8tZmFzdEZhY3RzRGV0YWlsX190aXRsZSxcbi5vLWZhc3RGYWN0c0RldGFpbF9fY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vLWZhc3RGYWN0c0RldGFpbF9fdGl0bGUge1xuICBjb2xvcjogI0U0MkExRDsgfVxuXG4uby1mYXN0RmFjdHNEZXRhaWxfX2NvbnRlbnQge1xuICBtYXJnaW4tdG9wOiA1cHg7IH1cblxuLm8tZmFzdEZhY3RzRGV0YWlsX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1mYXN0RmFjdHNEZXRhaWxfX2Zvb3RlciB7XG4gICAgICBtYXJnaW4tdG9wOiAyOXB4OyB9IH1cblxuLm8tZmFzdEZhY3RzRGV0YWlsX19mb290ZXItbGluayB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5vLWZhc3RGYWN0c0RldGFpbF9fZm9vdGVyLWxpbms6aG92ZXIsIC5vLWZhc3RGYWN0c0RldGFpbF9fZm9vdGVyLWxpbms6YWN0aXZlIHtcbiAgICBjb2xvcjogI0U0MkExRDsgfVxuXG4uby1mYXN0RmFjdHNEZXRhaWwgKyAuYWRkLXNlcGFyYXRvci0tdG9wOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vLXByaW1hcnlDb250ZW50IC5tLWhlcm9IZWFkaW5nICsgLm8tZmFzdEZhY3RzRGV0YWlsIHtcbiAgbWFyZ2luLXRvcDogNDNweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tcHJpbWFyeUNvbnRlbnQgLm0taGVyb0hlYWRpbmcgKyAuby1mYXN0RmFjdHNEZXRhaWwge1xuICAgICAgbWFyZ2luLXRvcDogNjZweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm8tZmVhdHVyZWRQb3N0c19fdHdvVGhpcmRzIHtcbiAgICBtYXJnaW4tdG9wOiAzN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1mZWF0dXJlZFBvc3RzX190d29UaGlyZHMge1xuICAgIG1hcmdpbi10b3A6IDQycHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vLWZlYXR1cmVkUG9zdHNfX3RocmVlQ29sIHtcbiAgICBtYXJnaW4tdG9wOiAzN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1mZWF0dXJlZFBvc3RzX190aHJlZUNvbCB7XG4gICAgbWFyZ2luLXRvcDogMTAzcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLm8tZmVhdHVyZWRQb3N0cyAubS1wb3N0IHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4OyB9IH1cblxuLm8tZml2ZUNvbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm8tZml2ZUNvbCAuZmxpY2tpdHktdmlld3BvcnQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uby1maXZlQ29sX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1maXZlQ29sX19mb290ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMjNweDsgfSB9XG5cbi5vLWZpdmVDb2xfX2Zvb3Rlci1jdGEge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cblxuLmJvZHktLWhpZ2hsaWdodCAuby1maXZlQ29sX19mb290ZXItY3RhLFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAuby1maXZlQ29sX19mb290ZXItY3RhIHtcbiAgY29sb3I6ICMxOTE5MTk7IH1cblxuLm8taGVyb0ZseW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgbWFyZ2luLWJvdHRvbTogLTIwMHB4O1xuICBwYWRkaW5nLXRvcDogNDZweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0ZseW91dCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1pbi1oZWlnaHQ6IDI3NjVweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8taGVyb0ZseW91dF9fd3JhcHBlciB7XG4gICAgaGVpZ2h0OiAyNzY1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwMHB4OyB9IH1cblxuLm8taGVyb0ZseW91dF9fdGl0bGUtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbiAgbWFyZ2luLWJvdHRvbTogLThweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0ZseW91dF9fdGl0bGUtd3JhcCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgYm90dG9tOiA0NHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5vLWhlcm9GbHlvdXRfX3RpdGxlIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vLWhlcm9GbHlvdXRfX3RpdGxlIHNwYW4ge1xuICBjb2xvcjogI0U0MkExRDsgfVxuXG4uby1oZXJvRmx5b3V0X19pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA5ODVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8taGVyb0ZseW91dF9faW5uZXIge1xuICAgICAgaGVpZ2h0OiAxMjAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0ZseW91dF9faW5uZXIge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogOTVweDtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDk1cHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTAwcHg7IH0gfVxuXG4uby1oZXJvRmx5b3V0X19pbWFnZXMge1xuICBoZWlnaHQ6IDk4NXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1oZXJvRmx5b3V0X19pbWFnZXMge1xuICAgICAgaGVpZ2h0OiAxMjAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMjI2NXB4OyB9IH1cblxuLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nIHtcbiAgICAgIHRvcDogMjUlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgICAgIC5vLWhlcm9GbHlvdXRfX2ltYWdlcyAuYS1pbWc6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgdG9wOiAyNSU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxMjAwbXM7IH1cbiAgICAgICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoMSkgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQ0MHB4OyB9XG4gICAgICAuby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMjAwbXM7IH1cbiAgICAgICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoMikgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQ0MHB4OyB9XG4gICAgICAuby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogODAwbXM7IH1cbiAgICAgICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoMykgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDM2NXB4OyB9XG4gICAgICAuby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogNjAwbXM7IH1cbiAgICAgICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoNCkgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDU4MHB4OyB9XG4gICAgICAuby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nOm50aC1jaGlsZCg1KSB7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMTAwMG1zOyB9XG4gICAgICAgIC5vLWhlcm9GbHlvdXRfX2ltYWdlcyAuYS1pbWc6bnRoLWNoaWxkKDUpIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MjBweDsgfVxuICAgICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoNikge1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogNDAwbXM7IH1cbiAgICAgICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoNikgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQ0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjEuMTg3NWVtKSB7XG4gICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoMSkge1xuICAgICAgdG9wOiAyMDBweDtcbiAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICB6LWluZGV4OiAzOyB9XG4gICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoMikge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTMwcHg7XG4gICAgICB6LWluZGV4OiAyOyB9XG4gICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoMykge1xuICAgICAgdG9wOiA4MHB4O1xuICAgICAgcmlnaHQ6IC0zMHB4O1xuICAgICAgei1pbmRleDogMTsgfVxuICAgIC5vLWhlcm9GbHlvdXRfX2ltYWdlcyAuYS1pbWc6bnRoLWNoaWxkKDQpIHtcbiAgICAgIHRvcDogNDA2cHg7XG4gICAgICByaWdodDogLTMwcHg7XG4gICAgICB6LWluZGV4OiA0OyB9XG4gICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoNSkge1xuICAgICAgdG9wOiA0NzVweDtcbiAgICAgIGxlZnQ6IC0zMHB4O1xuICAgICAgei1pbmRleDogNTsgfVxuICAgIC5vLWhlcm9GbHlvdXRfX2ltYWdlcyAuYS1pbWc6bnRoLWNoaWxkKDYpIHtcbiAgICAgIHRvcDogNjA1cHg7XG4gICAgICByaWdodDogMzBweDtcbiAgICAgIHotaW5kZXg6IDY7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nOm50aC1jaGlsZCgxKSB7XG4gICAgICBsZWZ0OiAyMHB4OyB9XG4gICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoMikge1xuICAgICAgbGVmdDogLTIwcHg7IH1cbiAgICAuby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nOm50aC1jaGlsZCgzKSB7XG4gICAgICByaWdodDogLTEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoNCkge1xuICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIC5vLWhlcm9GbHlvdXRfX2ltYWdlcyAuYS1pbWc6bnRoLWNoaWxkKDUpIHtcbiAgICAgIGxlZnQ6IC0yMHB4OyB9XG4gICAgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQoNikge1xuICAgICAgcmlnaHQ6IDIwcHg7IH0gfVxuXG4uby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5vLWhlcm9GbHlvdXQtLWFjdGl2ZSAuby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xLCAwLjMsIDAuMjUsIDEpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvRmx5b3V0LS1hY3RpdmUgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZzpudGgtY2hpbGQobisyKSB7XG4gICAgICBsZWZ0OiBhdXRvOyB9IH1cblxuLm8taGVyb0Z1bGxTY3JlZW4ge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgbWFyZ2luLXRvcDogLTcwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbiB7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbiB7XG4gICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5vLWhlcm9GdWxsU2NyZWVuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTQwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbiB7XG4gICAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbiB7XG4gICAgICBtYXJnaW4tdG9wOiAtODVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNzRweDsgfSB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuIC5pY29uLS1jaGV2cm9uLXRoaW4tZG93biB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLWhlcm9GdWxsU2NyZWVuIC5pY29uLS1jaGV2cm9uLXRoaW4tZG93biB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgIHJpZ2h0OiA2MHB4O1xuICAgICAgei1pbmRleDogMzA7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGZpbGw6ICNGRkZGRkY7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH0gfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fbWFpbi1pbWFnZSAuYS1pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWluLWhlaWdodDogMjQwcHg7XG4gIG1hcmdpbjogMCAtMTBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4taW1hZ2UgLmEtaW1nIHtcbiAgICAgIG1hcmdpbjogMCAtMjBweDtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICBtaW4taGVpZ2h0OiA4MDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9fbWFpbi1pbWFnZSAuYS1pbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjBweCk7XG4gICAgICBtYXJnaW46IDAgLTMwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4taW1hZ2UgLmEtaW1nIHtcbiAgICAgIG1hcmdpbjogMCAtNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjYyNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4taW1hZ2UgLmEtaW1nIHtcbiAgICAgIG1hcmdpbjogMCAtNjBweDsgfSB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19tYWluLWltYWdlOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAyO1xuICBoZWlnaHQ6IDExMHB4O1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDAuNCksIHRyYW5zcGFyZW50KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWhlcm9GdWxsU2NyZWVuX19tYWluLWltYWdlOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTIwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4taW1hZ2U6OmJlZm9yZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX21haW4taW1hZ2U6OmJlZm9yZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC00MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9fbWFpbi1pbWFnZTo6YmVmb3JlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTYwcHg7IH0gfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fbWFpbi1pbWFnZSAuYS1pbWdfX2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19tYWluLXRpdGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEzcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLWhlcm9GdWxsU2NyZWVuX19tYWluLXRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICBib3R0b206IDUwcHg7IH0gfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fbWFpbi10aXRsZSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX3RpdGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEycHg7XG4gIHotaW5kZXg6IDI2O1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX3RpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICBib3R0b206IDQ2cHg7IH0gfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjc7XG4gIHBhZGRpbmctdG9wOiAzMnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzRweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX3RleHQge1xuICAgICAgcGFkZGluZy10b3A6IDgzcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTA3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLWhlcm9GdWxsU2NyZWVuX190ZXh0LS1sYXN0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjlweDsgfSB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX190ZXh0IHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9faXRlbSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDZweDsgfSB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLXZpZGVvLmlzLWFjdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjU7IH1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtdmlkZW9fX2xpbmssXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS12aWRlb19fZmlndXJlIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS1pbWcsXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS12aWRlbyxcbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLXZpZGVvX19saW5rIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLWltZ19faW1hZ2UsXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS12aWRlbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XG4gIG1hcmdpbi1yaWdodDogLTIwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLWltZ19faW1hZ2UsXG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtdmlkZW8ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDMwcHgpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS1pbWdfX2ltYWdlLFxuICAgIC5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLXZpZGVvIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA0NXB4KTtcbiAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoKCgxMDB2dyAtICgxNjBweCkpICogMC42NikgKiAwLjYyNSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC00NXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtaW1nX19pbWFnZSxcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS12aWRlbyB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgNjBweCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS1pbWdfX2ltYWdlLFxuICAgIC5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLXZpZGVvIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA4MHB4KTtcbiAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoKCgxMDB2dyAtICgzMjBweCkpICogMC42NikgKiAwLjYyNSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC04MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4Ljc1ZW0pIHtcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS1pbWdfX2ltYWdlLFxuICAgIC5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLXZpZGVvIHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH0gfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS12aWRlbyB7XG4gIG1pbi1oZWlnaHQ6IDA7IH1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtaW1nX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW06bnRoLWNoaWxkKGV2ZW4pIC5vLWhlcm9GdWxsU2NyZWVuX190aXRsZSB7XG4gIGxlZnQ6IDE1cHg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1oZXJvRnVsbFNjcmVlbl9faXRlbTpudGgtY2hpbGQoZXZlbikgLm8taGVyb0Z1bGxTY3JlZW5fX3RpdGxlIHNwYW4ge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW06bnRoLWNoaWxkKG9kZCkgLm8taGVyb0Z1bGxTY3JlZW5fX3RpdGxlIHNwYW4ge1xuICBsZWZ0OiAwOyB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtOm50aC1jaGlsZChvZGQpIC5hLWltZyxcbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtOm50aC1jaGlsZChvZGQpIC5hLXZpZGVvIHtcbiAgbGVmdDogMDsgfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbTpudGgtY2hpbGQob2RkKSAuYS1pbWdfX2ltYWdlLFxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW06bnRoLWNoaWxkKG9kZCkgLmEtdmlkZW8ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW06bnRoLWNoaWxkKG9kZCkgLmEtaW1nX19pbWFnZSxcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9faXRlbTpudGgtY2hpbGQob2RkKSAuYS12aWRlbyB7XG4gICAgICBtYXJnaW4tbGVmdDogLTQwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW06bnRoLWNoaWxkKG9kZCkgLmEtaW1nX19pbWFnZSxcbiAgICAuby1oZXJvRnVsbFNjcmVlbl9faXRlbTpudGgtY2hpbGQob2RkKSAuYS12aWRlbyB7XG4gICAgICBtYXJnaW4tbGVmdDogLTYwcHg7IH0gfVxuXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbTpudGgtY2hpbGQob2RkKSAuYS12aWRlb19fZmlndXJlIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtOm50aC1jaGlsZChldmVuKSAuYS12aWRlb19fZmlndXJlIHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uZGFyayAuby1oZXJvRnVsbFNjcmVlbixcbi5kYXJrIC5vLWhlcm9GdWxsU2NyZWVuX19pdGVtLFxuLmRhcmsgLm8taGVyb0Z1bGxTY3JlZW5fX3RleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTkxOTE5O1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4uby1oZXJvRnVsbFNjcmVlbixcbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtLFxuLm8taGVyb0Z1bGxTY3JlZW5fX3RleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBjb2xvcjogIzE5MTkxOTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjUsIDAsIDAuNSwgMCksIGNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAwKTsgfVxuXG4uby1oZXJvR2FsbGVyeSB7XG4gIG1hcmdpbi10b3A6IDE5cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWhlcm9HYWxsZXJ5IHtcbiAgICAgIG1hcmdpbi10b3A6IDM5cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9IH1cblxuLm8taGVyb0dhbGxlcnlfX2hlYWRlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMTA3cHg7XG4gIHotaW5kZXg6IDU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLWhlcm9HYWxsZXJ5X19oZWFkZXIge1xuICAgICAgdG9wOiAxNDBweDsgfSB9XG5cbi5vLWhlcm9HYWxsZXJ5X190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm5ldWUtZGlzcGxheS1yYW5kb21cIjtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtby1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gIC1tcy1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICBmb250LXNpemU6IDI1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuby1oZXJvR2FsbGVyeV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8taGVyb0dhbGxlcnlfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4OyB9IH1cblxuLm8taGVyb0dhbGxlcnlfX3RpdGxlIHNwYW4ge1xuICBjb2xvcjogI0U0MkExRDsgfVxuXG4uby1oZXJvR2FsbGVyeV9faW1hZ2VzIHtcbiAgbWFyZ2luLXRvcDogMjFweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb0dhbGxlcnlfX2ltYWdlcyB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9IH1cblxuLm8taGVyb0dhbGxlcnlfX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5vLWhlcm9HYWxsZXJ5X19pbWFnZTpudGgtY2hpbGQoMSkge1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm8taGVyb0dhbGxlcnlfX2ltYWdlOm50aC1jaGlsZCgyKSB7XG4gICAgei1pbmRleDogMjtcbiAgICBtYXJnaW4tdG9wOiAtMyU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgICAuby1oZXJvR2FsbGVyeV9faW1hZ2U6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEzJTsgfSB9XG4gIC5vLWhlcm9HYWxsZXJ5X19pbWFnZTpudGgtY2hpbGQoMykge1xuICAgIHotaW5kZXg6IDM7XG4gICAgbWFyZ2luLXRvcDogLTMlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgICAgLm8taGVyb0dhbGxlcnlfX2ltYWdlOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xNiU7IH0gfVxuXG4uby1oZXJvR2FsbGVyeV9faW1hZ2UgLmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTsgfVxuXG4uby1oZXJvR2FsbGVyeV9faW1hZ2VzIC5hLWltZyB7XG4gIG1hcmdpbjogMDsgfVxuXG4uby1oZXJvR2FsbGVyeV9faW1hZ2VzIC5hLWltZyBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5vLWhlcm9HYWxsZXJ5X19pbWFnZS0tcmlnaHQgLmEtaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDAgLTIwcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLm8taGVyb0dhbGxlcnlfX2ltYWdlLS1yaWdodCAuYS1pbWcge1xuICAgICAgbWFyZ2luOiAwIDAgMCAtMzBweDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzMHB4KTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvR2FsbGVyeV9faW1hZ2UtLXJpZ2h0IC5hLWltZyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMTYwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQ1cHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8taGVyb0dhbGxlcnlfX2ltYWdlLS1yaWdodCAuYS1pbWcge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAuby1oZXJvR2FsbGVyeV9faW1hZ2UtLXJpZ2h0IC5hLWltZyB7XG4gICAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMzIwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDguNzVlbSkge1xuICAgIC5vLWhlcm9HYWxsZXJ5X19pbWFnZS0tcmlnaHQgLmEtaW1nIHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vLWhlcm9TaWRlYnlTaWRlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1oZXJvU2lkZWJ5U2lkZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzVweDsgfSB9XG5cbi5vLWhlcm9TaWRlYnlTaWRlX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uLXJldmVyc2Ugbm93cmFwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1oZXJvU2lkZWJ5U2lkZV9faW5uZXIge1xuICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi5vLWhlcm9TaWRlYnlTaWRlX19tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8taGVyb1NpZGVieVNpZGVfX3RpdGxlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgODBweCk7IH0gfVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fdGl0bGUgc3Ryb25nIHtcbiAgY29sb3I6ICNFNDJBMUQ7IH1cblxuLm8taGVyb1NpZGVieVNpZGVfX21lZGlhIC5hLWltZyxcbi5vLWhlcm9TaWRlYnlTaWRlX19tZWRpYSAuYS12aWRlb19fbGluayB7XG4gIG1hcmdpbjogMDsgfVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEtLXJpZ2h0IC5hLWltZyxcbi5vLWhlcm9TaWRlYnlTaWRlX19tZWRpYS0tcmlnaHQgLmEtdmlkZW8ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMjJweCAtMjBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEtLXJpZ2h0IC5hLWltZyxcbiAgICAuby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEtLXJpZ2h0IC5hLXZpZGVvIHtcbiAgICAgIG1hcmdpbjogMCAwIDIycHggLTMwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMzBweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8taGVyb1NpZGVieVNpZGVfX21lZGlhLS1yaWdodCAuYS1pbWcsXG4gICAgLm8taGVyb1NpZGVieVNpZGVfX21lZGlhLS1yaWdodCAuYS12aWRlbyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMTYwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQ1cHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8taGVyb1NpZGVieVNpZGVfX21lZGlhLS1yaWdodCAuYS1pbWcsXG4gICAgLm8taGVyb1NpZGVieVNpZGVfX21lZGlhLS1yaWdodCAuYS12aWRlbyB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgNjBweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5vLWhlcm9TaWRlYnlTaWRlX19tZWRpYS0tcmlnaHQgLmEtaW1nLFxuICAgIC5vLWhlcm9TaWRlYnlTaWRlX19tZWRpYS0tcmlnaHQgLmEtdmlkZW8ge1xuICAgICAgbWluLWhlaWdodDogY2FsYygoKDEwMHZ3IC0gKDMyMHB4KSkgKiAwLjY2KSAqIDAuNjI1KTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4Ljc1ZW0pIHtcbiAgICAuby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEtLXJpZ2h0IC5hLWltZyxcbiAgICAuby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEtLXJpZ2h0IC5hLXZpZGVvIHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgLm8taGVyb1RpdGxlRmlyc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYxLjE4NzVlbSkge1xuICAuby1oZXJvVGl0bGVGaXJzdCAuby1sYW5kaW5nX19jb3B5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGOyB9XG4gICAgLmRhcmsgLm8taGVyb1RpdGxlRmlyc3QgLm8tbGFuZGluZ19fY29weSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTkxOTE5OyB9XG4gICAgLmJvZHktLWhpZ2hsaWdodCAuby1oZXJvVGl0bGVGaXJzdCAuby1sYW5kaW5nX19jb3B5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFNDJBMUQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgLm8taGVyb1RpdGxlRmlyc3QgLm8tbGFuZGluZ19fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuby1oZXJvVGl0bGVGaXJzdCAuby1sYW5kaW5nX190aXRsZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYxLjE4NzVlbSkge1xuICAuby1oZXJvVGl0bGVGaXJzdCAuby1sYW5kaW5nX190aXRsZS13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAtMzVweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYxLjE4NzVlbSkge1xuICAuby1oZXJvVGl0bGVGaXJzdCAuby1sYW5kaW5nX19jb3B5OmZpcnN0LWNoaWxkICsgLm8tbGFuZGluZ19fbWVkaWEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uby1oZXJvVGl0bGVGaXJzdCAuby1sYW5kaW5nX19tZWRpYSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjEuMTg3NWVtKSB7XG4gIC5vLWhlcm9UaXRsZUZpcnN0IC5vLWxhbmRpbmdfX21lZGlhSW1hZ2VSaWdodCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5vLW11bHRpbWVkaWFHYWxsZXJ5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuby1tdWx0aW1lZGlhR2FsbGVyeSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tbXVsdGltZWRpYUdhbGxlcnkgLm0tbW9kdWxlSGVhZGVyX19pbnRybyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5vLW11bHRpbWVkaWFHYWxsZXJ5IC5mbGlja2l0eS12aWV3cG9ydCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5vLW11bHRpbWVkaWFHYWxsZXJ5X19pdGVtcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTsgfVxuXG4uby1tdWx0aW1lZGlhR2FsbGVyeV9faXRlbSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tbXVsdGltZWRpYUdhbGxlcnlfX2l0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgICAgLm8tbXVsdGltZWRpYUdhbGxlcnlfX2l0ZW0gPiAqIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDsgfVxuICAgICAgLm8tbXVsdGltZWRpYUdhbGxlcnlfX2l0ZW0gLmNvbHVtbnMge1xuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAuby1tdWx0aW1lZGlhR2FsbGVyeV9faXRlbTpudGgtY2hpbGQoMSkgLmNvbHVtbnMge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDBweDsgfSB9XG5cbi5vLW11bHRpbWVkaWFHYWxsZXJ5X19mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi10b3A6IDQxcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLW11bHRpbWVkaWFHYWxsZXJ5X19mb290ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMzhweDsgfSB9XG5cbi5vLW11bHRpbWVkaWFHYWxsZXJ5X19pdGVtcyAubS1wb3N0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uby1uYXZfX2NvbGxlZ2UtdGl0bGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4ubS1tb2R1bGVIZWFkZXIgKyAuby1saXN0aW5nRnVsbF9faW5uZXIge1xuICBtYXJnaW4tdG9wOiAyM3B4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAubS1tb2R1bGVIZWFkZXIgKyAuby1saXN0aW5nRnVsbF9faW5uZXIge1xuICAgICAgbWFyZ2luLXRvcDogNjNweDsgfSB9XG5cbi5vLWxpc3RpbmdGdWxsX19pbm5lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGN1YmljLWJlemllcigwLjUsIDAsIDAuNSwgMCk7IH1cblxuLm8tbGlzdGluZ0Z1bGxfX2Zvb3RlciB7XG4gIG1hcmdpbi10b3A6IDhweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tbGlzdGluZ0Z1bGxfX2Zvb3RlciB7XG4gICAgICBtYXJnaW4tdG9wOiAxOHB4OyB9IH1cblxuLm8tbGlzdGluZ0Z1bGxfX2Zvb3RlciAuYS1idG4ge1xuICBtYXJnaW4tdG9wOiA0MnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1saXN0aW5nRnVsbF9fZm9vdGVyIC5hLWJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiA1N3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1wcmltYXJ5Q29udGVudCAuYS12aWRlb19fbGluayB7XG4gICAgbWFyZ2luLXRvcDogNjBweDsgfSB9XG5cbi5tLWNvdXJzZXMgdWwgbGkgdWwgbGk6YmVmb3JlLFxuLm0tY29tcG9zZWRMaXN0X19kZXNjcmlwdGlvbiB1bCBsaSB1bCBsaTpiZWZvcmUsXG4ubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IHVsIGxpIHVsIGxpOmJlZm9yZSxcbi5tLWhlcm9IZWFkaW5nIHVsIGxpIHVsIGxpOmJlZm9yZSxcbi5tLXRleHRCbG9jay5vLXByaW1hcnlDb250ZW50IHVsIGxpIHVsIGxpOmJlZm9yZSxcbi5tLWNvdXJzZXMgb2wgbGkgdWwgbGk6YmVmb3JlLFxuLm0tY29tcG9zZWRMaXN0X19kZXNjcmlwdGlvbiBvbCBsaSB1bCBsaTpiZWZvcmUsXG4ubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IG9sIGxpIHVsIGxpOmJlZm9yZSxcbi5tLWhlcm9IZWFkaW5nIG9sIGxpIHVsIGxpOmJlZm9yZSxcbi5tLXRleHRCbG9jay5vLXByaW1hcnlDb250ZW50IG9sIGxpIHVsIGxpOmJlZm9yZSB7XG4gIGNvdW50ZXItaW5jcmVtZW50OiBub25lOyB9XG5cbi5vLXF1b3RlQ2Fyb3VzZWwgLm0tbW9kdWxlSGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzRweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tcXVvdGVDYXJvdXNlbCAubS1tb2R1bGVIZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDsgfSB9XG5cbi5vLXF1b3RlQ2Fyb3VzZWwgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uby1xdW90ZUNhcm91c2VsX19jdGEge1xuICBtYXJnaW4tdG9wOiAxMXB4O1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4uby1xdW90ZUNhcm91c2VsX19tYWluIHtcbiAgbWFyZ2luLXRvcDogMTFweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tcXVvdGVDYXJvdXNlbF9fbWFpbiB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cblxuLm8tcXVvdGVDYXJvdXNlbF9faXRlbXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXF1b3RlQ2Fyb3VzZWxfX2l0ZW1zIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuXG4uby1xdW90ZUNhcm91c2VsX19tYWluICsgLm8tcXVvdGVDYXJvdXNlbF9faXRlbXMge1xuICBtYXJnaW4tdG9wOiAxOHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1xdW90ZUNhcm91c2VsX19tYWluICsgLm8tcXVvdGVDYXJvdXNlbF9faXRlbXMge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG5cbi5vLXF1b3RlQ2Fyb3VzZWxfX2l0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDFweDsgfVxuXG4uby1xdW90ZUNhcm91c2VsIGJsb2NrcXVvdGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG4uby1xdW90ZUNhcm91c2VsIGJsb2NrcXVvdGUgcDpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgY29udGVudDogJ+KAnCc7IH1cblxuLm8tcXVvdGVDYXJvdXNlbCBibG9ja3F1b3RlIHA6bGFzdC1vZi10eXBlOjphZnRlciB7XG4gIGNvbnRlbnQ6ICfigJ0nOyB9XG5cbi5vLXF1b3RlQ2Fyb3VzZWwgY2l0ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMjVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tcXVvdGVDYXJvdXNlbCBjaXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IDI4cHg7IH0gfVxuXG4uby1xdW90ZUNhcm91c2VsIGNpdGUgLmEtaW1nIHtcbiAgd2lkdGg6IDM1cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tcXVvdGVDYXJvdXNlbCBjaXRlIC5hLWltZyB7XG4gICAgICB3aWR0aDogNTVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfSB9XG5cbi5vLXF1b3RlQ2Fyb3VzZWwgY2l0ZSBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4uby1xdW90ZUNhcm91c2VsIGNpdGUgLmEtaW1nICsgc3BhbiB7XG4gIG1hcmdpbi10b3A6IC01cHg7IH1cblxuLm8tcXVvdGVDYXJvdXNlbF9fbmF2IHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXF1b3RlQ2Fyb3VzZWxfX25hdiB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLm8tcXVvdGVDYXJvdXNlbF9fbmF2LWl0ZW0ge1xuICBtYXJnaW46IDAgMCAyMHB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXF1b3RlQ2Fyb3VzZWxfX25hdi1pdGVtIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1xdW90ZUNhcm91c2VsX19uYXYtLXByZXYge1xuICAgIGxlZnQ6IDYuNjY2NjclO1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gIC5vLXF1b3RlQ2Fyb3VzZWxfX25hdi0tcHJldiB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXF1b3RlQ2Fyb3VzZWxfX25hdi0tbmV4dCB7XG4gICAgcmlnaHQ6IDYuNjY2NjclO1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAuby1xdW90ZUNhcm91c2VsX19uYXYtLW5leHQge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDsgfSB9XG5cbmJvZHkge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uby1xdW90ZU1lZGlhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1xdW90ZU1lZGlhIHtcbiAgICAgIGhlaWdodDogMjAwdmg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXF1b3RlTWVkaWFfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMTcwcHg7XG4gICAgbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tcXVvdGVNZWRpYV9fbWFpbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNzVweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzIGxpbmVhcjsgfSB9XG5cbi5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBjaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBjaXRlIHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBtYXJnaW4tdG9wOiAyOHB4OyB9IH1cbiAgLm8tcXVvdGVNZWRpYV9fbWFpbiBibG9ja3F1b3RlIGNpdGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAxNCc7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cblxuLm8tcXVvdGVNZWRpYV9fbWFpbiBibG9ja3F1b3RlIHA6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICfigJwnOyB9XG5cbi5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIge1xuICBjb250ZW50OiAn4oCdJzsgfVxuXG4uby1xdW90ZU1lZGlhX19tZWRpYSB7XG4gIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXF1b3RlTWVkaWFfX21lZGlhIHtcbiAgICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgICBvcGFjaXR5OiAwLjI1OyB9IH1cblxuLm8tcXVvdGVNZWRpYV9fbWVkaWEgLmEtaW1nIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vLXF1b3RlTWVkaWFfX21lZGlhIC5hLWltZ19faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5vLXF1b3RlUG9ydHJhaXQge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tcXVvdGVQb3J0cmFpdCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1xdW90ZVBvcnRyYWl0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8tcXVvdGVQb3J0cmFpdCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC00MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjYyNWVtKSB7XG4gICAgLm8tcXVvdGVQb3J0cmFpdCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm8tcXVvdGVQb3J0cmFpdF9faW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9IH1cblxuLm8tcXVvdGVQb3J0cmFpdF9faW1hZ2VzIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMzBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuby1xdW90ZVBvcnRyYWl0X19pbWFnZXMge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlcyB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuby1xdW90ZVBvcnRyYWl0X19pbWFnZXMtaW5uZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlcy1pbm5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuby1xdW90ZVBvcnRyYWl0X19pbWFnZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYmFja2dyb3VuZDogIzE5MTkxOTsgfSB9XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlLFxuLm8tcXVvdGVQb3J0cmFpdF9faW1hZ2UgaW1nIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuby1xdW90ZVBvcnRyYWl0X19pbWFnZTpmaXJzdC1jaGlsZCB7XG4gICAgei1pbmRleDogMjsgfSB9XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1xdW90ZVBvcnRyYWl0X19pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRvcDogMzBweDtcbiAgICAgIGxlZnQ6IDMwcHg7IH1cbiAgICAgIC5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMC4yOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgdG9wOiA0MHB4O1xuICAgICAgbGVmdDogNDBweDsgfSB9XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vLXF1b3RlUG9ydHJhaXQtLWhvdmVyIGltZyB7XG4gICAgb3BhY2l0eTogMC4yOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuby1xdW90ZVBvcnRyYWl0X19pbWFnZTpob3ZlciwgLm8tcXVvdGVQb3J0cmFpdF9faW1hZ2U6YWN0aXZlIHtcbiAgICB6LWluZGV4OiA1OyB9XG4gICAgLm8tcXVvdGVQb3J0cmFpdF9faW1hZ2U6aG92ZXIgaW1nLCAuby1xdW90ZVBvcnRyYWl0X19pbWFnZTphY3RpdmUgaW1nIHtcbiAgICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4uby1xdW90ZVBvcnRyYWl0X19tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1xdW90ZVBvcnRyYWl0X19tYWluIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0OHB4OyB9IH1cblxuLm8tcXVvdGVQb3J0cmFpdF9fbWFpbiBibG9ja3F1b3RlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAwOyB9XG5cbi5vLXF1b3RlUG9ydHJhaXRfX21haW4gYmxvY2txdW90ZSBwOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBjb250ZW50OiAn4oCcJzsgfVxuXG4uby1xdW90ZVBvcnRyYWl0X19tYWluIGJsb2NrcXVvdGUgcDpsYXN0LW9mLXR5cGU6OmFmdGVyIHtcbiAgY29udGVudDogJ+KAnSc7IH1cblxuLm8tcXVvdGVQb3J0cmFpdF9fbWFpbiBibG9ja3F1b3RlIGNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTRweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tcXVvdGVQb3J0cmFpdF9fbWFpbiBibG9ja3F1b3RlIGNpdGUge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2N0YSB7XG4gIG1hcmdpbi10b3A6IDIzcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXF1b3RlUG9ydHJhaXRfX2N0YSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDNweDsgfSB9XG5cbi5vLXNlY3Rpb25JbmZvIC5tLW1vZHVsZUhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvIC5tLW1vZHVsZUhlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9IH1cblxuLm8tc2VjdGlvbkluZm8gLm0tbW9kdWxlSGVhZGVyX19pbnRybyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvIC5tLW1vZHVsZUhlYWRlcl9faW50cm8ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLm8tc2VjdGlvbkluZm9fX2hlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luOiAtNjBweCAwIDAgLTIwcHg7XG4gIHBhZGRpbmc6IDI1cHggMjBweCAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mb19faGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDMzcHggMjBweCA0NHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX19oZWFkZXIge1xuICAgICAgbWFyZ2luOiAtNjBweCAwIDAgLTMwcHg7XG4gICAgICBwYWRkaW5nOiAyN3B4IDMwcHggNDhweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mb19faGVhZGVyIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lOyB9IH1cblxuLm8tc2VjdGlvbkluZm9fX3RpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgY29sb3I6ICNFNDJBMUQ7XG4gIG9wYWNpdHk6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mb19fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTIycHg7IH0gfVxuICAud2YtbmV1ZWRpc3BsYXlyYW5kb20tbjctYWN0aXZlIC5vLXNlY3Rpb25JbmZvX190aXRsZSB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uby1zZWN0aW9uSW5mb19fbWVkaWFJbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAyMnB4IC0yMHB4O1xuICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgLTYwcHg7XG4gICAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMTYwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMDYyNWVtKSB7XG4gICAgLm8tc2VjdGlvbkluZm9fX21lZGlhSW1hZ2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDIwcHggKyAoKDEwMHZ3IC0gMTIwMHB4KSAvIDIpKSAqIC0xKTtcbiAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoKCgxMDB2dyAtICgxNjBweCkpICogMC42NikgKiAwLjYyNSk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCArICgoMTAwdncgLSAxMjAwcHgpIC8gMikpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mb19fbWVkaWFJbWFnZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoKCgxMDB2dyAtICgzMjBweCkpICogMC42NikgKiAwLjYyNSk7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwOC43NWVtKSB7XG4gICAgLm8tc2VjdGlvbkluZm9fX21lZGlhSW1hZ2Uge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogYXV0bzsgfSB9XG5cbi5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlUmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMCAtMjBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mb19fbWVkaWFJbWFnZVJpZ2h0IHtcbiAgICAgIG1hcmdpbjogMCAwIDAgLTMwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMzBweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tc2VjdGlvbkluZm9fX21lZGlhSW1hZ2VSaWdodCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMTYwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQ1cHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8tc2VjdGlvbkluZm9fX21lZGlhSW1hZ2VSaWdodCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgNjBweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlUmlnaHQge1xuICAgICAgbWluLWhlaWdodDogY2FsYygoKDEwMHZ3IC0gKDMyMHB4KSkgKiAwLjY2KSAqIDAuNjI1KTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4Ljc1ZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mb19fbWVkaWFJbWFnZVJpZ2h0IHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH0gfVxuXG4uby1zZWN0aW9uSW5mb19fbWVkaWFJbWFnZVJpZ2h0LS1hYnNvbHV0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlUmlnaHQtLWFic29sdXRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLWluLW91dCAxODBtcztcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxNXB4KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlUmlnaHQtLWFic29sdXRlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjA2MjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlUmlnaHQtLWFic29sdXRlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4ICsgKCgxMDB2dyAtIDEyMDBweCkgLyAyKSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC42MjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlUmlnaHQtLWFic29sdXRlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTsgfSB9XG4gIC5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlUmlnaHQtLWFic29sdXRlLmlzLWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uby1zZWN0aW9uSW5mb19fY3RhIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMzhweCAwIDQ2cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXNlY3Rpb25JbmZvX19jdGEge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDE5cHggMDsgfSB9XG5cbi5vLXNlY3Rpb25JbmZvX19jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mb19fY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLm8tc2VjdGlvbkluZm8gLm0tY29sbGVnZUxpc3Qge1xuICBtYXJnaW46IDQ1cHggMCAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mbyAubS1jb2xsZWdlTGlzdCB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAzNnB4OyB9IH1cblxuLm8tc2VjdGlvbkluZm8gLm0tY29sbGVnZUxpc3Q6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAzOHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mbyAubS1jb2xsZWdlTGlzdDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMDJweDsgfSB9XG5cbi5vLXNlY3Rpb25JbmZvIC5tLWNvbGxlZ2VMaXN0X19pdGVtcyB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDEzcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDlEOUQ5OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1zZWN0aW9uSW5mbyAubS1jb2xsZWdlTGlzdF9faXRlbXMge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAwOyB9IH1cblxuLm8tc2VjdGlvbkluZm8gLmEtdmlkZW9fX2xpbmsge1xuICBtYXJnaW46IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1zZWN0aW9uSW5mby0tYWx0IC5tLW1vZHVsZUhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTUwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXNlY3Rpb25JbmZvLS1hbHQgLm8tc2VjdGlvbkluZm9fX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tc2VjdGlvbkluZm8tLWFsdCAuby1zZWN0aW9uSW5mb19fbWFpbixcbiAgLm8tc2VjdGlvbkluZm8tLWFsdCAuby1zZWN0aW9uSW5mb19fYXNpZGUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uby1zZWN0aW9uSW5mby0tYWx0IC5vLXNlY3Rpb25JbmZvX19tYWluIHtcbiAgbWFyZ2luLXRvcDogLTdweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tc2VjdGlvbkluZm8tLWFsdCAuby1zZWN0aW9uSW5mb19fbWFpbiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDI0cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXNlY3Rpb25JbmZvLS1hbHQgLm8tc2VjdGlvbkluZm9fX2FzaWRlIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1zZWN0aW9uSW5mby0tYWx0IC5vLXNlY3Rpb25JbmZvX19zdGlja3kge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiA5NXB4O1xuICAgIG1hcmdpbi10b3A6IC04MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1zZWN0aW9uSW5mby0tYWx0IC5vLXNlY3Rpb25JbmZvX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm8tc2VjdGlvbkluZm8tLWFsdCAubS1jb2xsZWdlTGlzdDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1zZWN0aW9uSW5mby0tYWx0IC5pcy1hY3RpdmUgLm0tY29sbGVnZUxpc3RfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAgYm90dG9tOiAtNTVweDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tc2VjdGlvbkluZm8tLWFsdCAuaXMtYWN0aXZlIC5tLWNvbGxlZ2VMaXN0X19jb250ZW50IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMTAwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4uby1zZWN0aW9uSW5mby0tYWx0IC5tLWNvbGxlZ2VMaXN0X19jb250ZW50IHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5vLXNodWZmbGVyIC5tLW1vZHVsZUhlYWRlcl9faW50cm8ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5vLXNodWZmbGVyX19pdGVtcyAuY2Fyb3VzZWwge1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXNodWZmbGVyX19pdGVtcyAuY2Fyb3VzZWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uby1zaHVmZmxlciAuZmxpY2tpdHktdmlld3BvcnQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tc2h1ZmZsZXIgLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuXG4uby1zaHVmZmxlciAuY2Fyb3VzZWwtY2VsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgLTMwcHg7XG4gIHBhZGRpbmc6IDAgNDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tc2h1ZmZsZXIgLmNhcm91c2VsLWNlbGwge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uby1zaHVmZmxlciAuY2Fyb3VzZWwtY2VsbCBpbWcge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uby1zaHVmZmxlcl9fY2Fyb3VzZWwtaW1hZ2Uge1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDAuNDU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gIC5pcy1zZWxlY3RlZCAuby1zaHVmZmxlcl9fY2Fyb3VzZWwtaW1hZ2Uge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXNodWZmbGVyX19jYXJvdXNlbC1pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm8tc2h1ZmZsZXJfX2dyb3VwIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuby1zaHVmZmxlcl9fZ3JvdXAuby1zaHVmZmxlcl9fZ3JvdXAtLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLm8tc2h1ZmZsZXJfX2ltYWdlcyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXNodWZmbGVyX19pbWFnZXMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uby1zaHVmZmxlcl9faW1hZ2VzLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDU3NXB4OyB9XG5cbi5vLXNodWZmbGVyX19pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG4gIC5vLXNodWZmbGVyX19pbWFnZTpudGgtY2hpbGQoMSkge1xuICAgIGJvdHRvbTogMTQuNzgyNjElO1xuICAgIGxlZnQ6IDQ3LjAyMzgxJTtcbiAgICB6LWluZGV4OiA2OyB9XG4gIC5vLXNodWZmbGVyX19pbWFnZTpudGgtY2hpbGQoMikge1xuICAgIHRvcDogMTkuMTMwNDMlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTtcbiAgICB6LWluZGV4OiA1OyB9XG4gIC5vLXNodWZmbGVyX19pbWFnZTpudGgtY2hpbGQoMykge1xuICAgIGJvdHRvbTogMi42MDg3JTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDQ7IH1cbiAgLm8tc2h1ZmZsZXJfX2ltYWdlOm50aC1jaGlsZCg0KSB7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDM7IH1cbiAgLm8tc2h1ZmZsZXJfX2ltYWdlOm50aC1jaGlsZCg1KSB7XG4gICAgdG9wOiA1LjIxNzM5JTtcbiAgICBsZWZ0OiA5LjQwNDc2JTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5vLXNodWZmbGVyX19pbWFnZTpudGgtY2hpbGQoNikge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1NS45NTIzOCU7XG4gICAgei1pbmRleDogMTsgfVxuICAuby1zaHVmZmxlcl9faW1hZ2U6aG92ZXIge1xuICAgIHotaW5kZXg6IDExOyB9XG4gIC5vLXNodWZmbGVyX19pbWFnZSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gIC5vLXNodWZmbGVyX19pbWFnZTpob3ZlciBpbWcge1xuICAgIG9wYWNpdHk6IDAuNzU7IH1cbiAgLm8tc2h1ZmZsZXJfX2ltYWdlLm8tc2h1ZmZsZXJfX2ltYWdlLS1hY3RpdmUge1xuICAgIHotaW5kZXg6IDEwOyB9XG4gIC5vLXNodWZmbGVyX19pbWFnZS5vLXNodWZmbGVyX19pbWFnZS0tYWN0aXZlIGltZyB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uby1zaHVmZmxlcl9fZGF0YSB7XG4gIG1hcmdpbjogMTlweCAwIDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gIC5pcy1zZWxlY3RlZCAuby1zaHVmZmxlcl9fZGF0YSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXNodWZmbGVyX19kYXRhIHtcbiAgICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgICBvcGFjaXR5OiAxOyB9IH1cblxuLm8tc2h1ZmZsZXJfX2RhdGEgZHQge1xuICBtYXJnaW4tdG9wOiAyMnB4O1xuICBjb2xvcjogI0U0MkExRDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tc2h1ZmZsZXJfX2RhdGEgZHQge1xuICAgICAgbWFyZ2luLXRvcDogMzFweDsgfSB9XG4gIC5vLXNodWZmbGVyX19kYXRhIGR0OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5vLXNodWZmbGVyX19kYXRhIGRkIHtcbiAgbWFyZ2luLXRvcDogMTNweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tc2h1ZmZsZXJfX2RhdGEgZGQge1xuICAgICAgbWFyZ2luLXRvcDogOXB4OyB9IH1cblxuLm8tc2h1ZmZsZXJfX2RhdGEgLm8tc2h1ZmZsZXJfX2RhdGEtLWxhcmdlIHtcbiAgbWFyZ2luLXRvcDogMTFweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tc2h1ZmZsZXJfX2RhdGEgLm8tc2h1ZmZsZXJfX2RhdGEtLWxhcmdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDZweDsgfSB9XG5cbi5vLXNodWZmbGVyX19kYXRhIC5vLXNodWZmbGVyX19kYXRhLS1sYXJnZSArIGR0IHtcbiAgbWFyZ2luLXRvcDogMTlweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tc2h1ZmZsZXJfX2RhdGEgLm8tc2h1ZmZsZXJfX2RhdGEtLWxhcmdlICsgZHQge1xuICAgICAgbWFyZ2luLXRvcDogMjlweDsgfSB9XG5cbi5vLXNodWZmbGVyX19mb290ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1zaHVmZmxlcl9fZm9vdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG5cbi5vLXNodWZmbGVyX19uYXYge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uby1zaHVmZmxlcl9fbmF2IC5pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uby1zaHVmZmxlcl9fbmF2IHNwYW4ge1xuICBtYXJnaW4tbGVmdDogNXB4OyB9XG5cbi5vLXNodWZmbGVyX19uYXYtLW5leHQge1xuICBtYXJnaW4tbGVmdDogNXB4OyB9XG5cbi5vLXNodWZmbGVyX19uYXYtLXNodWZmbGUge1xuICBtYXJnaW4tbGVmdDogNDBweDsgfVxuXG4ubS1mZWF0dXJlUGFuZWwgKyAuby1zaHVmZmxlciB7XG4gIG1hcmdpbi10b3A6IDVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm0tZmVhdHVyZVBhbmVsICsgLm8tc2h1ZmZsZXIge1xuICAgICAgbWFyZ2luLXRvcDogNjVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAubS1mZWF0dXJlUGFuZWwgKyAuby1zaHVmZmxlciB7XG4gICAgICBtYXJnaW4tdG9wOiAzNXB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby1zaWRlYmFyID4gOmZpcnN0LWNoaWxkLFxuICAuby1zaWRlYmFyLS10b3AtbW9iaWxlID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4OyB9IH1cblxuLm8tc29jaWFsRmVlZCAubS1tb2R1bGVIZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1zb2NpYWxGZWVkIC5tLW1vZHVsZUhlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9IH1cblxuLm8tc29jaWFsRmVlZCArIC5tLWN0YSB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLnBhZ2VDbGFzcy0tbGFuZyAuby1zb2NpYWxGZWVkX190aXRsZSB7XG4gIGNvbG9yOiAjRTQyQTFEOyB9XG5cbi5vLXN0YXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiA0NXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q5RDlEOTsgfVxuICAuby1zdGF0czo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEOUQ5RDk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXN0YXRzIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAgIC5vLXN0YXRzOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm8tc3RhdHMgLm0tc3RhdHNMaXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAubS1zdGF0c0xpc3RfX292ZXJzaXplZCB7XG4gICAgZm9udC1zaXplOiA2Ljl2dztcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgLm0tc3RhdHNMaXN0X19vdmVyc2l6ZWQge1xuICAgIGZvbnQtc2l6ZTogMTEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEyMHB4OyB9IH1cblxuLm8tc3R1ZHlBcmVhc19faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLm8tc3R1ZHlBcmVhc19fZm9vdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogNTtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tc3R1ZHlBcmVhc19fZm9vdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXN0dWR5QXJlYXNfX2Zvb3RlciB7XG4gICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5vLXN0dWR5QXJlYXNfX2Zvb3RlciB7XG4gICAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC00MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjYyNWVtKSB7XG4gICAgLm8tc3R1ZHlBcmVhc19fZm9vdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9IH1cblxuLm8tc3R1ZHlBcmVhc19fZm9vdGVyIGEge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAyMXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1zdHVkeUFyZWFzX19mb290ZXIgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby1zdHVkeUFyZWFzX19mb290ZXIgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5vLXN0dWR5QXJlYXNfX2Zvb3RlciBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTQwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAuby1zdHVkeUFyZWFzX19mb290ZXIgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgfSB9XG4gIC5vLXN0dWR5QXJlYXNfX2Zvb3RlciBhOmhvdmVyLCAuby1zdHVkeUFyZWFzX19mb290ZXIgYTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFNDJBMUQ7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLm8tc3R1ZHlBcmVhc19fZm9vdGVyIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IC05OTk5cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC05OTk5cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDk5OTlweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDk5OTlweDsgfSB9XG5cbi5vLXN0dWR5QXJlYXMgLm0tbW9kdWxlSGVhZGVyX19pbnRybyB7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7IH1cblxuLm8tc3R1ZHlBcmVhcyAubS1jb250ZW50TGlzdCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5vLXN0dWR5QXJlYXMgLm0tY29udGVudExpc3QgLmFpcy1pbmZpbml0ZS1oaXRzIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5vLXN0dWR5QXJlYXMgLm0tY29udGVudExpc3QgLm0tY29udGVudEZpbHRlcnMgKyAuby1zdHVkeUFyZWFzX19pdGVtcyAuYWlzLWluZmluaXRlLWhpdHMge1xuICAgIG1hcmdpbi10b3A6IDExcHg7IH1cblxuLm8tc3R1ZHlBcmVhczpub3QoLm8tc3R1ZHlBcmVhcy0tYWx0KSAubS1jb250ZW50TGlzdCAuYWlzLWluZmluaXRlLWhpdHMtLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tc3R1ZHlBcmVhc19fbW9yZS1oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9IH1cblxuLm8tc3R1ZHlBcmVhc19fbW9yZS10aXRsZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4uby1zdHVkeUFyZWFzX19tb3JlLW1haW4ge1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tc3R1ZHlBcmVhc19fbW9yZS1tYWluIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDc1cHg7IH0gfVxuXG4uby1zdHVkeUFyZWFzX19tb3JlIHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5vLXN0dWR5QXJlYXNfX21vcmUtY3RhIHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uby1zdHVkeUFyZWFzLS1hbHQgLm8tc3R1ZHlBcmVhc19fZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMzVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tc3R1ZHlBcmVhcy0tYWx0IC5vLXN0dWR5QXJlYXNfX2Zvb3RlciB7XG4gICAgICBtYXJnaW4tdG9wOiAxMDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAuby1zdHVkeUFyZWFzLS1hbHQgLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtLmlzLWFjdGl2ZTo6YmVmb3JlLCAuby1zdHVkeUFyZWFzLS1hbHQgLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtLmlzLWFjdGl2ZTo6YWZ0ZXIge1xuICAgIGJvdHRvbTogLTExNXB4OyB9IH1cblxuLm8tdGV4dExvbmdGb3JtX19jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogMzNweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXRleHRMb25nRm9ybV9fY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiA2NHB4OyB9IH1cblxuLm8tdGV4dExvbmdGb3JtX19jb250ZW50IC5hLWltZyB7XG4gIG1hcmdpbjogMDsgfVxuXG4uby10ZXh0TG9uZ0Zvcm1fX2NvbnRlbnQgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uby10ZXh0TG9uZ0Zvcm1fX2NvbnRlbnQgLmEtaW1nICsgcCB7XG4gIG1hcmdpbi10b3A6IDMycHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXRleHRMb25nRm9ybV9fY29udGVudCAuYS1pbWcgKyBwIHtcbiAgICAgIG1hcmdpbi10b3A6IDY2cHg7IH0gfVxuXG4uby10ZXh0TG9uZ0Zvcm1fX3RyaWdnZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIGNvbG9yOiAjRTQyQTFEO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm8tdGV4dExvbmdGb3JtX190cmlnZ2VyIHN2ZyB7XG4gIHdpZHRoOiAxMXB4O1xuICBoZWlnaHQ6IDdweDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAwKTsgfVxuICAuby10ZXh0TG9uZ0Zvcm0tLW9wZW4gLm8tdGV4dExvbmdGb3JtX190cmlnZ2VyIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG4uby10aHJlZS1jb2wge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuby10aHJlZS1jb2wgLm0tbW9kdWxlSGVhZGVyX19pbnRybyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tdGhyZWUtY29sX19pdGVtcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gICAgLm8tdGhyZWUtY29sX19pdGVtczo6YmVmb3JlLCAuby10aHJlZS1jb2xfX2l0ZW1zOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm8tdGhyZWUtY29sX19pdGVtIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogNDBweDsgfVxuICAuby10aHJlZS1jb2xfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLm8tdGhyZWUtY29sX19pdGVtOmxhc3QtY2hpbGQgLmEtYWNjb3JkaW9uQ2FyZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOUQ5RDk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXRocmVlLWNvbF9faXRlbSB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEOUQ5RDk7IH1cbiAgICAgIC5vLXRocmVlLWNvbF9faXRlbTpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICBib3JkZXItbGVmdDogMDsgfVxuICAgICAgLm8tdGhyZWUtY29sX19pdGVtOm50aC1jaGlsZCgtbiszKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5vLXRocmVlLWNvbF9faXRlbTpsYXN0LWNoaWxkIC5hLWFjY29yZGlvbkNhcmQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gICAgICAuZmxpY2tpdHktdmlld3BvcnQgLm8tdGhyZWUtY29sX19pdGVtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5vLXRocmVlLWNvbF9faXRlbSA+IC5tLXBvc3Qge1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEOUQ5RDk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXRocmVlLWNvbF9faXRlbSA+IC5tLXBvc3Qge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBib3JkZXItdG9wOiAwOyB9IH1cblxuLm8tdGhyZWUtY29sX19pdGVtczpmaXJzdC1jaGlsZCAuby10aHJlZS1jb2xfX2l0ZW06Zmlyc3QtY2hpbGQgPiAubS1wb3N0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIGJvcmRlci10b3A6IDA7IH1cblxuLm8tdGhyZWUtY29sX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby10aHJlZS1jb2xfX2Zvb3RlciB7XG4gICAgICBtYXJnaW4tdG9wOiAyM3B4OyB9IH1cblxuLm8tdGhyZWUtY29sX19mb290ZXItY3RhIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG5cbi5vLXRocmVlLWNvbF9fbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXRocmVlLWNvbF9fbmF2LnNob3cge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uby10aHJlZS1jb2xfX25hdi1pdGVtIHtcbiAgbWFyZ2luOiAwIDAgMjBweDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI0E3QTlBQztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdXRsaW5lOiBub25lOyB9XG4gIC5vLXRocmVlLWNvbF9fbmF2LWl0ZW06aG92ZXIge1xuICAgIGNvbG9yOiAjRTQyQTFEOyB9XG5cbi5vLXRocmVlLWNvbF9fbmF2LWl0ZW0gLmljb24ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5vLXRocmVlLWNvbF9fbmF2LS1uZXh0IHtcbiAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5zLW1vZHVsZS1ia2dkLS1kYXJrIC5vLXRocmVlLWNvbF9faXRlbSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzMzMzMzOyB9IH1cblxuLm8tdGhyZWUtY29sLS1jYXJvdXNlbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tdGhyZWUtY29sLS1jYXJvdXNlbCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby10aHJlZS1jb2wtLWNhcm91c2VsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tdGhyZWUtY29sLS1jYXJvdXNlbCAubS1tb2R1bGVIZWFkZXJfX2ludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAuby10aHJlZS1jb2wtLWNhcm91c2VsIC5vLXRocmVlLWNvbF9faXRlbXMge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLm8tdGhyZWUtY29sLS1jYXJvdXNlbCAuZmxpY2tpdHktdmlld3BvcnQge1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgICAuby10aHJlZS1jb2wtLWNhcm91c2VsIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAuby10aHJlZS1jb2wtLWNhcm91c2VsIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tdGhyZWUtY29sLS1jYXJvdXNlbCAuZmxpY2tpdHktc2xpZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYxLjE4NzVlbSkge1xuICAuby10aHJlZS1jb2wtLWNhcm91c2VsIC5mbGlja2l0eS12aWV3cG9ydCAuby10aHJlZS1jb2xfX2l0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXRocmVlLWNvbC0tY2Fyb3VzZWwgLmZsaWNraXR5LXZpZXdwb3J0IC5vLXRocmVlLWNvbF9faXRlbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5vLXRocmVlLWNvbC0tY2Fyb3VzZWwuby10aHJlZS1jb2wtLXNldC1oZWlnaHQgLm8tdGhyZWUtY29sX19pdGVtIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uby10aHJlZS1jb2wtLW5vLWRpdmlkZXIgLm8tdGhyZWUtY29sX19pdGVtIHtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLm8tdGhyZWUtY29sLS1uby1kaXZpZGVyIC5vLXRocmVlLWNvbF9faXRlbSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLm8tdGhyZWUtY29sLS1jYXJvdXNlbCAuZmxpY2tpdHktdmlld3BvcnQgLm0tcG9zdCxcbi5vLWhlcm9HYWxsZXJ5ICsgLm8tdGhyZWUtY29sIC5vLXRocmVlLWNvbF9faXRlbTpmaXJzdC1jaGlsZCA+IC5tLXBvc3Qge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgYm9yZGVyLXRvcDogMDsgfVxuXG4uby10d29UaGlyZHNfX2lubmVyIHtcbiAgbWFyZ2luLXRvcDogMzdweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm8tdHdvVGhpcmRzX19pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgbWFyZ2luLXRvcDogNDJweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgLm8tdHdvVGhpcmRzX19hc2lkZSxcbiAgLm8tdHdvVGhpcmRzX19tYWluIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLm8tdHdvVGhpcmRzX19hc2lkZSB7XG4gIG1hcmdpbi10b3A6IDQ1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAgIC5vLXR3b1RoaXJkc19fYXNpZGUge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5vLXR3b1RoaXJkc19fY3RhIHtcbiAgbWFyZ2luLXRvcDogMjhweDsgfVxuXG4ucy1oZWFkZXItZml4ZWQgLm8tdXRpbGl0eS1uYXZfX3RlcnRpYXJ5IC5tLW5hdkxpc3QtLXNlY29uZGFyeSAubS1uYXZMaXN0X19saW5rLS1wcmltYXJ5IHtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7IH1cblxuLm8tdXRpbGl0eS1uYXZfX3RlcnRpYXJ5IC5tLW5hdkxpc3QtLXNlY29uZGFyeSA+IDpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC03cHg7XG4gIGhlaWdodDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4NTg1ODsgfVxuXG5ib2R5IHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjUsIDAsIDAuNSwgMCksIGNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAwKTsgfVxuXG5ib2R5IC5ib2R5LS1oaWdobGlnaHQge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogI0U0MkExRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5ib2R5LS1oaWdobGlnaHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgYm9keSAuYm9keS0taGlnaGxpZ2h0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgYm9keSAuYm9keS0taGlnaGxpZ2h0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTQwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICBib2R5IC5ib2R5LS1oaWdobGlnaHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtNjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7IH0gfVxuXG4uZy1mb290ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLnBhZ2VDbGFzcy0tc3BlIC5vLXNlY3Rpb25JbmZvX190aXRsZSxcbi5wYWdlQ2xhc3MtLXNwZSAubS1sYW5kaW5nUGFuZWxfX3RpdGxlLFxuLnBhZ2VDbGFzcy0tc3BlIC5tLW1vZHVsZUhlYWRlcl9fdGl0bGUge1xuICBjb2xvcjogIzE5MTkxOTsgfVxuXG4ucGFnZUNsYXNzLS1zcGUuZGFyayAuby1zZWN0aW9uSW5mb19fdGl0bGUsXG4ucGFnZUNsYXNzLS1zcGUuZGFyayAubS1sYW5kaW5nUGFuZWxfX3RpdGxlLFxuLnBhZ2VDbGFzcy0tc3BlLmRhcmsgLm0tbW9kdWxlSGVhZGVyX190aXRsZSxcbi5wYWdlQ2xhc3MtLXNwZSAucy1tb2R1bGUtYmtnZC0tZGFyayAuby1zZWN0aW9uSW5mb19fdGl0bGUsXG4ucGFnZUNsYXNzLS1zcGUgLnMtbW9kdWxlLWJrZ2QtLWRhcmsgLm0tbGFuZGluZ1BhbmVsX190aXRsZSxcbi5wYWdlQ2xhc3MtLXNwZSAucy1tb2R1bGUtYmtnZC0tZGFyayAubS1tb2R1bGVIZWFkZXJfX3RpdGxlLFxuLnBhZ2VDbGFzcy0tc3BlIC5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgLm8tc2VjdGlvbkluZm9fX3RpdGxlLFxuLnBhZ2VDbGFzcy0tc3BlIC5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQgLm0tbGFuZGluZ1BhbmVsX190aXRsZSxcbi5wYWdlQ2xhc3MtLXNwZSAucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IC5tLW1vZHVsZUhlYWRlcl9fdGl0bGUge1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gIC5wYWdlQ2xhc3MtLXNwZSAuby1zZWN0aW9uSW5mb19faGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0M3B4OyB9IH1cblxuLnBhZ2VDbGFzcy0tc3BlIC5vLXNlY3Rpb25JbmZvX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBhZ2VDbGFzcy0tc3BlIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwtYWx0IC5tLWxhbmRpbmdQYW5lbC0tYWx0IC5tLWxhbmRpbmdQYW5lbF9faW1hZ2UsXG4ucGFnZUNsYXNzLS1zcGUgLm0tbGFuZGluZ1BhbmVsLS1hbHQubS1sYW5kaW5nUGFuZWwtLXNtYWxsIC5tLWxhbmRpbmdQYW5lbF9faW1hZ2Uge1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAucGFnZUNsYXNzLS1zcGUgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbC1hbHQgLm0tbGFuZGluZ1BhbmVsLS1hbHQgLm0tbGFuZGluZ1BhbmVsX19pbWFnZUxpbmsgcCxcbiAgLnBhZ2VDbGFzcy0tc3BlIC5tLWxhbmRpbmdQYW5lbC0tYWx0Lm0tbGFuZGluZ1BhbmVsLS1zbWFsbCAubS1sYW5kaW5nUGFuZWxfX2ltYWdlTGluayBwIHtcbiAgICBsZWZ0OiAyMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjEuMjVlbSkge1xuICAucGFnZUNsYXNzLS1zcGUgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbC1hbHQgLm0tbGFuZGluZ1BhbmVsLS1hbHQgLm0tbGFuZGluZ1BhbmVsX19pbWFnZUxpbms6OmFmdGVyLFxuICAucGFnZUNsYXNzLS1zcGUgLm0tbGFuZGluZ1BhbmVsLS1hbHQubS1sYW5kaW5nUGFuZWwtLXNtYWxsIC5tLWxhbmRpbmdQYW5lbF9faW1hZ2VMaW5rOjphZnRlciB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5wYWdlQ2xhc3MtLXNwZSAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX190aXRsZSxcbi5wYWdlQ2xhc3MtLXNwZSAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsLS1hbHQgLm0tbGFuZGluZ1BhbmVsX190aXRsZSB7XG4gIHRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjNweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAucGFnZUNsYXNzLS1zcGUgLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbF9fdGl0bGUsXG4gICAgLnBhZ2VDbGFzcy0tc3BlIC5tLWZlYXR1cmVQYW5lbCAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQycHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MS4xODc1ZW0pIHtcbiAgLnBhZ2VDbGFzcy0tc3BlIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwgLm0tbGFuZGluZ1BhbmVsX190aXRsZSxcbiAgLnBhZ2VDbGFzcy0tc3BlIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwgLm0tbGFuZGluZ1BhbmVsLS1hbHQgLm0tbGFuZGluZ1BhbmVsX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5zLW1vZHVsZS1zcGFjZXIge1xuICBtYXJnaW4tdG9wOiA3NXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAucy1tb2R1bGUtc3BhY2VyIHtcbiAgICAgIG1hcmdpbi10b3A6IDE0NXB4OyB9IH1cbiAgLnMtbW9kdWxlLXNwYWNlci5vLXRocmVlLWNvbCB7XG4gICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAgIC5zLW1vZHVsZS1zcGFjZXIuby10aHJlZS1jb2wge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMzVweDsgfSB9XG5cbi5zLW1vZHVsZS1ib3JkZXIge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgbWFyZ2luLXRvcDogNDVweDtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDlEOUQ5O1xuICB0cmFuc2l0aW9uOiBib3JkZXItdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAwKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnMtbW9kdWxlLWJvcmRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAucy1tb2R1bGUtYm9yZGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuNWVtKSB7XG4gICAgLnMtbW9kdWxlLWJvcmRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC00MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjYyNWVtKSB7XG4gICAgLnMtbW9kdWxlLWJvcmRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucy1tb2R1bGUtYm9yZGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDExMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDY1cHg7IH0gfVxuICAuZGFyayAucy1tb2R1bGUtYm9yZGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMzMzMzMzOyB9XG4gIC5ib2R5LS1oaWdobGlnaHQgLnMtbW9kdWxlLWJvcmRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjEuMTg3NWVtKSB7XG4gIC5zLW1vZHVsZS1ib3JkZXItLW1vYmlsZSB7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q5RDlEOTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAwKTsgfVxuICAgIC5kYXJrIC5zLW1vZHVsZS1ib3JkZXItLW1vYmlsZSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjMzMzMzMzOyB9XG4gICAgLmJvZHktLWhpZ2hsaWdodCAucy1tb2R1bGUtYm9yZGVyLS1tb2JpbGUge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnMtbW9kdWxlLWJvcmRlci0tbW9iaWxlIHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnMtbW9kdWxlLWJvcmRlci5tLWZlYXR1cmVQYW5lbCB7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnMtbW9kdWxlLWJvcmRlci5tLWZlYXR1cmVQYW5lbC0tc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG4ubS1mZWF0dXJlUGFuZWwgKyAucy1tb2R1bGUtYm9yZGVyIHtcbiAgbWFyZ2luLXRvcDogN3B4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubS1mZWF0dXJlUGFuZWwgKyAucy1tb2R1bGUtYm9yZGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDcycHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MS4yNWVtKSB7XG4gICAgLm0tZmVhdHVyZVBhbmVsICsgLnMtbW9kdWxlLWJvcmRlciB7XG4gICAgICBtYXJnaW4tdG9wOiAzNXB4OyB9IH1cblxuLm0tZmVhdHVyZVBhbmVsICsgLnMtbW9kdWxlLXNwYWNlciB7XG4gIG1hcmdpbi10b3A6IDM1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tLWZlYXR1cmVQYW5lbCArIC5zLW1vZHVsZS1zcGFjZXIge1xuICAgICAgbWFyZ2luLXRvcDogMTI1cHg7IH0gfVxuXG4ucy1tb2R1bGUtYm9yZGVyOmZpcnN0LWNoaWxkLFxuLm8taGVyb0dhbGxlcnkgKyAuby10aHJlZS1jb2wucy1tb2R1bGUtYm9yZGVyLFxuLm8tc3R1ZHlBcmVhcyArIC5zLW1vZHVsZS1ib3JkZXIsXG4uYm9keS0taGlnaGxpZ2h0ICsgLnMtbW9kdWxlLWJvcmRlcixcbi5zLW1vZHVsZS1ia2dkICsgLnMtbW9kdWxlLWJvcmRlciB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGJvcmRlci10b3A6IDA7IH1cblxuLnMtbW9kdWxlLWJrZ2Qge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgcGFkZGluZy10b3A6IDUxcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucy1tb2R1bGUtYmtnZCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxLjI1ZW0pIHtcbiAgICAucy1tb2R1bGUtYmtnZCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjVlbSkge1xuICAgIC5zLW1vZHVsZS1ia2dkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTQwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuNjI1ZW0pIHtcbiAgICAucy1tb2R1bGUtYmtnZCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucy1tb2R1bGUtYmtnZCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiA3NXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDExMHB4OyB9IH1cblxuLnMtbW9kdWxlLWJrZ2Qucy1tb2R1bGUtYmtnZC0tZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTE5MTk7XG4gIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5zLW1vZHVsZS1ia2dkLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNDJBMUQ7XG4gIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5zLW1vZHVsZS1ia2dkLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAubS1tb2R1bGVIZWFkZXJfX3RpdGxlIHtcbiAgY29sb3I6ICMxOTE5MTk7IH1cblxuLnMtbW9kdWxlLWJrZ2QgKyAucy1tb2R1bGUtYmtnZCxcbi5zLW1vZHVsZS1ia2dkICsgLm0tY3RhIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4ucy1zdGlja3ktYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucy1zdGlja3ktYm9keS0tYWJzLFxuLnMtc3RpY2t5LWJvZHktLWFjdGl2ZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDQ5cHg7IH1cblxuLnMtc3RpY2t5LWJvZHktLWFicyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ucy1zdGlja3ktYm9keS0tc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAxMjBweDtcbiAgYm90dG9tOiBhdXRvOyB9XG4iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi4zLjFcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIERlcGVuZGVuY2llc1xuQGltcG9ydCAnLi4vX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIFNldHRpbmdzXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIFNhc3MgdXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyBHbG9iYWwgdmFyaWFibGVzIGFuZCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZygkZmxleDogZmFsc2UpIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG5cbiAgQGlmICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcbiAgfVxufVxuIiwiaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmFiYnIsIGFkZHJlc3MsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHNhbXAsXG5zbWFsbCwgc3Ryb25nLCBzdWIsIHN1cCwgdmFyLFxuYiwgaSxcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGRpYWxvZywgZmlndXJlLCBmb290ZXIsIGhlYWRlcixcbmhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgb3V0bGluZTogMDtcbn1cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGlhbG9nLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubmF2LFxuc2VjdGlvbixcbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuaHRtbCB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgb3ZlcmZsb3c6IC1tb3otc2Nyb2xsYmFycy12ZXJ0aWNhbDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cbmJvZHkge1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuYmxvY2txdW90ZSxcbnEge1xuICBxdW90ZXM6IG5vbmU7XG59XG5cbnVsLFxub2wge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ibG9ja3F1b3RlOmJlZm9yZSxcbmJsb2NrcXVvdGU6YWZ0ZXIsXG5xOmJlZm9yZSxcbnE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgY29udGVudDogbm9uZTtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgdG91Y2gtYWN0aW9uOiBpbmhlcml0O1xufVxuXG4uc3ZnLXNwcml0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIGxlZnQ6IC0xcHg7XG4gIHRvcDogLTFweDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoO1xufVxuIiwiLy8gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gRm9udCBzZXR1cCBtaXhpbnNcbi8vXG4vLyBVc2UgdGhlIHNlcmlmL3NhbnMtc2VyaWYgbWl4aW5zIGRpcmVjdGx5IGluIHRoZSBTQ1NTIGRvIGFueSByZXNwb25zaXZlIG92ZXJ3cml0ZXNcbi8vIHdpdGggd2l0aGluIHRoZSBicmVha3BvaW50IG1peGluIGUuZy5cblxuLypcbi5ibG9jayB7XG4gIEBpbmNsdWRlIHNlcmlmKDE4LCAyNSwgNTAwLCBpdGFsaWMpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gIH1cbn1cbiovXG5cbkBtaXhpbiBmb250LXN0eWxlKCRmb250LXNpemU6MTcsICRsaW5lLWhlaWdodDozMCwgJHdlaWdodDo0MDAsICRzdHlsZTpub3JtYWwsICRsZXR0ZXItc3BhY2luZzowKSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZSAqIDFweDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodCAqIDFweDtcbiAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG4gIGZvbnQtc3R5bGU6ICRzdHlsZTtcbiAgbGV0dGVyLXNwYWNpbmc6ICRsZXR0ZXItc3BhY2luZztcbn1cblxuQG1peGluIHNhbnMtc2VyaWYoJGZvbnQtc2l6ZToxNywgJGxpbmUtaGVpZ2h0OjMwLCAkd2VpZ2h0Om5vcm1hbCwgJHN0eWxlOm5vcm1hbCwgJGxldHRlci1zcGFjaW5nOjApIHtcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXN0eWxlKCRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJHdlaWdodCwgJHN0eWxlLCAkbGV0dGVyLXNwYWNpbmcpO1xufVxuXG5AbWl4aW4gdGl0bGUoJGZvbnQtc2l6ZToxNywgJGxpbmUtaGVpZ2h0OjMwLCAkd2VpZ2h0Om5vcm1hbCwgJHN0eWxlOm5vcm1hbCwgJGxldHRlci1zcGFjaW5nOjApIHtcbiAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtby1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnIDE7XG4gIC1tcy1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAxO1xuICBAaW5jbHVkZSBmb250LXN0eWxlKCRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJHdlaWdodCwgJHN0eWxlLCAkbGV0dGVyLXNwYWNpbmcpO1xufVxuXG4vKlxuICBAbWl4aW4gZm9udF9zbW9vdGhpbmdcblxuICBTZXQgZm9udCBzbW9vdGhpbmcgT04gb3IgT0ZGXG4qL1xuQG1peGluIGZvbnQtc21vb3RoaW5nKCR2YWx1ZTogb24pIHtcbiAgQGlmICR2YWx1ZSA9PSBvbiB7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgfSBAZWxzZSB7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGF1dG87XG4gIH1cbn1cblxuXG4vKlxuICBAbWl4aW4gdGV4dC11bmRlcmxpbmVcblxuICBJbnNlcnRzIHZlbmRvciBwcmVmaXhlZCBib3ggc2hhZG93c1xuXG4gIFBhcmFtZXRlcnM6XG4gICRvZmYgLSBjb2xvclxuICAkb24gLSBjb2xvciBmb3IgaG92ZXJcbiAgJHBvcyAtIHZlcnRpY2FsIHBvc2l0aW9uXG4qL1xuQG1peGluIHRleHQtdW5kZXJsaW5lKCRwb3M6IDE0LCRvZmY6ICRjb2xvcl9fd2hpdGUsJG9uOiAkY29sb3JfX2hpZ2hsaWdodCkge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IHtcbiAgICBpbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgkb2ZmLCAwKSA1MCUsIHJnYmEoJG9mZiwgMSkgNTAlKTtcbiAgICByZXBlYXQ6IHJlcGVhdC14O1xuICAgIHNpemU6IDJweCAycHg7XG4gICAgcG9zaXRpb246IDAgJHBvcyoxcHg7XG4gIH1cbiAgLy8gdG8gZHJhdyB0aGUgbGluZXMgYmVsb3cgdGhlIHJlZ3VsYXIgaGVpZ2h0IG9mIHRoZSBib3guLi5cbiAgLy9wYWRkaW5nLWJvdHRvbTogM3B4O1xuICAvL21hcmdpbi1ib3R0b206IC0zcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgkb24sIDApIDUwJSwgcmdiYSgkb24sIDEpIDUwJSk7XG4gIH1cbn1cblxuXG4vKlxuICBAbWl4aW4gaGlkZV90ZXh0XG5cbiAgSGlkZXMgdGV4dCBpbiBhbiBlbGVtZW50XG4qL1xuXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAlO1xufVxuXG5cbi8qXG4gIEBtaXhpbiBhY3RpdmVcblxuICBDb21iaW5lcyBob3ZlciwgZm9jdXMgYW5kIGFjdGl2ZSBzdHlsZXNcbiovXG5AbWl4aW4gaG92ZXItZm9jdXMge1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLmljb24tLWZhY2Vib29rIHtcblx0aGVpZ2h0OiAxOHB4O1xuXHR3aWR0aDogMThweDtcbn1cblxuLmljb24tLXR3aXR0ZXIge1xuXHRoZWlnaHQ6IDE4cHg7XG5cdHdpZHRoOiAxOHB4O1xufVxuXG4uaWNvbi0teW91dHViZSB7XG5cdGhlaWdodDogMThweDtcblx0d2lkdGg6IDE4cHg7XG59XG5cbi5pY29uLS1pbnN0YWdyYW0ge1xuXHRoZWlnaHQ6IDE4cHg7XG5cdHdpZHRoOiAxOHB4O1xufVxuXG4uaWNvbi0tYXJyb3ctY2lyY2xlLWxlZnQsXG4uaWNvbi0tYXJyb3ctY2lyY2xlLXJpZ2h0LFxuLmljb24tLXNodWZmbGUtY2lyY2xlIHtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbn1cblxuLmljb24tLXBsdXMtYWx0IHtcbiAgd2lkdGg6IDEzcHg7XG4gIGhlaWdodDogMTNweDtcbn1cblxuLmljb24tLW1pbnVzIHtcbiAgd2lkdGg6IDEzcHg7XG4gIGhlaWdodDogM3B4O1xufVxuIiwiLmRlc2lnbi1ncmlkLXRvZ2dsZXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwO1xuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1cHg7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIGNvbG9yOiAjMDBhNDQ5O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtZW52KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxN3B4O1xuICB9XG59XG5cbi5kZXNpZ24tZ3JpZC10b2dnbGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDExcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcbn1cblxuLmRlc2lnbi1ncmlkLXRvZ2dsZS5qcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjAwO1xufVxuXG4uZGVzaWduLWdyaWQtdG9nZ2xlIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xufVxuXG4uZGVzaWduLWdyaWQtLWJhc2VsaW5lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5ODtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLDAsMCwwKSwgcmdiYSgwLDAsMCwwKSAjeyRiYXNlLWhlaWdodH1weCwgI2ZmMDAwMCAjeyRiYXNlLWhlaWdodH1weCwgI2ZmMDAwMCAjeyRiYXNlLWhlaWdodCArICRiYXNlLWhlaWdodH1weCk7XG4gIG9wYWNpdHk6IC4yNTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgJi5qcy1oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5kZXNpZ24tZ3JpZC0tY29sdW1ucyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTg7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDYwcHggMTBweCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogLjI1O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIHBhZGRpbmc6IDYwcHggMjBweCAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZzogMCA0MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZzogMCA2MHB4O1xuICB9XG5cbiAgJi5qcy1oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAucm93IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuY29sdW1ucyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZmZmZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gQGVhY2ggJG5hbWUsICRwb2ludCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gIC8vICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnI3skbmFtZX0nKSB7XG4gIC8vICAgICBAaWYgKG1hcC1nZXQoJG1haW4tY29sLXdpZHRocywgJG5hbWUpID09ICdmbHVpZCcpIHtcbiAgLy8gICAgICAgLy8gd2lkdGg6IGNhbGMoMTAwdncgLSAje21hcC1nZXQoJG91dGVyLWd1dHRlcnMsICRuYW1lKSAqIDJ9KTtcbiAgLy8gICAgICAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcbiAgLy8gICAgICAgICA5MGRlZyxcbiAgLy8gICAgICAgICAjN2ZmZmZmLFxuICAvLyAgICAgICAgICM3ZmZmZmYgY2FsYygoMTAwdncgLSAjeygobWFwLWdldCgkY29sdW1uLWNvdW50LCAkbmFtZSkgLSAxKSAqIG1hcC1nZXQoJGlubmVyLWd1dHRlcnMsICRuYW1lKSkgKyAoMiAqIG1hcC1nZXQoJG91dGVyLWd1dHRlcnMsICRuYW1lKSl9KSAvICN7bWFwLWdldCgkY29sdW1uLWNvdW50LCAkbmFtZSl9KSxcbiAgLy8gICAgICAgICByZ2JhKDAsMCwwLDApIGNhbGMoKDEwMHZ3IC0gI3soKG1hcC1nZXQoJGNvbHVtbi1jb3VudCwgJG5hbWUpIC0gMSkgKiBtYXAtZ2V0KCRpbm5lci1ndXR0ZXJzLCAkbmFtZSkpICsgKDIgKiBtYXAtZ2V0KCRvdXRlci1ndXR0ZXJzLCAkbmFtZSkpfSkgLyAje21hcC1nZXQoJGNvbHVtbi1jb3VudCwgJG5hbWUpfSksXG4gIC8vICAgICAgICAgcmdiYSgwLDAsMCwwKSBjYWxjKFxuICAvLyAgICAgICAgICAgKFxuICAvLyAgICAgICAgICAgICAoMTAwdncgLSAjeygobWFwLWdldCgkY29sdW1uLWNvdW50LCAkbmFtZSkgLSAxKSAqIG1hcC1nZXQoJGlubmVyLWd1dHRlcnMsICRuYW1lKSkgKyAoMiAqIG1hcC1nZXQoJG91dGVyLWd1dHRlcnMsICRuYW1lKSl9KSAvICN7bWFwLWdldCgkY29sdW1uLWNvdW50LCAkbmFtZSl9KVxuICAvLyAgICAgICAgICAgICArXG4gIC8vICAgICAgICAgICAgICN7bWFwLWdldCgkaW5uZXItZ3V0dGVycywgJG5hbWUpfVxuICAvLyAgICAgICAgICAgKVxuICAvLyAgICAgICApO1xuICAvLyAgICAgfSBAZWxzZSB7XG4gIC8vICAgICAgIC8vIHdpZHRoOiBtYXAtZ2V0KCRtYWluLWNvbC13aWR0aHMsICRuYW1lKSArIG1hcC1nZXQoJGlubmVyLWd1dHRlcnMsICRuYW1lKSArIG1hcC1nZXQoJGlubmVyLWd1dHRlcnMsICRuYW1lKTtcbiAgLy8gICAgICAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcbiAgLy8gICAgICAgICA5MGRlZyxcbiAgLy8gICAgICAgICByZ2JhKDAsMCwwLDApLFxuICAvLyAgICAgICAgIHJnYmEoMCwwLDAsMCkgbWFwLWdldCgkaW5uZXItZ3V0dGVycywgJG5hbWUpLFxuICAvLyAgICAgICAgICM3ZmZmZmYgbWFwLWdldCgkaW5uZXItZ3V0dGVycywgJG5hbWUpLFxuICAvLyAgICAgICAgICM3ZmZmZmYgY2FsYyhcbiAgLy8gICAgICAgICAgIChcbiAgLy8gICAgICAgICAgICAgKCN7bWFwLWdldCgkbWFpbi1jb2wtd2lkdGhzLCAkbmFtZSl9IC0gI3sobWFwLWdldCgkY29sdW1uLWNvdW50LCAkbmFtZSkgLSAxKSAqIG1hcC1nZXQoJGlubmVyLWd1dHRlcnMsICRuYW1lKX0pIC8gI3ttYXAtZ2V0KCRjb2x1bW4tY291bnQsICRuYW1lKX0pXG4gIC8vICAgICAgICAgICAgICtcbiAgLy8gICAgICAgICAgICAgI3ttYXAtZ2V0KCRpbm5lci1ndXR0ZXJzLCAkbmFtZSl9XG4gIC8vICAgICAgICAgICApXG4gIC8vICAgICAgICk7XG4gIC8vICAgICB9XG4gIC8vICAgfVxuICAvLyB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi5jdGEtLWRvdWJsZS1saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3JfX2hpZ2hsaWdodDtcbiAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMTVweDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKDAsIDAsIDApO1xuXG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICAgIGJvdHRvbTogLTZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gIH1cbn1cblxuLmJ0bi0tbGluayB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIG91dGxpbmU6IDA7XG59XG4iLCIvLyBNYWluIENvbG9yIExpc3QgLSB0cnkgbm90IHRvIHVzZVxuJGNvbG9yX19yZWQ6ICNFNDJBMUQ7XG4kY29sb3JfX3JlZC0tZGFyazogI0EyMjAxNztcbiRjb2xvcl9feWVsbG93OiAjRkZFMDAwO1xuJGNvbG9yX19ncmVlbjogIzE2OUI2MjtcblxuLy8gQ29sb3JzXG4kY29sb3JfX2JsYWNrOiAjMDAwMDAwO1xuJGNvbG9yX19ibGFjay0tOTg6ICMwNTA1MDU7XG4kY29sb3JfX2JsYWNrLS05MjogIzE0MTQxNDtcbiRjb2xvcl9fYmxhY2stLTkwOiAjMTkxOTE5O1xuJGNvbG9yX19ibGFjay0tODc6ICMyMTIxMjE7XG4kY29sb3JfX2JsYWNrLS04MDogIzMzMzMzMztcbiRjb2xvcl9fYmxhY2stLTczOiAjNDQ0NDQ0O1xuXG4kY29sb3JfX2dyZXktLTY1OiAjNTg1ODU4O1xuJGNvbG9yX19ncmV5LS01NTogI0E3QTlBQztcbiRjb2xvcl9fZ3JleS0tNDY6ICM3Njc2NzY7XG4kY29sb3JfX2dyZXktLTQzOiAjOGM4YzhjO1xuJGNvbG9yX19ncmV5LS00MDogI0E3QTlBQztcbiRjb2xvcl9fZ3JleS0tMzU6ICM4QzhDOEM7XG4kY29sb3JfX2dyZXktLTMwOiAjQjJCMkIyO1xuJGNvbG9yX19ncmV5LS0xNTogI0Q5RDlEOTtcbiRjb2xvcl9fZ3JleS0tMTM6ICNGMUYyRjI7XG4kY29sb3JfX2dyZXktLTEwOiAjRTVFNUU1O1xuJGNvbG9yX19ncmV5LS01OiAjRjJGMkYyO1xuJGNvbG9yX19ncmV5LS00OiAjRjVGNUY1O1xuXG4kY29sb3JfX3doaXRlOiAjRkZGRkZGO1xuXG4kY29sb3JfX2FsZXJ0LS1pbXBvcnRhbnQ6ICRjb2xvcl9fcmVkO1xuJGNvbG9yX19hbGVydC0taW5mb3JtYXRpb246ICRjb2xvcl9fZ3JlZW47XG4kY29sb3JfX2FsZXJ0LS1hbm5vdW5jZW1lbnQ6ICRjb2xvcl9feWVsbG93O1xuXG4vLyBHbG9iYWxcbiRjb2xvcl9fYmFja2dyb3VuZDogJGNvbG9yX193aGl0ZTtcbiRjb2xvcl9fYmFja2dyb3VuZC0tZGFyazogJGNvbG9yX19ibGFjay0tOTA7XG4kY29sb3JfX2JhY2tncm91bmQtLWxpZ2h0OiAkY29sb3JfX2dyZXktLTQ7XG4kY29sb3JfX3RleHQ6ICRjb2xvcl9fYmxhY2stLTkwO1xuJGNvbG9yX190ZXh0LS1kYXJrOiAkY29sb3JfX3doaXRlO1xuJGNvbG9yX190ZXh0LS1zdWJ0aXRsZTogJGNvbG9yX19ncmV5LS00MztcbiRjb2xvcl9fZXJyb3I6ICRjb2xvcl9fcmVkO1xuJGNvbG9yX19zZXBhcmF0b3I6ICRjb2xvcl9fZ3JleS0tMTU7XG4kY29sb3JfX3NlcGFyYXRvci0tZGFyazogJGNvbG9yX19ibGFjay0tODA7XG4kY29sb3JfX2hpZ2hsaWdodDogJGNvbG9yX19yZWQ7XG4kY29sb3JfX2hpZ2hsaWdodC0tZGFyazogJGNvbG9yX19yZWQtLWRhcms7XG4kY29sb3JfX3RleHQtaG92ZXI6ICRjb2xvcl9fZ3JleS0tNjU7XG5cbi8vIE5hdmlnYXRpb25cbiRjb2xvcl9fbmF2OiAkY29sb3JfX2JsYWNrLS05MDtcbiRjb2xvcl9fc2Vjb25kYXJ5TmF2OiAkY29sb3JfX2dyZXktLTQ2O1xuJGNvbG9yX19uYXZTcGxpdHRlcjogJGNvbG9yX19ncmV5LS0xNTtcbiRjb2xvcl9fbWVudTogJGNvbG9yX19ibGFjay0tODc7XG4kY29sb3JfX25hdlJlbGF0ZWQ6ICRjb2xvcl9fZ3JleS0tMzA7XG4kY29sb3JfX25hdkFkZGl0aW9uYWxMaW5rczogJGNvbG9yX19ncmV5LS0zMDtcbiRjb2xvcl9fbmF2LS1oaWdobGlnaHQ6ICRjb2xvcl9fcmVkO1xuJGNvbG9yX19uYXYtLWhvdmVyOiAkY29sb3JfX3JlZDtcbiRjb2xvcl9fbmF2LS1ob3Zlci1kYXJrOiAkY29sb3JfX3JlZC0tZGFyaztcbiRjb2xvcl9fdGVydGlhcnlOYXYtYmFja2dyb3VuZDogJGNvbG9yX19ibGFjay0tOTg7XG4kY29sb3JfX2Zvb3Rlck5hdi1iYWNrZ3JvdW5kOiAkY29sb3JfX2JsYWNrLS05ODtcbiRjb2xvcl9fdGVydGlhcnlOYXYtbGluazogJGNvbG9yX19ncmV5LS0zMDtcbiRjb2xvcl9fbW9iaWxlTWVudUJhY2tncm91bmQ6ICRjb2xvcl9fZ3JleS0tNTtcbiRjb2xvcl9fdXRpbE5hdlRlcnRpYXJ5OiAkY29sb3JfX2dyZXktLTQzO1xuJGNvbG9yX191dGlsTmF2QmFja2dyb3VuZDogJGNvbG9yX19ibGFjay0tOTI7XG4kY29sb3JfX3V0aWxOYXZTcGxpdHRlcjogJGNvbG9yX19ncmV5LS02NTtcbiRjb2xvcl9fdXRpbE5hdkljb246ICRjb2xvcl9fZ3JleS0tNTU7XG5cbi8vIFBhZ2UgTmF2XG4kY29sb3JfX3BhZ2VIZWFkZXJCYWNrZ29ydW5kLS1maWx0ZXJzOiAkY29sb3JfX2dyZXktLTEzO1xuJGNvbG9yX19wYWdlSGVhZGVySXRlbS0tZmlsdGVyczogJGNvbG9yX19ncmV5LS01NTtcblxuLy8gRm9vdGVyXG4kY29sb3JfX2Zvb3RlckJhY2tncm91bmQ6ICRjb2xvcl9fYmxhY2stLTk4O1xuJGNvbG9yX19mb290ZXJTb2NpYWxCYWNrZ3JvdW5kOiAkY29sb3JfX2JsYWNrLS04NztcbiRjb2xvcl9fZm9vdGVyR3JleTogJGNvbG9yX19ncmV5LS01NTtcbiRjb2xvcl9fZm9vdGVyU29jaWFsU2VwYXJhdG9yOiAkY29sb3JfX2JsYWNrLS04MDtcblxuLy8gQ1RBXG4kY29sb3JfX2N0YTogJGNvbG9yX193aGl0ZTtcbiRjb2xvcl9fY3RhLS1hbHQ6ICRjb2xvcl9fcmVkLS1kYXJrO1xuJGNvbG9yX19jdGFCYWNrZ3JvdW5kOiAkY29sb3JfX2dyZXktLTEzO1xuXG4vLyBGaWdjYXB0aW9uXG4kY29sb3JfX2ZpZ2NhcHRpb246ICRjb2xvcl9fZ3JleS0tNDY7XG5cbi8vIEJsb2NrIExpbmtcbiRjb2xvcl9fbWV0YTogJGNvbG9yX19ncmV5LS00NjtcblxuLy8gRHJhd2VyXG4kY29sb3JfX3RvZ2dsZUljb246ICRjb2xvcl9fZ3JleS0tMTU7XG4kY29sb3JfX3RvZ2dsZUljb25Ib3ZlcjogJGNvbG9yX19ncmV5LS02NTtcblxuLy8gQVpMaXN0XG4kY29sb3JfX2F6TGlzdFRpdGxlOiAkY29sb3JfX3RleHQ7XG4kY29sb3JfX2F6TGlzdEl0ZW06ICRjb2xvcl9fZ3JleS0tNDY7XG5cbi8vIFVwZGF0ZVxuJGNvbG9yX19uYXYtLXRlcnRpYXJ5OiAkY29sb3JfX2dyZXktLTMwO1xuXG4vLyBTaWRlYmFyIE1vZHVsZXNcbiRjb2xvcl9fYm9yZGVyVG9wOiAkY29sb3JfX2JsYWNrLS04MDtcbiRjb2xvcl9fc2lkZWJhclRleHQ6ICRjb2xvcl9fdGV4dDtcbiRjb2xvcl9fc2lkZWJhck5hdmlnYXRpb25CYWNrZ3JvdW5kOiAkY29sb3JfX2dyZXktLTU7XG4kY29sb3JfX3NpZGViYXJOYXZpZ2F0aW9uU2VwYXJhdG9yOiAkY29sb3JfX2dyZXktLTMwO1xuXG4vLyBCcmVhZGNydW1ic1xuJGNvbG9yX19icmVhZGNydW1ic0l0ZW06ICRjb2xvcl9fdGV4dDtcbiRjb2xvcl9fYnJlYWRjcnVtYnNMaW5rOiAkY29sb3JfX2dyZXktLTQ2O1xuXG4vLyBRdW90ZVxuJGNvbG9yX19xdW90ZVNlcGFyYXRvcjogJGNvbG9yX19ibGFjay0tOTA7XG5cbi8vIENvbnRlbnQgUGFuZWxzXG4kY29sb3JfX2NvbnRlbnRQYW5lbHNCYWNrZ3JvdW5kOiAkY29sb3JfX2dyZXktLTEwO1xuJGNvbG9yX19jb250ZW50UGFuZWxCYWNrZ3JvdW5kOiAkY29sb3JfX3doaXRlO1xuXG4vLyBUYWJsZVxuJGNvbG9yX190YWJsZUFsdGVybmF0ZUJhY2tncm91bmQ6ICRjb2xvcl9fZ3JleS0tNTtcbiRjb2xvcl9fdGFibGVGb290ZXI6ICRjb2xvcl9fZ3JleS0tNDY7XG5cbi8vIFZpZGVvIENhcm91c2VsXG4kY29sb3JfX3ZpZGVvQ2Fyb3VzZWxCYWNrZ3JvdW5kOiAkY29sb3JfX2JsYWNrLS04NztcbiRjb2xvcl9fdmlkZW9DYXJvdXNlbFNlcGFyYXRvcjogJGNvbG9yX19ibGFjay0tODA7XG5cbi8vIFNlYXJjaFxuJGNvbG9yX19zZWFyY2hQbGFjZWhvbGRlcjogJGNvbG9yX19ncmV5LS0xNTtcbiRjb2xvcl9fc2VhcmNoUmVzdWx0c1NlcGFyYXRvcjogJGNvbG9yX19ncmV5LS0xNTtcbiRjb2xvcl9fc2VhcmNoRmlsdGVyTGluazogJGNvbG9yX19ncmV5LS0zNTtcbiRjb2xvcl9fc2VhcmNoUmVzdWx0U3VtbWFyeTogJGNvbG9yX19ncmV5LS0zNTtcbiRjb2xvcl9fc2VhcmNoUmVzdWx0TW9yZTogJGNvbG9yX19ncmV5LS00NjtcbiRjb2xvcl9fc2VhcmNoUmVzdWx0TW9yZUJvcmRlcjogJGNvbG9yX19ncmV5LS0xNTtcbiRjb2xvcl9fc2VhcmNoUmVzdWx0TW9yZURpc2FibGVkOiAkY29sb3JfX2dyZXktLTU7XG4kY29sb3JfX3NlYXJjaFJlc3VsdEhpZ2hsaWdodEJnOiAkY29sb3JfX2dyZXktLTEzO1xuXG4vLyBNYXBcbiRjb2xvcl9fbWFwRmlsdGVyc0JhY2tncm91bmQ6ICRjb2xvcl9fYmxhY2stLTg3O1xuJGNvbG9yX19tYXBGaWx0ZXI6ICRjb2xvcl9fZ3JleS0tNDA7XG4kY29sb3JfX21hcExvY2F0aW9uTnVtYmVyOiAkY29sb3JfX2dyZXktLTY1O1xuJGNvbG9yX19tYXBJbmZvV2luZG93Rm9vdGVyOiAkY29sb3JfX2dyZXktLTMwO1xuJGNvbG9yX19tYXBJbmZvV2luZG93Rm9vdGVyQmFja2dyb3VuZDogJGNvbG9yX19ibGFjay0tODc7XG5cbi8vIFRpbWVsaW5lXG4kY29sb3JfX3RpbWVsaW5lQ29udGVudEJhY2tncm91bmQ6ICRjb2xvcl9fYmxhY2stLTg3O1xuJGNvbG9yX190aW1lbGluZUljb24tLWFjdGl2ZTogJGNvbG9yX190ZXh0O1xuXG4vLyBGdWxsIFdpZHRoIENhcm91c2VsXG4kY29sb3JfX2Z1bGxXaWR0aENhcm91c2VsOiAkY29sb3JfX2JsYWNrLS05ODtcbiRjb2xvcl9fZGlhZ29uYWxDYXJvdXNlbDogJGNvbG9yX19ibGFjay0tOTg7XG5cbi8vIFNvY2lhbFxuJGNvbG9yX19zb2NpYWxJdGVtQmFja2dyb3VuZDogJGNvbG9yX19ncmV5LS01O1xuJGNvbG9yX19zb2NpYWxpdGVtSWNvbnM6ICRjb2xvcl9fZ3JleS0tMzA7XG4kY29sb3JfX3NvY2lhbENUQTogJGNvbG9yX19ncmV5LS00NjtcbiRjb2xvcl9fc29jaWFsQ1RBQm9yZGVyOiAkY29sb3JfX2dyZXktLTE1O1xuXG4vLyBMYW5kaW5nXG4kY29sb3JfX2xhbmRpbmdCYWNrZ3JvdW5kLS1oaWdobGlnaHQ6ICRjb2xvcl9faGlnaGxpZ2h0O1xuJGNvbG9yX19sYW5kaW5nQmFja2dyb3VuZC0tZGFyazogJGNvbG9yX19ibGFjay0tOTg7XG4kY29sb3JfX2xhbmRpbmdUZXh0LS1kYXJrOiAkY29sb3JfX2JsYWNrLS05ODtcblxuLy8gRmFkZSBDYXJvdXNlbFxuJGNvbG9yX19mYWRlQ2Fyb3VzZWxBcnJvdzogJGNvbG9yX19ncmV5LS0zMDtcblxuLy8gRmlsdGVyc1xuJGNvbG9yX19maWx0ZXJMaXN0QmFja2dyb3VuZDogJGNvbG9yX19ncmV5LS01O1xuJGNvbG9yX19maWx0ZXJMaXN0QmFja2dyb3VuZC0tZGFyazogJGNvbG9yX19ibGFjay0tODc7XG4kY29sb3JfX2ZpbHRlclNlYXJjaEljb246ICRjb2xvcl9fZ3JleS0tNTU7XG4kY29sb3JfX2ZpbHRlclNlcGFyYXRvci0tZGFyazogJGNvbG9yX19ibGFjay0tNzM7XG4kY29sb3JfX2ZpbHRlckNsZWFyOiAkY29sb3JfX2dyZXktLTMwO1xuJGNvbG9yX19maWx0ZXJCb3JkZXI6ICRjb2xvcl9fYmxhY2stLTgwO1xuXG4vLyBTdGF0c1xuJGNvbG9yX19zdGF0c1NlcGFyYXRvcjogJGNvbG9yX19ncmV5LS0xNTtcbiRjb2xvcl9fc3RhdHNTZXBhcmF0b3ItLWxpZ2h0OiAkY29sb3JfX2JsYWNrLS04MDtcbiRjb2xvcl9fc3RhdHNTZXBhcmF0b3ItLWRhcms6ICNDODJBMUY7XG4kY29sb3JfX3N0YXRzU2VwYXJhdG9yLS1ibGFjazogJGNvbG9yX19ibGFjay0tODA7XG4kY29sb3JfX3N0YXRzU2VwYXJhdG9yLS1oaWdobGlnaHQ6ICRjb2xvcl9fYmxhY2stLTkwO1xuXG4vLyBDb2xsZWdlIExpc3RcbiRjb2xvcl9fY29sbGVnZUxpc3ROb3RBY3RpdmU6ICRjb2xvcl9fZ3JleS0tNDA7XG5cbi8vIENhbGVuZGFyXG4kY29sb3JfX2NhbGVuZGFyQmFja2dyb3VuZDogJGNvbG9yX19ncmV5LS01O1xuJGNvbG9yX19jYWxlbmRhckV2ZW50QmFja2dyb3VuZDogJGNvbG9yX19ncmV5LS0xMDtcbiRjb2xvcl9fY2FsZW5kYXJFdmVudEJhY2tncm91bmQtLWhvdmVyOiAkY29sb3JfX2dyZXktLTE1O1xuXG4vLyBQYXRod2F5c1xuJGNvbG9yX19wYXRod2F5c0NUQTogJGNvbG9yX19ncmV5LS0xNTtcbiRjb2xvcl9fcGF0aHdheXNCYWNrZ3JvdW5kOiAkY29sb3JfX2JsYWNrLS04NztcbiRjb2xvcl9fcGF0aHdheXNJY29uQm9yZGVyOiAkY29sb3JfX2JsYWNrLS04MDtcblxuLy8gQnV0dG9uc1xuJGNvbG9yX19idG4tLWdyZXk6ICRjb2xvcl9fZ3JleS0tNDY7XG5cbi8vIENhcmRzXG4kY29sb3JfX2NhcmRCYWNrZ3JvdW5kRGFyazogJGNvbG9yX19ibGFjay0tODc7XG5cbi8vIEV2ZW50c1xuJGNvbG9yX19ldmVudHNfX3RleHQtLWRhcms6ICRjb2xvcl9fZ3JleS0tMzA7XG4kY29sb3JfX2V2ZW50c19fc3VidGl0bGU6ICRjb2xvcl9fZ3JleS0tNjU7XG5cbi8vIEhlcm9cbiRjb2xvcl9faGVyb19fYXJyb3ctLWxpZ2h0OiAkY29sb3JfX2dyZXktLTU1O1xuXG4vLyBEcm9wZG93bnNcbiRjb2xvcl9fZHJvcGRvd25fX2JvcmRlcjogJGNvbG9yX19ncmV5LS0xNTtcbiRjb2xvcl9fZHJvcGRvd25fX2JvcmRlci0taG92ZXI6ICRjb2xvcl9fZ3JleS0tMzA7XG4kY29sb3JfX2Ryb3Bkb3duX19sYWJlbDogJGNvbG9yX19ncmV5LS00MztcbiRjb2xvcl9fZHJvcGRvd24tLWFjdGl2ZTogJGNvbG9yX19ibGFjaztcbiIsIiVmLWgxLFxuLmYtaDEge1xuICBAaW5jbHVkZSB0aXRsZSgyNSwgMjUsIDcwMCk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCB1cCkge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFyZW07XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICBsaW5lLWhlaWdodDogNjVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBmb250LXNpemU6IDg1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzcmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgdXApIHtcbiAgICBmb250LXNpemU6IDExMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMDBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMTMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEyNXB4O1xuICB9XG59XG5cbiVmLWgxOCxcbi5mLWgxOCB7XG4gIEBpbmNsdWRlIHRpdGxlKDI1LCAyNSwgNzAwLCBub3JtYWwsIC0wLjAxcmVtKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBmb250LXNpemU6IDU1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDU1cHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogNzBweDtcbiAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJyZW07XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICBmb250LXNpemU6IDg1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDg1cHg7XG4gIH1cbn1cblxuJWYtaDIsXG4uZi1oMiB7XG4gIEBpbmNsdWRlIHRpdGxlKDI1LCAyNSwgNzAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMXJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlIHVwKSB7XG4gICAgZm9udC1zaXplOiA2MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICB9XG59XG5cbiVmLWgzLFxuLmYtaDMge1xuICBAaW5jbHVkZSB0aXRsZSgxOCwgMTgsIDcwMCk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFyZW07XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgfVxufVxuXG4lZi1oMjAsXG4uZi1oMjAge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDMwLCA0MCwgOTAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIHVwKSB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBmb250LXNpemU6IDM4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICB9XG59XG5cbiVmLWg0LFxuLmYtaDQge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDIyLCAzMCwgOTAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIHVwKSB7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICB9XG59XG5cbiVmLWg0NCxcbi5mLWg0NCB7XG4gIEBpbmNsdWRlIHNhbnMtc2VyaWYoMjUsIDI1LCA5MDApO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gIH1cbn1cblxuJWYtaDUsXG4uZi1oNSB7XG4gIEBpbmNsdWRlIHNhbnMtc2VyaWYoMTgsIDMwLCA5MDApO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICB9XG59XG5cbiVmLWg2LFxuLmYtaDYge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDE0LCAyNSwgNDAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gIH1cbn1cblxuJWYtaDcsXG4uZi1oNyB7XG4gIEBpbmNsdWRlIHNhbnMtc2VyaWYoMTAsIDE1LCA5MDAsIG5vcm1hbCwgMC4wM3JlbSk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgfVxufVxuXG4lZi1oOCxcbi5mLWg4IHtcbiAgQGluY2x1ZGUgc2Fucy1zZXJpZigxNSwgMjUsIDkwMCk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgdXApIHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIH1cbn1cblxuJWYtaDgtYixcbi5mLWg4LWIge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDE1LCAyNSwgOTAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgfVxufVxuXG4lZi1oMTUsXG4uZi1oMTUge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDEzLCAyMCwgNDAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxufVxuXG4lZi1oMTQsXG4uZi1oMTQge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDEzLCAyMCwgOTAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIHVwKSB7XG4gICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgfVxufVxuXG4lZi1oMTAsXG4uZi1oMTAge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDEzLCAyMCwgNDAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIHVwKSB7XG4gICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgfVxufVxuXG4lZi1oMTEsXG4uZi1oMTEge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDgsIDEwLCA5MDAsIG5vcm1hbCwgMC4wM3JlbSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIH1cbn1cblxuJWYtaDE5LFxuLmYtaDE5IHtcbiAgQGluY2x1ZGUgc2Fucy1zZXJpZigyMiwgMzAsIDkwMCk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCB1cCkge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgfVxufVxuIiwiLy8gVHlwb2dyYXBoeVxuJGJhc2UtZm9udC1mYW1pbHk6IFwibmV1ZVwiO1xuJHRpdGxlLWZvbnQtZmFtaWx5OiBcIm5ldWUtZGlzcGxheS1yYW5kb21cIjtcbiR3aWRlLWZvbnQtZmFtaWx5OiBcIm5ldWUtZGlzcGxheS13aWRlXCI7XG4kdWx0cmEtZm9udC1mYW1pbHk6IFwibmV1ZS1kaXNwbGF5LXVsdHJhXCI7XG5cblxuLy8gQmFzZWxpbmUgZ3JpZCBoZWlnaHRcbiRiYXNlLWhlaWdodDogNTtcblxuLy8gTWF4IHdpZHRocyB0aGUgbWFpbiBjb2x1bW4gY2FuIHJ1biB0byBvdmVyIHRoZSBicmVha3BvaW50c1xuLy8gdmFsdWVzIGNhbiBlaXRoZXIgYmUgJ2ZsdWlkJyBvciBhIHBpeGVsIHZhbHVlXG4vLyByZWNvbW1lbmRlZCB4eGxhcmdlIGlzIGEgcHggdmFsdWUgYW5kIHhzbWFsbCBpcyBmbHVpZFxuJG1haW4tY29sLXdpZHRoczogKFxuICB4eGxhcmdlOiAxMjkwcHgsXG4gIHhsYXJnZTogJ2ZsdWlkJyxcbiAgbGFyZ2U6ICdmbHVpZCcsXG4gIG1lZGl1bTogJ2ZsdWlkJyxcbiAgc21hbGw6ICdmbHVpZCcsXG4gIHhzbWFsbDogJ2ZsdWlkJ1xuKTtcblxuJGlubmVyLWd1dHRlcnM6IChcbiAgeHhsYXJnZTogNDBweCxcbiAgeGxhcmdlOiA0MHB4LFxuICBsYXJnZTogMzBweCxcbiAgbWVkaXVtOiAyMHB4LFxuICBzbWFsbDogMjBweCxcbiAgeHNtYWxsOiAyMHB4XG4pO1xuXG4kb3V0ZXItZ3V0dGVyczogKFxuICB4eGxhcmdlOiA2MHB4LFxuICB4bGFyZ2U6IDYwcHgsXG4gIGxhcmdlOiA1MHB4LFxuICBtZWRpdW06IDQwcHgsXG4gIHNtYWxsOiA0MHB4LFxuICB4c21hbGw6IDQwcHhcbik7XG5cbi8vIEhvdyBtYW55IGNvbHVtbnMgYXJlIGluIGVhY2ggYnJlYWtwb2ludFxuJGNvbHVtbi1jb3VudDogKFxuICB4eGxhcmdlOiAxNSxcbiAgeGxhcmdlOiAxNSxcbiAgbGFyZ2U6IDE1LFxuICBtZWRpdW06IDQsXG4gIHNtYWxsOiA0LFxuICB4c21hbGw6IDRcbik7XG5cblxuLy8gQnJlYWtwb2ludCBpbmZvcm1hdGlvbiwgd2hlcmUgZWFjaCBzdGFydHMgYW5kIHN0b3BzXG4vLyBpZiBhIGJyZWFrcG9pbnQgaXMgbm90IGZsdWlkLCB0aGVuIHRoZSBzdGFydCB2YWx1ZSBpcyBlcXVhbCB0byB0aGUgbWFpbiBjb2wgdmFsdWUgcGx1cyAyeCB0aGUgZ3V0dGVyIGF0IHRoaXMgYnJlYWtwb2ludFxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHNtYWxsOiAoc3RhcnQ6IG51bGwsIGVuZDogNDc5KSxcbiAgc21hbGw6IChzdGFydDogNDgwLCBlbmQ6IDYzOSksXG4gIG1lZGl1bTogKHN0YXJ0OiA2NDAsIGVuZDogOTc5KSxcbiAgbGFyZ2U6IChzdGFydDogOTgwLCBlbmQ6IDExNTkpLFxuICB4bGFyZ2U6IChzdGFydDogMTE2MCwgZW5kOiAxNDQ5KSxcbiAgeHhsYXJnZTogKHN0YXJ0OiAxNDUwLCBlbmQ6IG51bGwpXG4pO1xuXG4vLyBTb21lIGVhc2luZyBmdW5jdGlvbnNcbiRiZXppZXItLWJvdW5jZTogY3ViaWMtYmV6aWVyKDAuNSwgLTAuNiwgMC41LCAxLjYpO1xuJGJlemllci0tZWFzZS1pbi1vdXQ6IGN1YmljLWJlemllcigwLjUsIDAsIDAuNSwgMCk7XG4vLyAkYmV6aWVyLS1lYXNlLWluLW91dDogY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMCk7XG5cbi8vIFN0YW5kYXJkIGN1cnZlIC0gbW92ZW1lbnQgd2l0aGluIHNjcmVlbiBib3VuZHNcbiRiZXppZXItLXN0YW5kYXJkOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuXG4vLyBEZWNlbGVyYXRpb24gY3VydmUgKOKAnEVhc2luZyBvdXTigJ0pIC0gbW92ZW1lbnQgZnJvbSBvZmYgc2NyZWVuXG4kYmV6aWVyLS1lYXNlLW91dDogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG5cbi8vIEFjY2VsZXJhdGlvbiBjdXJ2ZSAo4oCcRWFzaW5nIGlu4oCdKSAtIG1vdmVtZW50IGZyb20gb24gc2NyZWVuXG4kYmV6aWVyLS1lYXNlLWluOiBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKTtcblxuLy8gU2hhcnAgY3VydmVcbiRiZXppZXItLXNoYXJwOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuIiwiLmctYnJlYWRjcnVtYnMge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuIiwiLy8gdXRpbGl0eSBuYXYgbm90IHNob3duIG9uIG1vYmlsZSBzbyB3ZSBoYXZlIHRvIG92ZXJyaWRlIHRoZSB0b3AgdmFsIGZyb20gYSBwcmV2aW91cyBwaGFzZVxuLmctaGVhZGVyLS1oYXMtdXRpbGl0eS1vbi1tb2JpbGUgeyBcbiAgdG9wOiAwO1xufVxuXG4uZy1oZWFkZXItLWNvbGxlZ2UuZy1oZWFkZXItLWhhcy11dGlsaXR5LW9uLW1vYmlsZSArIG1haW4ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZy10b3A6IDg1cHg7XG4gIH1cbn1cbiIsIi5hLWJ0bi0tZ3JleS0tbGlnaHQge1xuICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcbiAgY29sb3I6ICRjb2xvcl9fZ3JleS0tMzU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9fc2VwYXJhdG9yO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yX19zZXBhcmF0b3I7XG4gICAgICBjb2xvcjogJGNvbG9yX19jdGE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLmJvZHktLWhpZ2hsaWdodCAmIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3JfX3doaXRlO1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQtLWRhcms7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX3doaXRlO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yX193aGl0ZTtcbiAgICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgICB9XG4gIH1cbn1cbiIsIiVhLWN0YS0tZHVhbC1saW5lLFxuLmEtY3RhLS1kdWFsLWxpbmUge1xuICBAaW5jbHVkZSBzYW5zLXNlcmlmKDEwLCAxNSwgOTAwLCBub3JtYWwsIDAuMDVyZW0pO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgwLCAwLCAwKTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbSBlYXNlLWluLW91dCAxODBtcztcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTZweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZDtcbiAgfVxufVxuIiwiLmEtYWNjb3JkaW9uQ2FyZCB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDE4cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX19zZXBhcmF0b3I7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1pbi1oZWlnaHQ6IDQ5MHB4O1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAuYS1hY2NvcmRpb25DYXJkX19ob3Zlci1vZmYge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmEtYWNjb3JkaW9uQ2FyZF9faG92ZXItb24ge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuICAgICAgfVxuXG4gICAgICAuYS1hY2NvcmRpb25DYXJkX19ob3Zlci1vbixcbiAgICAgIC5hLWFjY29yZGlvbkNhcmRfX3RyaWdnZXIgLmEtYWNjb3JkaW9uQ2FyZF9fY3RhLFxuICAgICAgLmEtYWNjb3JkaW9uQ2FyZF9fdHJpZ2dlciAuYS1hY2NvcmRpb25DYXJkX19saW5rIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmEtYWNjb3JkaW9uQ2FyZCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYS1hY2NvcmRpb25DYXJkX19ib2R5LFxuLmEtYWNjb3JkaW9uQ2FyZF9fdGl0bGUgYSxcbi5hLWFjY29yZGlvbkNhcmRfX3N1YnRpdGxlLFxuLmEtYWNjb3JkaW9uQ2FyZF9fc2Vjb25kYXJ5IGxpIGEsXG4uYS1hY2NvcmRpb25DYXJkX19ib2R5IC5hLWFjY29yZGlvbkNhcmRfX2xpbmssXG4uYS1hY2NvcmRpb25DYXJkX19ib2R5IC5hLWFjY29yZGlvbkNhcmRfX2N0YSxcbi5hLWFjY29yZGlvbkNhcmRfX2JvZHkgLmEtYWNjb3JkaW9uQ2FyZF9fY3RhOmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IDE4MG1zO1xufVxuXG4uYS1hY2NvcmRpb25DYXJkX19ib2R5IHtcbiAgQGluY2x1ZGUgc2Fucy1zZXJpZigxMywgMjApO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgcCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgQGluY2x1ZGUgc2Fucy1zZXJpZigxNCwgMjUpO1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgICBwYWRkaW5nOiAyOHB4IDMwcHggNzlweDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX2N0YUJhY2tncm91bmQ7XG5cbiAgICAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9fbGluayB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgLmEtYWNjb3JkaW9uQ2FyZF9fY3RhIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmEtYWNjb3JkaW9uQ2FyZF9fdHJpZ2dlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4gIC5hLWFjY29yZGlvbkNhcmRfX2xpbmsge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cblxuLmEtYWNjb3JkaW9uQ2FyZF9fc3VidGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjb2xvcl9fdGV4dC0tc3VidGl0bGU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBvcmRlcjogMjtcbn1cblxuLmEtYWNjb3JkaW9uQ2FyZF9fdGl0bGUge1xuICBAZXh0ZW5kICVmLWg1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICBvcmRlcjogMTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIGEge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4uYS1hY2NvcmRpb25DYXJkX190aXRsZSBhIHtcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgfVxufVxuXG4uYS1hY2NvcmRpb25DYXJkX19zdWJ0aXRsZSArIC5hLWFjY29yZGlvbkNhcmRfX3RpdGxlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbn1cblxuLmEtYWNjb3JkaW9uQ2FyZF9faW5uZXIge1xuICBvcmRlcjogMztcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4ycyAkYmV6aWVyLS1lYXNlLWluLW91dDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLmEtYWNjb3JkaW9uQ2FyZF9fY3RhLFxuICAuYS1hY2NvcmRpb25DYXJkX19saW5rIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBib3R0b206IDQ1cHg7XG4gICAgfVxuICB9XG59XG5cbi5hLWFjY29yZGlvbkNhcmRfX2xpbmsge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAtMXB4IDAgMCAyMHB4O1xuICBwYWRkaW5nOiAxcHggMCAxcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIGVhc2UtaW4tb3V0IDE4MG1zLCBjb2xvciBlYXNlLWluLW91dCAxODBtcztcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDNweDtcbiAgICBsZWZ0OiAtMjVweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgdmVyc2lvbj0nMS4xJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDI0JyBoZWlnaHQ9JzEwMjQnIHZpZXdCb3g9JzAgMCAxMDI0IDEwMjQnJTNFJTNDcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLXdpZHRoPSc1Ni44ODg5JyBzdHJva2UtbWl0ZXJsaW1pdD0nNCcgc3Ryb2tlLWxpbmVjYXA9J2J1dHQnIHN0cm9rZS1saW5lam9pbj0nbWl0ZXInIGQ9J000MzIuMzU2IDExMy43NzhsMzY5Ljc3OCAzNjkuNzc4LTM2OS43NzggMzY5Ljc3OCclM0UlM0MvcGF0aCUzRSUzQy9zdmclM0VcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLWluLW91dCAxODBtcztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgIHRvcDogNnB4O1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2xvciB2YXJpYXRpb25zXG4uYS1hY2NvcmRpb25DYXJkLS1kYXJrIHtcbiAgY29sb3I6ICRjb2xvcl9fdGV4dC0tZGFyaztcbiAgYmFja2dyb3VuZDogJGNvbG9yX19jYXJkQmFja2dyb3VuZERhcms7XG59XG5cbi5hLWFjY29yZGlvbkNhcmRfX2N0YSxcbi5hLWFjY29yZGlvbkNhcmRfX2xpbmsge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5hLWFjY29yZGlvbkNhcmRfX2N0YSB7XG4gIEBleHRlbmQgJWEtY3RhLS1kdWFsLWxpbmU7XG59XG5cbi5hLWFjY29yZGlvbkNhcmRfX2hvdmVyLW9mZiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgJGJlemllci0tZWFzZS1pbjtcbiAgfVxufVxuXG4uYS1hY2NvcmRpb25DYXJkX19ob3Zlci1vbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIG1pbi1oZWlnaHQ6IDE3MnB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgJGJlemllci0tZWFzZS1vdXQ7XG4gIH1cbn1cblxuLmEtYWNjb3JkaW9uQ2FyZF9faG92ZXItb24sXG4uYS1hY2NvcmRpb25DYXJkX19zZWNvbmRhcnkge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzNweDtcbn1cblxuLmEtYWNjb3JkaW9uQ2FyZF9faW5uZXIgLmEtYWNjb3JkaW9uQ2FyZF9fc3VidGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxN3B4O1xuICBjb2xvcjogJGNvbG9yX190ZXh0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOXB4O1xuICB9XG59XG5cbi5hLWFjY29yZGlvbkNhcmRfX2lubmVyIHVsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxufVxuXG4uYS1hY2NvcmRpb25DYXJkX19pbm5lciBsaSB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAmOm50aC1jaGlsZCgybisxKXtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi5hLWFjY29yZGlvbkNhcmRfX2lubmVyIGxpIGEge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfSAgXG59XG5cbi5hLWFjY29yZGlvbkNhcmQgLmljb24tLW1pbnVzLFxuLmEtYWNjb3JkaW9uQ2FyZCAuaWNvbi0tcGx1cy1hbHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogJGNvbG9yX190b2dnbGVJY29uO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYS1hY2NvcmRpb25DYXJkIC5pY29uLS1taW51cyB7XG4gIHRvcDogMTNweDtcbn1cblxuLmEtYWNjb3JkaW9uQ2FyZCAuaWNvbi0tcGx1cy1hbHQge1xuICB0b3A6IDhweDtcbn1cblxuLmEtYWNjb3JkaW9uQ2FyZC0tYWN0aXZlIC5pY29uLS1wbHVzLWFsdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5vLXRocmVlLWNvbF9faXRlbSAuYS1hY2NvcmRpb25DYXJkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuXG4uYS1hY2NvcmRpb25DYXJkLS1uby1ob3ZlciAuYS1hY2NvcmRpb25DYXJkX19jdGEsXG4uYS1hY2NvcmRpb25DYXJkLS1uby1ob3ZlciAuYS1hY2NvcmRpb25DYXJkX19saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3R0b206IGF1dG87XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuXG4uYS1hY2NvcmRpb25DYXJkLS1uby1ob3ZlciAuYS1hY2NvcmRpb25DYXJkX19pbm5lciA+IGRpdiB7XG59XG5cbi5hLWFjY29yZGlvbkNhcmQtLW5vLWhvdmVyIC5hLWFjY29yZGlvbkNhcmRfX3NlY29uZGFyeSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiA1M3B4O1xuICB9XG59XG5cbi5hLWFjY29yZGlvbkNhcmQtLW5vLWhvdmVyIC5hLWFjY29yZGlvbkNhcmRfX2lubmVyIGxpIGEge1xufVxuIiwiLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtLS1zaW1wbGUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX19zZXBhcmF0b3I7XG5cbiAgJi5pcy1hY3RpdmU6OmJlZm9yZSxcbiAgJi5pcy1hY3RpdmU6OmFmdGVyIHtcbiAgICBib3R0b206IC0xcHg7XG4gIH1cblxuICAuYS1wcm9ncmFtX19ibG9ja0xpbmsge1xuICAgIHBhZGRpbmctdG9wOiAxM3B4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgICAgcGFkZGluZy10b3A6IDI3cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzFweDtcbiAgICB9XG4gIH1cblxuICAuYS1wcm9ncmFtX19ibG9ja0xpbmtUaXRsZSB7XG4gICAgQGV4dGVuZCAlZi1oODtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG5cbiAgLmEtcHJvZ3JhbV9fYmxvY2tMaW5rU3ViVGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuaWNvbi0tY2hldnJvbi1kb3duLWFsdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDhweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKXtcbiAgICAgIHRvcDogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24tbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMS4yNWVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcbn1cblxuLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtLS1zaW1wbGUge1xuICAuaWNvbi0tY2hldnJvbi1kb3duLWFsdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ubS1jb250ZW50TGlzdC0tZ3JpZC12aWV3IC5hLXByb2dyYW1fX2NvbnRlbnQtLWFsdCxcbi5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgLmEtcHJvZ3JhbV9fY29udGVudC0tYWx0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLy8gcGFkZGluZy1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG4gICAgcGFkZGluZy1ib3R0b206IDk1cHg7XG4gIH1cblxuICAuYS1wcm9ncmFtX19jb250ZW50VGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiB7XG4gICAgQGV4dGVuZCAlZi1oMTU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gIH1cblxuICAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiBwIHtcbiAgfVxuXG4gIC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIHVsIHtcbiAgICBtYXJnaW4tdG9wOiAxN3B4O1xuICB9XG5cbiAgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gbGkgYSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIGxpIGE6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG4gICAgICB0b3A6IDRweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCl7XG4gICAgICB0b3A6IDlweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApe1xuICAgICAgdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIGg1IHtcbiAgICBtYXJnaW4tdG9wOiAxM3B4O1xuICB9XG5cbiAgLmEtcHJvZ3JhbV9fZGVzY3JpcHRpb24gcC5hLXByb2dyYW1fX25vdGUge1xuICAgIEBleHRlbmQgJWYtaDEwO1xuICB9XG59XG5cblxuLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtLS1hbHQge1xuICAuaWNvbi0tcGx1cy1hbHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYS1wcm9ncmFtLS1hbHQge1xuICAuYS1wcm9ncmFtX19ibG9ja0xpbmtUaXRsZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgd2lkdGg6IDg2JTtcbiAgICB9XG4gIH1cblxuICAuYS1wcm9ncmFtX19ibG9ja0xpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuXG4gICAgJjpob3ZlciAuaWNvbi0tcGx1cy1hbHQge1xuICAgICAgY29sb3I6ICRjb2xvcl9fdG9nZ2xlSWNvbkhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIC5pY29uLS1wbHVzLWFsdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGNvbG9yOiAkY29sb3JfX3RvZ2dsZUljb247XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5cblxuLm8tcHJpbWFyeUNvbnRlbnQgdWwgLmEtcHJvZ3JhbSB1bCxcbi5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW0gb2wsXG4uby1wcmltYXJ5Q29udGVudCB1bCAuYS1wcm9ncmFtX19kZXNjcmlwdGlvbiB1bCxcbi5vLXByaW1hcnlDb250ZW50IHVsIC5hLXByb2dyYW1fX2Rlc2NyaXB0aW9uIG9sIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgbGk6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBcbiAgbGkgYSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG4gIFxuICBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4iLCIuby1wcmltYXJ5Q29udGVudCAuYS10YWJsZSB1bCxcbi5vLXByaW1hcnlDb250ZW50IC5hLXRhYmxlIG9sLFxuLm8tcHJpbWFyeUNvbnRlbnQgLmEtdGFibGUgbGksXG4uYS10YWJsZSBwIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5vLXByaW1hcnlDb250ZW50IC5hLXRhYmxlIHVsIGxpIHtcbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6IDhweDtcbiAgfVxufVxuIiwiLm0tY2FyZHMge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxufVxuIiwiLm0tY29sbGVnZUxpc3Qge1xufVxuXG4ubS1jb2xsZWdlTGlzdF9faXRlbSB7XG4gIG1hcmdpbi10b3A6IDE5cHg7XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbi5tLWNvbGxlZ2VMaXN0X190b2dnbGUge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICB9XG59XG5cbi5tLWNvbGxlZ2VMaXN0X19jb250ZW50IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmctdG9wOiAxN3B4O1xuICB9XG59XG5cbi5tLWNvbGxlZ2VMaXN0X19jdGEge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG4iLCIubS1jb250ZW50RmlsdGVycy0tc2ltcGxlLFxuLm0tY29udGVudEZpbHRlcnMtLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4ubS1jb250ZW50RmlsdGVycy0tdGl0bGUge1xuXG4gIC5tLWNvbnRlbnRMaXN0LS1saXN0LXZpZXcgJiB7XG4gICAgbWFyZ2luLXRvcDogMjZweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgICBtYXJnaW4tdG9wOiAxMDdweDtcbiAgICB9XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5tLWNvbnRlbnRGaWx0ZXJzX190aXRsZSB7XG4gIEBleHRlbmQgJWYtaDQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIG1hcmdpbi1ib3R0b206IDQxcHg7XG4gIH1cbn1cblxuLm0tY29udGVudEZpbHRlcnNfX2Rpc3BsYXlPcHRpb25zIHtcbiAgbWFyZ2luLXRvcDogMThweDtcbn1cblxuLnBhZ2VDbGFzcy0tbDIgLm0tY29udGVudExpc3RfX25vUmVzdWx0cyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLnBhZ2VDbGFzcy0tbDIgaDQgKyAubS1jb250ZW50TGlzdCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cblxuLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYWlzLWluZmluaXRlLWhpdHMtLXNob3dtb3JlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLm0tY29udGVudExpc3QtLWxpc3QtdmlldyAuYWlzLWluZmluaXRlLWhpdHMtLXNob3dtb3JlQnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogODBweDtcbn1cblxuLm0tY29udGVudEZpbHRlcnNBamF4IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tLWNvbnRlbnRGaWx0ZXJzX19pdGVtcy5tLWNvbnRlbnRGaWx0ZXJzX19pdGVtcy0tdmVydGljYWwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIGNvbHVtbi1jb3VudDogMztcbiAgICBjb2x1bW4tZ2FwOiA0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDU1cHggIWltcG9ydGFudFxuICB9XG5cbiAgLm0tY29udGVudEZpbHRlcnNfX2l0ZW0ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC8vIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuICB9XG59XG5cbi5tLWNvbnRlbnRGaWx0ZXJzX19saXN0LmlzLWFjdGl2ZSB7XG4gIG1heC1oZWlnaHQ6IDgwMHB4O1xufVxuIiwiLm0tY291cnNlcyB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4ubS1jb3Vyc2VzIC5tLW1vZHVsZUhlYWRlcl9faW50cm8ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIiwiLm0tY3RhUGFuZWwge1xufVxuXG4ubS1jdGFQYW5lbC5zLW1vZHVsZS1ia2dkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDI0cHg7XG4gIHBhZGRpbmctYm90dG9tOiAzOXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBwYWRkaW5nLXRvcDogNjlweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzVweDtcbiAgfVxufVxuXG4ubS1jdGFQYW5lbCBoMiB7XG4gICYsXG4gIC5wYWdlQ2xhc3MtLWwwICYsIFxuICAucGFnZUNsYXNzLS1sMSAmIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5tLWN0YVBhbmVsIHAge1xuICBAZXh0ZW5kICVmLWgxNTtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLm0tY3RhUGFuZWwgcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMTlweDtcbiAgfVxufVxuIiwiLm0tZHJhd2VycyB7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC8vIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm0tZHJhd2Vyc19fY29udGVudC5tLWRyYXdlcnNfX2NvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLm0tZHJhd2Vycy0tYWx0IC5tLWRyYXdlcnNfX3RvZ2dsZSB7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBzcGFuIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4ubS1kcmF3ZXJzLS1hbHQgLm0tZHJhd2Vyc19fdG9nZ2xlIHNwYW4ge1xuICBAZXh0ZW5kICVmLWg1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjb2xvcl9fdGV4dDtcbn1cblxuLm0tZHJhd2Vycy0tYWx0IC5tLWRyYXdlcnNfX3RvZ2dsZSBzcGFuLm0tZHJhd2Vyc19fc3VidGl0bGUge1xuICBAZXh0ZW5kICVmLWgxMTtcbiAgbWFyZ2luLXRvcDogM3B4O1xuICBjb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgfVxufVxuXG4ubS10ZXh0QmxvY2sgKyAubS1kcmF3ZXJzLFxuLm0tdGV4dEJsb2NrICsgLm8tcHJpbWFyeUNvbnRlbnQgLm0tZHJhd2VycyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4iLCIubS1mZWF0dXJlUGFuZWwge1xufVxuXG4ubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5tLWZlYXR1cmVQYW5lbCAubS1sYW5kaW5nUGFuZWwgLnJvdyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuXG4ubS1mZWF0dXJlUGFuZWwtLWxpbmstbGlzdCAubS1sYW5kaW5nUGFuZWxfX2NvbnRlbnQgLmYtaDExLFxuLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IC5tLWZlYXR1cmVQYW5lbC0tbGluay1saXN0IC5mLWgxMSB7XG4gIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbn1cblxuLy8gLm0tZmVhdHVyZVBhbmVsLS1saW5rLWxpc3QgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IHVsLFxuLy8gLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IC5tLWZlYXR1cmVQYW5lbC0tbGluay1saXN0IHVsIHtcbi8vICAgbWFyZ2luLWxlZnQ6IDA7XG4vLyAgIHBhZGRpbmctbGVmdDogMDtcbi8vICAgbGlzdC1zdHlsZTogbm9uZTtcbi8vIH1cblxuLy8gLm0tZmVhdHVyZVBhbmVsLS1saW5rLWxpc3QgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IHVsIGxpOjpiZWZvcmUsXG4vLyAgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IC5tLWZlYXR1cmVQYW5lbC0tbGluay1saXN0IHVsIGxpOjpiZWZvcmUge1xuLy8gICBkaXNwbGF5OiBub25lO1xuLy8gfVxuXG4ubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX19jb250ZW50IHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbF9fY29udGVudCB1bCBsaTo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuXG4ubS1sYW5kaW5nUGFuZWxfX2NvbnRlbnQgLm0tZmVhdHVyZVBhbmVsLS1idWxsZXQtbGlzdCB1bCB7XG4gIG1hcmdpbjogMzBweCAwIDA7XG4gIHBhZGRpbmc6IDAgMCAwIDI1cHg7XG59XG5cbiAubS1sYW5kaW5nUGFuZWxfX2NvbnRlbnQgLm0tZmVhdHVyZVBhbmVsLS1idWxsZXQtbGlzdCB1bCBsaTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG5cbi5wYWdlQ2xhc3MtLWwyIC5tLWZlYXR1cmVQYW5lbDpub3QoLm0tZmVhdHVyZVBhbmVsLS1zbWFsbCkgLm0tbGFuZGluZ1BhbmVsX190aXRsZSB7XG4gIEBleHRlbmQgJWYtaDE4O1xufVxuXG4ucGFnZUNsYXNzLS1sMiAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsLS1hbHQubS1sYW5kaW5nUGFuZWwtLXNtYWxsIC5tLWxhbmRpbmdQYW5lbF9fdGl0bGUge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MHB4KTtcbiAgfVxufVxuXG4ucGFnZUNsYXNzLS1sMiAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsX190aXRsZSxcbi5wYWdlQ2xhc3MtLWwyIC5tLWZlYXR1cmVQYW5lbCAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX3RpdGxlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHRvcDogMTlweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5tLWZlYXR1cmVQYW5lbCArIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxufVxuXG4ubS1mZWF0dXJlUGFuZWwtLXNtYWxsICsgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXJnaW4tdG9wOiAtMzlweDtcbiAgfVxufVxuXG4vLyAubS1mZWF0dXJlUGFuZWwtLXNtYWxsICsgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbCAubS1sYW5kaW5nUGFuZWxfX3RpdGxlIHtcbi8vICAgYm9yZGVyLXRvcDogMDtcbi8vIH1cblxuLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbF9fY29udGVudCAubS1sYW5kaW5nUGFuZWxfX2N0YS1saXN0IHtcbiAgbWFyZ2luOiAxNXB4IDAgMDtcblxuICBsaSB7XG4gICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgfVxuXG4gIGEge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yX19oaWdobGlnaHQ7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yX19oaWdobGlnaHQ7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5tLWZlYXR1cmVQYW5lbC0tc21hbGwtYWx0IHtcbiAgLm0tbGFuZGluZ1BhbmVsX190aXRsZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgQGluY2x1ZGUgdGl0bGUoNDUsIDQ1LCA3MDAsIG5vcm1hbCwgLTAuMDFyZW0pO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgdG9wOiAyMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgICBAaW5jbHVkZSB0aXRsZSg1MCwgNTAsIDcwMCwgbm9ybWFsLCAtMC4wMXJlbSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlIHVwKSB7XG4gICAgICBAaW5jbHVkZSB0aXRsZSg2MCwgNjAsIDcwMCwgbm9ybWFsLCAtMC4wMXJlbSk7XG4gICAgfVxuICB9XG5cbiAgLm0tbGFuZGluZ1BhbmVsX19pbWFnZUxpbms6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgfVxuICB9XG5cbiAgLm0tbGFuZGluZ1BhbmVsLS1hbHQgLm0tbGFuZGluZ1BhbmVsX19pbWFnZUxpbms6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBsZWZ0OiA0MHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIH1cbiAgfVxuXG4gIC5tLWxhbmRpbmdQYW5lbC0tYWx0IC5tLWxhbmRpbmdQYW5lbF9faW1hZ2VMaW5rIHAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgIGxlZnQ6IDYwcHg7XG4gICAgfVxuICB9XG5cbiAgLm0tbGFuZGluZ1BhbmVsX19pbWFnZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgcGFkZGluZzogMCA0MHB4IDAgMDtcbiAgICB9XG4gIH1cblxuICAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCA0MHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLm0taGlnaGxpZ2h0c0dyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAyNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDNweDtcblxuICAmLmFkZC1zZXBhcmF0b3ItLXRvcDpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBwYWRkaW5nLXRvcDogMjJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjZweDtcbiAgfVxufVxuXG4ubS1oaWdobGlnaHRzR3JpZCBoMiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICB9XG59XG5cbi5tLWhpZ2hsaWdodHNHcmlkX19pdGVtcyxcbi5vLXByaW1hcnlDb250ZW50IHVsIC5tLWhpZ2hsaWdodHNHcmlkX19pdGVtcyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tdG9wOiAyOXB4O1xuICB9XG59XG5cbi5tLWhpZ2hsaWdodHNHcmlkIGxpLFxuLm8tcHJpbWFyeUNvbnRlbnQgdWwgLm0taGlnaGxpZ2h0c0dyaWQgbGkge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAyOXB4O1xuXG4gICAgJjpudGgtY2hpbGQoLW4rMil7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ubS1oaWdobGlnaHRzR3JpZF9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uby1wcmltYXJ5Q29udGVudC5tLXRleHRCbG9jayAubS1oaWdobGlnaHRzR3JpZCBsaSB7XG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLm0tbGFuZGluZ0ludHJvIHtcbn1cblxuLm0tbGFuZGluZ0ludHJvIHAge1xufVxuXG4ubS1sYW5kaW5nSW50cm8tLWxhcmdlIHtcbiAgbWFyZ2luLWJvdHRvbTogLTdweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi1ib3R0b206IC04cHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi1ib3R0b206IC05cHg7XG4gIH1cbn1cblxuLm0tbGFuZGluZ0ludHJvLS1sYXJnZSBwIHtcbiAgQGV4dGVuZCAlZi1oNjtcbn1cblxuLmJvZHktLWhpZ2hsaWdodCAubS1sYW5kaW5nSW50cm8gcCBhIHtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JfX3doaXRlO1xufVxuIiwiLm0tbGlzdFBhbmVsIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yX19jdGFCYWNrZ3JvdW5kO1xufVxuXG4ubS1saXN0UGFuZWxfX3RpdGxlIHtcbiAgQGV4dGVuZCAlZi1oMTE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxOHB4IDIwcHggMTZweDtcbiAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xufVxuXG4ubS1saXN0UGFuZWxfX2l0ZW1ze1xufVxuXG4ubS1saXN0UGFuZWxfX2l0ZW0ge1xuICBAZXh0ZW5kICVmLWgxNDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcl9fc2VwYXJhdG9yO1xufVxuXG4ubS1saXN0UGFuZWxfX2l0ZW0gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxNnB4IDIwcHggMThweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgfVxufVxuXG4uby10d29UaGlyZHMgLm0tbGlzdFBhbmVsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDQ4cHgpO1xuICB9XG59XG4iLCIubS1tb2R1bGVIZWFkZXIge1xufVxuXG4ubS1tb2R1bGVIZWFkZXJfX3RpdGxlLXdyYXAge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLm0tbW9kdWxlSGVhZGVyX190aXRsZSB7XG4gIEBleHRlbmQgJWYtaDE4O1xuICBtYXJnaW4tdG9wOiAwO1xuICBjb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG5cbiAgLmJvZHktLWhpZ2hsaWdodCAmIHtcbiAgICBjb2xvcjogJGNvbG9yX190ZXh0LS1kYXJrO1xuICB9XG5cbiAgJi5tLW1vZHVsZUhlYWRlcl9fdGl0bGUtLWhhcy1hbmNob3I6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IFxuICAgIGNvbnRlbnQ6IFwiIFwiOyBcbiAgICBtYXJnaW4tdG9wOiAtNzVweDsgXG4gICAgaGVpZ2h0OiA3NXB4OyBcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xNTBweDsgXG4gICAgICBoZWlnaHQ6IDE1MHB4OyBcbiAgICB9XG4gIH1cbn1cblxuLm0tbW9kdWxlSGVhZGVyX19pbnRybyB7XG4gIEBleHRlbmQgJWYtaDE1O1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLXRvcDogMThweDtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMzFweDtcbiAgfVxufVxuXG4ubS1tb2R1bGVIZWFkZXJfX2ludHJvIHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ubS1tb2R1bGVIZWFkZXJfX2N0YSB7XG4gIEBleHRlbmQgJWEtY3RhLS1kdWFsLWxpbmU7XG4gIG1hcmdpbi10b3A6IDIycHg7XG59XG4iLCIubS1uYXZMaXN0X19jb250YWluZXIgeyAvLyBjb3BpZWQgZnJvbSBwcmV2aW91cyBwaGFzZSBhcyBwaGFzZTMgY3NzIHdhcyBvdmVycmlkaW5nIGl0XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgIC5yb3cge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ubS1uYXZMaXN0LS10ZXJ0aWFyeSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXG4gICAgLm0tbmF2TGlzdF9faXRlbSB7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLm0tcGFnZUhlYWRlciB7XG59XG5cbi5tLXBhZ2VIZWFkZXIgKyAueHNtYWxsLXNob3cuc21hbGwtc2hvdy5tZWRpdW0tc2hvdyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IC0yNXB4O1xufVxuIiwiLm0tcG9zdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubS1wb3N0IGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5tLXBvc3QgPiBhOm5vdCgubS1wb3N0X19jdGEpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGNvbG9yIGVhc2UtaW4tb3V0IDE4MG1zO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG4gIH1cbn1cblxuLm0tcG9zdCA+IGEgKyAubS1wb3N0X190YWcge1xuICBtYXJnaW4tdG9wOiAyM3B4O1xufVxuXG4ubS1wb3N0Lm0tcG9zdC0taGFzLWN0YSxcbi5tLXBvc3QubS1wb3N0LS1oYXMtbGluayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG4ubS1wb3N0X19pbWFnZSxcbi5tLXBvc3QgLmEtdmlkZW9fX2xpbmsuYS12aWRlb19fbGluayB7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4ubS1wb3N0X19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2Utb3V0IDM2MG1zO1xuXG4gICAgICAuYm9keS0taGlnaGxpZ2h0ICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtLWRhcms7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGE6aG92ZXIgJiB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgxMHB4LCAxMHB4LCAwKTtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgtMTBweCwgLTEwcHgsIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubS1wb3N0X19pbWFnZSBpbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1vdXQgMzYwbXM7XG59XG5cbi5tLXBvc3RfX3RhZyB7XG4gIEBleHRlbmQgJWYtaDExO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xufVxuXG4ubS1wb3N0X190aXRsZSB7XG4gIEBleHRlbmQgJWYtaDU7XG4gIG1hcmdpbi10b3A6IDE4cHg7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm0tcG9zdF9fdGl0bGUgYSxcbi5tLXBvc3RfX3F1b3RlIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciBlYXNlLWluLW91dCAxODBtcztcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG4gIH1cbn1cblxuLm0tcG9zdF9fdGFnICsgLm0tcG9zdF9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAxMXB4O1xufVxuXG5cbi5tLXBvc3RfX2V4Y2VycHQge1xuICBAZXh0ZW5kICVmLWgxMDtcbiAgbWFyZ2luLXRvcDogMTFweDtcbn1cblxuLm0tcG9zdF9fZXhjZXJwdCBwIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ubS1wb3N0X19jdGEsXG4ubS1wb3N0X19saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAyMnB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIC5tLXBvc3QtLWV4dHJhICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgfVxuICB9XG59XG5cbi5tLXBvc3RfX2N0YSB7XG4gIEBleHRlbmQgJWEtY3RhLS1kdWFsLWxpbmU7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvdHRvbTogNHB4O1xuICB9XG59XG5cbi5tLXBvc3RfX2xpbmsge1xuICBAZXh0ZW5kICVmLWgxMDtcbiAgbWFyZ2luLWxlZnQ6IDE3cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIGVhc2Utb3V0IDE4MG1zLCBjb2xvciBlYXNlLW91dCAxODBtcztcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgYm90dG9tOiAwO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZlcnNpb249JzEuMScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAyNCcgaGVpZ2h0PScxMDI0JyB2aWV3Qm94PScwIDAgMTAyNCAxMDI0JyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwMDAnIHN0cm9rZS13aWR0aD0nNTYuODg4OScgc3Ryb2tlLW1pdGVybGltaXQ9JzQnIHN0cm9rZS1saW5lY2FwPSdidXR0JyBzdHJva2UtbGluZWpvaW49J21pdGVyJyBkPSdNNDMyLjM1NiAxMTMuNzc4bDM2OS43NzggMzY5Ljc3OC0zNjkuNzc4IDM2OS43NzgnJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTZweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcHg7XG4gICAgbGVmdDogLTIzcHg7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLW91dCAxODBtcztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICB0b3A6IDRweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICAgIHRvcDogNnB4O1xuICAgIH1cblxuICAgIC5zLW1vZHVsZS1ia2dkLnMtbW9kdWxlLWJrZ2QtLWRhcmsgJiB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMjQnIGhlaWdodD0nMTAyNCcgdmlld0JveD0nMCAwIDEwMjQgMTAyNCclM0UlM0NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2Utd2lkdGg9JzU2Ljg4ODknIHN0cm9rZS1taXRlcmxpbWl0PSc0JyBzdHJva2UtbGluZWNhcD0nYnV0dCcgc3Ryb2tlLWxpbmVqb2luPSdtaXRlcicgZD0nTTQzMi4zNTYgMTEzLjc3OGwzNjkuNzc4IDM2OS43NzgtMzY5Ljc3OCAzNjkuNzc4JyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9faGlnaGxpZ2h0O1xuICAgICAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4ubS1wb3N0X19zbGlkZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzICRiZXppZXItLWVhc2Utb3V0O1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgLy8gY29udGVudDogJyc7XG4gICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAvLyB0b3A6IDEwMCU7XG4gICAgICAvLyBsZWZ0OiAwO1xuICAgICAgLy8gcmlnaHQ6IDA7XG4gICAgICAvLyB6LWluZGV4OiAxO1xuICAgICAgLy8gaGVpZ2h0OiA5MnB4O1xuICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4ubS1wb3N0X19zbGlkZS1pbm5lciB7XG4gIHBhZGRpbmctdG9wOiAyM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICB9XG59XG5cbi5tLXBvc3RfX3NsaWRlLWhpZGRlbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBtaW4taGVpZ2h0OiA5MnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyAvLyBzbyB0aGF0IGlmIHlvdSBob3ZlciBwYXN0IHRoZSBjdGEgaXQgZG9lc24ndCBoaWRlIHN0cmFpZ2h0IGF3YXlcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICA+ICoge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyAkYmV6aWVyLS1lYXNlLW91dDtcbiAgICB9XG4gIH1cbn1cblxuLm0tcG9zdF9fcXVvdGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xuICB9XG59XG5cbi5tLXBvc3RfX3F1b3RlIHAge1xuICBAZXh0ZW5kICVmLWg1O1xufVxuXG4ubS1wb3N0X19xdW90ZSBjaXRlIHtcbiAgQGV4dGVuZCAlZi1oMTA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDIwMTQnO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG59XG5cbi5tLXBvc3RfX3F1b3RlIHA6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICfigJwnO1xufVxuXG4ubS1wb3N0X19xdW90ZSBwOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIge1xuICBjb250ZW50OiAn4oCdJztcbn1cblxuLm0tcG9zdC0tZXh0cmEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG5cbiAgPiAqIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyAkYmV6aWVyLS1lYXNlLW91dDtcbiAgfVxufVxuXG4ubS1wb3N0LS1leHRyYSAuYS12aWRlbyB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzICRiZXppZXItLWVhc2Utb3V0O1xuICAvLyB0cmFuc2l0aW9uOiBtYXJnaW4tdG9wIDAuM3MgJGJlemllci0tZWFzZS1vdXQ7XG59XG5cbi5tLXBvc3QtLWV4dHJhIC5tLXBvc3RfX2ltYWdlLFxuLm0tcG9zdC0tZXh0cmEgLmEtdmlkZW8ge1xuICBvcmRlcjogMTtcbn1cblxuLm0tcG9zdC0tZXh0cmEgLm0tcG9zdF9fc2xpZGUge1xuICBvcmRlcjogMjtcblxuICA+ICoge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzICRiZXppZXItLWVhc2Utb3V0O1xuICB9XG59XG5cbi5tLXBvc3QtLWV4dHJhOm5vdCgubS1wb3N0LS12aWRlbyk6aG92ZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgPiAqIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCk7XG4gICAgfVxuXG4gICAgLm0tcG9zdF9fc2xpZGUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNTBweCk7XG4gICAgfVxuXG4gICAgLm0tcG9zdF9fc2xpZGUtaGlkZGVuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgICAgID4gKiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTVzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubS1wb3N0LS12aWRlbyAubS1wb3N0X19zbGlkZTpob3ZlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICA+ICoge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNTBweCk7XG4gICAgICAvLyBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cblxuICAgIC5tLXBvc3RfX3NsaWRlLWhpZGRlbiB7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuXG4gICAgICA+ICoge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgKyAuYS12aWRlbyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwcHgpO1xuICAgICAgLy8gbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgfVxuICB9XG59XG5cbi5tLXBvc3QtLXZpZGVvIC5tLXBvc3RfX3NsaWRlLWhpZGRlbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtaW4taGVpZ2h0OiAyNDBweDtcbiAgfVxufVxuXG4ubS1wb3N0LS1mZWF0dXJlIHtcbiAgLm0tcG9zdF9fdGl0bGUge1xuICAgIEBleHRlbmQgJWYtaDQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzNHB4O1xuICAgIH1cbiAgfVxufVxuXG4ubS1wb3N0LS1xdW90ZSB7XG59XG5cblxuXG5cbi5ib2R5LS1oaWdobGlnaHQsXG4ucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IHtcbiAgLm0tcG9zdCA+IGEge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3Vze1xuICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dDtcbiAgICB9XG4gIH1cblxuICAubS1wb3N0X190aXRsZSxcbiAgLm0tcG9zdF9fdGl0bGUgYSxcbiAgLm0tcG9zdF9fcXVvdGUgcCB7XG4gICAgY29sb3I6ICRjb2xvcl9fdGV4dDtcbiAgfVxuXG4gIC5tLXBvc3RfX3NsaWRlLFxuICAubS1wb3N0X19zbGlkZTo6YWZ0ZXIsXG4gIC5tLXBvc3RfX3NsaWRlLWlubmVyLFxuICAubS1wb3N0X19zbGlkZS1oaWRkZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICB9XG5cbiAgLm0tcG9zdF9fY3RhLFxuICAubS1wb3N0X190YWcge1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQtLWRhcms7XG4gIH1cblxuICAucy1tb2R1bGUtYmtnZC0tZGFyayB7XG4gICAgLm0tcG9zdF9fdGl0bGUsXG4gICAgLm0tcG9zdF9fdGl0bGUgYSxcbiAgICAubS1wb3N0X19xdW90ZSBwIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfX3RleHQtLWRhcms7XG4gICAgfVxuXG4gICAgLm0tcG9zdF9fY3RhOmhvdmVyLFxuICAgIC5tLXBvc3RfX2xpbms6aG92ZXIsXG4gICAgLm0tcG9zdF9fdGl0bGUgYTpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG4gICAgfVxuICAgIFxuICAgIC5tLXBvc3RfX2ltYWdlOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgICB9XG4gIH1cbn1cbiIsIi5tLXBvc3RJbmxpbmUge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcl9fc2VwYXJhdG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgfVxufVxuXG4ubS1wb3N0SW5saW5lID4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICYsXG4gIC5tLXBvc3RJbmxpbmVfX3RpdGxlIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciBlYXNlLWluLW91dCAxODBtcztcbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCl7XG4gICAgJixcbiAgICAubS1wb3N0SW5saW5lX190aXRsZSB7XG4gICAgICBjb2xvcjogJGNvbG9yLS1oaWdobGlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi5tLXBvc3RJbmxpbmVfX2ltYWdlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubS1wb3N0SW5saW5lX19pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ubS1wb3N0SW5saW5lX19tYWluIHtcbn1cblxuLm0tcG9zdElubGluZV9fbWV0YSB7XG4gIEBleHRlbmQgJWYtaDExO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMjJweDtcbiAgY29sb3I6ICRjb2xvcl9fdGV4dC0tc3VidGl0bGU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm0tcG9zdElubGluZV9fdGl0bGUge1xuICBAZXh0ZW5kICVmLWg1O1xuICBtYXJnaW4tdG9wOiAxMXB4O1xuICBjb2xvcjogJGNvbG9yX190ZXh0O1xuXG4gIC5kYXJrICYge1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQtLWRhcms7XG4gIH1cbn1cblxuLm0tcG9zdElubGluZV9fZXhjZXJwdCB7XG4gIEBleHRlbmQgJWYtaDE1O1xuICBtYXJnaW4tdG9wOiA0cHg7XG59XG5cbi5tLXBvc3RJbmxpbmUtLW5vLWltYWdlIC5tLXBvc3RJbmxpbmVfX21haW4ge1xufVxuXG4uby10d29UaGlyZHMgLm0tcG9zdElubGluZV9faW1hZ2Uge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgd2lkdGg6IDMwLjQlO1xuICB9XG59XG5cbi5vLXR3b1RoaXJkcyAubS1wb3N0SW5saW5lX19tYWluIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHdpZHRoOiA2OS42JTtcbiAgfVxufVxuXG4uby10d29UaGlyZHMgLm0tcG9zdElubGluZTpsYXN0LWNoaWxkLFxuLm8tbGlzdGluZ0Z1bGwgLm0tcG9zdElubGluZTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gIH1cbn1cblxuLm8tdHdvVGhpcmRzIC5tLXBvc3RJbmxpbmU6bGFzdC1jaGlsZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi5tLXB1YiB7XG59XG5cbi5tLXB1YiA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAubS1wdWJfX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLm0tcHViX19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMjc1cHg7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gIH1cbn1cblxuLm0tcHViX19pbWFnZS1pbm5lciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAvLyB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm0tcHViX19pbWFnZSAuYS1pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LWhlaWdodDogMjc1cHg7XG4gIG1hcmdpbjogMDtcblxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yX19oaWdobGlnaHQ7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSBlYXNlLWluLW91dCAzNjBtcztcbiAgfVxuXG4gIGE6aG92ZXIgJiB7XG4gICAgJjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKDEwcHgsIDEwcHgsIDApO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKC0xMHB4LCAtMTBweCwgMCk7XG4gICAgfVxuICB9XG59XG5cbi5tLXB1Yl9faW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSBlYXNlLWluLW91dCAzNjBtcywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAzNjBtcztcbn1cblxuLm0tcHViX190aXRsZSB7XG4gIEBleHRlbmQgJWYtaDE0O1xuICBtYXJnaW46IDIycHggMCAwO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLm0tcHViX19zdWJ0aXRsZSB7XG4gIEBleHRlbmQgJWYtaDEwO1xuICBtYXJnaW46IDA7XG59XG5cbi5tLXB1Yl9fbWV0YSB7XG4gIEBleHRlbmQgJWYtaDEwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBjb2xvcjogJGNvbG9yX190ZXh0LS1zdWJ0aXRsZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIHVwKSB7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIH1cbn1cblxuXG4uYm9keS0taGlnaGxpZ2h0LFxuLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCB7XG4gIC5tLXB1Yl9fdGl0bGUge1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQ7XG4gIH1cblxuICAubS1wdWJfX21ldGEge1xuICAgIGNvbG9yOiByZ2JhKCRjb2xvcl9fdGV4dC0tZGFyaywgMC40KTtcbiAgfVxuXG4gIC5tLXB1Yl9faW1hZ2UgLmEtaW1nOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLS1kYXJrO1xuICB9XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXN7XG4gICAgICAubS1wdWJfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tLXNpZGViYXJNb2R1bGUge1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG59XG5cbi5tLXNpZGViYXJNb2R1bGVfX2NvbnRlbnQgaWZyYW1lIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubS1zaWRlYmFyTW9kdWxlLS1ldmVudHMge1xufVxuXG4ubS1zaWRlYmFyTW9kdWxlX19ldmVudHMge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZy1ib3R0b206IDIzcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9fc2VwYXJhdG9yO1xuICB9XG59XG5cbi5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cyBsaSB7XG4gIG1hcmdpbi10b3A6IDIzcHg7XG4gIHBhZGRpbmctdG9wOiAxOHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX19zZXBhcmF0b3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLy8gbWFyZ2luLXRvcDogMDtcbiAgICAvLyBwYWRkaW5nLXRvcDogMDtcbiAgICAvLyBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbi5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cyBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICB9XG59XG5cbi5tLXNpZGViYXJNb2R1bGVfX2V2ZW50cy1tZXRhIHtcbiAgQGV4dGVuZCAlZi1oMTE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogJGNvbG9yX190ZXh0LS1zdWJ0aXRsZTtcbn1cblxuLm0tc2lkZWJhck1vZHVsZV9fZXZlbnRzLXRpdGxlIHtcbiAgQGV4dGVuZCAlZi1oMTA7XG4gIG1hcmdpbjogMDtcbn1cblxuLm0tc2lkZWJhck5hdmlnYXRpb24gKyAubS1zaWRlYmFyTW9kdWxlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gIH1cbn1cblxuLm0tc2lkZWJhci1kcm9wem9uZSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbiIsIi5tLXNpZGViYXJOYXZpZ2F0aW9uIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIH1cbn1cblxuLm0tc2lkZWJhck5hdmlnYXRpb25fX2l0ZW1zV3JhcHBlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4iLCIubS1zdGF0c1BhbmVsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbi5tLXN0YXRzUGFuZWwgLm0tc3RhdHNMaXN0IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi5tLXRleHRCbG9jayB7XG59XG5cbi5tLXRleHRCbG9jazpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5tLXRleHRCbG9jayBoMiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICB9XG59XG5cbi5tLXRleHRCbG9jayBoNSB7XG59XG5cbi5tLXRleHRCbG9jayB1bCB7XG59XG5cbi5tLXRleHRCbG9jay5vLXByaW1hcnlDb250ZW50IGg1ICsgdWwge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ubS10ZXh0QmxvY2suby1wcmltYXJ5Q29udGVudCB1bCBsaSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5tLXRleHRCbG9jay5vLXByaW1hcnlDb250ZW50IC5pbmxpbmUtY3RhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICBjb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6IDdweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMjQnIGhlaWdodD0nMTAyNCcgdmlld0JveD0nMCAwIDEwMjQgMTAyNCclM0UlM0NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRTgyRTIxJyBzdHJva2Utd2lkdGg9JzU2Ljg4ODknIHN0cm9rZS1taXRlcmxpbWl0PSc0JyBzdHJva2UtbGluZWNhcD0nYnV0dCcgc3Ryb2tlLWxpbmVqb2luPSdtaXRlcicgZD0nTTQzMi4zNTYgMTEzLjc3OGwzNjkuNzc4IDM2OS43NzgtMzY5Ljc3OCAzNjkuNzc4JyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRVwiKTtcbiAgfVxufVxuXG5bZGF0YS11eC1wYWdlYnVpbGRlcl0gPiB1bCA+IGxpOmZpcnN0LWNoaWxkIC5tLXRleHRCbG9jay5hZGQtc2VwYXJhdG9yLS10b3A6Zmlyc3QtY2hpbGQsXG5bZGF0YS11eC1wYWdlYnVpbGRlcl0gPiB1bCA+IGxpOmZpcnN0LWNoaWxkIHNwYW4gKyAubS10ZXh0QmxvY2suYWRkLXNlcGFyYXRvci0tdG9wIHtcbiAgcGFkZGluZy10b3A6IDA7XG5cbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBoMjpmaXJzdC1jaGlsZCB7XG4gICAgLy8gbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuIiwiLm0td29ya0xpc3RfX2N0YSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4iLCIuby1hY2NvcmRpb25Ib3Jpem9udGFsIHtcbn1cblxuLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faW5uZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5vLWFjY29yZGlvbkhvcml6b250YWxfX3dyYXBwZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWF4LXdpZHRoOiA5OTk5cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcl9fc2VwYXJhdG9yO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxufVxuXG4uby1hY2NvcmRpb25Ib3Jpem9udGFsX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gIH1cbn1cblxuLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9fZm9vdGVyLWN0YSB7XG4gIEBleHRlbmQgJWEtY3RhLS1kdWFsLWxpbmU7XG59XG5cbi5vLWFjY29yZGlvbkhvcml6b250YWxfX2l0ZW1zIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgfVxufVxuXG4uby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSBub3dyYXA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzICRiZXppZXItLWVhc2UtaW4tb3V0O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDEwcHggMCAxMHB4IC0xMHB4IHJnYmEoMCwwLDAsMCk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX2N0YUJhY2tncm91bmQ7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAxMHB4IDAgMTBweCAtMTBweCByZ2JhKDAsMCwwLDAuMyk7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGNvbG9yX19zZXBhcmF0b3I7XG4gICAgfVxuICB9XG59XG5cbi5vLWFjY29yZGlvbkhvcml6b250YWxfX2l0ZW0tdGl0bGUge1xuICBAZXh0ZW5kICVmLWgxMDtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzICRiZXppZXItLWVhc2UtaW4tb3V0O1xuICB9XG59XG5cbi5vLWFjY29yZGlvbkhvcml6b250YWxfX2l0ZW0tdHJpZ2dlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNjA1cHg7XG4gICAgaGVpZ2h0OiA2MDVweDtcbiAgICBwYWRkaW5nOiAyN3B4IDQ1cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODBweCkgcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgfVxufVxuXG4uby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtLWNvbnRlbnQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuLmEtYWNjb3JkaW9uSG9yaXpvbnRhbC0tYWN0aXZlLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX2N0YUJhY2tncm91bmQ7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMTBweCAwIDEwcHggLTEwcHggcmdiYSgwLDAsMCwwLjMpO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uYS1hY2NvcmRpb25Ib3Jpem9udGFsLS1hY3RpdmUgLm8tYWNjb3JkaW9uSG9yaXpvbnRhbF9faXRlbS10aXRsZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5hLWFjY29yZGlvbkhvcml6b250YWwtLWFjdGl2ZSAuby1hY2NvcmRpb25Ib3Jpem9udGFsX19pdGVtLWNvbnRlbnQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxufVxuXG5cbi5vLWFjY29yZGlvbkhvcml6b250YWwgLmEtYWNjb3JkaW9uQ2FyZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAuYS1hY2NvcmRpb25DYXJkX19ib2R5IHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5hLWFjY29yZGlvbkNhcmRfX2JvZHkge1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIC5hLWFjY29yZGlvbkNhcmRfX2JvZHkge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dDtcblxuICAgICAgICAuYS1hY2NvcmRpb25DYXJkX19jdGEge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYS1hY2NvcmRpb25DYXJkX19zdWJ0aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dC0tc3VidGl0bGU7XG4gICAgICAgIH1cblxuICAgICAgICAuYS1hY2NvcmRpb25DYXJkX19ob3Zlci1vbiAuYS1hY2NvcmRpb25DYXJkX19zdWJ0aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm8tY2FyZWVyT3V0Y29tZXMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uby1jYXJlZXJPdXRjb21lcyAubS1tb2R1bGVIZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5vLWNhcmVlck91dGNvbWVzX19pdGVtcyB7XG4gIG1hcmdpbi10b3A6IC01cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgfVxufVxuXG4uby1jYXJlZXJPdXRjb21lc19faXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmOm50aC1jaGlsZCgzbi0xKXtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgbWFyZ2luLXRvcDogOTVweDtcbiAgICB9XG4gIH1cbn1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2l0ZW0gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5vLWNhcmVlck91dGNvbWVzIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4uby1jYXJlZXJPdXRjb21lcyAuY2Fyb3VzZWwtY2VsbCB7XG4gIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtNjBweDtcbiAgb3BhY2l0eTogMC4yO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgJGJlemllci0tc3RhbmRhcmQ7XG5cbiAgJi5pcy1zZWxlY3RlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiA1O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2ltYWdlIHtcbiAgbWFyZ2luOiAwO1xuICBoZWlnaHQ6IDIwMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5vLWNhcmVlck91dGNvbWVzX19pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyAkYmV6aWVyLS1zdGFuZGFyZDtcblxuICAuaXMtc2VsZWN0ZWQgJiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4uby1jYXJlZXJPdXRjb21lc19fbmFtZSxcbi5vLWNhcmVlck91dGNvbWVzX19yb2xlLFxuLm8tY2FyZWVyT3V0Y29tZXNfX2NvdXJzZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgJGJlemllci0tc3RhbmRhcmQ7XG5cbiAgLmlzLXNlbGVjdGVkICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX25hbWUge1xuICBAZXh0ZW5kICVmLWgxMDtcbiAgbWFyZ2luLXRvcDogMjVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDIycHg7XG4gIH1cbn1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX3JvbGUge1xuICBAZXh0ZW5kICVmLWg4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG5cbi5vLWNhcmVlck91dGNvbWVzX19jb3Vyc2Uge1xuICBAZXh0ZW5kICVmLWgxMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogN3B4O1xuICB9XG59XG5cbi5vLWNhcmVlck91dGNvbWVzX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBwYWRkaW5nLXRvcDogMzBweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDQ5cHg7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDcxcHg7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCB4c21hbGwpIC8gMjtcbiAgICByaWdodDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCB4c21hbGwpIC8gMjtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkY29sb3JfX2JsYWNrLS05MiwgMC4xNSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2NvbnRlbnQgcCB7XG4gIEBleHRlbmQgJWYtaDE1O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm8tY2FyZWVyT3V0Y29tZXNfX2N0YSB7XG4gIEBleHRlbmQgJWEtY3RhLS1kdWFsLWxpbmU7XG4gIGNvbG9yOiAkY29sb3JfX3RleHQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gIH1cbn1cbiIsIi5vLWZhc3RGYWN0cyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDNweDtcbiAgfVxufVxuXG4uby1mYXN0RmFjdHNfX2l0ZW1zIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICB9XG59XG5cbi5vLWZhc3RGYWN0c19faXRlbSB7XG4gIEBleHRlbmQgJWYtaDgtYjtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogMjNweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm8tZmFzdEZhY3RzX19pdGVtLWlubmVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLm8tZmFzdEZhY3RzX19pdGVtOmZpcnN0LWNoaWxkIC5vLWZhc3RGYWN0c19faXRlbS1pbm5lciB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBib3JkZXItdG9wOiAwO1xufVxuIiwiLm8tZmFzdEZhY3RzRGV0YWlsIHtcbiAgcGFkZGluZy10b3A6IDI4cHg7XG4gIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX19zZXBhcmF0b3I7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZy1ib3R0b206IDY1cHg7XG4gIH1cbn1cblxuLm8tZmFzdEZhY3RzRGV0YWlsX19pdGVtcyxcbi5vLXByaW1hcnlDb250ZW50IHVsIC5vLWZhc3RGYWN0c0RldGFpbF9faXRlbXMge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIH1cbn1cblxuLm8tZmFzdEZhY3RzRGV0YWlsX19pdGVtLFxuLm8tcHJpbWFyeUNvbnRlbnQgdWwgLm8tZmFzdEZhY3RzRGV0YWlsX19pdGVtcyAuby1mYXN0RmFjdHNEZXRhaWxfX2l0ZW0ge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAxNHB4O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAxOXB4O1xuXG4gICAgJjpudGgtY2hpbGQoLW4rMil7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uby1mYXN0RmFjdHNEZXRhaWxfX3RpdGxlLFxuLm8tZmFzdEZhY3RzRGV0YWlsX19jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5vLWZhc3RGYWN0c0RldGFpbF9fdGl0bGUge1xuICBAZXh0ZW5kICVmLWgxMTtcbiAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xufVxuXG4uby1mYXN0RmFjdHNEZXRhaWxfX2NvbnRlbnQge1xuICBAZXh0ZW5kICVmLWg1O1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5vLWZhc3RGYWN0c0RldGFpbF9fZm9vdGVyIHtcbiAgQGV4dGVuZCAlZi1oMTA7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDI5cHg7XG4gIH1cbn1cblxuLm8tZmFzdEZhY3RzRGV0YWlsX19mb290ZXItbGluayB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG4gIH1cbn1cblxuLm8tZmFzdEZhY3RzRGV0YWlsICsgLmFkZC1zZXBhcmF0b3ItLXRvcDo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm8tcHJpbWFyeUNvbnRlbnQgLm0taGVyb0hlYWRpbmcgKyAuby1mYXN0RmFjdHNEZXRhaWwge1xuICBtYXJnaW4tdG9wOiA0M3B4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogNjZweDtcbiAgfVxufVxuIiwiLm8tZmVhdHVyZWRQb3N0c19fdHdvVGhpcmRzIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBtYXJnaW4tdG9wOiAzN3B4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDQycHg7XG4gIH1cbn1cblxuLm8tZmVhdHVyZWRQb3N0c19fdGhyZWVDb2wge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDM3cHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMTAzcHg7XG4gIH1cbn1cblxuLm8tZmVhdHVyZWRQb3N0cyAubS1wb3N0IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcbiAgfVxufVxuIiwiLm8tZml2ZUNvbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5vLWZpdmVDb2wgLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5vLWZpdmVDb2xfX2l0ZW0ge1xufVxuXG4uby1maXZlQ29sX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gIH1cbn1cblxuLm8tZml2ZUNvbF9fZm9vdGVyLWN0YSB7XG4gIEBleHRlbmQgJWEtY3RhLS1kdWFsLWxpbmU7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLmJvZHktLWhpZ2hsaWdodCxcbi5zLW1vZHVsZS1ia2dkLS1oaWdobGlnaHQge1xuICAuby1maXZlQ29sX19mb290ZXItY3RhIHtcbiAgICBjb2xvcjogJGNvbG9yX190ZXh0O1xuICB9XG59XG4iLCIuby1oZXJvRmx5b3V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICBtYXJnaW4tYm90dG9tOiAtMjAwcHg7XG4gIHBhZGRpbmctdG9wOiA0NnB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtaW4taGVpZ2h0OiAyNzY1cHg7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uby1oZXJvRmx5b3V0X193cmFwcGVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGhlaWdodDogMjc2NXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMDBweDtcbiAgfVxufVxuXG4uby1oZXJvRmx5b3V0X190aXRsZS13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xuICBtYXJnaW4tYm90dG9tOiAtOHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGJvdHRvbTogNDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5vLWhlcm9GbHlvdXRfX3RpdGxlIHtcbiAgQGV4dGVuZCAlZi1oMTg7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbn1cblxuLm8taGVyb0ZseW91dF9fdGl0bGUgc3BhbiB7XG4gIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbn1cblxuLm8taGVyb0ZseW91dF9faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogOTg1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBoZWlnaHQ6IDEyMDBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogOTVweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA5NXB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiA1MDBweDtcbiAgICAvLyBoZWlnaHQ6IDE5NjVweDtcbiAgfVxufVxuXG4uby1oZXJvRmx5b3V0X19pbWFnZXMge1xuICBoZWlnaHQ6IDk4NXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgaGVpZ2h0OiAxMjAwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMjI2NXB4O1xuICAgIC8vIGhlaWdodDogY2FsYygxMDB2aCAtIDE1NXB4KTtcbiAgICAvLyBoZWlnaHQ6IDEwMHZoO1xuICB9XG59XG5cbi5vLWhlcm9GbHlvdXRfX2ltYWdlcyAuYS1pbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgdG9wOiAyNSU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXG4gICAgJjpudGgtY2hpbGQoMSl7IC8vIDZ0aFxuICAgICAgdG9wOiAyNSU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB6LWluZGV4OiA2O1xuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxMjAwbXM7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNDQwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMil7IC8vIDFzdFxuICAgICAgei1pbmRleDogMTtcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogMjAwbXM7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNDQwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMyl7IC8vIDR0aFxuICAgICAgei1pbmRleDogNDtcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogODAwbXM7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMzY1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNCl7IC8vIDNyZFxuICAgICAgei1pbmRleDogMztcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogNjAwbXM7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNTgwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNSl7IC8vIDV0aFxuICAgICAgei1pbmRleDogNTtcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogMTAwMG1zO1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDUyMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDYpeyAvLyAybmRcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBhbmltYXRpb24tZGVsYXk6IDQwMG1zO1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDQ0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAmOm50aC1jaGlsZCgxKXtcbiAgICAgIHRvcDogMjAwcHg7XG4gICAgICBsZWZ0OiAzMHB4O1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IC0zMHB4O1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgzKXtcbiAgICAgIHRvcDogODBweDtcbiAgICAgIHJpZ2h0OiAtMzBweDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNCl7XG4gICAgICB0b3A6IDQwNnB4O1xuICAgICAgcmlnaHQ6IC0zMHB4O1xuICAgICAgei1pbmRleDogNDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg1KXtcbiAgICAgIHRvcDogNDc1cHg7XG4gICAgICBsZWZ0OiAtMzBweDtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNil7XG4gICAgICB0b3A6IDYwNXB4O1xuICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICB6LWluZGV4OiA2O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICY6bnRoLWNoaWxkKDEpe1xuICAgICAgbGVmdDogMjBweDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpe1xuICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg0KXtcbiAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNSl7XG4gICAgICBsZWZ0OiAtMjBweDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg2KXtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uby1oZXJvRmx5b3V0X19pbWFnZXMgLmEtaW1nIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uby1oZXJvRmx5b3V0LS1hY3RpdmUgLm8taGVyb0ZseW91dF9faW1hZ2VzIC5hLWltZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMSwwLjMsMC4yNSwxKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgJjpudGgtY2hpbGQobisyKXtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIuby1oZXJvRnVsbFNjcmVlbiB7XG4gIEBpbmNsdWRlIGZ1bGwtYmxlZWQ7XG4gIG1hcmdpbi10b3A6IC03MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi10b3A6IC04NXB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IC0xMDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzRweDtcbiAgfVxufVxuXG4uby1oZXJvRnVsbFNjcmVlbiAuaWNvbi0tY2hldnJvbi10aGluLWRvd24ge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiA1MHB4O1xuICAgIHJpZ2h0OiA2MHB4O1xuICAgIHotaW5kZXg6IDMwO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBmaWxsOiAkY29sb3JfX2JhY2tncm91bmQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fbWFpbi1pbWFnZSB7XG59XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19tYWluLWltYWdlIC5hLWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBtaW4taGVpZ2h0OiAyNDBweDtcbiAgbWFyZ2luOiAwIC0xMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgbWFyZ2luOiAwIC0yMHB4O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogODAwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDYwcHgpO1xuICAgIG1hcmdpbjogMCAtMzBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgdXApIHtcbiAgICBtYXJnaW46IDAgLTQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICBtYXJnaW46IDAgLTYwcHg7XG4gIH1cbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX21haW4taW1hZ2U6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGhlaWdodDogMTEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsMC40KSwgcmdiYSgwLDAsMCwwKSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNjBweDtcbiAgfVxufVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fbWFpbi1pbWFnZSAuYS1pbWdfX2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fbWFpbi10aXRsZSB7XG4gIEBleHRlbmQgJWYtaDE4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTNweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICBib3R0b206IDUwcHg7XG4gIH1cbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX21haW4tdGl0bGUgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fdGl0bGUge1xuICBAZXh0ZW5kICVmLWgxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTJweDtcbiAgei1pbmRleDogMjY7IC8vIHRvIHNpdCBvdmVyIHZpZGVvc1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogJGNvbG9yX190ZXh0LS1kYXJrO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGJvdHRvbTogNDZweDtcbiAgfVxufVxuXG4uby1oZXJvRnVsbFNjcmVlbl9fdGV4dCB7XG4gIEBleHRlbmQgJWYtaDY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjc7IC8vIHRvIHNpdCBvdmVyIHRpdGxlcyB3aGljaCBzaXQgb3ZlciB2aWRlb3NcbiAgcGFkZGluZy10b3A6IDMycHg7XG4gIHBhZGRpbmctYm90dG9tOiAzNHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwYWRkaW5nLXRvcDogODNweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTA3cHg7XG4gIH1cbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX3RleHQtLWxhc3Qge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZy1ib3R0b206IDY5cHg7XG4gIH1cbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX3RleHQgcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgcGFkZGluZy1ib3R0b206IDQ2cHg7XG4gIH1cbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtdmlkZW8uaXMtYWN0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyNTtcbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtdmlkZW9fX2xpbmssXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS12aWRlb19fZmlndXJlIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtaW1nLFxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtdmlkZW8sXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS12aWRlb19fbGluayB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW0gLmEtaW1nX19pbWFnZSxcbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLXZpZGVvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzMHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA0NXB4KTtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMTYwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgIG1hcmdpbi1yaWdodDogLTQ1cHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlIHVwKSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDgwcHgpO1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoKCgxMDB2dyAtICgzMjBweCkpICogMC42NikgKiAwLjYyNSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtODBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoMTc0MHB4KSB7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbSAuYS12aWRlbyB7XG4gIG1pbi1oZWlnaHQ6IDA7XG59XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtIC5hLWltZ19faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uby1oZXJvRnVsbFNjcmVlbl9faXRlbTpudGgtY2hpbGQoZXZlbikgLm8taGVyb0Z1bGxTY3JlZW5fX3RpdGxlIHtcbiAgbGVmdDogMTVweDtcbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW06bnRoLWNoaWxkKGV2ZW4pIC5vLWhlcm9GdWxsU2NyZWVuX190aXRsZSBzcGFuIHsgIFxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW06bnRoLWNoaWxkKG9kZCkgLm8taGVyb0Z1bGxTY3JlZW5fX3RpdGxlIHNwYW4geyAgXG4gIGxlZnQ6IDA7XG59XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtOm50aC1jaGlsZChvZGQpIC5hLWltZyxcbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtOm50aC1jaGlsZChvZGQpIC5hLXZpZGVvIHtcbiAgbGVmdDogMDtcbn1cblxuLm8taGVyb0Z1bGxTY3JlZW5fX2l0ZW06bnRoLWNoaWxkKG9kZCkgLmEtaW1nX19pbWFnZSxcbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtOm50aC1jaGlsZChvZGQpIC5hLXZpZGVvIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICB9XG59XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtOm50aC1jaGlsZChvZGQpIC5hLXZpZGVvX19maWd1cmUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtOm50aC1jaGlsZChldmVuKSAuYS12aWRlb19fZmlndXJlIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmRhcmsgLm8taGVyb0Z1bGxTY3JlZW4sXG4uZGFyayAuby1oZXJvRnVsbFNjcmVlbl9faXRlbSxcbi5kYXJrIC5vLWhlcm9GdWxsU2NyZWVuX190ZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLS1kYXJrO1xuICBjb2xvcjogJGNvbG9yX190ZXh0LS1kYXJrO1xufVxuXG4uby1oZXJvRnVsbFNjcmVlbixcbi5vLWhlcm9GdWxsU2NyZWVuX19pdGVtLFxuLm8taGVyb0Z1bGxTY3JlZW5fX3RleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3JfX3RleHQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyAkYmV6aWVyLS1lYXNlLWluLW91dCwgY29sb3IgMC4ycyAkYmV6aWVyLS1lYXNlLWluLW91dDtcbn1cbiIsIkBmdW5jdGlvbiByZWxhdGl2ZVBvcygkdmFsdWUsICRjb250YWluZXIsICRtdWx0aXBsaWVyOiAxMDAlKSB7XG4gQHJldHVybiAoJHZhbHVlIC8gJGNvbnRhaW5lcikgKiAkbXVsdGlwbGllcjtcbn1cblxuQG1peGluIGZ1bGwtYmxlZWQoKXtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTQwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuIiwiLm8taGVyb0dhbGxlcnkge1xuICAvLyBoZWlnaHQ6IDMwMHZoO1xuICBtYXJnaW4tdG9wOiAxOXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMzlweDtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG5cbi5vLWhlcm9HYWxsZXJ5X19oZWFkZXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDEwN3B4O1xuICB6LWluZGV4OiA1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICB0b3A6IDE0MHB4OyAgICBcbiAgfVxufVxuXG4uby1oZXJvR2FsbGVyeV9fdGl0bGUge1xuICBAaW5jbHVkZSB0aXRsZSgyNSwgMjUsIDcwMCk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCB1cCkge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFyZW07XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgfVxufVxuXG4uby1oZXJvR2FsbGVyeV9fdGl0bGUgc3BhbiB7XG4gIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbn1cblxuLm8taGVyb0dhbGxlcnlfX2ltYWdlcyB7XG4gIG1hcmdpbi10b3A6IDIxcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbn1cblxuLm8taGVyb0dhbGxlcnlfX2ltYWdlIHsgIFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpudGgtY2hpbGQoMSkge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAmOm50aC1jaGlsZCgyKSB7XG4gICAgei1pbmRleDogMjtcbiAgICBtYXJnaW4tdG9wOiAtMyU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTMlO1xuICAgIH1cbiAgfVxuXG4gICY6bnRoLWNoaWxkKDMpIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG1hcmdpbi10b3A6IC0zJTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTYlO1xuICAgIH1cbiAgfVxufVxuXG4uby1oZXJvR2FsbGVyeV9faW1hZ2UgLmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLm8taGVyb0dhbGxlcnlfX2ltYWdlcyAuYS1pbWcge1xuICBtYXJnaW46IDA7XG59XG5cbi5vLWhlcm9HYWxsZXJ5X19pbWFnZXMgLmEtaW1nIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cblxuLm8taGVyb0dhbGxlcnlfX2ltYWdlLS1yaWdodCAuYS1pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMCAtMjBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgdXApIHtcbiAgICBtYXJnaW46IDAgMCAwIC0zMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzMHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWluLWhlaWdodDogY2FsYygoKDEwMHZ3IC0gKDE2MHB4KSkgKiAwLjY2KSAqIDAuNjI1KTtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgNDVweCk7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoKCgxMDB2dyAtICgzMjBweCkpICogMC42NikgKiAwLjYyNSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KDE3NDBweCkge1xuICAgIC8vIGhlaWdodDogNTg1cHg7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuIiwiLm8taGVyb1NpZGVieVNpZGUge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgfVxufVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9faW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbi1yZXZlcnNlIG5vd3JhcDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLm8taGVyb1NpZGVieVNpZGVfX21haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG59XG5cbi5vLWhlcm9TaWRlYnlTaWRlX190aXRsZSB7XG4gIEBleHRlbmQgJWYtaDI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA4MHB4KTtcbiAgfVxufVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fdGl0bGUgc3Ryb25nIHtcbiAgY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xufVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEge1xufVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEgLmEtaW1nLFxuLm8taGVyb1NpZGVieVNpZGVfX21lZGlhIC5hLXZpZGVvX19saW5rIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuXG4uby1oZXJvU2lkZWJ5U2lkZV9fbWVkaWEtLXJpZ2h0IC5hLWltZyxcbi5vLWhlcm9TaWRlYnlTaWRlX19tZWRpYS0tcmlnaHQgLmEtdmlkZW8ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMjJweCAtMjBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgdXApIHtcbiAgICBtYXJnaW46IDAgMCAyMnB4IC0zMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzMHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWluLWhlaWdodDogY2FsYygoKDEwMHZ3IC0gKDE2MHB4KSkgKiAwLjY2KSAqIDAuNjI1KTtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgNDVweCk7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoKCgxMDB2dyAtICgzMjBweCkpICogMC42NikgKiAwLjYyNSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KDE3NDBweCkge1xuICAgIC8vIGhlaWdodDogNTg1cHg7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuIiwiLm8taGVyb1RpdGxlRmlyc3Qge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG5cbi5vLWhlcm9UaXRsZUZpcnN0IC5vLWxhbmRpbmdfX2NvcHkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kO1xuXG4gICAgLmRhcmsgJiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtLWRhcms7XG4gICAgfVxuXG4gICAgLmJvZHktLWhpZ2hsaWdodCAmIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4uby1oZXJvVGl0bGVGaXJzdCAuby1sYW5kaW5nX190aXRsZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLm8taGVyb1RpdGxlRmlyc3QgLm8tbGFuZGluZ19fdGl0bGUtd3JhcHBlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIG1hcmdpbi10b3A6IC0zNXB4O1xuICB9XG59XG5cbi5vLWhlcm9UaXRsZUZpcnN0IC5vLWxhbmRpbmdfX21lZGlhIHtcbn1cblxuLm8taGVyb1RpdGxlRmlyc3QgLm8tbGFuZGluZ19fY29weTpmaXJzdC1jaGlsZCArIC5vLWxhbmRpbmdfX21lZGlhIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLm8taGVyb1RpdGxlRmlyc3QgLm8tbGFuZGluZ19fbWVkaWEgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uby1oZXJvVGl0bGVGaXJzdCAuby1sYW5kaW5nX19tZWRpYUltYWdlUmlnaHQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuIiwiLm8tbXVsdGltZWRpYUdhbGxlcnkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIC8vIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG59XG5cbi5vLW11bHRpbWVkaWFHYWxsZXJ5IC5tLW1vZHVsZUhlYWRlcl9faW50cm8ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uby1tdWx0aW1lZGlhR2FsbGVyeSAuZmxpY2tpdHktdmlld3BvcnQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLm8tbXVsdGltZWRpYUdhbGxlcnlfX2l0ZW1zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uby1tdWx0aW1lZGlhR2FsbGVyeV9faXRlbSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJiA+ICoge1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICB9XG5cbiAgICAuY29sdW1ucyB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDEpIC5jb2x1bW5zIHtcbiAgICAgIG1hcmdpbi10b3A6IC00MHB4O1xuICAgIH1cblxuICAgIC8vICY6bnRoLWNoaWxkKDIpIC5jb2x1bW5zIHtcbiAgICAvLyAgIG1hcmdpbi10b3A6IC0xODBweDtcbiAgICAvLyB9XG5cbiAgLy8gICAmOm50aC1jaGlsZCg2bi01KSAuY29sdW1ucyB7XG4gIC8vICAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgLy8gICB9XG5cbiAgLy8gICAmOm50aC1jaGlsZCg2bi00KSAuY29sdW1ucyB7XG4gIC8vICAgICBtYXJnaW4tdG9wOiAtMTgwcHg7XG4gIC8vICAgfVxuXG4gIC8vICAgJjpudGgtY2hpbGQoNm4tMykgLmNvbHVtbnMge1xuICAvLyAgICAgbWFyZ2luLXRvcDogLTg1cHg7XG4gIC8vICAgfVxuXG4gIC8vICAgJjpudGgtY2hpbGQoNm4tMikgLmNvbHVtbnMge1xuICAvLyAgICAgbWFyZ2luLXRvcDogLTE0NXB4O1xuICAvLyAgIH1cblxuICAvLyAgICY6bnRoLWNoaWxkKDZuLTEpIC5jb2x1bW5zIHtcbiAgLy8gICAgIG1hcmdpbi10b3A6IC0zMTBweDtcbiAgLy8gICB9XG5cbiAgLy8gICAmOm50aC1jaGlsZCg2bikgLmNvbHVtbnMge1xuICAvLyAgICAgbWFyZ2luLXRvcDogLTExMHB4O1xuICAvLyAgIH1cbiAgfVxufVxuXG4uby1tdWx0aW1lZGlhR2FsbGVyeV9fZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBtYXJnaW4tdG9wOiA0MXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAzOHB4O1xuICB9XG59XG5cbi5vLW11bHRpbWVkaWFHYWxsZXJ5X19pdGVtcyAubS1wb3N0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi5vLW5hdl9fY29sbGVnZS10aXRsZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLm8tbGlzdGluZ0Z1bGwge1xufVxuXG4ubS1tb2R1bGVIZWFkZXIgKyAuby1saXN0aW5nRnVsbF9faW5uZXIge1xuICBtYXJnaW4tdG9wOiAyM3B4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiA2M3B4O1xuICB9XG59XG5cbi5vLWxpc3RpbmdGdWxsX19pbm5lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjNzICRiZXppZXItLWVhc2UtaW4tb3V0O1xufVxuXG4uby1saXN0aW5nRnVsbF9fZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAxOHB4O1xuICB9XG59XG5cbi5vLWxpc3RpbmdGdWxsX19mb290ZXIgLmEtYnRuIHtcbiAgbWFyZ2luLXRvcDogNDJweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogNTdweDtcbiAgfVxufVxuXG4uby1saXN0aW5nRnVsbF9fY3RhIHtcbiAgQGV4dGVuZCAlYS1jdGEtLWR1YWwtbGluZTtcbn1cbiIsIi5vLXByaW1hcnlDb250ZW50IHtcbn1cblxuLm8tcHJpbWFyeUNvbnRlbnQgLmEtdmlkZW9fX2xpbmsge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxufVxuXG4ubS1jb3Vyc2VzIHVsIGxpIHVsIGxpOmJlZm9yZSxcbi5tLWNvbXBvc2VkTGlzdF9fZGVzY3JpcHRpb24gdWwgbGkgdWwgbGk6YmVmb3JlLFxuLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbF9fY29udGVudCB1bCBsaSB1bCBsaTpiZWZvcmUsXG4ubS1oZXJvSGVhZGluZyB1bCBsaSB1bCBsaTpiZWZvcmUsXG4ubS10ZXh0QmxvY2suby1wcmltYXJ5Q29udGVudCB1bCBsaSB1bCBsaTpiZWZvcmUsXG4ubS1jb3Vyc2VzIG9sIGxpIHVsIGxpOmJlZm9yZSxcbi5tLWNvbXBvc2VkTGlzdF9fZGVzY3JpcHRpb24gb2wgbGkgdWwgbGk6YmVmb3JlLFxuLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbF9fY29udGVudCBvbCBsaSB1bCBsaTpiZWZvcmUsXG4ubS1oZXJvSGVhZGluZyBvbCBsaSB1bCBsaTpiZWZvcmUsXG4ubS10ZXh0QmxvY2suby1wcmltYXJ5Q29udGVudCBvbCBsaSB1bCBsaTpiZWZvcmUge1xuICAvLyBwcmV2ZW50IHVsIHdpdGhpbiBvbCBmcm9tIGNoYW5naW5nIG9sIGNvdW50ZXJcbiAgY291bnRlci1pbmNyZW1lbnQ6IG5vbmU7XG59XG4iLCIuby1xdW90ZUNhcm91c2VsIHtcbn1cblxuLm8tcXVvdGVDYXJvdXNlbCAubS1tb2R1bGVIZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzNHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3NXB4O1xuICB9XG59XG5cbi5vLXF1b3RlQ2Fyb3VzZWwgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm8tcXVvdGVDYXJvdXNlbF9fY3RhIHtcbiAgQGV4dGVuZCAlYS1jdGEtLWR1YWwtbGluZTtcbiAgbWFyZ2luLXRvcDogMTFweDtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5vLXF1b3RlQ2Fyb3VzZWxfX21haW4ge1xuICBtYXJnaW4tdG9wOiAxMXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG59XG5cbi5vLXF1b3RlQ2Fyb3VzZWxfX2l0ZW1zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG59XG5cbi5vLXF1b3RlQ2Fyb3VzZWxfX21haW4gKyAuby1xdW90ZUNhcm91c2VsX19pdGVtcyB7XG4gIG1hcmdpbi10b3A6IDE4cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbn1cblxuLm8tcXVvdGVDYXJvdXNlbF9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogMXB4O1xufVxuXG4uby1xdW90ZUNhcm91c2VsIGJsb2NrcXVvdGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLm8tcXVvdGVDYXJvdXNlbCBibG9ja3F1b3RlIHAge1xuICBAZXh0ZW5kICVmLWgxOTtcbn1cblxuLm8tcXVvdGVDYXJvdXNlbCBibG9ja3F1b3RlIHA6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICfigJwnO1xufVxuXG4uby1xdW90ZUNhcm91c2VsIGJsb2NrcXVvdGUgcDpsYXN0LW9mLXR5cGU6OmFmdGVyIHtcbiAgY29udGVudDogJ+KAnSc7XG59XG5cbi5vLXF1b3RlQ2Fyb3VzZWwgY2l0ZSB7XG4gIEBleHRlbmQgJWYtaDEwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gIH1cbn1cblxuLm8tcXVvdGVDYXJvdXNlbCBjaXRlIC5hLWltZyB7XG4gIHdpZHRoOiAzNXB4O1xuICBmbGV4LXNocmluazogMDtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxufVxuXG4uby1xdW90ZUNhcm91c2VsIGNpdGUgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5vLXF1b3RlQ2Fyb3VzZWwgY2l0ZSAuYS1pbWcgKyBzcGFuIHtcbiAgbWFyZ2luLXRvcDogLTVweDtcbn1cblxuXG4uby1xdW90ZUNhcm91c2VsX19uYXYge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4uby1xdW90ZUNhcm91c2VsX19uYXYtaXRlbSB7XG4gIEBleHRlbmQgJWYtaDExO1xuICBtYXJnaW46IDAgMCAyMHB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IG5vbmU7XG5cbiAgJjpob3ZlciB7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuXG4uby1xdW90ZUNhcm91c2VsX19uYXYtLXByZXYge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbGVmdDogNi42NjY2NyU7XG4gICAgbWFyZ2luLWxlZnQ6IG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgJ2xhcmdlJykgLyAyO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tbGVmdDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCAneGxhcmdlJykgLyAyO1xuICB9XG59XG5cbi5vLXF1b3RlQ2Fyb3VzZWxfX25hdi0tbmV4dCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICByaWdodDogNi42NjY2NyU7XG4gICAgbWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsICdsYXJnZScpIC8gMjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsICd4bGFyZ2UnKSAvIDI7XG4gIH1cbn1cbiIsImJvZHkge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLm8tcXVvdGVNZWRpYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgaGVpZ2h0OiAyMDB2aDtcbiAgfVxufVxuXG4uby1xdW90ZU1lZGlhLS12aWRlbyB7XG59XG5cbi5vLXF1b3RlTWVkaWFfX2lubmVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxNzBweDtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5vLXF1b3RlTWVkaWFfX21haW4ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNzVweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzIGxpbmVhcjtcbiAgfVxufVxuXG4uby1xdW90ZU1lZGlhX19tYWluIGJsb2NrcXVvdGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLm8tcXVvdGVNZWRpYV9fbWFpbiBibG9ja3F1b3RlIHAge1xuICBAZXh0ZW5kICVmLWg0O1xufVxuXG4uby1xdW90ZU1lZGlhX19tYWluIGJsb2NrcXVvdGUgY2l0ZSB7XG4gIEBleHRlbmQgJWYtaDEwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMjVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBtYXJnaW4tdG9wOiAyOHB4O1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDE0JztcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxufVxuXG4uby1xdW90ZU1lZGlhX19tYWluIGJsb2NrcXVvdGUgcDpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgY29udGVudDogJ+KAnCc7XG59XG5cbi5vLXF1b3RlTWVkaWFfX21haW4gYmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIge1xuICBjb250ZW50OiAn4oCdJztcbn1cblxuLm8tcXVvdGVNZWRpYV9fbWVkaWEge1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgfVxufVxuXG4uby1xdW90ZU1lZGlhX19tZWRpYSAuYS1pbWcge1xuICBtYXJnaW46IDA7XG59XG5cbi5vLXF1b3RlTWVkaWFfX21lZGlhIC5hLWltZ19faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuIiwiLm8tcXVvdGVQb3J0cmFpdCB7XG4gIEBpbmNsdWRlIGZ1bGwtYmxlZWQ7XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2lubmVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICB9XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlcyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgd2lkdGg6IDEzMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlcy1pbm5lciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuLm8tcXVvdGVQb3J0cmFpdF9faW1hZ2Uge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLS1kYXJrO1xuICAgICAgLy8gYmFja2dyb3VuZDogcmdiYSgkY29sb3JfX2JhY2tncm91bmQtLWRhcmssIDAuMik7XG4gICAgfVxuICB9XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlLFxuLm8tcXVvdGVQb3J0cmFpdF9faW1hZ2UgaW1nIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzICRiZXppZXItLXN0YW5kYXJkO1xufVxuXG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cblxuLm8tcXVvdGVQb3J0cmFpdF9faW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRvcDogMzBweDtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzBweCwgLTEwMCUsIDApO1xuXG4gICAgaW1nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcbiAgICB0b3A6IDQwcHg7XG4gICAgbGVmdDogNDBweDtcbiAgICAvLyBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNDBweCwgLTEwMCUsIDApO1xuICB9XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuXG5cbi5vLXF1b3RlUG9ydHJhaXQtLWhvdmVyIGltZyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXsgICAgXG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX2ltYWdlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDU7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX21haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDhweDtcbiAgfVxufVxuXG4uby1xdW90ZVBvcnRyYWl0X19tYWluIGJsb2NrcXVvdGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX21haW4gYmxvY2txdW90ZSBwIHtcbiAgQGV4dGVuZCAlZi1oMTk7XG59XG5cbi5vLXF1b3RlUG9ydHJhaXRfX21haW4gYmxvY2txdW90ZSBwOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBjb250ZW50OiAn4oCcJztcbn1cblxuLm8tcXVvdGVQb3J0cmFpdF9fbWFpbiBibG9ja3F1b3RlIHA6bGFzdC1vZi10eXBlOjphZnRlciB7XG4gIGNvbnRlbnQ6ICfigJ0nO1xufVxuXG4uby1xdW90ZVBvcnRyYWl0X19tYWluIGJsb2NrcXVvdGUgY2l0ZSB7XG4gIEBleHRlbmQgJWYtaDEwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTRweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgfVxufVxuXG4uby1xdW90ZVBvcnRyYWl0X19tYWluIGJsb2NrcXVvdGUgY2l0ZSBzdHJvbmcge1xufVxuXG4uby1xdW90ZVBvcnRyYWl0X19jdGEge1xuICBAZXh0ZW5kICVhLWN0YS0tZHVhbC1saW5lO1xuICBtYXJnaW4tdG9wOiAyM3B4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAzcHg7XG4gIH1cbn1cbiIsIi5vLXNlY3Rpb25JbmZvIHtcbn1cblxuLm8tc2VjdGlvbkluZm8gLm0tbW9kdWxlSGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuXG4uby1zZWN0aW9uSW5mbyAubS1tb2R1bGVIZWFkZXJfX2ludHJvIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uby1zZWN0aW9uSW5mb19faGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBtYXJnaW46IC02MHB4IDAgMCAtMjBweDtcbiAgcGFkZGluZzogMjVweCAyMHB4IDE1cHg7XG4gIGJhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIHVwKSB7XG4gICAgcGFkZGluZzogMzNweCAyMHB4IDQ0cHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbjogLTYwcHggMCAwIC0zMHB4O1xuICAgIHBhZGRpbmc6IDI3cHggMzBweCA0OHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbn1cblxuLm8tc2VjdGlvbkluZm9fX3RpdGxlIHtcbiAgQGV4dGVuZCAlZi1oMTg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgb3BhY2l0eTogMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi1ib3R0b206IC0xNXB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi1ib3R0b206IC0yMnB4O1xuICB9XG5cbiAgLndmLW5ldWVkaXNwbGF5cmFuZG9tLW43LWFjdGl2ZSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvX19tZWRpYUltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDIycHggLTIwcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luOiAwIDAgMCAtNjBweDtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMTYwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoMTI4MXB4KSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDIwcHggKyAoKDEwMHZ3IC0gMTIwMHB4KSAvIDIpKSAqIC0xKTtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMTYwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4ICsgKCgxMDB2dyAtIDEyMDBweCkgLyAyKSk7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMzIwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgxNzQwcHgpIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuXG4uby1zZWN0aW9uSW5mb19fbWVkaWFJbWFnZVJpZ2h0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDAgLTIwcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIHVwKSB7XG4gICAgbWFyZ2luOiAwIDAgMCAtMzBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMzBweCk7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoKCgxMDB2dyAtICgxNjBweCkpICogMC42NikgKiAwLjYyNSk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDQ1cHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgdXApIHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgNjBweCk7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMzIwcHgpKSAqIDAuNjYpICogMC42MjUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgxNzQwcHgpIHtcbiAgICAvLyBoZWlnaHQ6IDU4NXB4O1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLm8tc2VjdGlvbkluZm9fX21lZGlhSW1hZ2VSaWdodC0tYWJzb2x1dGUge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2UtaW4tb3V0IDE4MG1zO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxNXB4KTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoMTI4MXB4KSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHggKyAoKDEwMHZ3IC0gMTIwMHB4KSAvIDIpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvX19jdGEge1xuICBAZXh0ZW5kICVhLWN0YS0tZHVhbC1saW5lO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAzOHB4IDAgNDZweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAxOXB4IDA7XG4gIH1cbn1cblxuLm8tc2VjdGlvbkluZm9fX2NvbnRlbnQge1xuICBtYXJnaW4tdG9wOiA1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm8tc2VjdGlvbkluZm8gLm0tY29sbGVnZUxpc3Qge1xuICBtYXJnaW46IDQ1cHggMCAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMzZweDtcbiAgfVxufVxuXG4uby1zZWN0aW9uSW5mbyAubS1jb2xsZWdlTGlzdDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDM4cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDEwMnB4O1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvIC5tLWNvbGxlZ2VMaXN0X19pdGVtcyB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDEzcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uby1zZWN0aW9uSW5mbyAuYS12aWRlb19fbGluayB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm8tc2VjdGlvbkluZm8tLWFsdCB7XG59XG5cbi5vLXNlY3Rpb25JbmZvLS1hbHQgLm0tbW9kdWxlSGVhZGVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi1ib3R0b206IDE1MHB4O1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvLS1hbHQgLm8tc2VjdGlvbkluZm9fX2lubmVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvLS1hbHQgLm8tc2VjdGlvbkluZm9fX21haW4sXG4uby1zZWN0aW9uSW5mby0tYWx0IC5vLXNlY3Rpb25JbmZvX19hc2lkZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvLS1hbHQgLm8tc2VjdGlvbkluZm9fX21haW4ge1xuICBtYXJnaW4tdG9wOiAtN3B4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvLS1hbHQgLm8tc2VjdGlvbkluZm9fX2FzaWRlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cblxuLm8tc2VjdGlvbkluZm8tLWFsdCAuby1zZWN0aW9uSW5mb19fc3RpY2t5IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiA5NXB4O1xuICAgIG1hcmdpbi10b3A6IC04MHB4O1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvLS1hbHQgLm8tc2VjdGlvbkluZm9fX2NvbnRlbnQge1xuICBAZXh0ZW5kICVmLWgxNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uby1zZWN0aW9uSW5mby0tYWx0IC5tLWNvbGxlZ2VMaXN0OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLm8tc2VjdGlvbkluZm8tLWFsdCAuaXMtYWN0aXZlIC5tLWNvbGxlZ2VMaXN0X19jb250ZW50LXdyYXBwZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgYm90dG9tOiAtNTVweDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxufVxuXG4uby1zZWN0aW9uSW5mby0tYWx0IC5pcy1hY3RpdmUgLm0tY29sbGVnZUxpc3RfX2NvbnRlbnQtaW5uZXIge1xuICAvLyBwb3NpdGlvbjogc3RpY2t5O1xuICAvLyB0b3A6IDEwMHB4O1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAvLyAmOjphZnRlciB7XG4gIC8vICAgY29udGVudDogJyc7XG4gIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAvLyAgIHRvcDogMTAwJTtcbiAgLy8gICB3aWR0aDogMTAwJTtcbiAgLy8gICBoZWlnaHQ6IDk5OTlweDtcbiAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgLy8gfVxufVxuXG4uby1zZWN0aW9uSW5mby0tYWx0IC5pcy1hY3RpdmUgLm0tY29sbGVnZUxpc3RfX2NvbnRlbnQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbi5vLXNlY3Rpb25JbmZvLS1hbHQgLm0tY29sbGVnZUxpc3RfX2NvbnRlbnQgcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4iLCIuby1zaHVmZmxlciB7XG59XG5cbi5vLXNodWZmbGVyIC5tLW1vZHVsZUhlYWRlcl9faW50cm8ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uby1zaHVmZmxlcl9faXRlbXMge1xufVxuXG4uby1zaHVmZmxlcl9faXRlbXMgLmNhcm91c2VsIHtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5vLXNodWZmbGVyIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi5vLXNodWZmbGVyIC5jYXJvdXNlbC1jZWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAtMzBweDtcbiAgcGFkZGluZzogMCA0MHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMTBweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5vLXNodWZmbGVyIC5jYXJvdXNlbC1jZWxsIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uby1zaHVmZmxlcl9fY2Fyb3VzZWwtaW1hZ2Uge1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDAuNDU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyAkYmV6aWVyLS1zdGFuZGFyZDtcblxuICAuaXMtc2VsZWN0ZWQgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5vLXNodWZmbGVyX19ncm91cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIFxuICAmLm8tc2h1ZmZsZXJfX2dyb3VwLS1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5vLXNodWZmbGVyX19pbWFnZXMge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uby1zaHVmZmxlcl9faW1hZ2VzLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDU3NXB4O1xufVxuXG4uby1zaHVmZmxlcl9faW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19ibGFjaztcblxuICAmOm50aC1jaGlsZCgxKSB7XG4gICAgYm90dG9tOiBwZXJjZW50YWdlKDg1LzU3NSk7XG4gICAgbGVmdDogcGVyY2VudGFnZSgzOTUvODQwKTtcbiAgICB6LWluZGV4OiA2O1xuICB9XG5cbiAgJjpudGgtY2hpbGQoMikge1xuICAgIHRvcDogcGVyY2VudGFnZSgxMTAvNTc1KTtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKDI4MC84NDApO1xuICAgIHotaW5kZXg6IDU7XG4gIH1cblxuICAmOm50aC1jaGlsZCgzKSB7XG4gICAgYm90dG9tOiBwZXJjZW50YWdlKDE1LzU3NSk7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA0O1xuICB9XG5cbiAgJjpudGgtY2hpbGQoNCkge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgJjpudGgtY2hpbGQoNSkge1xuICAgIHRvcDogcGVyY2VudGFnZSgzMC81NzUpO1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoNzkvODQwKTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgJjpudGgtY2hpbGQoNikge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKDQ3MC84NDApO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAxMTtcbiAgfVxuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMC4zNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzICRiZXppZXItLXN0YW5kYXJkO1xuICB9XG5cbiAgJjpob3ZlciBpbWcge1xuICAgIG9wYWNpdHk6IDAuNzU7XG4gIH1cblxuICAmLm8tc2h1ZmZsZXJfX2ltYWdlLS1hY3RpdmUge1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG5cbiAgJi5vLXNodWZmbGVyX19pbWFnZS0tYWN0aXZlIGltZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uby1zaHVmZmxlcl9fZGF0YSB7XG4gIG1hcmdpbjogMTlweCAwIDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyAkYmV6aWVyLS1zdGFuZGFyZDtcblxuICAuaXMtc2VsZWN0ZWQgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLm8tc2h1ZmZsZXJfX2RhdGEgZHQsXG4uby1zaHVmZmxlcl9fZGF0YSBkZCB7XG59XG5cbi5vLXNodWZmbGVyX19kYXRhIGR0IHtcbiAgQGV4dGVuZCAlZi1oMTE7XG4gIG1hcmdpbi10b3A6IDIycHg7XG4gIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgbWFyZ2luLXRvcDogMzFweDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm8tc2h1ZmZsZXJfX2RhdGEgZGQge1xuICBAZXh0ZW5kICVmLWgxMDtcbiAgbWFyZ2luLXRvcDogMTNweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgbWFyZ2luLXRvcDogOXB4O1xuICB9XG59XG5cbi5vLXNodWZmbGVyX19kYXRhIC5vLXNodWZmbGVyX19kYXRhLS1sYXJnZSB7XG4gIEBleHRlbmQgJWYtaDU7XG4gIG1hcmdpbi10b3A6IDExcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgfVxufVxuXG4uby1zaHVmZmxlcl9fZGF0YSAuby1zaHVmZmxlcl9fZGF0YS0tbGFyZ2UgKyBkdCB7XG4gIG1hcmdpbi10b3A6IDE5cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIG1hcmdpbi10b3A6IDI5cHg7XG4gIH1cbn1cblxuLm8tc2h1ZmZsZXJfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cblxuLm8tc2h1ZmZsZXJfX25hdiB7XG4gIEBleHRlbmQgJWYtaDExO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLm8tc2h1ZmZsZXJfX25hdiAuaWNvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5vLXNodWZmbGVyX19uYXYgc3BhbiB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5cbi5vLXNodWZmbGVyX19uYXYtLW5leHQge1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4uby1zaHVmZmxlcl9fbmF2LS1zaHVmZmxlIHtcbiAgbWFyZ2luLWxlZnQ6IDQwcHg7XG59XG5cbi5tLWZlYXR1cmVQYW5lbCArIC5vLXNodWZmbGVyIHtcbiAgbWFyZ2luLXRvcDogNXB4OyAvLyA1MHB4IC0gNDVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDY1cHg7IC8vIDExMHB4IC0gNDVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAzNXB4OyAvLyAxMTBweCAtIDc1cHg7XG4gIH1cbn1cbiIsIi5vLXNpZGViYXIgPiA6Zmlyc3QtY2hpbGQsXG4uby1zaWRlYmFyLS10b3AtbW9iaWxlID4gOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cblxuIiwiLm8tc29jaWFsRmVlZCB7XG59XG5cbi5vLXNvY2lhbEZlZWQgLm0tbW9kdWxlSGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgfVxufVxuXG4uby1zb2NpYWxGZWVkICsgLm0tY3RhIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLm8tc29jaWFsRmVlZF9fdGl0bGUge1xuICAucGFnZUNsYXNzLS1sYW5nICYge1xuICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgfVxufVxuIiwiLm8tc3RhdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDQ1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCAneHNtYWxsJykgLyAyO1xuICAgIHJpZ2h0OiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsICd4c21hbGwnKSAvIDI7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcl9fc2VwYXJhdG9yO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5vLXN0YXRzIC5tLXN0YXRzTGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4vLyAuby1zdGF0cyArIC5vLXRocmVlLWNvbCB7XG4vLyAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIFxuLy8gICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4vLyAgICAgbWFyZ2luLXRvcDogNzVweDsgLy8gMTEwcHggLSAzNXB4XG4vLyAgIH1cbi8vIH1cblxuLm0tbGFuZGluZ0ludHJvICsgLm8tc3RhdHM6OmJlZm9yZSB7XG4gIC8vIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tLXN0YXRzTGlzdF9fb3ZlcnNpemVkIHtcbiAgLy8gQGluY2x1ZGUgc2Fucy1zZXJpZigzMCwgNDAsIDkwMCwgbm9ybWFsLCAtMC4wMXJlbSk7XG5cbiAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCB1cCkge1xuICAvLyAgIEBpbmNsdWRlIHNhbnMtc2VyaWYoNDAsIDQ1LCA5MDAsIG5vcm1hbCwgLTAuMDFyZW0pO1xuICAvLyB9XG5cbiAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgLy8gICBAaW5jbHVkZSBzYW5zLXNlcmlmKDY1LCA3MCwgOTAwLCBub3JtYWwsIC0wLjAxcmVtKTtcbiAgLy8gfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAvLyBAaW5jbHVkZSBzYW5zLXNlcmlmKDg1LCA5MCwgOTAwLCBub3JtYWwsIC0wLjAzcmVtKTtcbiAgICBmb250LXNpemU6IDYuOXZ3O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cblxuICAvLyBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIC8vIEBpbmNsdWRlIHNhbnMtc2VyaWYoMTEwLCAxMjAsIDkwMCwgbm9ybWFsLCAtMC4wM3JlbSk7XG4gIC8vIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcbiAgICAvLyBAaW5jbHVkZSBzYW5zLXNlcmlmKDExMCwgMTQwLCA5MDAsIG5vcm1hbCwgLTAuMDNyZW0pO1xuICAgIGZvbnQtc2l6ZTogMTEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEyMHB4O1xuICB9XG59XG4iLCIuby1zdHVkeUFyZWFzIHtcbn1cblxuLm8tc3R1ZHlBcmVhc19faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5vLXN0dWR5QXJlYXNfX2Zvb3RlciB7XG4gIEBleHRlbmQgJWYtaDg7XG4gIEBpbmNsdWRlIGZ1bGwtYmxlZWQ7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogNTtcbiAgbWFyZ2luLXRvcDogLTFweDsgLy8gbGlzdCB2aWV3IGhhcyBhIGJvcmRlciBvbiB0aGUgbGFzdCBpdGVtXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC0tbGlnaHQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgfVxufVxuXG4uby1zdHVkeUFyZWFzX19mb290ZXIgYSB7XG4gIEBpbmNsdWRlIGZ1bGwtYmxlZWQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMjFweDtcbiAgcGFkZGluZy1ib3R0b206IDI0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC0tbGlnaHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgJGJlemllci0tc3RhbmRhcmQ7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9faGlnaGxpZ2h0O1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQtLWRhcms7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtOTk5OXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTk5OTlweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDk5OTlweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA5OTk5cHg7XG4gIH1cbn1cblxuLm8tc3R1ZHlBcmVhcyAubS1tb2R1bGVIZWFkZXJfX2ludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogMThweDtcbn1cblxuLm8tc3R1ZHlBcmVhcyAubS1jb250ZW50TGlzdCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuXG4gIC5haXMtaW5maW5pdGUtaGl0cyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICBcbiAgLm0tY29udGVudEZpbHRlcnMgKyAuby1zdHVkeUFyZWFzX19pdGVtcyAuYWlzLWluZmluaXRlLWhpdHMge1xuICAgIG1hcmdpbi10b3A6IDExcHg7XG4gIH1cbn1cblxuLm8tc3R1ZHlBcmVhczpub3QoLm8tc3R1ZHlBcmVhcy0tYWx0KSAubS1jb250ZW50TGlzdCB7XG4gIC5haXMtaW5maW5pdGUtaGl0cy0taXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uby1zdHVkeUFyZWFzX19tb3JlIHtcbn1cblxuLm8tc3R1ZHlBcmVhc19fbW9yZS1oZWFkZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgfVxufVxuXG4uby1zdHVkeUFyZWFzX19tb3JlLXRpdGxlIHtcbiAgQGV4dGVuZCAlZi1oNDtcbiAgbWFyZ2luOiAwO1xufVxuXG4uby1zdHVkeUFyZWFzX19tb3JlLW1haW4ge1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcbiAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzVweDtcbiAgfVxufVxuXG4uby1zdHVkeUFyZWFzX19tb3JlIHAge1xuICBAZXh0ZW5kICVmLWgxNTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5vLXN0dWR5QXJlYXNfX21vcmUtY3RhIHtcbiAgQGV4dGVuZCAlYS1jdGEtLWR1YWwtbGluZTtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuXG4uby1zdHVkeUFyZWFzLS1hbHQgLm8tc3R1ZHlBcmVhc19fZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMzVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgfVxufVxuXG4uby1zdHVkeUFyZWFzLS1hbHQgLm0tY29udGVudExpc3QtLWdyaWQtdmlldyAuYS1wcm9ncmFtLmlzLWFjdGl2ZSB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgICBib3R0b206IC0xMTVweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5vLXRleHRMb25nRm9ybSB7XG59XG5cbi5vLXRleHRMb25nRm9ybV9fY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDMzcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjNzICRiZXppZXItLWVhc2Utb3V0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICB9XG59XG5cbi5vLXRleHRMb25nRm9ybV9fY29udGVudCAuYS1pbWcge1xuICBtYXJnaW46IDA7XG59XG5cbi5vLXRleHRMb25nRm9ybV9fY29udGVudCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uby10ZXh0TG9uZ0Zvcm1fX2NvbnRlbnQgLmEtaW1nICsgcCxcbi5vLXRleHRMb25nRm9ybV9fY29udGVudCBwOmZpcnN0LWNoaWxkIHtcbiAgQGV4dGVuZCAlZi1oNjtcbn1cblxuLm8tdGV4dExvbmdGb3JtX19jb250ZW50IC5hLWltZyArIHAge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiA2NnB4O1xuICB9XG59XG5cbi5vLXRleHRMb25nRm9ybV9fY29udGVudCBwIHtcbiAgQGV4dGVuZCAlZi1oMTU7XG59XG5cbi5vLXRleHRMb25nRm9ybV9fdHJpZ2dlciB7XG4gIEBleHRlbmQgJWYtaDEwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uby10ZXh0TG9uZ0Zvcm1fX3RyaWdnZXIgc3ZnIHtcbiAgd2lkdGg6IDExcHg7XG4gIGhlaWdodDogN3B4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyAkYmV6aWVyLS1lYXNlLWluLW91dDtcblxuICAuby10ZXh0TG9uZ0Zvcm0tLW9wZW4gJiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuXG4iLCIuby10aHJlZS1jb2wge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uby10aHJlZS1jb2wgLm0tbW9kdWxlSGVhZGVyX19pbnRybyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gIH1cbn1cblxuLm8tdGhyZWUtY29sX19pdGVtcyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uby10aHJlZS1jb2xfX2l0ZW0ge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgLmEtYWNjb3JkaW9uQ2FyZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9fc2VwYXJhdG9yO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcblxuICAgICY6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKC1uKzMpIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIC5hLWFjY29yZGlvbkNhcmQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuZmxpY2tpdHktdmlld3BvcnQgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uby10aHJlZS1jb2xfX2l0ZW0gPiAubS1wb3N0IHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uby10aHJlZS1jb2xfX2l0ZW1zOmZpcnN0LWNoaWxkIC5vLXRocmVlLWNvbF9faXRlbTpmaXJzdC1jaGlsZCA+IC5tLXBvc3Qge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLm8tdGhyZWUtY29sX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gIH1cbn1cblxuLm8tdGhyZWUtY29sX19mb290ZXItY3RhIHtcbiAgQGV4dGVuZCAlYS1jdGEtLWR1YWwtbGluZTtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xufVxuXG4uby10aHJlZS1jb2xfX25hdiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAmLnNob3cge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi5vLXRocmVlLWNvbF9fbmF2LWl0ZW0ge1xuICBAZXh0ZW5kICVmLWgxMTtcbiAgbWFyZ2luOiAwIDAgMjBweDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogJGNvbG9yX19ncmV5LS00MDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdXRsaW5lOiBub25lO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3JfX2hpZ2hsaWdodDtcbiAgfVxufVxuXG4uby10aHJlZS1jb2xfX25hdi1pdGVtIC5pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm8tdGhyZWUtY29sX19uYXYtLW5leHQge1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4ucy1tb2R1bGUtYmtnZC0tZGFyayAuby10aHJlZS1jb2xfX2l0ZW0ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcl9fc2VwYXJhdG9yLS1kYXJrO1xuICB9XG59XG5cblxuLm8tdGhyZWUtY29sLS1jYXJvdXNlbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5vLXRocmVlLWNvbC0tY2Fyb3VzZWwgLm0tbW9kdWxlSGVhZGVyX19pbnRybyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxN3B4O1xuICB9XG59XG5cbi5vLXRocmVlLWNvbC0tY2Fyb3VzZWwgLm8tdGhyZWUtY29sX19pdGVtcyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5vLXRocmVlLWNvbC0tY2Fyb3VzZWwgLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgfVxufVxuXG4uby10aHJlZS1jb2wtLWNhcm91c2VsIC5mbGlja2l0eS1zbGlkZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gIH1cbn1cblxuLm8tdGhyZWUtY29sLS1jYXJvdXNlbCAuZmxpY2tpdHktdmlld3BvcnQgLm8tdGhyZWUtY29sX19pdGVtIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXG4gICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgLy8gYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcbiAgICB9XG4gIH1cbn1cblxuLm8tdGhyZWUtY29sLS1jYXJvdXNlbC5vLXRocmVlLWNvbC0tc2V0LWhlaWdodCAuby10aHJlZS1jb2xfX2l0ZW0ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5vLXRocmVlLWNvbC0tbm8tZGl2aWRlciAuby10aHJlZS1jb2xfX2l0ZW0ge1xuICBib3JkZXItbGVmdDogMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5vLXRocmVlLWNvbC0tY2Fyb3VzZWwgLmZsaWNraXR5LXZpZXdwb3J0IC5tLXBvc3QsXG4uby1oZXJvR2FsbGVyeSArIC5vLXRocmVlLWNvbCAuby10aHJlZS1jb2xfX2l0ZW06Zmlyc3QtY2hpbGQgPiAubS1wb3N0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIGJvcmRlci10b3A6IDA7XG59XG4iLCIuby10d29UaGlyZHMge1xufVxuXG4uby10d29UaGlyZHNfX2lubmVyIHtcbiAgbWFyZ2luLXRvcDogMzdweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgbWFyZ2luLXRvcDogNDJweDtcbiAgfVxufVxuXG4uby10d29UaGlyZHNfX2FzaWRlLFxuLm8tdHdvVGhpcmRzX19tYWluIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IFxuICB9XG59XG5cbi5vLXR3b1RoaXJkc19fbWFpbiB7XG59XG5cbi5vLXR3b1RoaXJkc19fYXNpZGUge1xuICBtYXJnaW4tdG9wOiA0NXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5vLXR3b1RoaXJkc19faXRlbXMge1xufVxuXG4uby10d29UaGlyZHNfX2N0YSB7XG4gIEBleHRlbmQgJWEtY3RhLS1kdWFsLWxpbmU7XG4gIG1hcmdpbi10b3A6IDI4cHg7XG59XG4iLCIucy1oZWFkZXItZml4ZWQgLm8tdXRpbGl0eS1uYXZfX3RlcnRpYXJ5IC5tLW5hdkxpc3QtLXNlY29uZGFyeSAubS1uYXZMaXN0X19saW5rLS1wcmltYXJ5IHtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG59XG5cbi5vLXV0aWxpdHktbmF2X190ZXJ0aWFyeSAubS1uYXZMaXN0LS1zZWNvbmRhcnkgPiA6bGFzdC1jaGlsZDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtN3B4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fdXRpbE5hdlNwbGl0dGVyO1xufVxuIiwiYm9keSB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyAkYmV6aWVyLS1lYXNlLWluLW91dCwgY29sb3IgMC4ycyAkYmV6aWVyLS1lYXNlLWluLW91dDtcbn1cblxuYm9keSAuYm9keS0taGlnaGxpZ2h0IHtcbiAgQGluY2x1ZGUgZnVsbC1ibGVlZDtcbiAgYmFja2dyb3VuZDogJGNvbG9yX19oaWdobGlnaHQ7XG4gIGNvbG9yOiAkY29sb3JfX3RleHQtLWRhcms7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xufVxuXG4uZy1mb290ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4iLCIucGFnZUNsYXNzLS1zcGUge1xuICAuby1zZWN0aW9uSW5mb19fdGl0bGUsXG4gIC5tLWxhbmRpbmdQYW5lbF9fdGl0bGUsXG4gIC5tLW1vZHVsZUhlYWRlcl9fdGl0bGUge1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQ7XG4gIH1cblxuICAmLmRhcmssXG4gIC5zLW1vZHVsZS1ia2dkLS1kYXJrLFxuICAucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IHtcbiAgICAuby1zZWN0aW9uSW5mb19fdGl0bGUsXG4gICAgLm0tbGFuZGluZ1BhbmVsX190aXRsZSxcbiAgICAubS1tb2R1bGVIZWFkZXJfX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfX3RleHQtLWRhcms7XG4gICAgfVxuICB9XG5cbiAgLm8tc2VjdGlvbkluZm9fX2hlYWRlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDNweDtcbiAgICB9XG4gIH1cblxuICAuby1zZWN0aW9uSW5mb19fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAubS1mZWF0dXJlUGFuZWwtLXNtYWxsLWFsdCAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX2ltYWdlLFxuICAubS1sYW5kaW5nUGFuZWwtLWFsdC5tLWxhbmRpbmdQYW5lbC0tc21hbGwgLm0tbGFuZGluZ1BhbmVsX19pbWFnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbC1hbHQgLm0tbGFuZGluZ1BhbmVsLS1hbHQgLm0tbGFuZGluZ1BhbmVsX19pbWFnZUxpbmsgcCxcbiAgLm0tbGFuZGluZ1BhbmVsLS1hbHQubS1sYW5kaW5nUGFuZWwtLXNtYWxsIC5tLWxhbmRpbmdQYW5lbF9faW1hZ2VMaW5rIHAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbC1hbHQgLm0tbGFuZGluZ1BhbmVsLS1hbHQgLm0tbGFuZGluZ1BhbmVsX19pbWFnZUxpbms6OmFmdGVyLFxuICAubS1sYW5kaW5nUGFuZWwtLWFsdC5tLWxhbmRpbmdQYW5lbC0tc21hbGwgLm0tbGFuZGluZ1BhbmVsX19pbWFnZUxpbms6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLm0tZmVhdHVyZVBhbmVsIC5tLWxhbmRpbmdQYW5lbF9fdGl0bGUsXG4gIC5tLWZlYXR1cmVQYW5lbCAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX3RpdGxlIHtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMjNweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MnB4O1xuICAgIH1cbiAgfVxuXG4gIC5tLWZlYXR1cmVQYW5lbC0tc21hbGwgLm0tbGFuZGluZ1BhbmVsX190aXRsZSxcbiAgLm0tZmVhdHVyZVBhbmVsLS1zbWFsbCAubS1sYW5kaW5nUGFuZWwtLWFsdCAubS1sYW5kaW5nUGFuZWxfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gdXNlIHRoaXMgdG8gaGFuZGxlIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgYm9yZGVycyBiZXR3ZWVuIG1vZHVsZXNcblxuLy8gbW9kdWxlcyB0aGF0IG5lZWQgc29tZSBzcGFjZSBhYm92ZSB0aGVtIHdpdGhvdXQgYSBib3JkZXIgb3IgYmFja2dyb3VuZFxuLnMtbW9kdWxlLXNwYWNlciB7XG4gIG1hcmdpbi10b3A6IDc1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDE0NXB4O1xuICB9XG5cbiAgJi5vLXRocmVlLWNvbCB7XG4gICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDsgLy8gc28gdGhlIG92ZXJmbG93IGRvZXNuJ3QgY3V0IGltYWdlIG9mZlxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgbWFyZ2luLXRvcDogMTM1cHg7XG4gICAgfVxuICB9XG59XG5cbi8vIG1vZHVsZXMgd2l0aCBib3JkZXJzIC0gbmV3IG1vZHVsZXMgc2hvdWxkIGhhdmUgdGhlIGNsYXNzIGBzLW1vZHVsZS1ib3JkZXJgLCByZXVzZWQgbW9kdWxlcyBzaG91bGQgYmUgYWRkZWQgaGVyZVxuLnMtbW9kdWxlLWJvcmRlciB7XG4gIEBpbmNsdWRlIGZ1bGwtYmxlZWQ7XG4gIG1hcmdpbi10b3A6IDQ1cHg7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX19zZXBhcmF0b3I7XG4gIHRyYW5zaXRpb246IGJvcmRlci10b3AgMC4ycyAkYmV6aWVyLS1lYXNlLWluLW91dDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi10b3A6IDExMHB4O1xuICAgIHBhZGRpbmctdG9wOiA2NXB4O1xuICB9XG5cbiAgLmRhcmsgJiB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yX19zZXBhcmF0b3ItLWRhcms7XG4gIH1cblxuICAuYm9keS0taGlnaGxpZ2h0ICYge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi5zLW1vZHVsZS1ib3JkZXItLW1vYmlsZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3JfX3NlcGFyYXRvcjtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItdG9wIDAuMnMgJGJlemllci0tZWFzZS1pbi1vdXQ7XG5cbiAgICAuZGFyayAmIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcl9fc2VwYXJhdG9yLS1kYXJrO1xuICAgIH1cblxuICAgIC5ib2R5LS1oaWdobGlnaHQgJiB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxufVxuXG4ucy1tb2R1bGUtYm9yZGVyLm0tZmVhdHVyZVBhbmVsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgfVxufVxuXG4ucy1tb2R1bGUtYm9yZGVyLm0tZmVhdHVyZVBhbmVsLS1zbWFsbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBmZWF0dXJlUGFuZWwgc3BhY2luZyBpcyBvbiB0aGUgZWxlbWVudCBpbnNpZGUgaXQgc28gd2UgY2FuJ3QgY29sbGFwc2UgdGhlIG1hcmdpbnMuXG4vLyBBbnkgdXBkYXRlcyB0byAubS1mZWF0dXJlUGFuZWwgLm0tbGFuZGluZ1BhbmVsIHdpbGwgbmVlZCB0byBiZSByZWZsZWN0ZWQgaGVyZVxuLm0tZmVhdHVyZVBhbmVsICsgLnMtbW9kdWxlLWJvcmRlciB7XG4gIG1hcmdpbi10b3A6IDdweDsgLy8gNDVweCAtIDM4cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBtYXJnaW4tdG9wOiA3MnB4OyAvLyAxMTBweCAtIDM4cHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMzVweDsgLy8gMTEwcHggLSA3NXB4O1xuICB9XG59XG5cbi5tLWZlYXR1cmVQYW5lbCArIC5zLW1vZHVsZS1zcGFjZXIge1xuICBtYXJnaW4tdG9wOiAzNXB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMTI1cHg7XG4gIH1cbn1cblxuLy8gLm0tbGFuZGluZ0ludHJvICsgLnMtbW9kdWxlLWJvcmRlcjpub3QoLm8tc3R1ZHlBcmVhcykge1xuLy8gICBwYWRkaW5nLXRvcDogMDtcbi8vICAgYm9yZGVyLXRvcDogMDtcbi8vIH1cblxuLnMtbW9kdWxlLWJvcmRlcjpmaXJzdC1jaGlsZCwgLy8gaGlkZSBib3JkZXIgb24gdGhlIGZyaXN0IGJvcmRlciBtb2R1bGVzXG4uby1oZXJvR2FsbGVyeSArIC5vLXRocmVlLWNvbC5zLW1vZHVsZS1ib3JkZXIsIC8vIGhpZGUgdGhlIGJvcmRlciBiZXR3ZWVuIHRoZSBoZXJvR2FsbGVyeSBhbmQgdGhyZWUgY29sIChNaWxhbm8gSG9tZSlcbi5vLXN0dWR5QXJlYXMgKyAucy1tb2R1bGUtYm9yZGVyLCAvLyBzdHVkeSBhcmVhcyBtb2R1bGUgaGFzIGEgYmFja2dyb3VuZCBvbiB0aGUgZm9vdGVyIGVsZW1lbnQgc28gaGlkZSB0aGUgYm9yZGVyIG9uIGZvbGxvd2luZyBib3JkZXIgbW9kdWxlc1xuLmJvZHktLWhpZ2hsaWdodCArIC5zLW1vZHVsZS1ib3JkZXIsIC8vIGhpZGUgYm9yZGVyIG9uIGJvcmRlciBtb2R1bGVzIGZvbGxvd2luZyBiYWNrZ3JvdW5kIG1vZHVsZXNcbi5zLW1vZHVsZS1ia2dkICsgLnMtbW9kdWxlLWJvcmRlciB7IC8vIGhpZGUgYm9yZGVyIG9uIGJvcmRlciBtb2R1bGVzIGZvbGxvd2luZyBiYWNrZ3JvdW5kIG1vZHVsZXNcbiAgbWFyZ2luLXRvcDogMDtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLy8gbW9kdWxlcyB3aXRoIGJhY2tncm91bmQgKG5vIGJvcmRlcnMpIC0gbmV3IG1vZHVsZXMgc2hvdWxkIGhhdmUgdGhlIGNsYXNzIGBzLW1vZHVsZS1ia2dkYCwgcmV1c2VkIG1vZHVsZXMgc2hvdWxkIGJlIGFkZGVkIGhlcmVcbi5zLW1vZHVsZS1ia2dkIHtcbiAgQGluY2x1ZGUgZnVsbC1ibGVlZDtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgcGFkZGluZy10b3A6IDUxcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtLWxpZ2h0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcbiAgICBtYXJnaW4tdG9wOiAxMTBweDtcbiAgICBwYWRkaW5nLXRvcDogNzVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTEwcHg7XG4gIH1cbn1cblxuLnMtbW9kdWxlLWJrZ2Qucy1tb2R1bGUtYmtnZC0tZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC0tZGFyaztcbiAgY29sb3I6ICRjb2xvcl9fdGV4dC0tZGFyaztcbn1cblxuLnMtbW9kdWxlLWJrZ2Qucy1tb2R1bGUtYmtnZC0taGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19oaWdobGlnaHQ7XG4gIGNvbG9yOiAkY29sb3JfX3RleHQtLWRhcms7XG59XG5cbi5zLW1vZHVsZS1ia2dkLnMtbW9kdWxlLWJrZ2QtLWhpZ2hsaWdodCAubS1tb2R1bGVIZWFkZXJfX3RpdGxlIHtcbiAgY29sb3I6ICRjb2xvcl9fdGV4dDtcbn1cblxuLnMtbW9kdWxlLWJrZ2QgKyAucy1tb2R1bGUtYmtnZCxcbi5zLW1vZHVsZS1ia2dkICsgLm0tY3RhIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbiIsIi5zLXN0aWNreS1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucy1zdGlja3ktYm9keV9fc3RpY2t5IHtcbn1cblxuLnMtc3RpY2t5LWJvZHktLWFicyxcbi5zLXN0aWNreS1ib2R5LS1hY3RpdmUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiA0OXB4O1xufVxuXG4ucy1zdGlja3ktYm9keS0tYWJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ucy1zdGlja3ktYm9keS0tc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAxMjBweDtcbiAgYm90dG9tOiBhdXRvO1xufVxuIl19 */
