/**
 * ╒═══════════════════════════════════════╕
 * │           HoW tO wrItE CoDE           │
 * ╞═══════════════════╤═══════════════════╡
 * │          variable │ --like-this       │
 * │ cust. media query │ --[for|when]-[..] │
 * ├───────────────────┼───────────────────┤
 * │      layout, obj. │ .o-[..]           │
 * │    element, cmpt. │ .like-this        │
 * │         CSS state │ .[is|has]-[..]    │
 * │          JS state │ .js-[..]          │
 * │       theme, mod. │ .-like-this       │
 * └───────────────────┴───────────────────┘
 */

/* --- Bootstrap --- */

:root {
    /* Colors - Base 16 Eighties */

    /* Text - Default */

    /* Text - Headings */ /* 5rem @ 1440px -> 2.8rem @ 320px */ /* 3.6rem @ 1440px -> 2.4rem @ 320px */ /* 3rem @ 1440px -> 2.1rem @ 320px */ /* 2.5rem @ 1440px -> 1.9rem @ 320px */ /* 2rem @ 1440px -> 1.8rem @ 320px */ /* min font-size to avoid scaling on focus */

    /* Page - default, layout */ /* not final */

    /* Spacing */  /*vlt 8rem*/

    /* Rwd */ /* contact 1 */

    /* Form */

    /* Button */

    /* Timings */

    /* Default space units */                 /*   0  em | Allows line break, like <wbr> */                /* 1/24 em | Width varies, but narrower than thin space */                 /* 1/8  em | For French punctuation */          /* 1/6  em | Might be suitable for grouping */                   /* 1/5  em | Recommended minimum width of space */ /* 4/18 em | Around operators (according to Chicago) */           /* 1/4  em | mid space: Average width of normal space */               /* 5/18 em | Around relational operators (according to Chicago) */        /* 1/3  em | Width of space in a wide font */                     /* 1/2  em | Recommended maximum width of space */                       /*   1  em | One */

    /* Breakpoints */
}

/* Media queries */

/* --- Reset --- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, button, input {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

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

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content: "";
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

svg { max-width: 100%; height: auto; }

/* --- Default --- */

/* Default settings */

*, *::before, *::after {
    box-sizing: inherit;
    -webkit-tap-highlight-color: inherit;
}

/*
  Repeating the background mostly makes sense in the <body>.
  Otherwise, people usually want the image and preferably its center
  (not the top-right corner)
*/

*:not(body) {
    background: no-repeat center center;
    background-size: cover;
}

/*
  Makes the hidden attribute works even when an element is styled display: flex
  http://lists.w3.org/Archives/Public/public-whatwg-archive/2014May/0001.html
*/

[hidden], template {
    display: none !important;
}

[draggable] { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

html, body {
    /* Text */
    font-family: "Filson Regular", sans-serif;
    font-weight: 400;
    line-height: 1.5;
    color: #2B2C29;
    -webkit-text-size-adjust: none;
        -ms-text-size-adjust: none;
            text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    word-wrap: normal;
    -webkit-hyphens: none;
        -ms-hyphens: none;
            hyphens: none;
    word-wrap: break-word;

    /* Page */
    background: #ffffff fixed;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);

    /* Blocks */
    box-sizing: border-box;

    /* App */
    /* -webkit-touch-callout: none; */
    /* -webkit-user-select: none; */

    /* -ms-overflow-style: -ms-autohiding-scrollbar; */
    -ms-overflow-x: hidden;
}

html { font-size: 62.5%; }

body {
    font-size: calc(18px + (20 - 18) * (100vw - 320px) / (1440 - 768));
}

p {
    -webkit-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto;
    overlap-wrap: break-word;
}

@supports not ((-webkit-hyphens: auto) or (-ms-hyphens: auto) or (hyphens: auto)) {
    p {
        -webkit-hyphens: manual;
            -ms-hyphens: manual;
                hyphens: manual;
        word-break: break-word;
    }
}

a {
    text-decoration: underline;
    color: inherit;
}

.has-hidden-links a,
a.has-hidden-links {
    text-decoration: none;
}

.no-underline-links a,
a.no-underline-links {
    text-decoration: none;
}

@media (min-device-width: 1026px) {
    .no-underline-links a:hover,
    a.no-underline-links:hover {
        text-decoration: underline;
    }
}

@media (max-device-width: 1024px) {
    .no-underline-links a:active,
    a.no-underline-links:active {
        text-decoration: underline;
    }
    .underline-links-touch a,
    a.underline-links-touch,
    .no-underline-links.underline-links-touch a,
    a.no-underline-links.underline-links-touch {
        text-decoration: underline;
    }
}

.no-underline-hover a:hover,
.no-underline-hover a:focus {
    text-decoration: none;
}

div[role="button"] { cursor: pointer; }

.is-dark { color: #ffffff; }

.is-light { color: #2B2C29; }

.has-async-css {
    opacity: 0;
    pointer-events: none;
}

/* --- Accessibility --- */

/* .is-visually-hidden:not(:focus):not(:active) */

.is-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    border: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    -webkit-clip-path: inset(100%) !important;
            clip-path: inset(100%) !important;
    clip: rect(0 0 0 0) !important;
    overflow: hidden !important;
}

/* Skip links are shortcuts at the top of the page */

.skip-links {
    position: absolute;
    z-index: 1001;
}

.skip-links a {
    position: absolute;
    display: inline-block;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    padding: 1em;
    background: white;
    color: black;
    text-decoration: none;
    font-size: 1.6rem;
    outline: 0;
    border: 3px solid black;
}

.skip-links a:focus {
    position: static;
    width: auto;
    height: auto;
}

/* --- Layout --- */

.o-view {
    position: relative;
    width: 100%;
    min-height: 100vh;
    z-index: 3;
    overflow: hidden;
}

.o-view.is-absolute {
    position: absolute;
    top: 0;
    left: 0;
}

.page-content {
    min-height: 100vh;
    padding-top: 35px;
}

@media (max-width: 991px) {
    .page-content {
        padding-top: 4rem;
    }
}

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

.-editMode .page-content,
.page-content.js-mounted {
    min-height: 0;
}

.page-content form {
    visibility: hidden;
}

.-editMode form,
.page-content.js-mounted form {
    visibility: visible;
}

/* Sections and Groups */

.o-section {
    position: relative;
    clear: both;
}

.o-section:not(.has-no-gutter),
.o-section:not(.is-full-width) {
    margin: 20rem 5rem;
}

.o-section.has-no-gutter,
.o-section.is-full-width {
    margin: 20rem 0;
}

.o-section.has-medium-top-space {
    margin-top: 11rem;
}

.o-section.has-medium-bottom-space {
    margin-bottom: 11rem;
}

.o-section.has-large-top-space {
    margin-top: 13.2rem;
}

.o-section.has-large-bottom-space {
    margin-bottom: 13.2rem;
}

.o-section.has-small-top-space {
    margin-top: 5rem;
}

.o-section.has-small-bottom-space {
    margin-bottom: 5rem;
}

.o-section.has-top-inner-space {
    padding-top: 20rem;
}

.o-section.has-bottom-inner-space {
    padding-bottom: 20rem;
}

.o-section.has-large-top-inner-space {
    padding-top: 13.2rem;
}

.o-section.has-large-bottom-inner-space {
    padding-bottom: 13.2rem;
}

.o-section.has-medium-top-inner-space {
    padding-top: 11rem;
}

.o-section.has-medium-bottom-inner-space {
    padding-bottom: 11rem;
}

.o-section.has-small-top-inner-space {
    padding-top: 5rem;
}

.o-section.has-small-bottom-inner-space {
    padding-bottom: 5rem;
}

.o-section:first-child {
    margin-top: 12.5rem;
}

.o-group {
    width: 100%;
    margin: 20rem auto;
    position: relative;
    z-index: 2;
}

.o-group-firstchild,
.o-group-lastchild {
    display: inline;
}

@media (max-width: 991px) {

    .o-section:not(.has-no-gutter),
    .o-section:not(.is-full-width),
    .o-section:not(.is-full-width-md-down) {
        margin: 10rem 2rem;
    }

    .o-section.has-no-gutter,
    .o-section.is-full-width,
    .o-section.is-full-width-md-down {
        margin: 10rem 0;
    }

    .o-section.has-medium-top-space {
        margin-top: 11rem;
    }

    .o-section.has-medium-bottom-space,
    .o-section.has-medium-bottom-space-md-down {
        margin-bottom: 11rem;
    }

    .o-section.has-large-top-space {
        margin-top: 13.2rem;
    }

    .o-section.has-large-bottom-space {
        margin-bottom: 13.2rem;
    }

    .o-section.has-small-top-space,
    .o-section.has-small-top-space-md-down {
        margin-top: 5rem;
    }

    .o-section.has-small-bottom-space,
    .o-section.has-small-bottom-space-md-down {
        margin-bottom: 5rem;
    }

    .o-section.has-top-inner-space {
        padding-top: 10rem;
    }

    .o-section.has-bottom-inner-space {
        padding-bottom: 10rem;
    }

    .o-section.has-large-top-inner-space,
    .o-section.has-large-top-inner-space-md-down {
        padding-top: 13.2rem;
    }

    .o-section.has-large-bottom-inner-space,
    .o-section.has-large-bottom-inner-space-md-down {
        padding-bottom: 13.2rem;
    }

    .o-section.has-medium-top-inner-space,
    .o-section.has-medium-top-inner-space-md-down {
        padding-top: 11rem;
    }

    .o-section.has-medium-bottom-inner-space {
        padding-bottom: 11rem;
    }

    .o-section.has-small-top-inner-space,
    .o-section.has-small-top-inner-space-md-down {
        padding-top: 5rem;
    }

    .o-section.has-small-bottom-inner-space,
    .o-section.has-small-bottom-inner-space-md-down {
        padding-bottom: 5rem;
    }

    .o-section.has-medium-bottom-inner-space-md-down {
        padding-bottom: 11rem;
    }

    .o-section.has-large-bottom-inner-space-md-down {
        padding-bottom: 13.2rem;
    }

    .o-group {
        margin: 10rem auto;
    }
}

.o-group:not(.is-boundless) { max-width: 108.6rem; }

.o-group.is-large:not(.is-boundless) { max-width: 136.6rem; }

.o-group:first-of-type { margin-top: 0; }

.o-group:last-child { margin-bottom: 0; }

.o-group.no-margin { margin: 0; }

/* Inner gutter */

.o-section.has-no-gutter > .o-group.has-inner-gutter,
.o-section.is-full-width > .o-group.has-inner-gutter {
    padding-right: 5rem;
    padding-left: 5rem;
}

.o-section.has-no-gutter > .o-group.has-inner-gutter:not(.is-boundless),
.o-section.is-full-width > .o-group.has-inner-gutter:not(.is-boundless) {
    max-width: calc(108.6rem + 2 * 5rem) !important;
}

.o-section.has-no-gutter > .o-group.has-inner-gutter.is-large:not(.is-boundless),
.o-section.is-full-width > .o-group.has-inner-gutter.is-large:not(.is-boundless) {
    max-width: calc(136.6rem + 2 * 5rem) !important;
}

@media (max-width: 768px) {

    .o-section.has-no-gutter > .o-group.has-inner-gutter,
    .o-section.is-full-width > .o-group.has-inner-gutter {
        padding-right: 2rem;
        padding-left: 2rem;
    }

    .o-section.has-no-gutter > .o-group.has-inner-gutter:not(.is-boundless),
    .o-section.is-full-width > .o-group.has-inner-gutter:not(.is-boundless) {
        max-width: calc(108.6rem + 2 * 2rem) !important;
    }

    .o-section.has-no-gutter > .o-group.has-inner-gutter.is-large:not(.is-boundless),
    .o-section.is-full-width > .o-group.has-inner-gutter.is-large:not(.is-boundless) {
        max-width: calc(136.6rem + 2 * 2rem) !important;
    }
}

@media (min-width: 768px) {
    .o-component:not(:last-child) {
        margin-bottom: 6.25vmin;
    }
}

@media (max-width: 768px) {
    .o-component:not(:last-child) {
        margin-bottom: 3rem;
    }
}

/* Layout Modifiers */

.has-no-bottom-space { margin-bottom: 0 !important; }

.has-no-bottom-space:not(.has-bottom-inner-space) { padding-bottom: 0 !important; }

.has-no-top-space { margin-top: 0 !important; }

.has-no-top-space:not(.has-top-inner-space) { padding-top: 0 !important; }

@media (min-width: 992px) {
    .has-no-bottom-space-lg-up { margin-bottom: 0 !important; }
    .has-no-bottom-space-lg-up:not(.has-bottom-inner-space) { padding-bottom: 0 !important; }
    .has-no-top-space-lg-up { margin-top: 0 !important; }
    .has-no-top-space-lg-up:not(.has-top-inner-space) { padding-top: 0 !important; }
}

/* --- Alignement --- */

.is-left:not(.is-vertical) {
    justify-content: flex-start;
    text-align: left;
    object-position: left;
}

.is-left.is-vertical { align-items: flex-start; }

.is-center:not(.is-vertical) {
    justify-content: center;
    text-align: center;
    object-position: center;
}

.is-center.is-vertical { align-items: center; }

.is-right:not(.is-vertical) {
    justify-content: flex-end;
    text-align: right;
    object-position: right;
}

.is-right.is-vertical { align-items: flex-end; }

@media (max-width: 768px) {
    .is-left-md-down:not(.is-vertical) {
        justify-content: flex-start;
        text-align: left;
        object-position: left;
    }
}

@media (max-width: 768px) {

    .is-left-sm-down:not(.is-vertical) {
        justify-content: flex-start;
        text-align: left;
        object-position: left;
    }
    .is-left-sm-down.is-vertical { align-items: flex-start; }

    .is-center-sm-down:not(.is-vertical) {
        justify-content: center;
        text-align: center;
        object-position: center;
    }
    .is-center-sm-down.is-vertical { align-items: center; }

    .is-right-sm-down:not(.is-vertical) {
        justify-content: flex-end;
        text-align: right;
        object-position: right;
    }
    .is-right-sm-down.is-vertical { align-items: flex-end; }

}

[class*="o-flex"].is-bottom { align-items: flex-end; }

.is-top {
    align-self: flex-start;
    object-position: top;
}

.is-bottom {
    align-self: flex-end;
    object-position: bottom;
}

@media (max-width: 991px) {
    .is-center-md-down {
        justify-content: center;
        text-align: center;
        object-position: center;
    }

    .is-center-md-down.is-left.is-vertical {
        align-items: center;
    }
}

@media (--for-sm-down ) {
    .is-left-sm-down:not(.is-vertical) {
        justify-content: flex-start;
        text-align: left;
        object-position: left;
    }
    .is-right-sm-down:not(.is-vertical) {
        justify-content: flex-end;
        text-align: right;
        object-position: right;
    }
    .is-center-sm-down:not(.is-vertical) {
        justify-content: center;
        text-align: center;
        object-position: center;
    }
}

/* --- Responsive --- */

.hidden { display: none; }

@media (max-width: 595px) { .hidden-xs { display: none; } }

@media (min-width: 544px) and (max-width: 767px) { .hidden-sm { display: none; } }

@media (min-width: 768px) and (max-width: 991px) { .hidden-md { display: none; } }

@media (min-width: 992px) and (max-width: 1439px) { .hidden-lg { display: none; } }

@media (min-width: 1440px) { .hidden-xl { display: none; } }

@media (min-width: 544px) { .hidden-sm-up { display: none; } }

@media (min-width: 768px) { .hidden-md-up { display: none !important; } }

@media (min-width: 992px) { .hidden-lg-up { display: none !important; } }

@media (max-width: 768px) { .hidden-sm-down { display: none !important; } }

@media (max-width: 991px) { .hidden-md-down { display: none; } }

@media (max-width: 1439px) { .hidden-lg-down { display: none; } }

@media (max-width: 991px) { .hidden-burger-nav { display: none; } }

@media (min-width: 992px) { .hidden-standard-nav { display: none; } }

/* --- Text --- */

.noh {
    font-size: inherit;
    font-family: "Filson Regular", sans-serif;
    color: inherit;
    font-weight: inherit;
    line-height: inherit;
    margin: auto;
}

p {
    font-feature-settings: 'liga' 1, 'lnum' 1, 'kern' 1;
    text-rendering: geometricPrecision;
}

p:not(:last-child) { margin: 0 0 1.75em; }

strong, .-strong { font-weight: 700; }

em { font-style: italic; }

.has-thin-font {
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: initial;
}

.has-thin-font strong {
    -moz-osx-font-smoothing: grayscale;
}

.has-columns {
    word-wrap: normal;
    word-wrap: break-word;
    -webkit-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto;
    columns: 25em auto;
    grid-column-gap: 4rem;
    column-gap: 4rem;
    orphans: 3;
    widows: 2;
}

@supports not ((-webkit-hyphens: auto) or (-ms-hyphens: auto) or (hyphens: auto)) {
    .has-columns  {
        -webkit-hyphens: manual;
            -ms-hyphens: manual;
                hyphens: manual;
        word-break: break-word;
    }
}

.is-not-selectable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

sup, sub { font-size: smaller; }

sup { vertical-align: super; }

sub { vertical-align: sub; }

/* --- Images --- */

.svg-symbols {
    position: absolute;
    width: 0;
    height: 0;
}

.svg-icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    fill: currentColor;
    vertical-align: middle;
}

.has-svg-icon {
    line-height: 0;
    display: block;
    overflow: visible; /* fix overflow cut */
}

.has-svg-icon > svg {
    vertical-align: middle;
    position: relative;
    bottom: 1px;
}

.has-svg-icon > img {
    display: block;
}

img {
    width: 100%;
    height: auto;
    z-index: 2;
}

/* --- Scroll --- */

/* Block scroll on Desktop */

html.is-not-scrollable,
html.is-not-scrollable > body,
.is-not-scrollable {
    overflow: hidden !important;
    /* height: 100% !important; */
}

.is-scrollable {
    overflow: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
}

/* block scroll effect on iOS but force to scroll on top */

.o-view.is-not-scrollable {
    position: fixed;
}

.-relative {
    position: relative;
}

.-not-relative {
    position: static;
    position: initial;
}

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

/* --- Tools --- */

.hyphenate {
    -webkit-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto;
    word-wrap: break-word;
}

.no-hyphenate {
    -webkit-hyphens: none;
        -ms-hyphens: none;
            hyphens: none;
    word-wrap: break-word;
}

@supports not ((-webkit-hyphens: auto) or (-ms-hyphens: auto) or (hyphens: auto)) {
    .hyphenate {
        -webkit-hyphens: manual;
            -ms-hyphens: manual;
                hyphens: manual;
        word-break: break-word;
    }
}

article {
    display: inline-block;
    width: 100%;
}

.vue-inner { visibility: hidden; }

.regular-max-width {
    max-width: 927px;
}

.medium-max-width {
    max-width: 900px;
    margin: 0 auto;
}

.small-max-width {
    max-width: 741px;
    margin: 0 auto;
}

.extra-small-max-width {
    max-width: 434px;
    margin: 0 auto;
}

@font-face {
    font-family: "Filson Regular";
    font-weight: normal;
    src: url(/webresources/build/module/Filson-Regular.83ba30929fc53e60d5d5fbf3b92178b2.cache.woff2) format('woff2'),
    url(/webresources/build/module/Filson-Regular.d697ecbea9a61afe0e1ce3e9b13b76fe.cache.woff) format('woff');
    font-display: block;
}

@font-face {
    font-family: "Filson Black";
    font-weight: normal;
    src: url(/webresources/build/module/Filson-Black.0b87e756abcb1420914d4b852d84bb5f.cache.woff2) format('woff2'),
    url(/webresources/build/module/Filson-Black.8438a4143a01fc184a208d2d478b7bfa.cache.woff) format('woff');
    font-display: block;
}

@font-face {
    font-family: "Filson Heavy";
    font-weight: normal;
    src: url(/webresources/build/module/Filson-Heavy.09d458e430dfe9d6ff8e8d8444426752.cache.woff2) format('woff2'),
    url(/webresources/build/module/Filson-Heavy.cf75f7fd17d003cb4a3ce76ce969c540.cache.woff) format('woff');
    font-display: block;
}

/** nicht genutzt **/

@font-face {
    font-family: "Filson Book";
    font-weight: normal;
    src: url(/webresources/build/module/Filson-Book.0172ad2478bee4e8a2b2e0807a7fc623.cache.woff2) format('woff2'),
    url(/webresources/build/module/Filson-Book.9ac05db6be9977d6ffebb49eb1b97ceb.cache.woff) format('woff');
    font-display: block;
}

@font-face {
    font-family: "Filson Medium";
    font-weight: normal;
    src: url(/webresources/build/module/Filson-Medium.9d5d469074eb71b2061eab6f082b6d2a.cache.woff2) format('woff2'),
    url(/webresources/build/module/Filson-Medium.bd54f3760b5b592c9f77d9cdb49e70ca.cache.woff) format('woff');
    font-display: block;
}

html {
    scroll-behavior: smooth;
}

body {
    font-size: calc(18px + (20 - 18) * (100vw - 320px) / (1440 - 768));
    line-height: 1.556;
}

.small-text-size {
    font-size: calc(16px + (18 - 16) * (100vw - 320px) / (1440 - 768));
}

p {
    letter-spacing: .02em;
    line-height: 1.556;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    text-align: center;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-feature-settings: 'dlig' 1, 'liga' 1, 'lnum' 1, 'kern' 1;
    font-family: "Filson Black", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, sans-serif;
    color: inherit;
    font-weight: 400;
    line-height: 1.17;
    text-rendering: geometricPrecision;
}

.h3, .h4, .h5, .h6, h3, h4, h5, h6 {
    font-family: "Filson Heavy", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, sans-serif;
}

h1, .h1 { margin: 0 0 0.4em; letter-spacing: .01em; line-height: 1.133;}

h2, .h2 { margin: 0 0 0.56em; letter-spacing: .01em; line-height: 1.222;}

h3, .h3 { margin: 0 0 0.4em; letter-spacing: .01em; line-height: 1.385;}

h4, .h4, .h4 p { margin: 0 0 1.66em; letter-spacing: .02em; line-height: 1.5;}

h5, .h5 { margin: 0 0 0.4em; font-weight: normal; letter-spacing: .02em; line-height: 1.5;}

h6, .h6 { margin: 0 0 0.4em; letter-spacing: .02em; line-height: 1.5;}

.small-size {
    font-size: 14px;
    line-height: 1.429;
}

.extra-small-size {
    font-size: 12px;
    line-height: 1.667;
}

.small-shop-size {
    font-size: 18px;
}

.small-line-height,
.small-line-height p {
    line-height: 1.556;
}

.has-inner-gutter h1:last-child { margin-bottom: 0; padding-bottom: 0.4em; }

.has-inner-gutter h2:last-child { margin-bottom: 0; padding-bottom: 0.56em; }

.has-inner-gutter h3:last-child { margin-bottom: 0; padding-bottom: 0.4em; }

.has-inner-gutter h4:last-child { margin-bottom: 0; padding-bottom: 1.66em; }

.has-inner-gutter h5:last-child { margin-bottom: 0; padding-bottom: 0.4em; }

.has-inner-gutter h6:last-child { margin-bottom: 0; padding-bottom: 0.4em; }

@media (min-width: 768px) {
    body, p {
        line-height: 1.65;
    }
    h1, .h1, .h1-md-up { font-size: calc(60px + (70 - 60) * (100vw - 768px) / (1440 - 768)); line-height: 1.071; }
    h2, .h2, .h2-md-up { font-size: calc(36px + (60 - 36) * (100vw - 768px) / (1440 - 768)); line-height: 1.133;}
    h3, .h3, .h3-md-up { font-size: calc(26px + (44 - 26) * (100vw - 768px) / (1440 - 768)); line-height: 1.318;}
    h4, .h4, .h4 p { font-size: calc(20px + (26 - 20) * (100vw - 768px) / (1440 - 768)); line-height: 1.462;}
    h5, .h5 { font-size: calc(18px + (20 - 18) * (100vw - 768px) / (1200 - 768)); line-height: 1.65;}
    h6, .h6 { font-size: calc(18px + (20 - 18) * (100vw - 768px) / (1200 - 768)); line-height: 1.65;}

    button, .button {
        font-size: 16px;
    }

    input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
    textarea[name], .selection-input, .selection-list, .file-upload-text {
        font-size: 16px;
    }

    .home-title h1 {
        font-size: calc(60px + (90 - 60) * (100vw - 768px) / (1440 - 768));
    }
}

.ls-100,
.ls-100 > * {
    letter-spacing: .1em;
}

.ls-10,
.ls-10 > * {
    letter-spacing: .01em;
}

.ls-20,
.ls-20 > * {
    letter-spacing: .02em;
}

.colored-text.cyan,
.colored-text .cyan {
    color: #46C8CD;
}

.colored-text.green,
.colored-text .green {
    color: #A5DC6E;
}

.colored-text.light,
.colored-text .light {
    color: #ffffff;
}

.font-family-headings {
    font-family: "Filson Black", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, sans-serif;
}

.font-family-regular {
    font-family: "Filson Regular";
}

.font-family-heavy {
    font-family: "Filson Heavy";
    font-weight: 400;
}

.font-family-black {
    font-family: "Filson Black";
    font-weight: 400;
}

.font-family-medium {
    font-family: "Filson Medium";
}

.is-left h4 {
    text-align: left;
}

/* or use several breakpoints */

/*
@media (--for-xl) {

    h1, .h1 { font-size: var(--h1-font-size-xl); }
    h2, .h2 { font-size: var(--h2-font-size-xl); }
    h3, .h3 { font-size: var(--h3-font-size-xl); }
    h4, .h4 { font-size: var(--h4-font-size-xl); }
    h5, .h5 { font-size: var(--h5-font-size-xl); }
    h6, .h6 { font-size: var(--h5-font-size-xl); }

    .button {
        font-size: var(--button-font-size-xl);
    }

    input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
    textarea[name], .selection-input, .selection-list, .file-upload-text {
        font-size: var(--input-font-size-xl);
    }
}

@media (--for-lg) {

    h1, .h1 { font-size: var(--h1-font-size-lg); letter-spacing: -2px; text-indent: -3px; }
    h2, .h2 { font-size: var(--h2-font-size-lg); letter-spacing: -1px; }
    h3, .h3 { font-size: var(--h3-font-size-lg); letter-spacing: -0.6px; }
    h4, .h4 { font-size: var(--h4-font-size-lg); }
    h5, .h5 { font-size: var(--h5-font-size-lg); }
    h6, .h6 { font-size: var(--h5-font-size-lg); }

    .button {
        font-size: var(--button-font-size-lg);
    }

    input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
    textarea[name], .selection-input, .selection-list, .file-upload-text {
        font-size: var(--input-font-size-lg);
    }
}

@media (--for-md) {

    h1, .h1 { font-size: var(--h1-font-size-md); }
    h2, .h2 { font-size: var(--h2-font-size-md); }
    h3, .h3 { font-size: var(--h3-font-size-md); }
    h4, .h4 { font-size: var(--h4-font-size-md); }
    h5, .h5 { font-size: var(--h5-font-size-md); }
    h6, .h6 { font-size: var(--h5-font-size-md); }

    .button {
        font-size: var(--button-font-size-md);
    }

    input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
    textarea[name], .selection-input, .selection-list, .file-upload-text {
        font-size: var(--input-font-size-md);
    }
} */

@media (max-width: 991px) {
    .h2-md-down { font-size: calc(36px + (60 - 36) * (100vw - 768px) / (1440 - 768)); line-height: 1.222;}
    .h3-md-down { font-size: calc(26px + (44 - 26) * (100vw - 768px) / (1440 - 768)); line-height: 1.385;}
    .h4-md-down { font-size: calc(20px + (26 - 20) * (100vw - 768px) / (1440 - 768)); line-height: 1.5;}


    .font-family-headings-md-down {
        font-family: "Filson Black", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, sans-serif;
    }

    .small-size-md-down {
        font-size: 14px;
    }

    .extra-small-size-md-down {
        font-size: 12px;
    }
}

@media (max-width: 768px) {

    body{
        font-size: 18px;
    }

    .small-text-size {
        font-size: 16px;
        line-height: 1.5;
    }

    h1, .h1 { font-size: 60px; }
    h2, .h2, .h2-sm-down, .h2-md-down { font-size: 36px; }
    h3, .h3, .h3-md-down { font-size: 26px; }
    h4, .h4, .h4-md-down, .h4 p { font-size: 20px; }
    h5, .h5 { font-size: 18px; }
    h6, .h6 { font-size: 18px; }
    .h2-md-down { font-size: 36px; }
    .h3-md-down { font-size: 26px; }
    .h4-md-down { font-size: 20px; }

    button, .button {
        font-size: 16px;
    }

    input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
    textarea[name], .selection-input, .selection-list, .file-upload-text {
        font-size: 16px;
    }

    .home-title h1 {
        font-size: 50px;
    }

    .font-family-headings-sm-down {
        font-family: "Filson Black", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, sans-serif;
    }

}

@media (max-width: 400px) {
    h1, .service-text {
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto;
    }
}

@media (min-width: 992px) {

    body {
        font-size: 20px;
    }

    .small-text-size, .small-text-size p {
        font-size: 18px;
        line-height: 1.778;
    }

    h1, .h1, .h1-md-up { font-size: 70px;}
    h2, .h2, .h2-md-up { font-size: 60px;}
    h3, .h3, .h3-md-up { font-size: 44px; }
    h4, .h4, .h4 p { font-size: 26px;}
    h5, .h5 { font-size: 20px;}
    h6, .h6 { font-size: 20px;}
}

@media (min-width: 1200px) {
    .home-title h1 {
        font-size: 90px;
    }
}

.arrow, .icon {
    display: inline-block;
    text-align: left;
    text-transform: uppercase;
    text-decoration: none;
    position: relative;
    padding-right: 65px;
}

.button-input-arrow:after,
.arrow:after,
.button.icon:after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 10px);
    right: 14px;
    width: 26px;
    height: 20px;
    background-color: currentColor;
    -webkit-mask-image: url(/webresources/build/module/arrow.08db110fbc0abf22fed4c9eaf5cb9a50.cache.svg);
    mask-image: url(/webresources/build/module/arrow.08db110fbc0abf22fed4c9eaf5cb9a50.cache.svg);
    -webkit-mask-size: 100%;
    mask-size: 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    z-index: 10;
}

.button.mail:after {
    -webkit-mask-image: url(/webresources/build/module/mail.822649eb7688913815a40215fa280011.cache.svg);
    mask-image: url(/webresources/build/module/mail.822649eb7688913815a40215fa280011.cache.svg);
    top: calc(50% - 12px);
    width: 33px;
    height: 25px;
    right: 21px;
}

.button.instagram:after {
    -webkit-mask-image: url(/webresources/build/module/instagram.595fe6fc6b48237a4b87ae66b7bd7fd9.cache.svg);
    mask-image: url(/webresources/build/module/instagram.595fe6fc6b48237a4b87ae66b7bd7fd9.cache.svg);
    right: 21px;
    top: calc(50% - 15px);
    width: 30px;
    height: 30px;
}

.button.arrow.down.primary,
.button.icon.primary {
    background: #2B2C29;
}

.button.arrow.down:after {
    -webkit-mask-image: url(/webresources/build/module/arrow-flat.392de7e53353ac49f11ad4f135c24048.cache.svg);
            mask-image: url(/webresources/build/module/arrow-flat.392de7e53353ac49f11ad4f135c24048.cache.svg);
    /*background-repeat: no-repeat;*/
    height: 12px;
    top: calc(50% - 6px);
    transition: transform 250ms ease;
}

.button.arrow.down.open:after {
    transform: rotate(180deg);
}

.button-input input,
.button {
    padding: 9px 25px 7px;
    text-decoration: none;
    min-width: 275px;
    max-width: 100%;
    display: inline-block;
    text-align: center;
    border-radius: 194px;
    border: 1px solid #2B2C29;
    text-transform: uppercase;
    font-family: "Filson Heavy";
    transition: all 250ms ease;
    cursor: pointer;
    /*margin-top: 5px;*/
    letter-spacing: .1em;
    line-height: 1.65;
}

input.button {
    letter-spacing: .02em;
    color: #2B2C29;
}

@media (min-width: 544px) {
    .button:not(.arrow-input):hover,
    .button:not(.arrow-input):focus:not(.down) {
        border-color: #A5DC6E;
    }
}

.button.primary {
    color: #ffffff;
    background-color: #2B2C29;
}

@media (min-width: 544px) {
    .button.primary:not(.arrow-input):hover,
    .button.primary:not(.down):not(.arrow-input):focus,
    .button.primary.arrow.down:hover {
        background-color: #A5DC6E;
        border-color: #A5DC6E;
    }
}

.button.arrow,
.button.icon {
    text-align: left;
    padding-right: 40px;
    background-color: #ffffff;
}

.button.green {
    background-color: #A5DC6E;
    border-color: #A5DC6E;
    color: #2B2C29;
}

@media (min-width: 544px) {
    .button.green:hover,
    .button.green:focus {
        background-color: #46C8CD;
        border-color: #46C8CD;
    }
}

.button.colored {
    background-color: transparent;
    border-color: #46C8CD;
    color: #46C8CD;
}

.button.colored.arrow:after,
.button.colored.icon:after {
    color: #A5DC6E;
}

.button.colored.light {
    border-color: #ffffff;
    color: #ffffff;
}

.button-input-arrow {
    display: inline-block;
    position: relative;
    color: #A5DC6E;
    /*margin-top: 5px;*/
}

.button-input-arrow.light {
    color: #ffffff;
}

.button-input-arrow .button-arrow {
    position: absolute;
    width: 40px;
    min-width: 40px;
    height: 49px;
    right: 1px;
    top: 1px;
    margin-top: 0;
    background: transparent;
    border: none;
    z-index: 20;
}

.arrow-input {
    background: transparent !important;
    padding: 9px 40px .94rem 20px !important;
    z-index: 2;
}

.shadow-bg {
    background: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    border-radius: 194px;
}

.shadow-bg.dark {
    background: #2B2C29;
}

.hover-border {
    opacity: 0;
    position: absolute;
    top: 0;
    margin: 6px 65px 6px 7px;
    width: calc(100% - 65px - 7px);
    height: calc(100% - 6px - 6px);
    border-radius: 194px;
    border: 2px solid #A5DC6E;
    transition: opacity 250ms ease;
    z-index: 1;
}

@media (min-width: 544px) {
    .button-input-arrow:hover .hover-border,
    .button-input-arrow:focus .hover-border,
    .button-input-arrow input:focus + .hover-border {
        opacity: 1;
    }
}

@media (min-width: 768px) {
    .button {
        padding: 10px 20px;
        min-width: 333px;
    }

    .button.small-button-size-md-up {
        min-width: 275px;
    }

    .arrow-input {
        padding: 10px 40px 10px 20px !important;
    }
}

@media (max-width: 768px) {
    .button-input-arrow.is-full-width-sm-down,
    .button.is-full-width-sm-down {
        width: 100%;
        max-width: unset;
    }
}

.no-hyphens,
.no-hyphens > p  {
    -webkit-hyphens: none;
        -ms-hyphens: none;
            hyphens: none;
}

/** Title **/

h1:after, .h1:after, .h1-md-up:after {
    display: block;
    content: "";
    height: 5px;
    width: 150px;
    background: currentColor;
    border-radius: 194px;
    margin: 5px auto 0;
    max-width: 100%;
}

h1.small-line-md-down:after {
    width: 132px;
}

h1.full-width-line:after {
    width: 100%;
}

h1.deep-line:after, .h1.deep-line:after {
    margin-top: 39px;
}

.h1.no-line::after,
h1.no-line::after,
.h1-md-up:after {
    display: none;
}

@media (min-width: 768px) {
    .h1:after, .h1-md-up:after {
        width: 250px;
        display: block;
    }

    .h1.small-line:after {
        width: 150px;
    }

    h1.big-line-md-up::after {
        width: 800px;
    }

    h1.bigger-line-md-up::after,
    .h1.bigger-line-md-up::after {
        width: 900px;
    }

    .h1.no-line-md-up::after,
    h1.no-line-md-up::after {
        display: none;
    }
}

@media (max-width: 345px) {
    .button,
    input {
        min-width: unset;
        width: 100%;
    }
}

/** Custom **/

.we-want-you-teaser .h1:after {
    margin-top: 31px;
}

.this-is-vivage .h1:after {
    margin-top: 24px;
}

.blog-entry-intro h1:after {
    margin-top: 35px;
}

.news-circle .h1:after {
    width: 226px;
    margin-top: 37px;
}

.banner .h1:after {
    margin-top: 14px;
}

.blog-overview h1:after {
    margin-top: 35px;
}

.we-want-you h1:after {
    margin-top: 38px;
}

.the-woman-behind-vivage h1:after {
    margin-top: 38px;
}

#contact .h1-md-up:after {
    margin-top: 29px;
}

.blog-teasers .h1:after {
    margin-top: 37px;
}

@media (max-width: 991px) {
    .news-circle .h1:after {
        margin-top: 29px;
        width: 150px;
    }

    .we-want-you-teaser .h1:after {
        margin-top: 19px;
    }

    .blog-teasers .h1:after {
        margin-top: 28px;
    }

    .circle-title.big-circle h1:after {
        margin-top: 13px;
    }

    .the-woman-behind-vivage h1 {
        margin-bottom: 5px;
    }

    .the-woman-behind-vivage h1:after {
        margin-top: 19px;
    }

    .the-woman-behind-vivage-teaser .h1:after {
        margin-top: 19px;
    }

    .this-is-vivage .h1:after {
        margin-top: 19px;
    }

    .we-want-you h1:after {
        margin-top: 25px;
    }

    .blog-entry-intro h1:after {
        margin-top: 20px;
    }

    .product-usage-text .h1:after {
        margin-top: 23px;
    }
}

/* --- Flexbox --- */

/* Simple automatic inline flexbox grid layout */

.o-flex, .o-flex-inline { display: flex; }

/* Box width */

.o-flex > * { flex: 1; }

.o-flex > .is-box-2x { flex: 2; }

.o-flex > .is-box-3x { flex: 3; }

.o-flex > .is-box-4x { flex: 4; }

/* Centered horizontally and vertically */

.o-flex-middle {
    display: flex;
    align-items: center;
    justify-content: center;
}

[class*="o-flex"].is-middle { align-items: center; }

.o-flex-middle > * {
    /* IE11 fix */
    margin-left: 0;
    margin-right: 0;
}

/* Space between boxes */

.o-flex-space {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Modifiers */

[class*="o-flex"].has-gutter {
    margin-left: calc(4rem / -2);
    margin-right: calc(4rem / -2);
}

[class*="o-flex"].has-gutter > * {
    padding-left: calc(4rem / 2);
    padding-right: calc(4rem / 2);
}

[class*="o-flex"].has-gutter:not(.no-vertical-margin) {
    margin-bottom: calc(3rem * -1);
}

[class*="o-flex"].has-gutter.has-big-vertical-margin:not(.no-vertical-margin) {
    margin-bottom: calc(3rem * -1.5);
}

[class*="o-flex"].has-gutter:not(.no-vertical-margin) > * {
    margin-bottom: 3rem;
}

[class*="o-flex"].has-gutter.has-big-vertical-margin:not(.no-vertical-margin) > * {
    margin-bottom: calc(20rem * 1.5);
}

/* Medium gutter */

[class*="o-flex"].has-medium-gutter {
    margin-left: calc(9.5rem / -2);
    margin-right: calc(9.5rem / -2);
}

[class*="o-flex"].has-medium-gutter > * {
    padding-left: calc(9.5rem / 2);
    padding-right: calc(9.5rem / 2);
}

[class*="o-flex"].has-medium-gutter:not(.no-vertical-margin) {
    margin-bottom: calc(10rem * -1);
}

[class*="o-flex"].has-medium-gutter.has-big-vertical-margin:not(.no-vertical-margin) {
    margin-bottom: calc(10rem * -1.5);
}

[class*="o-flex"].has-medium-gutter:not(.no-vertical-margin) > * {
    margin-bottom: 10rem;
}

[class*="o-flex"].has-medium-gutter.has-big-vertical-margin:not(.no-vertical-margin) > * {
    margin-bottom: calc(10rem * 1.5);
}

/* Big gutter */

[class*="o-flex"].has-big-gutter {
    margin-left: calc(11.5rem / -2);
    margin-right: calc(11.5rem / -2);
}

[class*="o-flex"].has-big-gutter > * {
    padding-left: calc(11.5rem / 2);
    padding-right: calc(11.5rem / 2);
}

[class*="o-flex"].has-big-gutter:not(.no-vertical-margin) {
    margin-bottom: calc(20rem * -1);
}

[class*="o-flex"].has-big-gutter.has-big-vertical-margin:not(.no-vertical-margin) {
    margin-bottom: calc(20rem * -1.5);
}

[class*="o-flex"].has-big-gutter:not(.no-vertical-margin) > * {
    margin-bottom: 20rem;
}

[class*="o-flex"].has-big-gutter.has-big-vertical-margin:not(.no-vertical-margin) > * {
    margin-bottom: calc(20rem * 1.5);
}

/* Bigger gutter */

[class*="o-flex"].has-bigger-gutter {
    margin-left: calc(21.7rem / -2);
    margin-right: calc(21.7rem / -2);
}

[class*="o-flex"].has-bigger-gutter > * {
    padding-left: calc(21.7rem / 2);
    padding-right: calc(21.7rem / 2);
}

[class*="o-flex"].has-bigger-gutter:not(.no-vertical-margin) {
    margin-bottom: calc(21.7rem * -1);
}

[class*="o-flex"].has-bigger-gutter.has-big-vertical-margin:not(.no-vertical-margin) {
    margin-bottom: calc(21.7rem * -1.5);
}

[class*="o-flex"].has-bigger-gutter:not(.no-vertical-margin) > * {
    margin-bottom: 21.7rem;
}

[class*="o-flex"].has-bigger-gutter.has-big-vertical-margin:not(.no-vertical-margin) > * {
    margin-bottom: calc(21.7rem * 1.5);
}

[class*="o-flex"].has-gutter > .has-gutter {
    margin: 0;
    padding: 0;
}

[class*="o-flex"].is-multiline { flex-wrap: wrap; }

@media (min-width: 992px) and (max-width: 1439px) {
    [class*="o-flex"].is-multiline-lg { flex-wrap: wrap; }
}

@media (min-width: 768px) and (max-width: 991px) {
    [class*="o-flex"].is-multiline-md { flex-wrap: wrap; }
}

@media (max-width: 1439px) {
    [class*="o-flex"].has-gutter-lg-down {
        margin-left: calc(4rem / -2);
        margin-right: calc(4rem / -2);
    }

    [class*="o-flex"].has-gutter-lg-down > * {
        padding-left: calc(4rem / 2);
        padding-right: calc(4rem / 2);
    }

    [class*="o-flex"].has-gutter-lg-down:not(.no-vertical-margin) {
        margin-bottom: calc(3rem * -1);
    }

    [class*="o-flex"].has-gutter-lg-down.has-big-vertical-margin:not(.no-vertical-margin) {
        margin-bottom: calc(3rem * -1.5);
    }

    [class*="o-flex"].has-gutter-lg-down:not(.no-vertical-margin) > * {
        margin-bottom: 3rem;
    }

    [class*="o-flex"].has-gutter-lg-down.has-big-vertical-margin:not(.no-vertical-margin) > * {
        margin-bottom: calc(20rem * 1.5);
    }
}

@media (max-width: 991px) {
    [class*="o-flex"].has-no-gutter-md-down {
        margin-left: 0;
        margin-right: 0;
    }

    [class*="o-flex"].has-no-gutter-md-down > * {
        padding-left: 0;
        padding-right: 0;
    }

    [class*="o-flex"].no-vertical-margin-md-down,
    [class*="o-flex"].no-vertical-margin-md-down > *,
    [class*="o-flex"][class*="o-flex"].has-bigger-gutter:not(.no-vertical-margin).no-vertical-margin-md-down,
    [class*="o-flex"][class*="o-flex"].has-bigger-gutter:not(.no-vertical-margin).no-vertical-margin-md-down > * {
        margin-bottom: 0;
    }

    [class*="o-flex"].has-gutter-md-down {
        margin-left: calc(4rem / -2);
        margin-right: calc(4rem / -2);
    }

    [class*="o-flex"].has-gutter-md-down > * {
        padding-left: calc(4rem / 2);
        padding-right: calc(4rem / 2);
    }

    [class*="o-flex"].has-gutter-md-down:not(.no-vertical-margin) {
        margin-bottom: calc(3rem * -1);
    }

    [class*="o-flex"].has-gutter-md-down.has-big-vertical-margin:not(.no-vertical-margin) {
        margin-bottom: calc(3rem * -1.5);
    }

    [class*="o-flex"].has-gutter-md-down:not(.no-vertical-margin) > * {
        margin-bottom: 3rem;
    }

    [class*="o-flex"].has-gutter-md-down.has-big-vertical-margin:not(.no-vertical-margin) > * {
        margin-bottom: calc(20rem * 1.5);
    }
}

@media (max-width: 768px) {
    .o-flex-sm-down {
        display: flex;
    }
    [class*="o-flex"].is-multiline-sm-down { flex-wrap: wrap; }
}

[class*="o-flex"].is-reverse { flex-direction: row-reverse; }

[class*="o-flex"].is-vertical { flex-direction: column; }

[class*="o-flex-middle"].is-vertical { text-align: center; }

@media (max-width: 768px) {
    [class*="o-flex"].is-wrap-reverse-sm-down {
        flex-wrap: wrap-reverse;
    }
}

.o-flex.has-vertical-padding {
    padding: 2rem 0;
    margin-top: 0;
    margin-bottom: 0;
}

.o-flex.has-vertical-padding > div[class^="cell-"] {
    margin-bottom: 0;
}

/* --- Column widths --- */

/* Grid System Cell */

[class*="o-flex"] > .cell-grow { flex: 1 1 auto; }

[class*="o-flex"] > .cell-shrink { flex: 1 0 auto; }

[class*="o-flex"] > .cell-text { align-content: flex-start; }

[class*="o-flex"] > .cell-1of1,
[class*="o-flex"] > .cell-2of2,
[class*="o-flex"] > .cell-3of3,
[class*="o-flex"] > .cell-4of4,
[class*="o-flex"] > .cell-5of5,
[class*="o-flex"] > .cell-6of6,
[class*="o-flex"] > .cell-pct-100 { flex: 0 1 100%; }

[class*="o-flex"] > .cell-1of2 { flex: 0 1 50%; }

[class*="o-flex"] > .cell-1of3 { flex: 0 1 33.33%; }

[class*="o-flex"] > .cell-2of3 { flex: 0 1 66.66%; }

[class*="o-flex"] > .cell-1of4 { flex: 0 1 25%; }

[class*="o-flex"] > .cell-2of4 { flex: 0 1 50%; }

[class*="o-flex"] > .cell-3of4 { flex: 0 1 75%; }

[class*="o-flex"] > .cell-1of5 { flex: 0 1 20%; }

[class*="o-flex"] > .cell-2of5 { flex: 0 1 40%; }

[class*="o-flex"] > .cell-3of5 { flex: 0 1 60%; }

[class*="o-flex"] > .cell-4of5 { flex: 0 1 80%; }

[class*="o-flex"] > .cell-1of6 { flex: 0 1 16.66%; }

[class*="o-flex"] > .cell-2of6 { flex: 0 1 33.33%; }

[class*="o-flex"] > .cell-3of6 { flex: 0 1 49.99%; }

[class*="o-flex"] > .cell-4of6 { flex: 0 1 66.66%; }

[class*="o-flex"] > .cell-5of6 { flex: 0 1 83.33%; }

/* for table display */

[class*="o-flex"] > .cell-pct-10 { flex: 0 1 10%; }

[class*="o-flex"] > .cell-pct-15 { flex: 0 1 15%; }

[class*="o-flex"] > .cell-pct-20 { flex: 0 1 20%; }

[class*="o-flex"] > .cell-pct-25 { flex: 0 1 25%; }

[class*="o-flex"] > .cell-pct-30 { flex: 0 1 30%; }

[class*="o-flex"] > .cell-pct-33 { flex: 0 1 33%; }

[class*="o-flex"] > .cell-pct-40 { flex: 0 1 40%; }

[class*="o-flex"] > .cell-pct-45 { flex: 0 1 45%; }

[class*="o-flex"] > .cell-pct-46 { flex: 0 1 46%; }

[class*="o-flex"] > .cell-pct-48 { flex: 0 1 48%; }

[class*="o-flex"] > .cell-pct-50 { flex: 0 1 50%; }

[class*="o-flex"] > .cell-pct-52 { flex: 0 1 52%; }

[class*="o-flex"] > .cell-pct-54 { flex: 0 1 54%; }

[class*="o-flex"] > .cell-pct-60 { flex: 0 1 60%; }

[class*="o-flex"] > .cell-pct-75 { flex: 0 1 75%; }

[class*="o-flex"] > .cell-pct-80 { flex: 0 1 80%; }

[class*="o-flex"] > .cell-pct-90 { flex: 0 1 90%; }

@media (min-width: 992px) and (max-width: 1439px) {
    [class*="o-flex"] > .cell-1of1-lg,
    [class*="o-flex"] > .cell-2of2-lg,
    [class*="o-flex"] > .cell-3of3-lg,
    [class*="o-flex"] > .cell-4of4-lg,
    [class*="o-flex"] > .cell-5of5-lg,
    [class*="o-flex"] > .cell-6of6-lg,
    [class*="o-flex"] > .cell-pct-100-lg { flex: 0 1 100%; }

    [class*="o-flex"] > .cell-1of2-lg { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-1of3-lg { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-2of3-lg { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-1of4-lg { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-2of4-lg { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-3of4-lg { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-1of5-lg { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-2of5-lg { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-3of5-lg { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-4of5-lg { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-1of6-lg { flex: 0 1 16.66%; }
    [class*="o-flex"] > .cell-2of6-lg { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-3of6-lg { flex: 0 1 49.99%; }
    [class*="o-flex"] > .cell-4of6-lg { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-5of6-lg { flex: 0 1 83.33%; }

    [class*="o-flex"] > .cell-pct-10-lg { flex: 0 1 10%; }
    [class*="o-flex"] > .cell-pct-15-lg { flex: 0 1 15%; }
    [class*="o-flex"] > .cell-pct-20-lg { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-pct-25-lg { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-pct-30-lg { flex: 0 1 30%; }
    [class*="o-flex"] > .cell-pct-40-lg { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-pct-50-lg { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-pct-60-lg { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-pct-75-lg { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-pct-80-lg { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-pct-90-lg { flex: 0 1 90%; }
}

@media (min-width: 768px) and (max-width: 991px) {
    [class*="o-flex"] > .cell-1of1-md,
    [class*="o-flex"] > .cell-2of2-md,
    [class*="o-flex"] > .cell-3of3-md,
    [class*="o-flex"] > .cell-4of4-md,
    [class*="o-flex"] > .cell-5of5-md,
    [class*="o-flex"] > .cell-6of6-md,
    [class*="o-flex"] > .cell-pct-100-md { flex: 0 1 100%; }

    [class*="o-flex"] > .cell-1of2-md { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-1of3-md { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-2of3-md { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-1of4-md { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-2of4-md { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-3of4-md { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-1of5-md { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-2of5-md { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-3of5-md { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-4of5-md { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-1of6-md { flex: 0 1 16.66%; }
    [class*="o-flex"] > .cell-2of6-md { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-3of6-md { flex: 0 1 49.99%; }
    [class*="o-flex"] > .cell-4of6-md { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-5of6-md { flex: 0 1 83.33%; }

    [class*="o-flex"] > .cell-pct-10-md { flex: 0 1 10%; }
    [class*="o-flex"] > .cell-pct-15-md { flex: 0 1 15%; }
    [class*="o-flex"] > .cell-pct-20-md { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-pct-25-md { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-pct-30-md { flex: 0 1 30%; }
    [class*="o-flex"] > .cell-pct-40-md { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-pct-50-md { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-pct-60-md { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-pct-75-md { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-pct-80-md { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-pct-90-md { flex: 0 1 90%; }
}

@media (max-width: 768px) {
    [class*="o-flex"] > .cell-1of1-sm-down,
    [class*="o-flex"] > .cell-2of2-sm-down,
    [class*="o-flex"] > .cell-3of3-sm-down,
    [class*="o-flex"] > .cell-4of4-sm-down,
    [class*="o-flex"] > .cell-5of5-sm-down,
    [class*="o-flex"] > .cell-6of6-sm-down,
    [class*="o-flex"] > .cell-pct-100-sm-down { flex: 0 1 100%; }

    [class*="o-flex"] > .cell-1of2-sm-down { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-1of3-sm-down { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-2of3-sm-down { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-1of4-sm-down { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-2of4-sm-down { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-3of4-sm-down { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-1of5-sm-down { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-2of5-sm-down { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-3of5-sm-down { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-4of5-sm-down { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-1of6-sm-down { flex: 0 1 16.66%; }
    [class*="o-flex"] > .cell-2of6-sm-down { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-3of6-sm-down { flex: 0 1 49.99%; }
    [class*="o-flex"] > .cell-4of6-sm-down { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-5of6-sm-down { flex: 0 1 83.33%; }

    [class*="o-flex"] > .cell-pct-10-sm-down { flex: 0 1 10%; }
    [class*="o-flex"] > .cell-pct-15-sm-down { flex: 0 1 15%; }
    [class*="o-flex"] > .cell-pct-20-sm-down { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-pct-25-sm-down { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-pct-30-sm-down { flex: 0 1 30%; }
    [class*="o-flex"] > .cell-pct-40-sm-down { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-pct-50-sm-down { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-pct-60-sm-down { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-pct-75-sm-down { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-pct-80-sm-down { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-pct-90-sm-down { flex: 0 1 90%; }
}

@media (max-width: 595px) {
    [class*="o-flex"] > .cell-1of1-xs { flex: 0 1 100%; }
}

@media (min-width: 992px) {
    [class*="o-flex"] > .cell-1of1-standard-nav,
    [class*="o-flex"] > .cell-2of2-standard-nav,
    [class*="o-flex"] > .cell-3of3-standard-nav,
    [class*="o-flex"] > .cell-4of4-standard-nav,
    [class*="o-flex"] > .cell-5of5-standard-nav,
    [class*="o-flex"] > .cell-6of6-standard-nav,
    [class*="o-flex"] > .cell-pct-100-standard-nav { flex: 0 1 100%; }

    [class*="o-flex"] > .cell-1of2-standard-nav { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-1of3-standard-nav { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-2of3-standard-nav { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-1of4-standard-nav { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-2of4-standard-nav { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-3of4-standard-nav { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-1of5-standard-nav { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-2of5-standard-nav { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-3of5-standard-nav { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-4of5-standard-nav { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-1of6-standard-nav { flex: 0 1 16.66%; }
    [class*="o-flex"] > .cell-2of6-standard-nav { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-3of6-standard-nav { flex: 0 1 49.99%; }
    [class*="o-flex"] > .cell-4of6-standard-nav { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-5of6-standard-nav { flex: 0 1 83.33%; }

    [class*="o-flex"] > .cell-pct-10-standard-nav { flex: 0 1 10%; }
    [class*="o-flex"] > .cell-pct-15-standard-nav { flex: 0 1 15%; }
    [class*="o-flex"] > .cell-pct-20-standard-nav { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-pct-25-standard-nav { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-pct-30-standard-nav { flex: 0 1 30%; }
    [class*="o-flex"] > .cell-pct-40-standard-nav { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-pct-50-standard-nav { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-pct-60-standard-nav { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-pct-75-standard-nav { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-pct-80-standard-nav { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-pct-90-standard-nav { flex: 0 1 90%; }
}

@media (max-width: 991px) {
    [class*="o-flex"] > .cell-1of1-burger-nav,
    [class*="o-flex"] > .cell-2of2-burger-nav,
    [class*="o-flex"] > .cell-3of3-burger-nav,
    [class*="o-flex"] > .cell-4of4-burger-nav,
    [class*="o-flex"] > .cell-5of5-burger-nav,
    [class*="o-flex"] > .cell-6of6-burger-nav,
    [class*="o-flex"] > .cell-pct-100-burger-nav { flex: 0 1 100%; }

    [class*="o-flex"] > .cell-1of2-burger-nav { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-1of3-burger-nav { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-2of3-burger-nav { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-1of4-burger-nav { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-2of4-burger-nav { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-3of4-burger-nav { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-1of5-burger-nav { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-2of5-burger-nav { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-3of5-burger-nav { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-4of5-burger-nav { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-1of6-burger-nav { flex: 0 1 16.66%; }
    [class*="o-flex"] > .cell-2of6-burger-nav { flex: 0 1 33.33%; }
    [class*="o-flex"] > .cell-3of6-burger-nav { flex: 0 1 49.99%; }
    [class*="o-flex"] > .cell-4of6-burger-nav { flex: 0 1 66.66%; }
    [class*="o-flex"] > .cell-5of6-burger-nav { flex: 0 1 83.33%; }

    [class*="o-flex"] > .cell-pct-10-burger-nav { flex: 0 1 10%; }
    [class*="o-flex"] > .cell-pct-15-burger-nav { flex: 0 1 15%; }
    [class*="o-flex"] > .cell-pct-20-burger-nav { flex: 0 1 20%; }
    [class*="o-flex"] > .cell-pct-25-burger-nav { flex: 0 1 25%; }
    [class*="o-flex"] > .cell-pct-30-burger-nav { flex: 0 1 30%; }
    [class*="o-flex"] > .cell-pct-40-burger-nav { flex: 0 1 40%; }
    [class*="o-flex"] > .cell-pct-50-burger-nav { flex: 0 1 50%; }
    [class*="o-flex"] > .cell-pct-60-burger-nav { flex: 0 1 60%; }
    [class*="o-flex"] > .cell-pct-75-burger-nav { flex: 0 1 75%; }
    [class*="o-flex"] > .cell-pct-80-burger-nav { flex: 0 1 80%; }
    [class*="o-flex"] > .cell-pct-90-burger-nav { flex: 0 1 90%; }
}

@media print {
    .page [class*="o-flex"] > .cell-1of1-print { flex: 0 1 100%; }
    .page [class*="o-flex"] > .cell-1of3-print { flex: 0 1 33.33%; }
    .page [class*="o-flex"] > .cell-2of3-print { flex: 0 1 66.66%; }
}

/* IE10+ flex fix: */

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {

    [class*="o-flex"] > [class*="cell-"] { flex: 0 !important; }
    [class*="o-flex"] > .cell-1of1,
    [class*="o-flex"] > .cell-2of2,
    [class*="o-flex"] > .cell-3of3,
    [class*="o-flex"] > .cell-4of4,
    [class*="o-flex"] > .cell-5of5,
    [class*="o-flex"] > .cell-6of6,
    [class*="o-flex"] > .cell-pct-100 { min-width: 100%; }

    [class*="o-flex"] > .cell-1of2 { min-width: 50%; }
    [class*="o-flex"] > .cell-1of3 { min-width: 33.33%; }
    [class*="o-flex"] > .cell-2of3 { min-width: 66.66%; }
    [class*="o-flex"] > .cell-1of4 { min-width: 25%; }
    [class*="o-flex"] > .cell-2of4 { min-width: 50%; }
    [class*="o-flex"] > .cell-3of4 { min-width: 75%; }
    [class*="o-flex"] > .cell-1of5 { min-width: 20%; }
    [class*="o-flex"] > .cell-2of5 { min-width: 40%; }
    [class*="o-flex"] > .cell-3of5 { min-width: 60%; }
    [class*="o-flex"] > .cell-4of5 { min-width: 80%; }
    [class*="o-flex"] > .cell-1of6 { min-width: 16.66%; }
    [class*="o-flex"] > .cell-2of6 { min-width: 33.33%; }
    [class*="o-flex"] > .cell-3of6 { min-width: 49.99%; }
    [class*="o-flex"] > .cell-4of6 { min-width: 66.66%; }
    [class*="o-flex"] > .cell-5of6 { min-width: 83.33%; }

    [class*="o-flex"] > .cell-pct-10 { min-width: 10%; }
    [class*="o-flex"] > .cell-pct-15 { min-width: 15%; }
    [class*="o-flex"] > .cell-pct-20 { min-width: 20%; }
    [class*="o-flex"] > .cell-pct-25 { min-width: 25%; }
    [class*="o-flex"] > .cell-pct-30 { min-width: 30%; }
    [class*="o-flex"] > .cell-pct-33 { min-width: 33%; }
    [class*="o-flex"] > .cell-pct-40 { min-width: 40%; }
    [class*="o-flex"] > .cell-pct-50 { min-width: 50%; }
    [class*="o-flex"] > .cell-pct-60 { min-width: 60%; }
    [class*="o-flex"] > .cell-pct-75 { min-width: 75%; }
    [class*="o-flex"] > .cell-pct-80 { min-width: 80%; }
    [class*="o-flex"] > .cell-pct-90 { min-width: 90%; }
}

@media (min-width: 992px) and (max-width: 1439px) and (-ms-high-contrast: active), (min-width: 992px) and (max-width: 1439px) and (-ms-high-contrast: none) {

    [class*="o-flex"] > .cell-1of1-lg,
    [class*="o-flex"] > .cell-2of2-lg,
    [class*="o-flex"] > .cell-3of3-lg,
    [class*="o-flex"] > .cell-4of4-lg,
    [class*="o-flex"] > .cell-5of5-lg,
    [class*="o-flex"] > .cell-6of6-lg,
    [class*="o-flex"] > .cell-pct-100-lg { min-width: 100%; }

    [class*="o-flex"] > .cell-1of2-lg { min-width: 50%; }
    [class*="o-flex"] > .cell-1of3-lg { min-width: 33.33%; }
    [class*="o-flex"] > .cell-2of3-lg { min-width: 66.66%; }
    [class*="o-flex"] > .cell-1of4-lg { min-width: 25%; }
    [class*="o-flex"] > .cell-2of4-lg { min-width: 50%; }
    [class*="o-flex"] > .cell-3of4-lg { min-width: 75%; }
    [class*="o-flex"] > .cell-1of5-lg { min-width: 20%; }
    [class*="o-flex"] > .cell-2of5-lg { min-width: 40%; }
    [class*="o-flex"] > .cell-3of5-lg { min-width: 60%; }
    [class*="o-flex"] > .cell-4of5-lg { min-width: 80%; }
    [class*="o-flex"] > .cell-1of6-lg { min-width: 16.66%; }
    [class*="o-flex"] > .cell-2of6-lg { min-width: 33.33%; }
    [class*="o-flex"] > .cell-3of6-lg { min-width: 49.99%; }
    [class*="o-flex"] > .cell-4of6-lg { min-width: 66.66%; }
    [class*="o-flex"] > .cell-5of6-lg { min-width: 83.33%; }

    [class*="o-flex"] > .cell-pct-10-lg { min-width: 10%; }
    [class*="o-flex"] > .cell-pct-15-lg { min-width: 15%; }
    [class*="o-flex"] > .cell-pct-20-lg { min-width: 20%; }
    [class*="o-flex"] > .cell-pct-25-lg { min-width: 25%; }
    [class*="o-flex"] > .cell-pct-30-lg { min-width: 30%; }
    [class*="o-flex"] > .cell-pct-33-lg { min-width: 33%; }
    [class*="o-flex"] > .cell-pct-40-lg { min-width: 40%; }
    [class*="o-flex"] > .cell-pct-50-lg { min-width: 50%; }
    [class*="o-flex"] > .cell-pct-60-lg { min-width: 60%; }
    [class*="o-flex"] > .cell-pct-75-lg { min-width: 75%; }
    [class*="o-flex"] > .cell-pct-80-lg { min-width: 80%; }
    [class*="o-flex"] > .cell-pct-90-lg { min-width: 90%; }
}

@media (min-width: 768px) and (max-width: 991px) and (-ms-high-contrast: active), (min-width: 768px) and (max-width: 991px) and (-ms-high-contrast: none) {

    [class*="o-flex"] > .cell-1of1-md,
    [class*="o-flex"] > .cell-2of2-md,
    [class*="o-flex"] > .cell-3of3-md,
    [class*="o-flex"] > .cell-4of4-md,
    [class*="o-flex"] > .cell-5of5-md,
    [class*="o-flex"] > .cell-6of6-md,
    [class*="o-flex"] > .cell-pct-100-md { min-width: 100%; }

    [class*="o-flex"] > .cell-1of2-md { min-width: 50%; }
    [class*="o-flex"] > .cell-1of3-md { min-width: 33.33%; }
    [class*="o-flex"] > .cell-2of3-md { min-width: 66.66%; }
    [class*="o-flex"] > .cell-1of4-md { min-width: 25%; }
    [class*="o-flex"] > .cell-2of4-md { min-width: 50%; }
    [class*="o-flex"] > .cell-3of4-md { min-width: 75%; }
    [class*="o-flex"] > .cell-1of5-md { min-width: 20%; }
    [class*="o-flex"] > .cell-2of5-md { min-width: 40%; }
    [class*="o-flex"] > .cell-3of5-md { min-width: 60%; }
    [class*="o-flex"] > .cell-4of5-md { min-width: 80%; }
    [class*="o-flex"] > .cell-1of6-md { min-width: 16.66%; }
    [class*="o-flex"] > .cell-2of6-md { min-width: 33.33%; }
    [class*="o-flex"] > .cell-3of6-md { min-width: 49.99%; }
    [class*="o-flex"] > .cell-4of6-md { min-width: 66.66%; }
    [class*="o-flex"] > .cell-5of6-md { min-width: 83.33%; }

    [class*="o-flex"] > .cell-pct-10-md { min-width: 10%; }
    [class*="o-flex"] > .cell-pct-15-md { min-width: 15%; }
    [class*="o-flex"] > .cell-pct-20-md { min-width: 20%; }
    [class*="o-flex"] > .cell-pct-25-md { min-width: 25%; }
    [class*="o-flex"] > .cell-pct-30-md { min-width: 30%; }
    [class*="o-flex"] > .cell-pct-33-md { min-width: 33%; }
    [class*="o-flex"] > .cell-pct-40-md { min-width: 40%; }
    [class*="o-flex"] > .cell-pct-50-md { min-width: 50%; }
    [class*="o-flex"] > .cell-pct-60-md { min-width: 60%; }
    [class*="o-flex"] > .cell-pct-75-md { min-width: 75%; }
    [class*="o-flex"] > .cell-pct-80-md { min-width: 80%; }
    [class*="o-flex"] > .cell-pct-90-md { min-width: 90%; }
}

@media (max-width: 768px) and (-ms-high-contrast: active), (max-width: 768px) and (-ms-high-contrast: none) {

    [class*="o-flex"] > .cell-1of1-sm-down,
    [class*="o-flex"] > .cell-2of2-sm-down,
    [class*="o-flex"] > .cell-3of3-sm-down,
    [class*="o-flex"] > .cell-4of4-sm-down,
    [class*="o-flex"] > .cell-5of5-sm-down,
    [class*="o-flex"] > .cell-6of6-sm-down,
    [class*="o-flex"] > .cell-pct-100-sm-down { min-width: 100%; }

    [class*="o-flex"] > .cell-1of2-sm-down { min-width: 50%; }
    [class*="o-flex"] > .cell-1of3-sm-down { min-width: 33.33%; }
    [class*="o-flex"] > .cell-2of3-sm-down { min-width: 66.66%; }
    [class*="o-flex"] > .cell-1of4-sm-down { min-width: 25%; }
    [class*="o-flex"] > .cell-2of4-sm-down { min-width: 50%; }
    [class*="o-flex"] > .cell-3of4-sm-down { min-width: 75%; }
    [class*="o-flex"] > .cell-1of5-sm-down { min-width: 20%; }
    [class*="o-flex"] > .cell-2of5-sm-down { min-width: 40%; }
    [class*="o-flex"] > .cell-3of5-sm-down { min-width: 60%; }
    [class*="o-flex"] > .cell-4of5-sm-down { min-width: 80%; }
    [class*="o-flex"] > .cell-1of6-sm-down { min-width: 16.66%; }
    [class*="o-flex"] > .cell-2of6-sm-down { min-width: 33.33%; }
    [class*="o-flex"] > .cell-3of6-sm-down { min-width: 49.99%; }
    [class*="o-flex"] > .cell-4of6-sm-down { min-width: 66.66%; }
    [class*="o-flex"] > .cell-5of6-sm-down { min-width: 83.33%; }

    [class*="o-flex"] > .cell-pct-10-sm-down { min-width: 10%; }
    [class*="o-flex"] > .cell-pct-15-sm-down { min-width: 15%; }
    [class*="o-flex"] > .cell-pct-20-sm-down { min-width: 20%; }
    [class*="o-flex"] > .cell-pct-25-sm-down { min-width: 25%; }
    [class*="o-flex"] > .cell-pct-30-sm-down { min-width: 30%; }
    [class*="o-flex"] > .cell-pct-33-sm-down { min-width: 33%; }
    [class*="o-flex"] > .cell-pct-40-sm-down { min-width: 40%; }
    [class*="o-flex"] > .cell-pct-50-sm-down { min-width: 50%; }
    [class*="o-flex"] > .cell-pct-60-sm-down { min-width: 60%; }
    [class*="o-flex"] > .cell-pct-75-sm-down { min-width: 75%; }
    [class*="o-flex"] > .cell-pct-80-sm-down { min-width: 80%; }
    [class*="o-flex"] > .cell-pct-90-sm-down { min-width: 90%; }
}

@media (min-width: 992px) and (-ms-high-contrast: active), (min-width: 992px) and (-ms-high-contrast: none) {

    [class*="o-flex"] > .cell-1of1-standard-nav,
    [class*="o-flex"] > .cell-2of2-standard-nav,
    [class*="o-flex"] > .cell-3of3-standard-nav,
    [class*="o-flex"] > .cell-4of4-standard-nav,
    [class*="o-flex"] > .cell-5of5-standard-nav,
    [class*="o-flex"] > .cell-6of6-standard-nav,
    [class*="o-flex"] > .cell-pct-100-standard-nav { min-width: 100%; }

    [class*="o-flex"] > .cell-1of2-standard-nav { min-width: 50%; }
    [class*="o-flex"] > .cell-1of3-standard-nav { min-width: 33.33%; }
    [class*="o-flex"] > .cell-2of3-standard-nav { min-width: 66.66%; }
    [class*="o-flex"] > .cell-1of4-standard-nav { min-width: 25%; }
    [class*="o-flex"] > .cell-2of4-standard-nav { min-width: 50%; }
    [class*="o-flex"] > .cell-3of4-standard-nav { min-width: 75%; }
    [class*="o-flex"] > .cell-1of5-standard-nav { min-width: 20%; }
    [class*="o-flex"] > .cell-2of5-standard-nav { min-width: 40%; }
    [class*="o-flex"] > .cell-3of5-standard-nav { min-width: 60%; }
    [class*="o-flex"] > .cell-4of5-standard-nav { min-width: 80%; }
    [class*="o-flex"] > .cell-1of6-standard-nav { min-width: 16.66%; }
    [class*="o-flex"] > .cell-2of6-standard-nav { min-width: 33.33%; }
    [class*="o-flex"] > .cell-3of6-standard-nav { min-width: 49.99%; }
    [class*="o-flex"] > .cell-4of6-standard-nav { min-width: 66.66%; }
    [class*="o-flex"] > .cell-5of6-standard-nav { min-width: 83.33%; }

    [class*="o-flex"] > .cell-pct-10-standard-nav { min-width: 10%; }
    [class*="o-flex"] > .cell-pct-15-standard-nav { min-width: 15%; }
    [class*="o-flex"] > .cell-pct-20-standard-nav { min-width: 20%; }
    [class*="o-flex"] > .cell-pct-25-standard-nav { min-width: 25%; }
    [class*="o-flex"] > .cell-pct-30-standard-nav { min-width: 30%; }
    [class*="o-flex"] > .cell-pct-33-standard-nav { min-width: 33%; }
    [class*="o-flex"] > .cell-pct-40-standard-nav { min-width: 40%; }
    [class*="o-flex"] > .cell-pct-50-standard-nav { min-width: 50%; }
    [class*="o-flex"] > .cell-pct-60-standard-nav { min-width: 60%; }
    [class*="o-flex"] > .cell-pct-75-standard-nav { min-width: 75%; }
    [class*="o-flex"] > .cell-pct-80-standard-nav { min-width: 80%; }
    [class*="o-flex"] > .cell-pct-90-standard-nav { min-width: 90%; }
}

@media (max-width: 991px) and (-ms-high-contrast: active), (max-width: 991px) and (-ms-high-contrast: none) {

    [class*="o-flex"] > .cell-1of1-burger-nav,
    [class*="o-flex"] > .cell-2of2-burger-nav,
    [class*="o-flex"] > .cell-3of3-burger-nav,
    [class*="o-flex"] > .cell-4of4-burger-nav,
    [class*="o-flex"] > .cell-5of5-burger-nav,
    [class*="o-flex"] > .cell-6of6-burger-nav,
    [class*="o-flex"] > .cell-pct-100-burger-nav { min-width: 100%; }

    [class*="o-flex"] > .cell-1of2-burger-nav { min-width: 50%; }
    [class*="o-flex"] > .cell-1of3-burger-nav { min-width: 33.33%; }
    [class*="o-flex"] > .cell-2of3-burger-nav { min-width: 66.66%; }
    [class*="o-flex"] > .cell-1of4-burger-nav { min-width: 25%; }
    [class*="o-flex"] > .cell-2of4-burger-nav { min-width: 50%; }
    [class*="o-flex"] > .cell-3of4-burger-nav { min-width: 75%; }
    [class*="o-flex"] > .cell-1of5-burger-nav { min-width: 20%; }
    [class*="o-flex"] > .cell-2of5-burger-nav { min-width: 40%; }
    [class*="o-flex"] > .cell-3of5-burger-nav { min-width: 60%; }
    [class*="o-flex"] > .cell-4of5-burger-nav { min-width: 80%; }
    [class*="o-flex"] > .cell-1of6-burger-nav { min-width: 16.66%; }
    [class*="o-flex"] > .cell-2of6-burger-nav { min-width: 33.33%; }
    [class*="o-flex"] > .cell-3of6-burger-nav { min-width: 49.99%; }
    [class*="o-flex"] > .cell-4of6-burger-nav { min-width: 66.66%; }
    [class*="o-flex"] > .cell-5of6-burger-nav { min-width: 83.33%; }

    [class*="o-flex"] > .cell-pct-10-burger-nav { min-width: 10%; }
    [class*="o-flex"] > .cell-pct-15-burger-nav { min-width: 15%; }
    [class*="o-flex"] > .cell-pct-20-burger-nav { min-width: 20%; }
    [class*="o-flex"] > .cell-pct-25-burger-nav { min-width: 25%; }
    [class*="o-flex"] > .cell-pct-30-burger-nav { min-width: 30%; }
    [class*="o-flex"] > .cell-pct-33-burger-nav { min-width: 33%; }
    [class*="o-flex"] > .cell-pct-40-burger-nav { min-width: 40%; }
    [class*="o-flex"] > .cell-pct-50-burger-nav { min-width: 50%; }
    [class*="o-flex"] > .cell-pct-60-burger-nav { min-width: 60%; }
    [class*="o-flex"] > .cell-pct-75-burger-nav { min-width: 75%; }
    [class*="o-flex"] > .cell-pct-80-burger-nav { min-width: 80%; }
    [class*="o-flex"] > .cell-pct-90-burger-nav { min-width: 90%; }
}

@media print and (-ms-high-contrast: active), print and (-ms-high-contrast: none) {

    .page [class*="o-flex"] > .cell-1of1-print { min-width: 100%; }
    .page [class*="o-flex"] > .cell-1of3-print { min-width: 33.33%; }
    .page [class*="o-flex"] > .cell-2of3-print { min-width: 66.66%; }
}

:root {
    /* Header */

    /* Burger */ /* sqrt(--burger-width^2 + --burger-height^2) */
}

@media (max-width: 991px) {
    .page-header {
        position: fixed !important;
        top: 0;
        width: 100%;
        z-index: 999;
    }

    .page-logo {
        width: 96px;
    }

    .hidden-in-mobile-nav {
        transition: opacity .25s 0.5s;
    }

    .js-open  .hidden-in-mobile-nav {
        opacity: 0;
        transition: opacity 0s;
    }
}

.page-logo {
    display: inline-block;
}

.page-logo img {
    width: 100%;
    opacity: 0;
    transition: opacity 250ms ease;
}

.-home #logo-white,
.-blogOverview #logo-white,
.o-view:not(.-home):not(.-blogOverview) #logo-black,
.-home .page-header:not(.js-background) .flyout:not(.js-open) + .page-nav .page-logo:hover #logo-black,
.-home .page-header:not(.js-background) .flyout:not(.js-open) + .page-nav .page-logo:focus #logo-black,
.page-logo:hover #logo-blank,
.page-logo:focus #logo-blank,
.js-open + .page-nav .page-logo #logo-white {
    opacity: 1;
}

.page-logo:hover #logo-white,
.page-logo:focus #logo-white,
.o-view:not(.-home):not(.-blogOverview) .page-logo:hover #logo-black,
.o-view:not(.-home):not(.-blogOverview) .page-logo:focus #logo-black,
.js-open + .page-nav .page-logo #logo-black,
.js-open + .page-nav .page-logo:hover #logo-white,
.js-open + .page-nav .page-logo:focus #logo-white {
    opacity: 0;
}

.page-logo {
    width: 96px;
    height: 39px;
    margin: 0 auto 10px;
}

@media (min-width: 992px) {
    .page-logo {
        width: 170px;
        height: 70px;
        margin-bottom: 12px;
        margin-top: 0px;
    }
}

.page-header {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    transition: transform .2s, background-color .3s;
    background-color: #ffffff;
}

.page-header.js-translate {
    transform: translateY(-100%);
    transition: transform .2s, background-color .3s .2s;
}

.page-header.js-background {
    background-color: #ffffff;
}

.o-section.header-spacing > .o-group {
    padding-top: 2rem;
    padding-bottom: 4px;
}

@media (min-width: 992px) {
    .header-spacing .main-navigation:not(.social-media-list) [class*="o-flex"].has-gutter > * {
        padding-left: 1.3rem;
        padding-right: 1.4rem;
    }

    .header-spacing .main-navigation:not(.social-media-list) [class*="o-flex"].has-gutter {
        margin-left: -1.4rem;
        margin-right: -1.4rem;
    }
}

@media (min-width: 1145px) {
    .header-spacing .main-navigation:not(.social-media-list) [class*="o-flex"].has-gutter > * {
        padding-left: 2.6rem;
        padding-right: 2.6rem;
    }

    .header-spacing .main-navigation:not(.social-media-list) [class*="o-flex"].has-gutter {
        margin-left: -2.6rem;
        margin-right: -2.6rem;
    }
}

@media (max-width: 991px) {
    .o-section.header-spacing > .o-group {
        padding-top: 1.5rem;
        padding-bottom: 4px;
    }

    .page-header-sentinel {
        height: calc( 3.5rem + 3.5rem + 44px);
    }
}

@media (max-width: 768px) {
    .o-section.header-spacing > .o-group {
        padding-top: 1.5rem;
        padding-bottom: 4px;
    }

    .page-header-sentinel {
        height: calc( 1.5rem + 1.5rem + 44px);
    }
}

@media (min-width: 992px) {
    .page-nav .main-navigation {
        padding-left: 67px;
        margin-top: -4px;
    }

    .js-open + .page-nav .main-navigation {
        padding-left: 49px;
    }

    .js-open + .page-nav {
        color: #ffffff;
    }
}

.page-nav {
    z-index: 1000 !important;
}

@media (min-width: 1920px) {
    .page-nav .is-large {
        max-width: 1732px !important;
    }
}

/* flyout */

/*@media (--for-burger-nav) {*/

.flyout {
        position: fixed;
        top: -100vh;
        bottom: auto;
        left: 0;
        width: 100%;
        max-width: 100vw;
        overflow-x: hidden;
        height: 100vh;
        background: #2B2C29;
    }

.flyout.js-animate {
        transition: top 0.25s linear 0.25s;
    }

.flyout.js-open {
        transition: top 0.25s linear 0s;
        z-index: 999;
        top: 0;
    }

/*}*/

.flyout-scrollbox {
    position: absolute;
    top: calc( 2rem + 2rem + 44px);
    height: calc( 100vh - 2rem - 44px - 2rem);
    left: 0;
    width : 100%;
    overflow-y: scroll;
    opacity: 0;
    transition: opacity 0.25s 0s, top 0.25s 0s, visibility 0s 0s;
    -webkit-overflow-scrolling: touch;
    visibility: hidden;
}

.flyout-nav ul {
    background-image: linear-gradient(0, #A5DC6E 0%, #a5dc6e 42.6%, #46c8cd 76.4%, #46c8cd 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.flyout-nav li {
    margin-bottom: 14px;
}

.flyout.js-open > .flyout-scrollbox {
    top: calc( 2rem + 2rem + 44px);
    opacity: 1;
    transition: opacity 0.25s 0.5s, top 0.25s 0.5s, visibility 0s 0.75s;
    visibility: visible;
}

.flyout-inner {
    min-height: calc( 100vh - 2rem - 44px - 2rem);
    padding-top: 100px;
    padding-bottom: 50px;
    margin-top: 0!important;
    margin-bottom: 0!important;
}

.flyout-inner .o-group {
    margin: 0 auto;
}

.flyout-content {
    min-height: calc( 100vh - 2rem - 44px - 2rem - 20rem - 70px - 70px );
}

.show-in-flyout {
    display: none;
}

.flyout.js-open .show-in-flyout {
    display: block;
}

/*@media (--for-burger-nav) {*/

.flyout.js-open .flyout-scrollbox {
        top: calc( 3.5rem + 3.5rem + 44px);
        height: calc( 100vh - 3.5rem - 44px - 3.5rem);
    }

.flyout-scrollbox {
        top: 0;
        height: calc( 100vh - 3.5rem - 44px - 3.5rem);
    }

.flyout-inner {
        min-height: calc( 100vh - 3.5rem - 44px - 3.5rem);
        padding-top: 7vw; /* 60px; */
        padding-bottom: calc(7vw + 5rem); /* 30px; */
    }

.flyout-content {
        min-height: calc( 100vh - 3.5rem - 3.5rem - 44px - 20rem - 15vw - 15vw );
    }

/*}*/

@media (max-width: 991px) {
    .flyout-nav {
        padding-bottom: 22px;
    }
}

@media (max-width: 768px) {

    .flyout.js-open .flyout-scrollbox {
        top: calc( 1.5rem + 1.5rem + 44px);
        height: calc( 100vh - 1.5rem - 44px - 1.5rem);
    }

    .flyout-scrollbox {
        top: 0;
        height: calc( 100vh - 1.5rem - 44px - 1.5rem);
    }

    .flyout-inner {
        min-height: calc( 100vh - 1.5rem - 44px - 1.5rem);
        padding-top: 7vw; /* 60px; */
        padding-bottom: calc(7vw + 5rem); /* 30px; */
    }

    .flyout-content {
        min-height: calc( 100vh - 1.5rem - 1.5rem - 44px - 20rem - 15vw - 15vw );
    }

    .flyout-nav {
        padding-bottom: 32px;
    }
}

@media (max-width: 768px) and (orientation: portrait) {

    @supports (-webkit-overflow-scrolling: touch) {

        .flyout.js-open .flyout-scrollbox {
            height: calc( 100vh - 1.5rem - 44px - 1.5rem - 5rem);
        }

        .flyout-inner {
            min-height: calc( 100vh - 1.5rem - 44px - 1.5rem - 5rem);
        }
    }
}

@media (min-width: 992px) {
    .flyout-inner {
        padding-bottom: 0;
        max-width: 136.6rem;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .flyout-scrollbox {
        padding: 0 5rem;
    }

    .flyout-nav {
        margin-top: 1.6rem;
    }

    .flyout-nav li {
        margin-bottom: 33px;
    }

    .flyout-nav a {
        margin-bottom: 0;
    }
}

@media (min-width: 1920px) {
    .flyout-inner {
        max-width: 1732px;
    }
}

/* burger */

.burger {
    cursor: pointer;
    width: 31px;
    min-width: 31px;
    height: 15px;
    background: transparent;
    position: relative;
    right: 0;
    top: -5px;
    color: inherit;
    z-index: 3;
    outline: 0;
    margin-top: 0;
    padding-left: calc( (31px - 29px) / 2 );
    padding-right: calc( (31px - 29px) / 2 );
    margin-left: auto;
    margin-right: calc( -1 * (31px - 29px) / 2 );
    box-shadow: none;
    border: 0;
    transition: top ease .1s;
}

.burger-bars {
    position: relative;
    height: 15px;
    width: 29px;
}

.burger-bar {
    display: block;
    position: absolute;
    width: 29px;
    height: 2px;
    background: currentColor;
    /*transition: opacity var(--default-navigation-timing), transform var(--default-navigation-timing), width var(--default-navigation-timing);*/
    /*will-change: opacity, transform, width;*/
    border-radius: 2px;
    animation: .5s ease-out .1s 1 growInFromLeft;
}

.burger-bar-top { top: 0; transform-origin: top left; }

.burger-bar-middle {
    top: 50%;
    /*transition: transform var(--default-navigation-timing);*/
    transform-origin: center;
    transform: scaleX(1) translateY(-50%);
    width: 19px;
    animation: .5s ease-out .1s 1 growInFromLeftMiddleBar;
}

.burger-bar-bottom { bottom: 0; transform-origin: bottom left; }

.burger.js-open .burger-bar-top {
    transform: rotate(45deg) translateY(-50%);
    width: 20px;
}

.burger.js-open .burger-bar-middle { transform: scaleX(0) translateY(-50%); }

.burger.js-open .burger-bar-bottom {
    transform: rotate(-45deg) translateY(50%);
    width: 20px;
}

@media (min-width: 992px) {
    .burger.js-open .burger-bar-bottom,
    .burger.js-open .burger-bar-top {
        width: 30px;
    }

    .burger.js-open .burger-bar-bottom {
        bottom: 1px;
        left: -3px;
    }
    .burger.js-open .burger-bar-top {
        left: -3px;
    }


    .burger.js-open {
        left: -10px;
    }
}

.js-open  .burger{
    width: 44px;
    transition: none;
    height: 44px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #A5DC6E;
    top: 3px;
}

.burger::before,
.burger::after {
    border-radius: 100%;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
}

.burger::before {
    border: 2px solid transparent;
}

.burger::after {
    border: 0 solid transparent;
}

.js-open .burger-bars {
    width: 15px;
}

.js-open .burger::before {
    border-top-color: #A5DC6E;
    border-right-color: #A5DC6E;
    border-bottom-color: #A5DC6E;
    transition: border-top-color 0.075s linear, border-right-color 0.075s linear 0.05s, border-bottom-color 0.075s linear 0.10s;
}

.js-open .burger::after {
    border-top: 2px solid #A5DC6E;
    border-left-width: 2px;
    border-right-width: 2px;
    transform: rotate(270deg);
    transition: transform 0.2s linear 0s, border-left-width 0s linear 0.15s;
}

@keyframes growInFromLeft {
    0% {
        width: 0;
    }
    100% {
        width: 29px;
    }
}

@keyframes growInFromLeftMiddleBar {
    0% {
        width: 0;
    }
    100% {
        width: 19px;
    }
}

@media (min-width: 992px) {
    .burger-bars {
        height: 23px;
        width: 45px;
    }

    .burger-bar {
        width: 45px;
        height: 3px;
    }

    .burger-bar-middle {
        width: 30px;
    }

    .js-open .burger {
        top: -8px;
    }
}

.main-navigation {
    padding-bottom: 15px;
    margin-top: -4px;
}

/* Nav Item */

.nav-item {
    text-decoration: none;
    transition: color 250ms ease;
    margin-bottom: 0;
}

.nav-item:hover,
.nav-item:focus {
    color: #46C8CD;
}

.contact-item {
    margin-right: 6px;
}

.-home .nav-item:hover,
.-home .nav-item:focus,
.-home .nav-item:hover,
.transparent .nav-item:focus {
    color: #A5DC6E;
}

@media (min-width: 992px) {
    .main-navigation {
        margin-right: -40px;
    }

    nav .nav-item {
        font-size: 16px;
        letter-spacing: 0.16px;
    }
}

@media (min-width: 1920px) {
    .contact-item {
        margin-right: 20px;
    }
}

/* Social Media */

.social-media-list {
    margin-top: -5px;
}

.social-media .social-hover {
    transition: all 250ms ease;
}

.social-media .social-bg-hover,
.social-media .social-icon-hover  {
    opacity: 0;
}

.social-media a:hover .social-bg-default,
.social-media a:focus .social-bg-default,
.social-media a:hover .social-icon-default,
.social-media a:focus .social-icon-default  {
    opacity: 0;
}

.social-media a:hover .social-bg-hover,
.social-media a:focus .social-bg-hover,
.social-media a:hover .social-icon-hover,
.social-media a:focus .social-icon-hover {
    opacity: 1;
}

.page-header .social-media a path {
    transition: fill 250ms ease;
}

.page-header .social-media:hover a path,
.page-header .social-media:focus a path {
    fill: #A5DC6E;
}

/* Cart */

.cart-icon {
    margin-left: -16px;
    margin-top: -2px;
}

.card-has-products {
    position: absolute;
    right: 15px;
    top: 5px;
}

@media (min-width: 768px) and (max-width: 991px) {

    .social-media-list {
        margin-top: -4px;
    }
}

@media (min-width: 768px) {
    .social-media.tik-tok {
        margin-right: -14px;
    }
}

@media (max-width: 768px) {
    .social-media-list.has-gutter > * {
        padding-left: calc(2rem / 2);
        padding-right: calc(2rem / 2);
    }

    .cart-icon {
        margin-top: 3px;
        margin-right: 7px;
    }

    .user-icon {
        margin-top: 3px;
    }

    .user-icon svg {
        height: 18px;
    }

    .cart-icon svg {
        height: 19px;
    }
}

/*@media (min-width: 1145px) {*/

/*    .social-media.tik-tok {*/

/*        margin-right: -27px;*/

/*    }*/

/*}*/

.js-open + .page-nav .social-media-list {
    color: #ffffff;
}

@media (max-width: 768px) {
    .social-media-list {
        margin-top: -4px;
    }

    .social-media.tik-tok {
        margin-right: -23px;
    }

    .social-media.instagram {
        margin-right: 1px;
    }
}

.social-icons {
    margin-top: 27px;
}

.social-icons .tik-tok{
    margin-right: 45px;
}

/** Newsletter Input **/

.newsletter-menu {
    max-width: 417px;
    margin: 2.5rem auto 0;
}

.newsletter-menu p {
    margin-bottom: 24px;
}

.newsletter-menu input.button,
.newsletter-menu .button-input-arrow {
    color: #46C8CD;
    width: 100%;
}

.newsletter-menu input.button {
    padding: 8px 48px 8px 23px !important;
    line-height: 26.4px !important;
}

.newsletter-menu .button-input-arrow::after {
    right: 26px;
}

@media (min-width: 992px) {
    .newsletter-menu {
        max-width: 856px;
        margin: 16px 0 0;
        padding-left: 5.5rem;
    }

    .newsletter-menu p {
        max-width: 585px;
        margin-bottom: 65px;
    }

    .newsletter-menu form {
        margin-left: -3px;
    }

    .newsletter-menu input.button {
        padding: 10px 51px 10px 23px !important;
    }

    .newsletter-menu input.button,
    .newsletter-menu .button-input-arrow {
        max-width: 590px;
    }
}

/** Phone Input **/

.page-header .o-oi-form {
    margin-top: 2.3rem;
    overflow: hidden;
}

.page-header fieldset {
    margin-bottom: 0;
    font-size: 14px;
    padding-left: 20px;
}

.page-header .form-input {
    border-color: #46C8CD;
    color: #46C8CD;
}

.page-header .button-input-arrow .shadow,
.page-header .button-input-arrow .shadow-bg {
    display: none;
}

.page-footer {
    background: #2B2C29;
    color: #ffffff;
    padding: 0 21px;
}

.page-footer .o-group {
    max-width: 201.1rem !important;
    padding-top: 5rem;
}

.footer-link-wrapper {
    padding: 5rem 0 0;
    border-top: 1px solid currentColor;
}

.footer-service  .footer-list {
    margin-bottom: -.5rem;
}

.footer-list a {
    text-decoration: none;
}

.footer-service .footer-list li {
    margin-bottom: .5rem;
}

[class*="o-flex"].footer-links.has-gutter:not(.no-vertical-margin) > li:not(:last-child) {
    margin-bottom: 1.2rem;
}

.footer-links {
    white-space: nowrap;
}

.footer-service {
    border-bottom: 1px solid currentColor;
    padding-bottom: 4px;
    margin-bottom: 6px;
    margin-top: -3rem;
}

.page-footer .newsletter, .page-footer .button-input-arrow,
.page-footer .form-input {
    width: 100%;
}

.page-footer .form-input {
    border-color: #46C8CD;
    color: #46C8CD;
}

.page-footer .o-oi-form {
    margin-top: 2.3rem;
}

.page-footer fieldset {
    margin-bottom: 0;
    font-size: 14px;
    padding-left: 20px;
}

.page-footer .button-input-arrow .shadow,
.page-footer .button-input-arrow .shadow-bg {
    display: none;
}

.copyright {
    padding-bottom: 15px;
    letter-spacing: .03em;
}

.page-footer a.has-svg-hover {
    width: 219px;
    height: 90px;
    margin: 73px auto 126px;
}

.footer-logo {
    width: 219px;
}

.footer-list li:not(:first-child) {
    text-align: center;
}

.footer-list a {
    transition: color 250ms ease;
}

.footer-list li:hover a,
.footer-list li:focus a {
    color: #A5DC6E;
}

.footer-service li:nth-child(3),
.footer-service li:nth-child(4) {
    text-align: right;
}

.footer-newsletter-text.h5 {
    margin-bottom: 4.1rem;
}

@media (min-width: 768px) {
    .page-footer {
        padding-top: 5rem;
    }

    .page-footer .o-group {
        padding: 5rem 14rem 0;
    }

    .page-footer .newsletter,
    .page-footer .form-input,
    .page-footer .button-input-arrow {
        max-width: 554px;
        width: 100%;
    }

    .page-footer a.has-svg-hover {
        margin: 57px auto 111px;
    }

    .page-footer a.has-svg-hover,
    .footer-logo {
        width: 400px;
        height: 164px;
    }

    .footer-newsletter-text p {
        margin: 0;
    }

    .footer-link-wrapper {
        padding: 5px 0 42px;
        margin-bottom: 0;
    }

    .footer-service li:nth-child(3) {
        text-align: center;
    }

    .footer-links a {
        font-size: 16px;
    }

    .footer-service {
        margin-top: 9rem;
        margin-bottom: 1rem;
        padding-bottom: .5rem;
    }

    .copyright {
        padding-bottom: 11px;
    }
}

@media (min-width: 959px) {
    .footer-list li:last-child {
        text-align: right;
    }
}

@media (min-width: 992px) {
    .page-footer .newsletter,
    .page-footer .form-input {
        width: 554px;
    }

    .page-footer .button-input-arrow {
        width: unset;
    }
}

@media (min-width: 1920px) {
    .page-footer a.has-svg-hover,
    .footer-logo {
        width: 436px;
        height: 180px;
    }

    .copyright {
        padding-bottom: 14px;
    }

    .footer-links-wrapper {
        padding: 5px 0 45px
    }
}



/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3R5bGVzLWNyaXRpY2FsLmNzcyIsIndlYnBhY2s6Ly8vLi4vLi4vdmFyaWFibGVzLmNzcyIsIndlYnBhY2s6Ly8vLi4vc3R5bGVzLWNyaXRpY2FsL2Jvb3RzdHJhcC5jc3MiLCJ3ZWJwYWNrOi8vLy4uL3N0eWxlcy1jcml0aWNhbC93ZWJmb250cy5jc3MiLCJ3ZWJwYWNrOi8vLy4uL3N0eWxlcy1jcml0aWNhbC9mb250LXN0eWxlcy5jc3MiLCJ3ZWJwYWNrOi8vLy4uL3N0eWxlcy1jcml0aWNhbC9mbGV4Ym94LmNzcyIsIndlYnBhY2s6Ly8vLi4vc3R5bGVzLWNyaXRpY2FsL3BhZ2UtaGVhZGVyLmNzcyIsIndlYnBhY2s6Ly8vLi4vc3R5bGVzLWFzeW5jL2Zvb3Rlci5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7RUFhRTs7QUFFRixzQkFBc0I7O0FDZnRCO0lBQ0ksOEJBQThCOztJQXFCOUIsbUJBQW1COztJQWdCbkIsb0JBQW9CLEVBZXFELG9DQUFvQyxFQUNwQyxzQ0FBc0MsRUFDdEMsb0NBQW9DLEVBQ3BDLHNDQUFzQyxFQUN0QyxvQ0FBb0MsRUFzQmpGLDRDQUE0Qzs7SUFLeEUsMkJBQTJCLEVBZ0JXLGNBQWM7O0lBUXBELFlBQVksR0FTaUIsV0FBVzs7SUFLeEMsUUFBUSxFQUNzQixjQUFjOztJQU01QyxTQUFTOztJQWVULFdBQVc7O0lBT1gsWUFBWTs7SUFLWix3QkFBd0Isa0JBQ2UsNENBQTRDLGlCQUM1Qyx5REFBeUQsa0JBQ3pELHFDQUFxQyxXQUNyQyw2Q0FBNkMsb0JBQzdDLGlEQUFpRCxFQUNqRCxzREFBc0QsWUFDdEQsdURBQXVELGdCQUN2RCxpRUFBaUUsU0FDakUsNENBQTRDLHNCQUM1QyxpREFBaUQsd0JBQ2pELGtCQUFrQjs7SUFFekQsZ0JBQWdCO0FBS3BCOztBQUVBLGtCQUFrQjs7QUM5S2xCLGtCQUFrQjs7QUFDbEI7Ozs7Ozs7Ozs7Ozs7SUFhSSxTQUFTO0lBQ1QsVUFB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OztJQUVBO1FBQ0ksZ0JBQWdCO1FBQ2hCLG1CQUFtQjtRQUNuQixxQkFBcUI7SUFDekI7O0lBRUE7UUFDSSxvQkFBb0I7SUFDeEI7QUFDSjs7QUFFQTtJQUNJO1FBQ0ksaUJBQWlCO0lBQ3JCO0FBQ0o7O0FBRUE7SUFDSTs7UUFFSSxZQUFZO0lBQ2hCOztJQUVBO1FBQ0ksWUFBWTtJQUNoQjtBQUNKOztBQUVBO0lBQ0k7O1FBRUksWUFBWTtRQUNaLGFBQWE7SUFDakI7O0lBRUE7UUFDSSxvQkFBb0I7SUFDeEI7O0lBRUE7UUFDSTtJQUNKO0FBQ0oiLCJmaWxlIjoiY3JpdGljYWwuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiDilZLilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZVcbiAqIOKUgiAgICAgICAgICAgSG9XIHRPIHdySXRFIENvREUgICAgICAgICAgIOKUglxuICog4pWe4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWk4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWhXG4gKiDilIIgICAgICAgICAgdmFyaWFibGUg4pSCIC0tbGlrZS10aGlzICAgICAgIOKUglxuICog4pSCIGN1c3QuIG1lZGlhIHF1ZXJ5IOKUgiAtLVtmb3J8d2hlbl0tWy4uXSDilIJcbiAqIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUvOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUpFxuICog4pSCICAgICAgbGF5b3V0LCBvYmouIOKUgiAuby1bLi5dICAgICAgICAgICDilIJcbiAqIOKUgiAgICBlbGVtZW50LCBjbXB0LiDilIIgLmxpa2UtdGhpcyAgICAgICAg4pSCXG4gKiDilIIgICAgICAgICBDU1Mgc3RhdGUg4pSCIC5baXN8aGFzXS1bLi5dICAgIOKUglxuICog4pSCICAgICAgICAgIEpTIHN0YXRlIOKUgiAuanMtWy4uXSAgICAgICAgICDilIJcbiAqIOKUgiAgICAgICB0aGVtZSwgbW9kLiDilIIgLi1saWtlLXRoaXMgICAgICAg4pSCXG4gKiDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilLTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJhcbiAqL1xuXG4vKiAtLS0gQm9vdHN0cmFwIC0tLSAqL1xuXG5AaW1wb3J0ICcuLi8uLi92YXJpYWJsZXMuY3NzJztcbkBpbXBvcnQgJy4uL3N0eWxlcy1jcml0aWNhbC9ib290c3RyYXAuY3NzJztcbkBpbXBvcnQgJy4uL3N0eWxlcy1jcml0aWNhbC93ZWJmb250cy5jc3MnO1xuQGltcG9ydCAnLi4vc3R5bGVzLWNyaXRpY2FsL2ZvbnQtc3R5bGVzLmNzcyc7XG5AaW1wb3J0ICcuLi9zdHlsZXMtY3JpdGljYWwvZmxleGJveC5jc3MnO1xuQGltcG9ydCAnLi4vc3R5bGVzLWNyaXRpY2FsL3BhZ2UtaGVhZGVyLmNzcyc7XG5AaW1wb3J0ICcuLi9zdHlsZXMtYXN5bmMvZm9vdGVyLmNzcyc7XG5cbiIsIjpyb290IHtcbiAgICAvKiBDb2xvcnMgLSBCYXNlIDE2IEVpZ2h0aWVzICovXG4gICAgLS1ncmF5OiAjYTA5ZjkzO1xuICAgIC0tcmVkOiAjRTM1MDNEO1xuICAgIC0tb3JhbmdlOiAjZjk5MTU3O1xuICAgIC0teWVsbG93OiAjZmZjYzY2O1xuICAgIC0tYmx1ZTogIzY2OTljYztcbiAgICAtLXZpb2xldDogI2NjOTljYztcbiAgICAtLW1hZ2VudGE6ICNkMjdiNTM7XG5cbiAgICAtLWJsYWNrOiAjMkIyQzI5O1xuICAgIC0tZGFyazogdmFyKC0tYmxhY2spO1xuICAgIC0tbGlnaHQ6ICNmZmZmZmY7XG4gICAgLS1saWdodC1ncmF5OiAjRjJGMkYyO1xuICAgIC0tZ3JlZW46ICNBNURDNkU7XG4gICAgLS1jeWFuOiAjNDZDOENEO1xuICAgIC0tZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgwLCAjQTVEQzZFIDAlLCAjYTVkYzZlIDQyLjYlLCAjNDZjOGNkIDc2LjQlLCAjNDZjOGNkIDEwMCUpO1xuICAgIC0tZ3JhZGllbnQtZmxpcHBlZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0E1REM2RSAwJSwgI2E1ZGM2ZSA0Mi42JSwgIzQ2YzhjZCA3Ni40JSwgIzQ2YzhjZCAxMDAlKTtcbiAgICAtLWdyYWRpZW50LWhvcml6b250YWw6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICNBNURDNkUgMCUsICNhNWRjNmUgNDIuNiUsICM0NmM4Y2QgNzYuNCUsICM0NmM4Y2QgMTAwJSk7XG5cbiAgICAtLXBhZ2UtYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xuXG4gICAgLyogVGV4dCAtIERlZmF1bHQgKi9cbiAgICAtLWRlZmF1bHQtZm9udC1mYW1pbHk6IFwiRmlsc29uIFJlZ3VsYXJcIiwgc2Fucy1zZXJpZjtcbiAgICAtLWZvbnQtZmFtaWx5LWJsYWNrOiBcIkZpbHNvbiBCbGFja1wiLCBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIHNhbnMtc2VyaWY7XG4gICAgLS1mb250LWZhbWlseS1oZWF2eTogXCJGaWxzb24gSGVhdnlcIiwgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmO1xuICAgIC0tZm9udC1mYW1pbHktbWVkaXVtOiBcIkZpbHNvbiBNZWRpdW1cIiwgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmO1xuICAgIC0tZGVmYXVsdC1kYXJrLXRleHQtY29sb3I6IHZhcigtLWRhcmspO1xuICAgIC0tZGVmYXVsdC1saWdodC10ZXh0LWNvbG9yOiB2YXIoLS1saWdodCk7XG4gICAgLS1kZWZhdWx0LWZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDIwIC0gMTgpICogKDEwMHZ3IC0gMzIwcHgpIC8gKDE0NDAgLSA3NjgpKTtcbiAgICAtLWRlZmF1bHQtc21hbGwtZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoMTAwdncgLSAzMjBweCkgLyAoMTQ0MCAtIDc2OCkpO1xuICAgIC0tZGVmYXVsdC1mb250LXNpemUtc206IDE4cHg7XG4gICAgLS1kZWZhdWx0LWZvbnQtc2l6ZS14bDogMjBweDtcbiAgICAtLWRlZmF1bHQtc21hbGwtZm9udC1zaXplLXNtOiAxNnB4O1xuICAgIC0tZGVmYXVsdC1zbWFsbC1mb250LXNpemUteGw6IDE4cHg7XG4gICAgLS1kZWZhdWx0LWZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgLS1kZWZhdWx0LWxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAvKiBUZXh0IC0gSGVhZGluZ3MgKi9cbiAgICAtLWhlYWRpbmdzLWZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1ibGFjayk7XG4gICAgLS1oZWFkaW5ncy1jb2xvcjogaW5oZXJpdDtcbiAgICAtLWhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgLS1oZWFkaW5ncy1saW5lLWhlaWdodDogMS4xNztcbiAgICAtLWhlYWRpbmdzLW1hcmdpbi1ib3R0b206IDAuNGVtO1xuXG4gICAgLS1oMS1tYXJnaW4tdG9wOiAwO1xuICAgIC0taDEtbWFyZ2luLWJvdHRvbTogMC40ZW07XG4gICAgLS1oMi1tYXJnaW4tdG9wOiAwO1xuICAgIC0taDItbWFyZ2luLWJvdHRvbTogMC41NmVtO1xuICAgIC0taDMtbWFyZ2luLXRvcDogMDtcbiAgICAtLWgzLW1hcmdpbi1ib3R0b206IDAuNGVtO1xuICAgIC0taDQtbWFyZ2luLWJvdHRvbTogMS42NmVtO1xuXG4gICAgLS1oMS1mb250LXNpemU6IGNhbGMoNjBweCArICg3MCAtIDYwKSAqICgxMDB2dyAtIDc2OHB4KSAvICgxNDQwIC0gNzY4KSk7IC8qIDVyZW0gQCAxNDQwcHggLT4gMi44cmVtIEAgMzIwcHggKi9cbiAgICAtLWgyLWZvbnQtc2l6ZTogY2FsYygzNnB4ICsgKDYwIC0gMzYpICogKDEwMHZ3IC0gNzY4cHgpIC8gKDE0NDAgLSA3NjgpKTsgLyogMy42cmVtIEAgMTQ0MHB4IC0+IDIuNHJlbSBAIDMyMHB4ICovXG4gICAgLS1oMy1mb250LXNpemU6IGNhbGMoMjZweCArICg0NCAtIDI2KSAqICgxMDB2dyAtIDc2OHB4KSAvICgxNDQwIC0gNzY4KSk7IC8qIDNyZW0gQCAxNDQwcHggLT4gMi4xcmVtIEAgMzIwcHggKi9cbiAgICAtLWg0LWZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI2IC0gMjApICogKDEwMHZ3IC0gNzY4cHgpIC8gKDE0NDAgLSA3NjgpKTsgLyogMi41cmVtIEAgMTQ0MHB4IC0+IDEuOXJlbSBAIDMyMHB4ICovXG4gICAgLS1oNS1mb250LXNpemU6IGNhbGMoMThweCArICgyMCAtIDE4KSAqICgxMDB2dyAtIDc2OHB4KSAvICgxMjAwIC0gNzY4KSk7IC8qIDJyZW0gQCAxNDQwcHggLT4gMS44cmVtIEAgMzIwcHggKi9cbiAgICAtLWludHJvLWZvbnQtc2l6ZTogY2FsYyg2MHB4ICsgKDkwIC0gNjApICogKDEwMHZ3IC0gNzY4cHgpIC8gKDE0NDAgLSA3NjgpKTtcbiAgICAtLWJ1dHRvbi1mb250LXNpemU6IDE2cHg7XG4gICAgLS1pbnB1dC1mb250LXNpemU6IDE2cHg7XG4gICAgLS1zaG9wLWZvbnQtc2l6ZTogMThweDtcbiAgICAtLXNtYWxsLWZvbnQtc2l6ZTogMTRweDtcbiAgICAtLWV4dHJhLXNtYWxsLWZvbnQtc2l6ZTogMTJweDtcblxuICAgIC0taDEtZm9udC1zaXplLXhsOiA3MHB4O1xuICAgIC0taDItZm9udC1zaXplLXhsOiA2MHB4O1xuICAgIC0taDMtZm9udC1zaXplLXhsOiA0NHB4O1xuICAgIC0taDQtZm9udC1zaXplLXhsOiAyNnB4O1xuICAgIC0taDUtZm9udC1zaXplLXhsOiAyMHB4O1xuICAgIC0taW50cm8tZm9udC1zaXplLXhsOiA5MHB4O1xuXG4gICAgLS1oMS1mb250LXNpemUtc206IDYwcHg7XG4gICAgLS1oMi1mb250LXNpemUtc206IDM2cHg7XG4gICAgLS1oMy1mb250LXNpemUtc206IDI2cHg7XG4gICAgLS1oNC1mb250LXNpemUtc206IDIwcHg7XG4gICAgLS1oNS1mb250LXNpemUtc206IDE4cHg7XG4gICAgLS1pbnRyby1mb250LXNpemUtc206IDUwcHg7XG4gICAgLS1idXR0b24tZm9udC1zaXplLXNtOiAxNnB4O1xuICAgIC0taW5wdXQtZm9udC1zaXplLXNtOiAxNnB4OyAvKiBtaW4gZm9udC1zaXplIHRvIGF2b2lkIHNjYWxpbmcgb24gZm9jdXMgKi9cblxuICAgIC0tcC1tYXJnaW4tYm90dG9tOiAxLjc1ZW07XG4gICAgLS1tZWRpYS1tYXJnaW4taGVpZ2h0OiAyZW07XG5cbiAgICAvKiBQYWdlIC0gZGVmYXVsdCwgbGF5b3V0ICovXG4gICAgLS1wYWdlLW1heHdpZHRoOiAxMDguNnJlbTtcbiAgICAtLXBhZ2UtbWF4d2lkdGgtbGFyZ2U6IDEzNi42cmVtO1xuICAgIC0tcGFnZS1ndXR0ZXItd2lkdGg6IDVyZW07XG4gICAgLS1wYWdlLWd1dHRlci13aWR0aC1zbTogMnJlbTtcblxuICAgIC0tc2VjdGlvbi1tYXJnaW4taGVpZ2h0OiB2YXIoLS1iaWctc3BhY2luZyk7XG4gICAgLS1zZWN0aW9uLW1hcmdpbi1oZWlnaHQtc206IHZhcigtLWJpZy1zcGFjaW5nLXNtKTtcblxuICAgIC0tY29tcG9uZW50LW1hcmdpbi1oZWlnaHQ6IDYuMjV2bWluO1xuICAgIC0tY29tcG9uZW50LW1hcmdpbi1oZWlnaHQtc206IDNyZW07XG5cblxuICAgIC0tbGF5b3V0LWd1dHRlci13aWR0aDogNHJlbTtcbiAgICAtLWxheW91dC1ndXR0ZXItaGVpZ2h0OiAzcmVtO1xuICAgIC0tbGF5b3V0LWd1dHRlci1tZWRpdW0td2lkdGg6IDkuNXJlbTtcbiAgICAtLWxheW91dC1ndXR0ZXItbWVkaXVtLWhlaWdodDogMTByZW07IC8qIG5vdCBmaW5hbCAqL1xuICAgIC0tbGF5b3V0LWd1dHRlci1iaWctd2lkdGg6IDExLjVyZW07XG4gICAgLS1sYXlvdXQtZ3V0dGVyLWJpZy1oZWlnaHQ6IDIwcmVtO1xuXG4gICAgLS1iaWdnZXItZ3V0dGVyOiAyMS43cmVtO1xuXG4gICAgLS1jYXJvdXNlbC1ndXR0ZXItd2lkdGg6IDNyZW07XG5cbiAgICAvKiBTcGFjaW5nICovXG4gICAgLS1leHRyYS1zbWFsbC1zcGFjaW5nOiAzcmVtO1xuICAgIC0tc21hbGwtc3BhY2luZzogNXJlbTtcbiAgICAtLW1lZGl1bS1zcGFjaW5nOiAxMXJlbTtcbiAgICAtLWxhcmdlLXNwYWNpbmc6IDEzLjJyZW07XG4gICAgLS1iaWctc3BhY2luZzogMjByZW07XG5cbiAgICAtLWV4dHJhLXNtYWxsLXNwYWNpbmctc206IDNyZW07XG4gICAgLS1zbWFsbC1zcGFjaW5nLXNtOiA1cmVtO1xuICAgIC0tbWVkaXVtLXNwYWNpbmctc206IDExcmVtOyAgLyp2bHQgOHJlbSovXG4gICAgLS1iaWctc3BhY2luZy1zbTogMTByZW07XG5cbiAgICAtLWJvcmRlci1yYWRpdXM6IDE5NHB4O1xuXG4gICAgLyogUndkICovXG4gICAgLS1yd2QtbWFyZ2luLWhlaWdodC1tZDogMjFweDsgLyogY29udGFjdCAxICovXG4gICAgLS1yd2QtbWFyZ2luLWhlaWdodC1sZzogMjFweDtcbiAgICAtLXJ3ZC1tYXJnaW4taGVpZ2h0LXNtOiAxMnB4O1xuICAgIC0tbWVudS10b2dnbGUtaGVpZ2h0OiA1NXB4O1xuICAgIC0tbWVudS10b2dnbGUtaGVpZ2h0LXJlZHVjZWQ6IDI2cHg7XG5cbiAgICAvKiBGb3JtICovXG4gICAgLS1mb3JtLWRlZmF1bHQtY29sb3I6IDAsIDAlLCAzMiU7XG4gICAgLS1mb3JtLWJvcmRlci1jb2xvcjogdmFyKC0tZGFyayk7XG4gICAgLS1mb3JtLWVycm9yLWNvbG9yOiAzNTksIDgzJSwgNzElO1xuICAgIC0tZm9ybS1hY3RpdmUtY29sb3I6IDIxMCwgNTAlLCA2MCU7XG4gICAgLS1mb3JtLXJlYWRvbmx5LWNvbG9yOiB2YXIoLS1ncmF5KTtcbiAgICAtLWZvcm0taW52YWxpZC1jb2xvcjogMzYsIDEwMCUsIDUwJTtcbiAgICAtLWZvcm0tZXJyb3ItYm9yZGVyLWNvbG9yOiAzNTksIDgzJSwgNzElO1xuICAgIC0tZm9ybS12YWxpZC1ib3JkZXItY29sb3I6IDg1LCAxMDAlLCAzMCU7XG4gICAgLS1mb3JtLWVycm9yLXRleHQtY29sb3I6ICNFMzUwM0Q7XG4gICAgLS1mb3JtLWVycm9yLWJhY2tncm91bmQ6IDM1OSwgODMlLCA3MSU7XG4gICAgLS1mb3JtLXN1Y2Nlc3MtY29sb3I6ICM4N2ZlNmE7XG4gICAgLS1mb3JtLWlucHV0LWJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgLS1mb3JtLW9wdGlvbi1ob3Zlci1jb2xvcjogI2VkZWRlZDtcblxuICAgIC8qIEJ1dHRvbiAqL1xuICAgIC0tYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuICAgIC0tYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiB2YXIoLS1kYXJrKTtcbiAgICAtLWJ1dHRvbi1kZWZhdWx0LWNvbG9yOiB2YXIoLS1kZWZhdWx0LWxpZ2h0LXRleHQtY29sb3IpO1xuICAgIC0tYnV0dG9uLWFjdGl2ZS1jb2xvcjogdmFyKC0tZGVmYXVsdC1saWdodC10ZXh0LWNvbG9yKTtcbiAgICAtLWJ1dHRvbi1ib3JkZXItY29sb3I6IHZhcigtLWJsYWNrKTtcblxuICAgIC8qIFRpbWluZ3MgKi9cbiAgICAtLWRlZmF1bHQtdGltaW5nOiAyNTBtcztcbiAgICAtLXRyYW5zaXRpb24tYXBwZWFyLXNwZWVkOiA4MDBtcztcbiAgICAtLXRyYW5zaXRpb24tYXBwZWFyLWRlbGF5OiAzMDBtcztcblxuICAgIC8qIERlZmF1bHQgc3BhY2UgdW5pdHMgKi9cbiAgICAtLXplcm8td2lkdGgtc3BhY2U6IDA7ICAgICAgICAgICAgICAgICAvKiAgIDAgIGVtIHwgQWxsb3dzIGxpbmUgYnJlYWssIGxpa2UgPHdicj4gKi9cbiAgICAtLWhhaXItc3BhY2U6IDAuMDQxN2VtOyAgICAgICAgICAgICAgICAvKiAxLzI0IGVtIHwgV2lkdGggdmFyaWVzLCBidXQgbmFycm93ZXIgdGhhbiB0aGluIHNwYWNlICovXG4gICAgLS1maW5lLXNwYWNlOiAwLjEyNWVtOyAgICAgICAgICAgICAgICAgLyogMS84ICBlbSB8IEZvciBGcmVuY2ggcHVuY3R1YXRpb24gKi9cbiAgICAtLXNpeC1wZXItZW0tc3BhY2U6IDAuMTY2N2VtOyAgICAgICAgICAvKiAxLzYgIGVtIHwgTWlnaHQgYmUgc3VpdGFibGUgZm9yIGdyb3VwaW5nICovXG4gICAgLS10aGluLXNwYWNlOiAwLjJlbTsgICAgICAgICAgICAgICAgICAgLyogMS81ICBlbSB8IFJlY29tbWVuZGVkIG1pbmltdW0gd2lkdGggb2Ygc3BhY2UgKi9cbiAgICAtLW1lZGl1bS1tYXRoZW1hdGljYWwtc3BhY2U6IDAuMjIyMmVtOyAvKiA0LzE4IGVtIHwgQXJvdW5kIG9wZXJhdG9ycyAoYWNjb3JkaW5nIHRvIENoaWNhZ28pICovXG4gICAgLS1mb3VyLXBlci1lbS1zcGFjZTogMC4yNWVtOyAgICAgICAgICAgLyogMS80ICBlbSB8IG1pZCBzcGFjZTogQXZlcmFnZSB3aWR0aCBvZiBub3JtYWwgc3BhY2UgKi9cbiAgICAtLXRoaWNrLXNwYWNlOiAwLjI3NzhlbTsgICAgICAgICAgICAgICAvKiA1LzE4IGVtIHwgQXJvdW5kIHJlbGF0aW9uYWwgb3BlcmF0b3JzIChhY2NvcmRpbmcgdG8gQ2hpY2FnbykgKi9cbiAgICAtLXRocmVlLXBlci1lbS1zcGFjZTogMC4zMzMzZW07ICAgICAgICAvKiAxLzMgIGVtIHwgV2lkdGggb2Ygc3BhY2UgaW4gYSB3aWRlIGZvbnQgKi9cbiAgICAtLWVuLXNwYWNlOiAwLjVlbTsgICAgICAgICAgICAgICAgICAgICAvKiAxLzIgIGVtIHwgUmVjb21tZW5kZWQgbWF4aW11bSB3aWR0aCBvZiBzcGFjZSAqL1xuICAgIC0tZW0tc3BhY2U6IDFlbTsgICAgICAgICAgICAgICAgICAgICAgIC8qICAgMSAgZW0gfCBPbmUgKi9cblxuICAgIC8qIEJyZWFrcG9pbnRzICovXG4gICAgLS1icC1zbTogNTQ0cHg7XG4gICAgLS1icC1tZDogNzY4cHg7XG4gICAgLS1icC1sZzogOTkycHg7XG4gICAgLS1icC14bDogMTIwMHB4O1xufVxuXG4vKiBNZWRpYSBxdWVyaWVzICovXG5AY3VzdG9tLW1lZGlhIC0tZm9yLXhzICh3aWR0aCA8IDU5NnB4KTtcbkBjdXN0b20tbWVkaWEgLS1mb3Itc20gKHdpZHRoID49IDU0NHB4KSBhbmQgKHdpZHRoIDwgNzY4cHgpO1xuQGN1c3RvbS1tZWRpYSAtLWZvci1tZCAod2lkdGggPj0gNzY4cHgpIGFuZCAod2lkdGggPCA5OTJweCk7XG5AY3VzdG9tLW1lZGlhIC0tZm9yLWxnICh3aWR0aCA+PSA5OTJweCkgYW5kICh3aWR0aCA8IDE0NDBweCk7XG5AY3VzdG9tLW1lZGlhIC0tZm9yLXhsICh3aWR0aCA+PSAxNDQwcHgpO1xuXG5AY3VzdG9tLW1lZGlhIC0tZm9yLXNtLXVwICh3aWR0aCA+PSA1NDRweCk7XG5AY3VzdG9tLW1lZGlhIC0tZm9yLW1kLXVwICh3aWR0aCA+PSA3NjhweCk7XG5AY3VzdG9tLW1lZGlhIC0tZm9yLWxnLXVwICh3aWR0aCA+PSA5OTJweCk7XG5AY3VzdG9tLW1lZGlhIC0tZm9yLXhsLXVwICh3aWR0aCA+PSAxNDQwcHgpO1xuXG5AY3VzdG9tLW1lZGlhIC0tZm9yLXNtLWRvd24gKHdpZHRoIDwgNzY5cHgpO1xuQGN1c3RvbS1tZWRpYSAtLWZvci1tZC1kb3duICh3aWR0aCA8IDk5MnB4KTtcbkBjdXN0b20tbWVkaWEgLS1mb3ItbGctZG93biAod2lkdGggPCAxNDQwcHgpO1xuXG5AY3VzdG9tLW1lZGlhIC0tZm9yLWJ1cmdlci1uYXYgKHdpZHRoIDwgOTkycHgpO1xuQGN1c3RvbS1tZWRpYSAtLWZvci1zdGFuZGFyZC1uYXYgKHdpZHRoID49IDk5MnB4KTtcblxuQGN1c3RvbS1tZWRpYSAtLWZvci10b3VjaC1kZXZpY2UgKGRldmljZS13aWR0aCA8PSAxMDI0cHgpO1xuQGN1c3RvbS1tZWRpYSAtLWZvci1wb2ludGluZy1kZXZpY2UgKGRldmljZS13aWR0aCA+IDEwMjVweCk7XG4iLCJAaW1wb3J0IHVybCguLi8uLi92YXJpYWJsZXMuY3NzKTtcblxuLyogLS0tIFJlc2V0IC0tLSAqL1xuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbywgYnV0dG9uLCBpbnB1dCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbmJvZHkge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5vbCwgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGUsIHEge1xuICAgIHF1b3Rlczogbm9uZTtcbn1cblxuYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIsXG5xOmJlZm9yZSwgcTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBjb250ZW50OiBub25lO1xufVxuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuc3ZnIHsgbWF4LXdpZHRoOiAxMDAlOyBoZWlnaHQ6IGF1dG87IH1cblxuXG4vKiAtLS0gRGVmYXVsdCAtLS0gKi9cblxuLyogRGVmYXVsdCBzZXR0aW5ncyAqL1xuKiwgKjo6YmVmb3JlLCAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IGluaGVyaXQ7XG59XG5cbi8qXG4gIFJlcGVhdGluZyB0aGUgYmFja2dyb3VuZCBtb3N0bHkgbWFrZXMgc2Vuc2UgaW4gdGhlIDxib2R5Pi5cbiAgT3RoZXJ3aXNlLCBwZW9wbGUgdXN1YWxseSB3YW50IHRoZSBpbWFnZSBhbmQgcHJlZmVyYWJseSBpdHMgY2VudGVyXG4gIChub3QgdGhlIHRvcC1yaWdodCBjb3JuZXIpXG4qL1xuKjpub3QoYm9keSkge1xuICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi8qXG4gIE1ha2VzIHRoZSBoaWRkZW4gYXR0cmlidXRlIHdvcmtzIGV2ZW4gd2hlbiBhbiBlbGVtZW50IGlzIHN0eWxlZCBkaXNwbGF5OiBmbGV4XG4gIGh0dHA6Ly9saXN0cy53My5vcmcvQXJjaGl2ZXMvUHVibGljL3B1YmxpYy13aGF0d2ctYXJjaGl2ZS8yMDE0TWF5LzAwMDEuaHRtbFxuKi9cbltoaWRkZW5dLCB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5bZHJhZ2dhYmxlXSB7IHVzZXItc2VsZWN0OiBub25lOyB9XG5cbmh0bWwsIGJvZHkge1xuICAgIC8qIFRleHQgKi9cbiAgICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1mb250LWZhbWlseSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWRlZmF1bHQtZm9udC13ZWlnaHQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1kZWZhdWx0LWxpbmUtaGVpZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0tZGVmYXVsdC1kYXJrLXRleHQtY29sb3IpO1xuICAgIHRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgIGh5cGhlbnM6IG5vbmU7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblxuICAgIC8qIFBhZ2UgKi9cbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYWdlLWJhY2tncm91bmQpIGZpeGVkO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcblxuICAgIC8qIEJsb2NrcyAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAvKiBBcHAgKi9cbiAgICAvKiAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7ICovXG4gICAgLyogLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgKi9cblxuICAgIC8qIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyAqL1xuICAgIC1tcy1vdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbmh0bWwgeyBmb250LXNpemU6IDYyLjUlOyB9XG5ib2R5IHtcbiAgICBmb250LXNpemU6IHZhcigtLWRlZmF1bHQtZm9udC1zaXplKTtcbn1cblxucCB7XG4gICAgaHlwaGVuczogYXV0bztcbiAgICBvdmVybGFwLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbkBzdXBwb3J0cyBub3QgKCgtd2Via2l0LWh5cGhlbnM6IGF1dG8pIG9yICgtbXMtaHlwaGVuczogYXV0bykgb3IgKGh5cGhlbnM6IGF1dG8pKSB7XG4gICAgcCB7XG4gICAgICAgIGh5cGhlbnM6IG1hbnVhbDtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICB9XG59XG5cbmEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uaGFzLWhpZGRlbi1saW5rcyBhLFxuYS5oYXMtaGlkZGVuLWxpbmtzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uby11bmRlcmxpbmUtbGlua3MgYSxcbmEubm8tdW5kZXJsaW5lLWxpbmtzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbkBtZWRpYSAoLS1mb3ItcG9pbnRpbmctZGV2aWNlKSB7XG4gICAgLm5vLXVuZGVybGluZS1saW5rcyBhOmhvdmVyLFxuICAgIGEubm8tdW5kZXJsaW5lLWxpbmtzOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgKC0tZm9yLXRvdWNoLWRldmljZSkge1xuICAgIC5uby11bmRlcmxpbmUtbGlua3MgYTphY3RpdmUsXG4gICAgYS5uby11bmRlcmxpbmUtbGlua3M6YWN0aXZlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICAgIC51bmRlcmxpbmUtbGlua3MtdG91Y2ggYSxcbiAgICBhLnVuZGVybGluZS1saW5rcy10b3VjaCxcbiAgICAubm8tdW5kZXJsaW5lLWxpbmtzLnVuZGVybGluZS1saW5rcy10b3VjaCBhLFxuICAgIGEubm8tdW5kZXJsaW5lLWxpbmtzLnVuZGVybGluZS1saW5rcy10b3VjaCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cblxuLm5vLXVuZGVybGluZS1ob3ZlciBhOmhvdmVyLFxuLm5vLXVuZGVybGluZS1ob3ZlciBhOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cblxuZGl2W3JvbGU9XCJidXR0b25cIl0geyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmlzLWRhcmsgeyBjb2xvcjogdmFyKC0tZGVmYXVsdC1saWdodC10ZXh0LWNvbG9yKTsgfVxuLmlzLWxpZ2h0IHsgY29sb3I6IHZhcigtLWRlZmF1bHQtZGFyay10ZXh0LWNvbG9yKTsgfVxuXG4uaGFzLWFzeW5jLWNzcyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vKiAtLS0gQWNjZXNzaWJpbGl0eSAtLS0gKi9cblxuLyogLmlzLXZpc3VhbGx5LWhpZGRlbjpub3QoOmZvY3VzKTpub3QoOmFjdGl2ZSkgKi9cbi5pcy12aXN1YWxseS1oaWRkZW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgY2xpcC1wYXRoOiBpbnNldCgxMDAlKSAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNraXAgbGlua3MgYXJlIHNob3J0Y3V0cyBhdCB0aGUgdG9wIG9mIHRoZSBwYWdlICovXG4uc2tpcC1saW5rcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwMDE7XG59XG5cbi5za2lwLWxpbmtzIGEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGVmdDogLTEwMDAwcHg7XG4gICAgdG9wOiBhdXRvO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcGFkZGluZzogMWVtO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgb3V0bGluZTogMDtcbiAgICBib3JkZXI6IDNweCBzb2xpZCBibGFjaztcbn1cblxuLnNraXAtbGlua3MgYTpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLyogLS0tIExheW91dCAtLS0gKi9cblxuLm8tdmlldyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm8tdmlldy5pcy1hYnNvbHV0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xufVxuXG4ucGFnZS1jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBwYWRkaW5nLXRvcDogMzVweDtcbn1cblxuQG1lZGlhICgtLWZvci1tZC1kb3duKSB7XG4gICAgLnBhZ2UtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgIH1cbn1cblxuLi1ob21lIC5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uLWVkaXRNb2RlIC5wYWdlLWNvbnRlbnQsXG4ucGFnZS1jb250ZW50LmpzLW1vdW50ZWQge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG59XG5cbi5wYWdlLWNvbnRlbnQgZm9ybSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uLWVkaXRNb2RlIGZvcm0sXG4ucGFnZS1jb250ZW50LmpzLW1vdW50ZWQgZm9ybSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLyogU2VjdGlvbnMgYW5kIEdyb3VwcyAqL1xuLm8tc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4uby1zZWN0aW9uOm5vdCguaGFzLW5vLWd1dHRlciksXG4uby1zZWN0aW9uOm5vdCguaXMtZnVsbC13aWR0aCkge1xuICAgIG1hcmdpbjogdmFyKC0tc2VjdGlvbi1tYXJnaW4taGVpZ2h0KSB2YXIoLS1wYWdlLWd1dHRlci13aWR0aCk7XG59XG5cbi5vLXNlY3Rpb24uaGFzLW5vLWd1dHRlcixcbi5vLXNlY3Rpb24uaXMtZnVsbC13aWR0aCB7XG4gICAgbWFyZ2luOiB2YXIoLS1zZWN0aW9uLW1hcmdpbi1oZWlnaHQpIDA7XG59XG5cbi5vLXNlY3Rpb24uaGFzLW1lZGl1bS10b3Atc3BhY2Uge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1lZGl1bS1zcGFjaW5nKTtcbn1cblxuLm8tc2VjdGlvbi5oYXMtbWVkaXVtLWJvdHRvbS1zcGFjZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWVkaXVtLXNwYWNpbmcpO1xufVxuXG4uby1zZWN0aW9uLmhhcy1sYXJnZS10b3Atc3BhY2Uge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWxhcmdlLXNwYWNpbmcpO1xufVxuXG4uby1zZWN0aW9uLmhhcy1sYXJnZS1ib3R0b20tc3BhY2Uge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWxhcmdlLXNwYWNpbmcpO1xufVxuXG4uby1zZWN0aW9uLmhhcy1zbWFsbC10b3Atc3BhY2Uge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNtYWxsLXNwYWNpbmcpO1xufVxuXG4uby1zZWN0aW9uLmhhcy1zbWFsbC1ib3R0b20tc3BhY2Uge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNtYWxsLXNwYWNpbmcpO1xufVxuXG4uby1zZWN0aW9uLmhhcy10b3AtaW5uZXItc3BhY2Uge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zZWN0aW9uLW1hcmdpbi1oZWlnaHQpO1xufVxuXG4uby1zZWN0aW9uLmhhcy1ib3R0b20taW5uZXItc3BhY2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWN0aW9uLW1hcmdpbi1oZWlnaHQpO1xufVxuXG4uby1zZWN0aW9uLmhhcy1sYXJnZS10b3AtaW5uZXItc3BhY2Uge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1sYXJnZS1zcGFjaW5nKTtcbn1cblxuLm8tc2VjdGlvbi5oYXMtbGFyZ2UtYm90dG9tLWlubmVyLXNwYWNlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbGFyZ2Utc3BhY2luZyk7XG59XG5cbi5vLXNlY3Rpb24uaGFzLW1lZGl1bS10b3AtaW5uZXItc3BhY2Uge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tZWRpdW0tc3BhY2luZyk7XG59XG5cbi5vLXNlY3Rpb24uaGFzLW1lZGl1bS1ib3R0b20taW5uZXItc3BhY2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tZWRpdW0tc3BhY2luZyk7XG59XG5cbi5vLXNlY3Rpb24uaGFzLXNtYWxsLXRvcC1pbm5lci1zcGFjZSB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNtYWxsLXNwYWNpbmcpO1xufVxuXG4uby1zZWN0aW9uLmhhcy1zbWFsbC1ib3R0b20taW5uZXItc3BhY2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zbWFsbC1zcGFjaW5nKTtcbn1cblxuLm8tc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMTIuNXJlbTtcbn1cblxuLm8tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogdmFyKC0tc2VjdGlvbi1tYXJnaW4taGVpZ2h0KSBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xufVxuXG4uby1ncm91cC1maXJzdGNoaWxkLFxuLm8tZ3JvdXAtbGFzdGNoaWxkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbkBtZWRpYSAoLS1mb3ItbWQtZG93bikge1xuXG4gICAgLm8tc2VjdGlvbjpub3QoLmhhcy1uby1ndXR0ZXIpLFxuICAgIC5vLXNlY3Rpb246bm90KC5pcy1mdWxsLXdpZHRoKSxcbiAgICAuby1zZWN0aW9uOm5vdCguaXMtZnVsbC13aWR0aC1tZC1kb3duKSB7XG4gICAgICAgIG1hcmdpbjogdmFyKC0tc2VjdGlvbi1tYXJnaW4taGVpZ2h0LXNtKSB2YXIoLS1wYWdlLWd1dHRlci13aWR0aC1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtbm8tZ3V0dGVyLFxuICAgIC5vLXNlY3Rpb24uaXMtZnVsbC13aWR0aCxcbiAgICAuby1zZWN0aW9uLmlzLWZ1bGwtd2lkdGgtbWQtZG93biB7XG4gICAgICAgIG1hcmdpbjogdmFyKC0tc2VjdGlvbi1tYXJnaW4taGVpZ2h0LXNtKSAwO1xuICAgIH1cblxuICAgIC5vLXNlY3Rpb24uaGFzLW1lZGl1bS10b3Atc3BhY2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1tZWRpdW0tc3BhY2luZy1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtbWVkaXVtLWJvdHRvbS1zcGFjZSxcbiAgICAuby1zZWN0aW9uLmhhcy1tZWRpdW0tYm90dG9tLXNwYWNlLW1kLWRvd24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tZWRpdW0tc3BhY2luZy1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtbGFyZ2UtdG9wLXNwYWNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tbGFyZ2Utc3BhY2luZyk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtbGFyZ2UtYm90dG9tLXNwYWNlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbGFyZ2Utc3BhY2luZyk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtc21hbGwtdG9wLXNwYWNlLFxuICAgIC5vLXNlY3Rpb24uaGFzLXNtYWxsLXRvcC1zcGFjZS1tZC1kb3duIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc21hbGwtc3BhY2luZy1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtc21hbGwtYm90dG9tLXNwYWNlLFxuICAgIC5vLXNlY3Rpb24uaGFzLXNtYWxsLWJvdHRvbS1zcGFjZS1tZC1kb3duIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc21hbGwtc3BhY2luZy1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtdG9wLWlubmVyLXNwYWNlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNlY3Rpb24tbWFyZ2luLWhlaWdodC1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtYm90dG9tLWlubmVyLXNwYWNlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNlY3Rpb24tbWFyZ2luLWhlaWdodC1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtbGFyZ2UtdG9wLWlubmVyLXNwYWNlLFxuICAgIC5vLXNlY3Rpb24uaGFzLWxhcmdlLXRvcC1pbm5lci1zcGFjZS1tZC1kb3duIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWxhcmdlLXNwYWNpbmcpO1xuICAgIH1cblxuICAgIC5vLXNlY3Rpb24uaGFzLWxhcmdlLWJvdHRvbS1pbm5lci1zcGFjZSxcbiAgICAuby1zZWN0aW9uLmhhcy1sYXJnZS1ib3R0b20taW5uZXItc3BhY2UtbWQtZG93biB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1sYXJnZS1zcGFjaW5nKTtcbiAgICB9XG5cbiAgICAuby1zZWN0aW9uLmhhcy1tZWRpdW0tdG9wLWlubmVyLXNwYWNlLFxuICAgIC5vLXNlY3Rpb24uaGFzLW1lZGl1bS10b3AtaW5uZXItc3BhY2UtbWQtZG93biB7XG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tZWRpdW0tc3BhY2luZy1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtbWVkaXVtLWJvdHRvbS1pbm5lci1zcGFjZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tZWRpdW0tc3BhY2luZy1zbSk7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtc21hbGwtdG9wLWlubmVyLXNwYWNlLFxuICAgIC5vLXNlY3Rpb24uaGFzLXNtYWxsLXRvcC1pbm5lci1zcGFjZS1tZC1kb3duIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNtYWxsLXNwYWNpbmctc20pO1xuICAgIH1cblxuICAgIC5vLXNlY3Rpb24uaGFzLXNtYWxsLWJvdHRvbS1pbm5lci1zcGFjZSxcbiAgICAuby1zZWN0aW9uLmhhcy1zbWFsbC1ib3R0b20taW5uZXItc3BhY2UtbWQtZG93biB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zbWFsbC1zcGFjaW5nLXNtKTtcbiAgICB9XG5cbiAgICAuby1zZWN0aW9uLmhhcy1tZWRpdW0tYm90dG9tLWlubmVyLXNwYWNlLW1kLWRvd24ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbWVkaXVtLXNwYWNpbmctc20pO1xuICAgIH1cblxuICAgIC5vLXNlY3Rpb24uaGFzLWxhcmdlLWJvdHRvbS1pbm5lci1zcGFjZS1tZC1kb3duIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLWxhcmdlLXNwYWNpbmcpO1xuICAgIH1cblxuICAgIC5vLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zZWN0aW9uLW1hcmdpbi1oZWlnaHQtc20pIGF1dG87XG4gICAgfVxufVxuXG4uby1ncm91cDpub3QoLmlzLWJvdW5kbGVzcykgeyBtYXgtd2lkdGg6IHZhcigtLXBhZ2UtbWF4d2lkdGgpOyB9XG4uby1ncm91cC5pcy1sYXJnZTpub3QoLmlzLWJvdW5kbGVzcykgeyBtYXgtd2lkdGg6IHZhcigtLXBhZ2UtbWF4d2lkdGgtbGFyZ2UpOyB9XG4uby1ncm91cDpmaXJzdC1vZi10eXBlIHsgbWFyZ2luLXRvcDogMDsgfVxuLm8tZ3JvdXA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbi5vLWdyb3VwLm5vLW1hcmdpbiB7IG1hcmdpbjogMDsgfVxuXG4vKiBJbm5lciBndXR0ZXIgKi9cbi5vLXNlY3Rpb24uaGFzLW5vLWd1dHRlciA+IC5vLWdyb3VwLmhhcy1pbm5lci1ndXR0ZXIsXG4uby1zZWN0aW9uLmlzLWZ1bGwtd2lkdGggPiAuby1ncm91cC5oYXMtaW5uZXItZ3V0dGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWdlLWd1dHRlci13aWR0aCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWdlLWd1dHRlci13aWR0aCk7XG59XG5cbi5vLXNlY3Rpb24uaGFzLW5vLWd1dHRlciA+IC5vLWdyb3VwLmhhcy1pbm5lci1ndXR0ZXI6bm90KC5pcy1ib3VuZGxlc3MpLFxuLm8tc2VjdGlvbi5pcy1mdWxsLXdpZHRoID4gLm8tZ3JvdXAuaGFzLWlubmVyLWd1dHRlcjpub3QoLmlzLWJvdW5kbGVzcykge1xuICAgIG1heC13aWR0aDogY2FsYyh2YXIoLS1wYWdlLW1heHdpZHRoKSArIDIgKiB2YXIoLS1wYWdlLWd1dHRlci13aWR0aCkpICFpbXBvcnRhbnQ7XG59XG5cbi5vLXNlY3Rpb24uaGFzLW5vLWd1dHRlciA+IC5vLWdyb3VwLmhhcy1pbm5lci1ndXR0ZXIuaXMtbGFyZ2U6bm90KC5pcy1ib3VuZGxlc3MpLFxuLm8tc2VjdGlvbi5pcy1mdWxsLXdpZHRoID4gLm8tZ3JvdXAuaGFzLWlubmVyLWd1dHRlci5pcy1sYXJnZTpub3QoLmlzLWJvdW5kbGVzcykge1xuICAgIG1heC13aWR0aDogY2FsYyh2YXIoLS1wYWdlLW1heHdpZHRoLWxhcmdlKSArIDIgKiB2YXIoLS1wYWdlLWd1dHRlci13aWR0aCkpICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAoLS1mb3Itc20tZG93bikge1xuXG4gICAgLm8tc2VjdGlvbi5oYXMtbm8tZ3V0dGVyID4gLm8tZ3JvdXAuaGFzLWlubmVyLWd1dHRlcixcbiAgICAuby1zZWN0aW9uLmlzLWZ1bGwtd2lkdGggPiAuby1ncm91cC5oYXMtaW5uZXItZ3V0dGVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFnZS1ndXR0ZXItd2lkdGgtc20pO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZ2UtZ3V0dGVyLXdpZHRoLXNtKTtcbiAgICB9XG5cbiAgICAuby1zZWN0aW9uLmhhcy1uby1ndXR0ZXIgPiAuby1ncm91cC5oYXMtaW5uZXItZ3V0dGVyOm5vdCguaXMtYm91bmRsZXNzKSxcbiAgICAuby1zZWN0aW9uLmlzLWZ1bGwtd2lkdGggPiAuby1ncm91cC5oYXMtaW5uZXItZ3V0dGVyOm5vdCguaXMtYm91bmRsZXNzKSB7XG4gICAgICAgIG1heC13aWR0aDogY2FsYyh2YXIoLS1wYWdlLW1heHdpZHRoKSArIDIgKiB2YXIoLS1wYWdlLWd1dHRlci13aWR0aC1zbSkpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm8tc2VjdGlvbi5oYXMtbm8tZ3V0dGVyID4gLm8tZ3JvdXAuaGFzLWlubmVyLWd1dHRlci5pcy1sYXJnZTpub3QoLmlzLWJvdW5kbGVzcyksXG4gICAgLm8tc2VjdGlvbi5pcy1mdWxsLXdpZHRoID4gLm8tZ3JvdXAuaGFzLWlubmVyLWd1dHRlci5pcy1sYXJnZTpub3QoLmlzLWJvdW5kbGVzcykge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGModmFyKC0tcGFnZS1tYXh3aWR0aC1sYXJnZSkgKyAyICogdmFyKC0tcGFnZS1ndXR0ZXItd2lkdGgtc20pKSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1tZC11cCkge1xuICAgIC5vLWNvbXBvbmVudDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY29tcG9uZW50LW1hcmdpbi1oZWlnaHQpO1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSB7XG4gICAgLm8tY29tcG9uZW50Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jb21wb25lbnQtbWFyZ2luLWhlaWdodC1zbSk7XG4gICAgfVxufVxuXG4vKiBMYXlvdXQgTW9kaWZpZXJzICovXG4uaGFzLW5vLWJvdHRvbS1zcGFjZSB7IG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmhhcy1uby1ib3R0b20tc3BhY2U6bm90KC5oYXMtYm90dG9tLWlubmVyLXNwYWNlKSB7IHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5oYXMtbm8tdG9wLXNwYWNlIHsgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uaGFzLW5vLXRvcC1zcGFjZTpub3QoLmhhcy10b3AtaW5uZXItc3BhY2UpIHsgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG5cbkBtZWRpYSAoLS1mb3ItbGctdXApIHtcbiAgICAuaGFzLW5vLWJvdHRvbS1zcGFjZS1sZy11cCB7IG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgIC5oYXMtbm8tYm90dG9tLXNwYWNlLWxnLXVwOm5vdCguaGFzLWJvdHRvbS1pbm5lci1zcGFjZSkgeyBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gICAgLmhhcy1uby10b3Atc3BhY2UtbGctdXAgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuaGFzLW5vLXRvcC1zcGFjZS1sZy11cDpub3QoLmhhcy10b3AtaW5uZXItc3BhY2UpIHsgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxufVxuXG4vKiAtLS0gQWxpZ25lbWVudCAtLS0gKi9cblxuLmlzLWxlZnQ6bm90KC5pcy12ZXJ0aWNhbCkge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG9iamVjdC1wb3NpdGlvbjogbGVmdDtcbn1cbi5pcy1sZWZ0LmlzLXZlcnRpY2FsIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmlzLWNlbnRlcjpub3QoLmlzLXZlcnRpY2FsKSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xufVxuLmlzLWNlbnRlci5pcy12ZXJ0aWNhbCB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmlzLXJpZ2h0Om5vdCguaXMtdmVydGljYWwpIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG9iamVjdC1wb3NpdGlvbjogcmlnaHQ7XG59XG4uaXMtcmlnaHQuaXMtdmVydGljYWwgeyBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSB7XG4gICAgLmlzLWxlZnQtbWQtZG93bjpub3QoLmlzLXZlcnRpY2FsKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBsZWZ0O1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSB7XG5cbiAgICAuaXMtbGVmdC1zbS1kb3duOm5vdCguaXMtdmVydGljYWwpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBvYmplY3QtcG9zaXRpb246IGxlZnQ7XG4gICAgfVxuICAgIC5pcy1sZWZ0LXNtLWRvd24uaXMtdmVydGljYWwgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4gICAgLmlzLWNlbnRlci1zbS1kb3duOm5vdCguaXMtdmVydGljYWwpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgfVxuICAgIC5pcy1jZW50ZXItc20tZG93bi5pcy12ZXJ0aWNhbCB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuICAgIC5pcy1yaWdodC1zbS1kb3duOm5vdCguaXMtdmVydGljYWwpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgfVxuICAgIC5pcy1yaWdodC1zbS1kb3duLmlzLXZlcnRpY2FsIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbn1cblxuW2NsYXNzKj1cIm8tZmxleFwiXS5pcy1ib3R0b20geyBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLmlzLXRvcCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBvYmplY3QtcG9zaXRpb246IHRvcDtcbn1cblxuLmlzLWJvdHRvbSB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBib3R0b207XG59XG5cbkBtZWRpYSAoLS1mb3ItbWQtZG93bikge1xuICAgIC5pcy1jZW50ZXItbWQtZG93biB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5pcy1jZW50ZXItbWQtZG93bi5pcy1sZWZ0LmlzLXZlcnRpY2FsIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG59XG5cbkBtZWRpYSAoLS1mb3Itc20tZG93biApIHtcbiAgICAuaXMtbGVmdC1zbS1kb3duOm5vdCguaXMtdmVydGljYWwpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBvYmplY3QtcG9zaXRpb246IGxlZnQ7XG4gICAgfVxuICAgIC5pcy1yaWdodC1zbS1kb3duOm5vdCguaXMtdmVydGljYWwpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgfVxuICAgIC5pcy1jZW50ZXItc20tZG93bjpub3QoLmlzLXZlcnRpY2FsKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbn1cblxuLyogLS0tIFJlc3BvbnNpdmUgLS0tICovXG4uaGlkZGVuIHsgZGlzcGxheTogbm9uZTsgfVxuQG1lZGlhICgtLWZvci14cykgeyAuaGlkZGVuLXhzIHsgZGlzcGxheTogbm9uZTsgfSB9XG5AbWVkaWEgKC0tZm9yLXNtKSB7IC5oaWRkZW4tc20geyBkaXNwbGF5OiBub25lOyB9IH1cbkBtZWRpYSAoLS1mb3ItbWQpIHsgLmhpZGRlbi1tZCB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuQG1lZGlhICgtLWZvci1sZykgeyAuaGlkZGVuLWxnIHsgZGlzcGxheTogbm9uZTsgfSB9XG5AbWVkaWEgKC0tZm9yLXhsKSB7IC5oaWRkZW4teGwgeyBkaXNwbGF5OiBub25lOyB9IH1cbkBtZWRpYSAoLS1mb3Itc20tdXApIHsgLmhpZGRlbi1zbS11cCB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuQG1lZGlhICgtLWZvci1tZC11cCkgeyAuaGlkZGVuLW1kLXVwIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbkBtZWRpYSAoLS1mb3ItbGctdXApIHsgLmhpZGRlbi1sZy11cCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5AbWVkaWEgKC0tZm9yLXNtLWRvd24pIHsgLmhpZGRlbi1zbS1kb3duIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbkBtZWRpYSAoLS1mb3ItbWQtZG93bikgeyAuaGlkZGVuLW1kLWRvd24geyBkaXNwbGF5OiBub25lOyB9IH1cbkBtZWRpYSAoLS1mb3ItbGctZG93bikgeyAuaGlkZGVuLWxnLWRvd24geyBkaXNwbGF5OiBub25lOyB9IH1cbkBtZWRpYSAoLS1mb3ItYnVyZ2VyLW5hdikgeyAuaGlkZGVuLWJ1cmdlci1uYXYgeyBkaXNwbGF5OiBub25lOyB9IH1cbkBtZWRpYSAoLS1mb3Itc3RhbmRhcmQtbmF2KSB7IC5oaWRkZW4tc3RhbmRhcmQtbmF2IHsgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qIC0tLSBUZXh0IC0tLSAqL1xuXG4ubm9oIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWRlZmF1bHQtZm9udC1mYW1pbHkpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIG1hcmdpbjogYXV0bztcbn1cblxucCB7XG4gICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYScgMSwgJ2xudW0nIDEsICdrZXJuJyAxO1xuICAgIHRleHQtcmVuZGVyaW5nOiBnZW9tZXRyaWNQcmVjaXNpb247XG59XG5cbnA6bm90KDpsYXN0LWNoaWxkKSB7IG1hcmdpbjogMCAwIHZhcigtLXAtbWFyZ2luLWJvdHRvbSk7IH1cblxuc3Ryb25nLCAuLXN0cm9uZyB7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cbmVtIHsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5oYXMtdGhpbi1mb250IHtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogaW5pdGlhbDtcbn1cblxuLmhhcy10aGluLWZvbnQgc3Ryb25nIHtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaGFzLWNvbHVtbnMge1xuICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgaHlwaGVuczogYXV0bztcbiAgICBjb2x1bW5zOiAyNWVtIGF1dG87XG4gICAgY29sdW1uLWdhcDogdmFyKC0tbGF5b3V0LWd1dHRlci13aWR0aCk7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDI7XG59XG5cbkBzdXBwb3J0cyBub3QgKCgtd2Via2l0LWh5cGhlbnM6IGF1dG8pIG9yICgtbXMtaHlwaGVuczogYXV0bykgb3IgKGh5cGhlbnM6IGF1dG8pKSB7XG4gICAgLmhhcy1jb2x1bW5zICB7XG4gICAgICAgIGh5cGhlbnM6IG1hbnVhbDtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICB9XG59XG5cbi5pcy1ub3Qtc2VsZWN0YWJsZSB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbnN1cCwgc3ViIHsgZm9udC1zaXplOiBzbWFsbGVyOyB9XG5zdXAgeyB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7IH1cbnN1YiB7IHZlcnRpY2FsLWFsaWduOiBzdWI7IH1cblxuXG4vKiAtLS0gSW1hZ2VzIC0tLSAqL1xuXG4uc3ZnLXN5bWJvbHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi5zdmctaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxZW07XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5oYXMtc3ZnLWljb24ge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiBmaXggb3ZlcmZsb3cgY3V0ICovXG59XG5cbi5oYXMtc3ZnLWljb24gPiBzdmcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogMXB4O1xufVxuXG4uaGFzLXN2Zy1pY29uID4gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgei1pbmRleDogMjtcbn1cblxuLyogLS0tIFNjcm9sbCAtLS0gKi9cblxuLyogQmxvY2sgc2Nyb2xsIG9uIERlc2t0b3AgKi9cbmh0bWwuaXMtbm90LXNjcm9sbGFibGUsXG5odG1sLmlzLW5vdC1zY3JvbGxhYmxlID4gYm9keSxcbi5pcy1ub3Qtc2Nyb2xsYWJsZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIC8qIGhlaWdodDogMTAwJSAhaW1wb3J0YW50OyAqL1xufVxuXG4uaXMtc2Nyb2xsYWJsZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi8qIGJsb2NrIHNjcm9sbCBlZmZlY3Qgb24gaU9TIGJ1dCBmb3JjZSB0byBzY3JvbGwgb24gdG9wICovXG4uby12aWV3LmlzLW5vdC1zY3JvbGxhYmxlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi4tcmVsYXRpdmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLi1ub3QtcmVsYXRpdmUge1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xufVxuXG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4vKiAtLS0gVG9vbHMgLS0tICovXG5cbi5oeXBoZW5hdGUge1xuICAgIGh5cGhlbnM6IGF1dG87XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbn1cblxuLm5vLWh5cGhlbmF0ZSB7XG4gICAgaHlwaGVuczogbm9uZTtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xufVxuXG5Ac3VwcG9ydHMgbm90ICgoLXdlYmtpdC1oeXBoZW5zOiBhdXRvKSBvciAoLW1zLWh5cGhlbnM6IGF1dG8pIG9yIChoeXBoZW5zOiBhdXRvKSkge1xuICAgIC5oeXBoZW5hdGUge1xuICAgICAgICBoeXBoZW5zOiBtYW51YWw7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgfVxufVxuXG5hcnRpY2xlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi52dWUtaW5uZXIgeyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnJlZ3VsYXItbWF4LXdpZHRoIHtcbiAgICBtYXgtd2lkdGg6IDkyN3B4O1xufVxuXG4ubWVkaXVtLW1heC13aWR0aCB7XG4gICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnNtYWxsLW1heC13aWR0aCB7XG4gICAgbWF4LXdpZHRoOiA3NDFweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmV4dHJhLXNtYWxsLW1heC13aWR0aCB7XG4gICAgbWF4LXdpZHRoOiA0MzRweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn0iLCJAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJGaWxzb24gUmVndWxhclwiO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgc3JjOiB1cmwoJy4uLy4uL2Fzc2V0cy93ZWJmb250cy9GaWxzb24tUmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy4uLy4uL2Fzc2V0cy93ZWJmb250cy9GaWxzb24tUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC1kaXNwbGF5OiBibG9jaztcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRmlsc29uIEJsYWNrXCI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBzcmM6IHVybCgnLi4vLi4vYXNzZXRzL3dlYmZvbnRzL0ZpbHNvbi1CbGFjay53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy4uLy4uL2Fzc2V0cy93ZWJmb250cy9GaWxzb24tQmxhY2sud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtZGlzcGxheTogYmxvY2s7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZpbHNvbiBIZWF2eVwiO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgc3JjOiB1cmwoJy4uLy4uL2Fzc2V0cy93ZWJmb250cy9GaWxzb24tSGVhdnkud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcuLi8uLi9hc3NldHMvd2ViZm9udHMvRmlsc29uLUhlYXZ5LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LWRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiogbmljaHQgZ2VudXR6dCAqKi9cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRmlsc29uIEJvb2tcIjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHNyYzogdXJsKCcuLi8uLi9hc3NldHMvd2ViZm9udHMvRmlsc29uLUJvb2sud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcuLi8uLi9hc3NldHMvd2ViZm9udHMvRmlsc29uLUJvb2sud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtZGlzcGxheTogYmxvY2s7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZpbHNvbiBNZWRpdW1cIjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHNyYzogdXJsKCcuLi8uLi9hc3NldHMvd2ViZm9udHMvRmlsc29uLU1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy4uLy4uL2Fzc2V0cy93ZWJmb250cy9GaWxzb24tTWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LWRpc3BsYXk6IGJsb2NrO1xufVxuXG4iLCJAaW1wb3J0IHVybCguLi8uLi92YXJpYWJsZXMuY3NzKTtcblxuaHRtbCB7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbmJvZHkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZGVmYXVsdC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1Njtcbn1cblxuLnNtYWxsLXRleHQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1kZWZhdWx0LXNtYWxsLWZvbnQtc2l6ZSk7XG59XG5cbnAge1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41NTY7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdkbGlnJyAxLCAnbGlnYScgMSwgJ2xudW0nIDEsICdrZXJuJyAxO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5ncy1mb250LWZhbWlseSk7XG4gICAgY29sb3I6IHZhcigtLWhlYWRpbmdzLWNvbG9yKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taGVhZGluZ3MtZm9udC13ZWlnaHQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkaW5ncy1saW5lLWhlaWdodCk7XG4gICAgdGV4dC1yZW5kZXJpbmc6IGdlb21ldHJpY1ByZWNpc2lvbjtcbn1cblxuLmgzLCAuaDQsIC5oNSwgLmg2LCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWhlYXZ5KTtcbn1cblxuaDEsIC5oMSB7IG1hcmdpbjogdmFyKC0taDEtbWFyZ2luLXRvcCkgMCB2YXIoLS1oMS1tYXJnaW4tYm90dG9tKTsgbGV0dGVyLXNwYWNpbmc6IC4wMWVtOyBsaW5lLWhlaWdodDogMS4xMzM7fVxuaDIsIC5oMiB7IG1hcmdpbjogdmFyKC0taDItbWFyZ2luLXRvcCkgMCB2YXIoLS1oMi1tYXJnaW4tYm90dG9tKTsgbGV0dGVyLXNwYWNpbmc6IC4wMWVtOyBsaW5lLWhlaWdodDogMS4yMjI7fVxuaDMsIC5oMyB7IG1hcmdpbjogdmFyKC0taDMtbWFyZ2luLXRvcCkgMCB2YXIoLS1oMy1tYXJnaW4tYm90dG9tKTsgbGV0dGVyLXNwYWNpbmc6IC4wMWVtOyBsaW5lLWhlaWdodDogMS4zODU7fVxuaDQsIC5oNCwgLmg0IHAgeyBtYXJnaW46IDAgMCB2YXIoLS1oNC1tYXJnaW4tYm90dG9tKTsgbGV0dGVyLXNwYWNpbmc6IC4wMmVtOyBsaW5lLWhlaWdodDogMS41O31cbmg1LCAuaDUgeyBtYXJnaW46IDAgMCB2YXIoLS1oZWFkaW5ncy1tYXJnaW4tYm90dG9tKTsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IC4wMmVtOyBsaW5lLWhlaWdodDogMS41O31cbmg2LCAuaDYgeyBtYXJnaW46IDAgMCB2YXIoLS1oZWFkaW5ncy1tYXJnaW4tYm90dG9tKTsgbGV0dGVyLXNwYWNpbmc6IC4wMmVtOyBsaW5lLWhlaWdodDogMS41O31cblxuLnNtYWxsLXNpemUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc21hbGwtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogMS40Mjk7XG59XG5cbi5leHRyYS1zbWFsbC1zaXplIHtcbiAgICBmb250LXNpemU6IHZhcigtLWV4dHJhLXNtYWxsLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjY3O1xufVxuXG4uc21hbGwtc2hvcC1zaXplIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNob3AtZm9udC1zaXplKTtcbn1cblxuLnNtYWxsLWxpbmUtaGVpZ2h0LFxuLnNtYWxsLWxpbmUtaGVpZ2h0IHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1Njtcbn1cblxuLmhhcy1pbm5lci1ndXR0ZXIgaDE6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmctYm90dG9tOiB2YXIoLS1oMS1tYXJnaW4tYm90dG9tKTsgfVxuLmhhcy1pbm5lci1ndXR0ZXIgaDI6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmctYm90dG9tOiB2YXIoLS1oMi1tYXJnaW4tYm90dG9tKTsgfVxuLmhhcy1pbm5lci1ndXR0ZXIgaDM6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmctYm90dG9tOiB2YXIoLS1oMy1tYXJnaW4tYm90dG9tKTsgfVxuLmhhcy1pbm5lci1ndXR0ZXIgaDQ6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmctYm90dG9tOiB2YXIoLS1oNC1tYXJnaW4tYm90dG9tKTsgfVxuLmhhcy1pbm5lci1ndXR0ZXIgaDU6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmctYm90dG9tOiB2YXIoLS1oZWFkaW5ncy1tYXJnaW4tYm90dG9tKTsgfVxuLmhhcy1pbm5lci1ndXR0ZXIgaDY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmctYm90dG9tOiB2YXIoLS1oZWFkaW5ncy1tYXJnaW4tYm90dG9tKTsgfVxuXG5cbkBtZWRpYSAoLS1mb3ItbWQtdXApIHtcbiAgICBib2R5LCBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjU7XG4gICAgfVxuICAgIGgxLCAuaDEsIC5oMS1tZC11cCB7IGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKTsgbGluZS1oZWlnaHQ6IDEuMDcxOyB9XG4gICAgaDIsIC5oMiwgLmgyLW1kLXVwIHsgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpOyBsaW5lLWhlaWdodDogMS4xMzM7fVxuICAgIGgzLCAuaDMsIC5oMy1tZC11cCB7IGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTsgbGluZS1oZWlnaHQ6IDEuMzE4O31cbiAgICBoNCwgLmg0LCAuaDQgcCB7IGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplKTsgbGluZS1oZWlnaHQ6IDEuNDYyO31cbiAgICBoNSwgLmg1IHsgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUpOyBsaW5lLWhlaWdodDogMS42NTt9XG4gICAgaDYsIC5oNiB7IGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplKTsgbGluZS1oZWlnaHQ6IDEuNjU7fVxuXG4gICAgYnV0dG9uLCAuYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1idXR0b24tZm9udC1zaXplKTtcbiAgICB9XG5cbiAgICBpbnB1dDpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSksXG4gICAgdGV4dGFyZWFbbmFtZV0sIC5zZWxlY3Rpb24taW5wdXQsIC5zZWxlY3Rpb24tbGlzdCwgLmZpbGUtdXBsb2FkLXRleHQge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWlucHV0LWZvbnQtc2l6ZSk7XG4gICAgfVxuXG4gICAgLmhvbWUtdGl0bGUgaDEge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWludHJvLWZvbnQtc2l6ZSk7XG4gICAgfVxufVxuXG4ubHMtMTAwLFxuLmxzLTEwMCA+ICoge1xuICAgIGxldHRlci1zcGFjaW5nOiAuMWVtO1xufVxuXG4ubHMtMTAsXG4ubHMtMTAgPiAqIHtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAxZW07XG59XG5cbi5scy0yMCxcbi5scy0yMCA+ICoge1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDJlbTtcbn1cblxuXG4uY29sb3JlZC10ZXh0LmN5YW4sXG4uY29sb3JlZC10ZXh0IC5jeWFuIHtcbiAgICBjb2xvcjogdmFyKC0tY3lhbik7XG59XG5cbi5jb2xvcmVkLXRleHQuZ3JlZW4sXG4uY29sb3JlZC10ZXh0IC5ncmVlbiB7XG4gICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbn1cblxuLmNvbG9yZWQtdGV4dC5saWdodCxcbi5jb2xvcmVkLXRleHQgLmxpZ2h0IHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xufVxuXG4uZm9udC1mYW1pbHktaGVhZGluZ3Mge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5ncy1mb250LWZhbWlseSk7XG59XG5cbi5mb250LWZhbWlseS1yZWd1bGFyIHtcbiAgICBmb250LWZhbWlseTogXCJGaWxzb24gUmVndWxhclwiO1xufVxuXG4uZm9udC1mYW1pbHktaGVhdnkge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZpbHNvbiBIZWF2eVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5mb250LWZhbWlseS1ibGFjayB7XG4gICAgZm9udC1mYW1pbHk6IFwiRmlsc29uIEJsYWNrXCI7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLmZvbnQtZmFtaWx5LW1lZGl1bSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRmlsc29uIE1lZGl1bVwiO1xufVxuXG4uaXMtbGVmdCBoNCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLyogb3IgdXNlIHNldmVyYWwgYnJlYWtwb2ludHMgKi9cblxuLypcbkBtZWRpYSAoLS1mb3IteGwpIHtcblxuICAgIGgxLCAuaDEgeyBmb250LXNpemU6IHZhcigtLWgxLWZvbnQtc2l6ZS14bCk7IH1cbiAgICBoMiwgLmgyIHsgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUteGwpOyB9XG4gICAgaDMsIC5oMyB7IGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplLXhsKTsgfVxuICAgIGg0LCAuaDQgeyBmb250LXNpemU6IHZhcigtLWg0LWZvbnQtc2l6ZS14bCk7IH1cbiAgICBoNSwgLmg1IHsgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUteGwpOyB9XG4gICAgaDYsIC5oNiB7IGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplLXhsKTsgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYnV0dG9uLWZvbnQtc2l6ZS14bCk7XG4gICAgfVxuXG4gICAgaW5wdXQ6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pLFxuICAgIHRleHRhcmVhW25hbWVdLCAuc2VsZWN0aW9uLWlucHV0LCAuc2VsZWN0aW9uLWxpc3QsIC5maWxlLXVwbG9hZC10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1mb250LXNpemUteGwpO1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1sZykge1xuXG4gICAgaDEsIC5oMSB7IGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplLWxnKTsgbGV0dGVyLXNwYWNpbmc6IC0ycHg7IHRleHQtaW5kZW50OiAtM3B4OyB9XG4gICAgaDIsIC5oMiB7IGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplLWxnKTsgbGV0dGVyLXNwYWNpbmc6IC0xcHg7IH1cbiAgICBoMywgLmgzIHsgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUtbGcpOyBsZXR0ZXItc3BhY2luZzogLTAuNnB4OyB9XG4gICAgaDQsIC5oNCB7IGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplLWxnKTsgfVxuICAgIGg1LCAuaDUgeyBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZS1sZyk7IH1cbiAgICBoNiwgLmg2IHsgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUtbGcpOyB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1idXR0b24tZm9udC1zaXplLWxnKTtcbiAgICB9XG5cbiAgICBpbnB1dDpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSksXG4gICAgdGV4dGFyZWFbbmFtZV0sIC5zZWxlY3Rpb24taW5wdXQsIC5zZWxlY3Rpb24tbGlzdCwgLmZpbGUtdXBsb2FkLXRleHQge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gICAgfVxufVxuXG5AbWVkaWEgKC0tZm9yLW1kKSB7XG5cbiAgICBoMSwgLmgxIHsgZm9udC1zaXplOiB2YXIoLS1oMS1mb250LXNpemUtbWQpOyB9XG4gICAgaDIsIC5oMiB7IGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplLW1kKTsgfVxuICAgIGgzLCAuaDMgeyBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZS1tZCk7IH1cbiAgICBoNCwgLmg0IHsgZm9udC1zaXplOiB2YXIoLS1oNC1mb250LXNpemUtbWQpOyB9XG4gICAgaDUsIC5oNSB7IGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplLW1kKTsgfVxuICAgIGg2LCAuaDYgeyBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZS1tZCk7IH1cblxuICAgIC5idXR0b24ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWJ1dHRvbi1mb250LXNpemUtbWQpO1xuICAgIH1cblxuICAgIGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwic3VibWl0XCJdKSxcbiAgICB0ZXh0YXJlYVtuYW1lXSwgLnNlbGVjdGlvbi1pbnB1dCwgLnNlbGVjdGlvbi1saXN0LCAuZmlsZS11cGxvYWQtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQtZm9udC1zaXplLW1kKTtcbiAgICB9XG59ICovXG5cbkBtZWRpYSAoLS1mb3ItbWQtZG93bikge1xuICAgIC5oMi1tZC1kb3duIHsgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpOyBsaW5lLWhlaWdodDogMS4yMjI7fVxuICAgIC5oMy1tZC1kb3duIHsgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpOyBsaW5lLWhlaWdodDogMS4zODU7fVxuICAgIC5oNC1tZC1kb3duIHsgZm9udC1zaXplOiB2YXIoLS1oNC1mb250LXNpemUpOyBsaW5lLWhlaWdodDogMS41O31cblxuXG4gICAgLmZvbnQtZmFtaWx5LWhlYWRpbmdzLW1kLWRvd24ge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGluZ3MtZm9udC1mYW1pbHkpO1xuICAgIH1cblxuICAgIC5zbWFsbC1zaXplLW1kLWRvd24ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNtYWxsLWZvbnQtc2l6ZSk7XG4gICAgfVxuXG4gICAgLmV4dHJhLXNtYWxsLXNpemUtbWQtZG93biB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZXh0cmEtc21hbGwtZm9udC1zaXplKTtcbiAgICB9XG59XG5cbkBtZWRpYSAoLS1mb3Itc20tZG93bikge1xuXG4gICAgYm9keXtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1kZWZhdWx0LWZvbnQtc2l6ZS1zbSk7XG4gICAgfVxuXG4gICAgLnNtYWxsLXRleHQtc2l6ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZGVmYXVsdC1zbWFsbC1mb250LXNpemUtc20pO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH1cblxuICAgIGgxLCAuaDEgeyBmb250LXNpemU6IHZhcigtLWgxLWZvbnQtc2l6ZS1zbSk7IH1cbiAgICBoMiwgLmgyLCAuaDItc20tZG93biwgLmgyLW1kLWRvd24geyBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZS1zbSk7IH1cbiAgICBoMywgLmgzLCAuaDMtbWQtZG93biB7IGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplLXNtKTsgfVxuICAgIGg0LCAuaDQsIC5oNC1tZC1kb3duLCAuaDQgcCB7IGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplLXNtKTsgfVxuICAgIGg1LCAuaDUgeyBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZS1zbSk7IH1cbiAgICBoNiwgLmg2IHsgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUtc20pOyB9XG4gICAgLmgyLW1kLWRvd24geyBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZS1zbSk7IH1cbiAgICAuaDMtbWQtZG93biB7IGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplLXNtKTsgfVxuICAgIC5oNC1tZC1kb3duIHsgZm9udC1zaXplOiB2YXIoLS1oNC1mb250LXNpemUtc20pOyB9XG5cbiAgICBidXR0b24sIC5idXR0b24ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWJ1dHRvbi1mb250LXNpemUtc20pO1xuICAgIH1cblxuICAgIGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwic3VibWl0XCJdKSxcbiAgICB0ZXh0YXJlYVtuYW1lXSwgLnNlbGVjdGlvbi1pbnB1dCwgLnNlbGVjdGlvbi1saXN0LCAuZmlsZS11cGxvYWQtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQtZm9udC1zaXplLXNtKTtcbiAgICB9XG5cbiAgICAuaG9tZS10aXRsZSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taW50cm8tZm9udC1zaXplLXNtKTtcbiAgICB9XG5cbiAgICAuZm9udC1mYW1pbHktaGVhZGluZ3Mtc20tZG93biB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5ncy1mb250LWZhbWlseSk7XG4gICAgfVxuXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MDBweCkge1xuICAgIGgxLCAuc2VydmljZS10ZXh0IHtcbiAgICAgICAgaHlwaGVuczogYXV0bztcbiAgICB9XG59XG5cbkBtZWRpYSAoLS1mb3ItbGctdXApIHtcblxuICAgIGJvZHkge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWRlZmF1bHQtZm9udC1zaXplLXhsKTtcbiAgICB9XG5cbiAgICAuc21hbGwtdGV4dC1zaXplLCAuc21hbGwtdGV4dC1zaXplIHAge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWRlZmF1bHQtc21hbGwtZm9udC1zaXplLXhsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzc4O1xuICAgIH1cblxuICAgIGgxLCAuaDEsIC5oMS1tZC11cCB7IGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplLXhsKTt9XG4gICAgaDIsIC5oMiwgLmgyLW1kLXVwIHsgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUteGwpO31cbiAgICBoMywgLmgzLCAuaDMtbWQtdXAgeyBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZS14bCk7IH1cbiAgICBoNCwgLmg0LCAuaDQgcCB7IGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplLXhsKTt9XG4gICAgaDUsIC5oNSB7IGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplLXhsKTt9XG4gICAgaDYsIC5oNiB7IGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplLXhsKTt9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuaG9tZS10aXRsZSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taW50cm8tZm9udC1zaXplLXhsKTtcbiAgICB9XG59XG5cblxuLmFycm93LCAuaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDY1cHg7XG59XG5cbi5idXR0b24taW5wdXQtYXJyb3c6YWZ0ZXIsXG4uYXJyb3c6YWZ0ZXIsXG4uYnV0dG9uLmljb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICByaWdodDogMTRweDtcbiAgICB3aWR0aDogMjZweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaWNvbnMvYXJyb3cuc3ZnJyk7XG4gICAgbWFzay1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaWNvbnMvYXJyb3cuc3ZnJyk7XG4gICAgLXdlYmtpdC1tYXNrLXNpemU6IDEwMCU7XG4gICAgbWFzay1zaXplOiAxMDAlO1xuICAgIC13ZWJraXQtbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHotaW5kZXg6IDEwO1xufVxuXG4uYnV0dG9uLm1haWw6YWZ0ZXIge1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaWNvbnMvbWFpbC5zdmcnKTtcbiAgICBtYXNrLWltYWdlOiB1cmwoJy4uLy4uL2Fzc2V0cy9pY29ucy9tYWlsLnN2ZycpO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMnB4KTtcbiAgICB3aWR0aDogMzNweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgcmlnaHQ6IDIxcHg7XG59XG5cbi5idXR0b24uaW5zdGFncmFtOmFmdGVyIHtcbiAgICAtd2Via2l0LW1hc2staW1hZ2U6IHVybCgnLi4vLi4vYXNzZXRzL2ljb25zL2luc3RhZ3JhbS5zdmcnKTtcbiAgICBtYXNrLWltYWdlOiB1cmwoJy4uLy4uL2Fzc2V0cy9pY29ucy9pbnN0YWdyYW0uc3ZnJyk7XG4gICAgcmlnaHQ6IDIxcHg7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbn1cblxuLmJ1dHRvbi5hcnJvdy5kb3duLnByaW1hcnksXG4uYnV0dG9uLmljb24ucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZGFyayk7XG59XG5cbi5idXR0b24uYXJyb3cuZG93bjphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ljb25zL2Fycm93LWZsYXQuc3ZnXCIpO1xuICAgIC8qYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsqL1xuICAgIGhlaWdodDogMTJweDtcbiAgICB0b3A6IGNhbGMoNTAlIC0gNnB4KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tZGVmYXVsdC10aW1pbmcpIGVhc2U7XG59XG5cbi5idXR0b24uYXJyb3cuZG93bi5vcGVuOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uYnV0dG9uLWlucHV0IGlucHV0LFxuLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogOXB4IDI1cHggN3B4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtaW4td2lkdGg6IDI3NXB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWRhcmspO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6IFwiRmlsc29uIEhlYXZ5XCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLWRlZmF1bHQtdGltaW5nKSBlYXNlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAvKm1hcmdpbi10b3A6IDVweDsqL1xuICAgIGxldHRlci1zcGFjaW5nOiAuMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xufVxuXG5pbnB1dC5idXR0b24ge1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDJlbTtcbiAgICBjb2xvcjogdmFyKC0tZGFyayk7XG59XG5cbkBtZWRpYSAoLS1mb3Itc20tdXApIHtcbiAgICAuYnV0dG9uOm5vdCguYXJyb3ctaW5wdXQpOmhvdmVyLFxuICAgIC5idXR0b246bm90KC5hcnJvdy1pbnB1dCk6Zm9jdXM6bm90KC5kb3duKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgIH1cbn1cblxuLmJ1dHRvbi5wcmltYXJ5IHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmspO1xufVxuXG5AbWVkaWEgKC0tZm9yLXNtLXVwKSB7XG4gICAgLmJ1dHRvbi5wcmltYXJ5Om5vdCguYXJyb3ctaW5wdXQpOmhvdmVyLFxuICAgIC5idXR0b24ucHJpbWFyeTpub3QoLmRvd24pOm5vdCguYXJyb3ctaW5wdXQpOmZvY3VzLFxuICAgIC5idXR0b24ucHJpbWFyeS5hcnJvdy5kb3duOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICB9XG59XG5cbi5idXR0b24uYXJyb3csXG4uYnV0dG9uLmljb24ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG59XG5cbi5idXR0b24uZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICBjb2xvcjogdmFyKC0tZGFyayk7XG59XG5cbkBtZWRpYSAoLS1mb3Itc20tdXApIHtcbiAgICAuYnV0dG9uLmdyZWVuOmhvdmVyLFxuICAgIC5idXR0b24uZ3JlZW46Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeWFuKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jeWFuKTtcbiAgICB9XG59XG5cbi5idXR0b24uY29sb3JlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jeWFuKTtcbiAgICBjb2xvcjogdmFyKC0tY3lhbik7XG59XG5cbi5idXR0b24uY29sb3JlZC5hcnJvdzphZnRlcixcbi5idXR0b24uY29sb3JlZC5pY29uOmFmdGVyIHtcbiAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xufVxuXG4uYnV0dG9uLmNvbG9yZWQubGlnaHQge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XG59XG5cbi5idXR0b24taW5wdXQtYXJyb3cge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAvKm1hcmdpbi10b3A6IDVweDsqL1xufVxuXG4uYnV0dG9uLWlucHV0LWFycm93LmxpZ2h0IHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xufVxuXG4uYnV0dG9uLWlucHV0LWFycm93IC5idXR0b24tYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNDBweDtcbiAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0OXB4O1xuICAgIHJpZ2h0OiAxcHg7XG4gICAgdG9wOiAxcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgei1pbmRleDogMjA7XG59XG5cbi5hcnJvdy1pbnB1dCB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA5cHggNDBweCAuOTRyZW0gMjBweCAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDI7XG59XG5cbi5zaGFkb3ctYmcge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDE5NHB4O1xufVxuXG4uc2hhZG93LWJnLmRhcmsge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWRhcmspO1xufVxuXG4uaG92ZXItYm9yZGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luOiA2cHggNjVweCA2cHggN3B4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2NXB4IC0gN3B4KTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDZweCAtIDZweCk7XG4gICAgYm9yZGVyLXJhZGl1czogMTk0cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tZ3JlZW4pO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tZGVmYXVsdC10aW1pbmcpIGVhc2U7XG4gICAgei1pbmRleDogMTtcbn1cblxuQG1lZGlhICgtLWZvci1zbS11cCkge1xuICAgIC5idXR0b24taW5wdXQtYXJyb3c6aG92ZXIgLmhvdmVyLWJvcmRlcixcbiAgICAuYnV0dG9uLWlucHV0LWFycm93OmZvY3VzIC5ob3Zlci1ib3JkZXIsXG4gICAgLmJ1dHRvbi1pbnB1dC1hcnJvdyBpbnB1dDpmb2N1cyArIC5ob3Zlci1ib3JkZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1tZC11cCkge1xuICAgIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgIG1pbi13aWR0aDogMzMzcHg7XG4gICAgfVxuXG4gICAgLmJ1dHRvbi5zbWFsbC1idXR0b24tc2l6ZS1tZC11cCB7XG4gICAgICAgIG1pbi13aWR0aDogMjc1cHg7XG4gICAgfVxuXG4gICAgLmFycm93LWlucHV0IHtcbiAgICAgICAgcGFkZGluZzogMTBweCA0MHB4IDEwcHggMjBweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSB7XG4gICAgLmJ1dHRvbi1pbnB1dC1hcnJvdy5pcy1mdWxsLXdpZHRoLXNtLWRvd24sXG4gICAgLmJ1dHRvbi5pcy1mdWxsLXdpZHRoLXNtLWRvd24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICB9XG59XG5cbi5uby1oeXBoZW5zLFxuLm5vLWh5cGhlbnMgPiBwICB7XG4gICAgaHlwaGVuczogbm9uZTtcbn1cblxuLyoqIFRpdGxlICoqL1xuaDE6YWZ0ZXIsIC5oMTphZnRlciwgLmgxLW1kLXVwOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogNXB4O1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMTk0cHg7XG4gICAgbWFyZ2luOiA1cHggYXV0byAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuaDEuc21hbGwtbGluZS1tZC1kb3duOmFmdGVyIHtcbiAgICB3aWR0aDogMTMycHg7XG59XG5cbmgxLmZ1bGwtd2lkdGgtbGluZTphZnRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbmgxLmRlZXAtbGluZTphZnRlciwgLmgxLmRlZXAtbGluZTphZnRlciB7XG4gICAgbWFyZ2luLXRvcDogMzlweDtcbn1cblxuLmgxLm5vLWxpbmU6OmFmdGVyLFxuaDEubm8tbGluZTo6YWZ0ZXIsXG4uaDEtbWQtdXA6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSAoLS1mb3ItbWQtdXApIHtcbiAgICAuaDE6YWZ0ZXIsIC5oMS1tZC11cDphZnRlciB7XG4gICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmgxLnNtYWxsLWxpbmU6YWZ0ZXIge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgfVxuXG4gICAgaDEuYmlnLWxpbmUtbWQtdXA6OmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDgwMHB4O1xuICAgIH1cblxuICAgIGgxLmJpZ2dlci1saW5lLW1kLXVwOjphZnRlcixcbiAgICAuaDEuYmlnZ2VyLWxpbmUtbWQtdXA6OmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDkwMHB4O1xuICAgIH1cblxuICAgIC5oMS5uby1saW5lLW1kLXVwOjphZnRlcixcbiAgICBoMS5uby1saW5lLW1kLXVwOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzQ1cHgpIHtcbiAgICAuYnV0dG9uLFxuICAgIGlucHV0IHtcbiAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4vKiogQ3VzdG9tICoqL1xuXG4ud2Utd2FudC15b3UtdGVhc2VyIC5oMTphZnRlciB7XG4gICAgbWFyZ2luLXRvcDogMzFweDtcbn1cblxuLnRoaXMtaXMtdml2YWdlIC5oMTphZnRlciB7XG4gICAgbWFyZ2luLXRvcDogMjRweDtcbn1cblxuLmJsb2ctZW50cnktaW50cm8gaDE6YWZ0ZXIge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG59XG5cbi5uZXdzLWNpcmNsZSAuaDE6YWZ0ZXIge1xuICAgIHdpZHRoOiAyMjZweDtcbiAgICBtYXJnaW4tdG9wOiAzN3B4O1xufVxuXG4uYmFubmVyIC5oMTphZnRlciB7XG4gICAgbWFyZ2luLXRvcDogMTRweDtcbn1cblxuLmJsb2ctb3ZlcnZpZXcgaDE6YWZ0ZXIge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG59XG5cbi53ZS13YW50LXlvdSBoMTphZnRlciB7XG4gICAgbWFyZ2luLXRvcDogMzhweDtcbn1cblxuLnRoZS13b21hbi1iZWhpbmQtdml2YWdlIGgxOmFmdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzOHB4O1xufVxuXG4jY29udGFjdCAuaDEtbWQtdXA6YWZ0ZXIge1xuICAgIG1hcmdpbi10b3A6IDI5cHg7XG59XG5cbi5ibG9nLXRlYXNlcnMgLmgxOmFmdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzN3B4O1xufVxuXG5AbWVkaWEgKC0tZm9yLW1kLWRvd24pIHtcbiAgICAubmV3cy1jaXJjbGUgLmgxOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjlweDtcbiAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgIH1cblxuICAgIC53ZS13YW50LXlvdS10ZWFzZXIgLmgxOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDtcbiAgICB9XG5cbiAgICAuYmxvZy10ZWFzZXJzIC5oMTphZnRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgfVxuXG4gICAgLmNpcmNsZS10aXRsZS5iaWctY2lyY2xlIGgxOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTNweDtcbiAgICB9XG5cbiAgICAudGhlLXdvbWFuLWJlaGluZC12aXZhZ2UgaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuXG4gICAgLnRoZS13b21hbi1iZWhpbmQtdml2YWdlIGgxOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDtcbiAgICB9XG5cbiAgICAudGhlLXdvbWFuLWJlaGluZC12aXZhZ2UtdGVhc2VyIC5oMTphZnRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE5cHg7XG4gICAgfVxuXG4gICAgLnRoaXMtaXMtdml2YWdlIC5oMTphZnRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE5cHg7XG4gICAgfVxuXG4gICAgLndlLXdhbnQteW91IGgxOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG5cbiAgICAuYmxvZy1lbnRyeS1pbnRybyBoMTphZnRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtdXNhZ2UtdGV4dCAuaDE6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyM3B4O1xuICAgIH1cbn0iLCJAaW1wb3J0IHVybCguLi8uLi92YXJpYWJsZXMuY3NzKTtcblxuLyogLS0tIEZsZXhib3ggLS0tICovXG5cbi8qIFNpbXBsZSBhdXRvbWF0aWMgaW5saW5lIGZsZXhib3ggZ3JpZCBsYXlvdXQgKi9cbi5vLWZsZXgsIC5vLWZsZXgtaW5saW5lIHsgZGlzcGxheTogZmxleDsgfVxuXG4vKiBCb3ggd2lkdGggKi9cbi5vLWZsZXggPiAqIHsgZmxleDogMTsgfVxuXG4uby1mbGV4ID4gLmlzLWJveC0yeCB7IGZsZXg6IDI7IH1cbi5vLWZsZXggPiAuaXMtYm94LTN4IHsgZmxleDogMzsgfVxuLm8tZmxleCA+IC5pcy1ib3gtNHggeyBmbGV4OiA0OyB9XG5cbi8qIENlbnRlcmVkIGhvcml6b250YWxseSBhbmQgdmVydGljYWxseSAqL1xuLm8tZmxleC1taWRkbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuW2NsYXNzKj1cIm8tZmxleFwiXS5pcy1taWRkbGUgeyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5vLWZsZXgtbWlkZGxlID4gKiB7XG4gICAgLyogSUUxMSBmaXggKi9cbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qIFNwYWNlIGJldHdlZW4gYm94ZXMgKi9cbi5vLWZsZXgtc3BhY2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi8qIE1vZGlmaWVycyAqL1xuW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtZ3V0dGVyIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLXdpZHRoKSAvIC0yKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tbGF5b3V0LWd1dHRlci13aWR0aCkgLyAtMik7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlciA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLXdpZHRoKSAvIDIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tbGF5b3V0LWd1dHRlci13aWR0aCkgLyAyKTtcbn1cblxuW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtZ3V0dGVyOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLWhlaWdodCkgKiAtMSk7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlci5oYXMtYmlnLXZlcnRpY2FsLW1hcmdpbjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbGF5b3V0LWd1dHRlci1oZWlnaHQpICogLTEuNSk7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlcjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikgPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1sYXlvdXQtZ3V0dGVyLWhlaWdodCk7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlci5oYXMtYmlnLXZlcnRpY2FsLW1hcmdpbjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikgPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItYmlnLWhlaWdodCkgKiAxLjUpO1xufVxuXG4vKiBNZWRpdW0gZ3V0dGVyICovXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1tZWRpdW0tZ3V0dGVyIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLW1lZGl1bS13aWR0aCkgLyAtMik7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItbWVkaXVtLXdpZHRoKSAvIC0yKTtcbn1cblxuW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtbWVkaXVtLWd1dHRlciA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLW1lZGl1bS13aWR0aCkgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItbWVkaXVtLXdpZHRoKSAvIDIpO1xufVxuXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1tZWRpdW0tZ3V0dGVyOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLW1lZGl1bS1oZWlnaHQpICogLTEpO1xufVxuXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1tZWRpdW0tZ3V0dGVyLmhhcy1iaWctdmVydGljYWwtbWFyZ2luOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLW1lZGl1bS1oZWlnaHQpICogLTEuNSk7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLW1lZGl1bS1ndXR0ZXI6bm90KC5uby12ZXJ0aWNhbC1tYXJnaW4pID4gKiB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbGF5b3V0LWd1dHRlci1tZWRpdW0taGVpZ2h0KTtcbn1cblxuW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtbWVkaXVtLWd1dHRlci5oYXMtYmlnLXZlcnRpY2FsLW1hcmdpbjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikgPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItbWVkaXVtLWhlaWdodCkgKiAxLjUpO1xufVxuXG4vKiBCaWcgZ3V0dGVyICovXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1iaWctZ3V0dGVyIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLWJpZy13aWR0aCkgLyAtMik7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItYmlnLXdpZHRoKSAvIC0yKTtcbn1cblxuW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtYmlnLWd1dHRlciA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLWJpZy13aWR0aCkgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItYmlnLXdpZHRoKSAvIDIpO1xufVxuXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1iaWctZ3V0dGVyOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLWJpZy1oZWlnaHQpICogLTEpO1xufVxuXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1iaWctZ3V0dGVyLmhhcy1iaWctdmVydGljYWwtbWFyZ2luOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLWJpZy1oZWlnaHQpICogLTEuNSk7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWJpZy1ndXR0ZXI6bm90KC5uby12ZXJ0aWNhbC1tYXJnaW4pID4gKiB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbGF5b3V0LWd1dHRlci1iaWctaGVpZ2h0KTtcbn1cblxuW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtYmlnLWd1dHRlci5oYXMtYmlnLXZlcnRpY2FsLW1hcmdpbjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikgPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItYmlnLWhlaWdodCkgKiAxLjUpO1xufVxuXG4vKiBCaWdnZXIgZ3V0dGVyICovXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1iaWdnZXItZ3V0dGVyIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1iaWdnZXItZ3V0dGVyKSAvIC0yKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tYmlnZ2VyLWd1dHRlcikgLyAtMik7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWJpZ2dlci1ndXR0ZXIgPiAqIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYmlnZ2VyLWd1dHRlcikgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWJpZ2dlci1ndXR0ZXIpIC8gMik7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWJpZ2dlci1ndXR0ZXI6bm90KC5uby12ZXJ0aWNhbC1tYXJnaW4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWJpZ2dlci1ndXR0ZXIpICogLTEpO1xufVxuXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1iaWdnZXItZ3V0dGVyLmhhcy1iaWctdmVydGljYWwtbWFyZ2luOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1iaWdnZXItZ3V0dGVyKSAqIC0xLjUpO1xufVxuXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1iaWdnZXItZ3V0dGVyOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSA+ICoge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWJpZ2dlci1ndXR0ZXIpO1xufVxuXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1iaWdnZXItZ3V0dGVyLmhhcy1iaWctdmVydGljYWwtbWFyZ2luOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSA+ICoge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tYmlnZ2VyLWd1dHRlcikgKiAxLjUpO1xufVxuXG5bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1ndXR0ZXIgPiAuaGFzLWd1dHRlciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaXMtbXVsdGlsaW5lIHsgZmxleC13cmFwOiB3cmFwOyB9XG5cbkBtZWRpYSAoLS1mb3ItbGcpIHtcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdLmlzLW11bHRpbGluZS1sZyB7IGZsZXgtd3JhcDogd3JhcDsgfVxufVxuXG5AbWVkaWEgKC0tZm9yLW1kKSB7XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXS5pcy1tdWx0aWxpbmUtbWQgeyBmbGV4LXdyYXA6IHdyYXA7IH1cbn1cblxuQG1lZGlhICgtLWZvci1sZy1kb3duKSB7XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtZ3V0dGVyLWxnLWRvd24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLXdpZHRoKSAvIC0yKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItd2lkdGgpIC8gLTIpO1xuICAgIH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlci1sZy1kb3duID4gKiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLXdpZHRoKSAvIDIpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItd2lkdGgpIC8gMik7XG4gICAgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtZ3V0dGVyLWxnLWRvd246bm90KC5uby12ZXJ0aWNhbC1tYXJnaW4pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLWhlaWdodCkgKiAtMSk7XG4gICAgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtZ3V0dGVyLWxnLWRvd24uaGFzLWJpZy12ZXJ0aWNhbC1tYXJnaW46bm90KC5uby12ZXJ0aWNhbC1tYXJnaW4pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1sYXlvdXQtZ3V0dGVyLWhlaWdodCkgKiAtMS41KTtcbiAgICB9XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1ndXR0ZXItbGctZG93bjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikgPiAqIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbGF5b3V0LWd1dHRlci1oZWlnaHQpO1xuICAgIH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlci1sZy1kb3duLmhhcy1iaWctdmVydGljYWwtbWFyZ2luOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSA+ICoge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItYmlnLWhlaWdodCkgKiAxLjUpO1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1tZC1kb3duKSB7XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtbm8tZ3V0dGVyLW1kLWRvd24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLW5vLWd1dHRlci1tZC1kb3duID4gKiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdLm5vLXZlcnRpY2FsLW1hcmdpbi1tZC1kb3duLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0ubm8tdmVydGljYWwtbWFyZ2luLW1kLWRvd24gPiAqLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl1bY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1iaWdnZXItZ3V0dGVyOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKS5uby12ZXJ0aWNhbC1tYXJnaW4tbWQtZG93bixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtYmlnZ2VyLWd1dHRlcjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikubm8tdmVydGljYWwtbWFyZ2luLW1kLWRvd24gPiAqIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1ndXR0ZXItbWQtZG93biB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItd2lkdGgpIC8gLTIpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tbGF5b3V0LWd1dHRlci13aWR0aCkgLyAtMik7XG4gICAgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtZ3V0dGVyLW1kLWRvd24gPiAqIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItd2lkdGgpIC8gMik7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tbGF5b3V0LWd1dHRlci13aWR0aCkgLyAyKTtcbiAgICB9XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1ndXR0ZXItbWQtZG93bjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItaGVpZ2h0KSAqIC0xKTtcbiAgICB9XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1ndXR0ZXItbWQtZG93bi5oYXMtYmlnLXZlcnRpY2FsLW1hcmdpbjpub3QoLm5vLXZlcnRpY2FsLW1hcmdpbikge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWxheW91dC1ndXR0ZXItaGVpZ2h0KSAqIC0xLjUpO1xuICAgIH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlci1tZC1kb3duOm5vdCgubm8tdmVydGljYWwtbWFyZ2luKSA+ICoge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1sYXlvdXQtZ3V0dGVyLWhlaWdodCk7XG4gICAgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXS5oYXMtZ3V0dGVyLW1kLWRvd24uaGFzLWJpZy12ZXJ0aWNhbC1tYXJnaW46bm90KC5uby12ZXJ0aWNhbC1tYXJnaW4pID4gKiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbGF5b3V0LWd1dHRlci1iaWctaGVpZ2h0KSAqIDEuNSk7XG4gICAgfVxufVxuXG5AbWVkaWEgKC0tZm9yLXNtLWRvd24pIHtcbiAgICAuby1mbGV4LXNtLWRvd24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdLmlzLW11bHRpbGluZS1zbS1kb3duIHsgZmxleC13cmFwOiB3cmFwOyB9XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uaXMtcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXS5pcy12ZXJ0aWNhbCB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbltjbGFzcyo9XCJvLWZsZXgtbWlkZGxlXCJdLmlzLXZlcnRpY2FsIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSAoLS1mb3Itc20tZG93bikge1xuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0uaXMtd3JhcC1yZXZlcnNlLXNtLWRvd24ge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZTtcbiAgICB9XG59XG5cbi5vLWZsZXguaGFzLXZlcnRpY2FsLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5vLWZsZXguaGFzLXZlcnRpY2FsLXBhZGRpbmcgPiBkaXZbY2xhc3NePVwiY2VsbC1cIl0ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIC0tLSBDb2x1bW4gd2lkdGhzIC0tLSAqL1xuXG4vKiBHcmlkIFN5c3RlbSBDZWxsICovXG5cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1ncm93IHsgZmxleDogMSAxIGF1dG87IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1zaHJpbmsgeyBmbGV4OiAxIDAgYXV0bzsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXRleHQgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YxLFxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjIsXG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mMyxcbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y0LFxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjUsXG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNm9mNixcbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTAwIHsgZmxleDogMCAxIDEwMCU7IH1cblxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjIgeyBmbGV4OiAwIDEgNTAlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMyB7IGZsZXg6IDAgMSAzMy4zMyU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2YzIHsgZmxleDogMCAxIDY2LjY2JTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjQgeyBmbGV4OiAwIDEgMjUlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNCB7IGZsZXg6IDAgMSA1MCU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y0IHsgZmxleDogMCAxIDc1JTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjUgeyBmbGV4OiAwIDEgMjAlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNSB7IGZsZXg6IDAgMSA0MCU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y1IHsgZmxleDogMCAxIDYwJTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTRvZjUgeyBmbGV4OiAwIDEgODAlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNiB7IGZsZXg6IDAgMSAxNi42NiU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y2IHsgZmxleDogMCAxIDMzLjMzJTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjYgeyBmbGV4OiAwIDEgNDkuOTklOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNiB7IGZsZXg6IDAgMSA2Ni42NiU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC01b2Y2IHsgZmxleDogMCAxIDgzLjMzJTsgfVxuXG4vKiBmb3IgdGFibGUgZGlzcGxheSAqL1xuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMCB7IGZsZXg6IDAgMSAxMCU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTUgeyBmbGV4OiAwIDEgMTUlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTIwIHsgZmxleDogMCAxIDIwJTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNSB7IGZsZXg6IDAgMSAyNSU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMzAgeyBmbGV4OiAwIDEgMzAlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTMzIHsgZmxleDogMCAxIDMzJTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00MCB7IGZsZXg6IDAgMSA0MCU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNDUgeyBmbGV4OiAwIDEgNDUlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTQ2IHsgZmxleDogMCAxIDQ2JTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00OCB7IGZsZXg6IDAgMSA0OCU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNTAgeyBmbGV4OiAwIDEgNTAlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTUyIHsgZmxleDogMCAxIDUyJTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC01NCB7IGZsZXg6IDAgMSA1NCU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNjAgeyBmbGV4OiAwIDEgNjAlOyB9XG5bY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTc1IHsgZmxleDogMCAxIDc1JTsgfVxuW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC04MCB7IGZsZXg6IDAgMSA4MCU7IH1cbltjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtOTAgeyBmbGV4OiAwIDEgOTAlOyB9XG5cbkBtZWRpYSAoLS1mb3ItbGcpIHtcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMS1sZyxcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mMi1sZyxcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mMy1sZyxcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNC1sZyxcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNW9mNS1sZyxcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNm9mNi1sZyxcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTEwMC1sZyB7IGZsZXg6IDAgMSAxMDAlOyB9XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMi1sZyB7IGZsZXg6IDAgMSA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMy1sZyB7IGZsZXg6IDAgMSAzMy4zMyU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mMy1sZyB7IGZsZXg6IDAgMSA2Ni42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNC1sZyB7IGZsZXg6IDAgMSAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNC1sZyB7IGZsZXg6IDAgMSA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNC1sZyB7IGZsZXg6IDAgMSA3NSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNS1sZyB7IGZsZXg6IDAgMSAyMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNS1sZyB7IGZsZXg6IDAgMSA0MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNS1sZyB7IGZsZXg6IDAgMSA2MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNS1sZyB7IGZsZXg6IDAgMSA4MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNi1sZyB7IGZsZXg6IDAgMSAxNi42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNi1sZyB7IGZsZXg6IDAgMSAzMy4zMyU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNi1sZyB7IGZsZXg6IDAgMSA0OS45OSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNi1sZyB7IGZsZXg6IDAgMSA2Ni42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNW9mNi1sZyB7IGZsZXg6IDAgMSA4My4zMyU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTAtbGcgeyBmbGV4OiAwIDEgMTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xNS1sZyB7IGZsZXg6IDAgMSAxNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTIwLWxnIHsgZmxleDogMCAxIDIwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMjUtbGcgeyBmbGV4OiAwIDEgMjUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0zMC1sZyB7IGZsZXg6IDAgMSAzMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTQwLWxnIHsgZmxleDogMCAxIDQwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNTAtbGcgeyBmbGV4OiAwIDEgNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC02MC1sZyB7IGZsZXg6IDAgMSA2MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTc1LWxnIHsgZmxleDogMCAxIDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtODAtbGcgeyBmbGV4OiAwIDEgODAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC05MC1sZyB7IGZsZXg6IDAgMSA5MCU7IH1cbn1cblxuQG1lZGlhICgtLWZvci1tZCkge1xuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YxLW1kLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2YyLW1kLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2YzLW1kLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y0LW1kLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC01b2Y1LW1kLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC02b2Y2LW1kLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTAwLW1kIHsgZmxleDogMCAxIDEwMCU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YyLW1kIHsgZmxleDogMCAxIDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YzLW1kIHsgZmxleDogMCAxIDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2YzLW1kIHsgZmxleDogMCAxIDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y0LW1kIHsgZmxleDogMCAxIDI1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y0LW1kIHsgZmxleDogMCAxIDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y0LW1kIHsgZmxleDogMCAxIDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y1LW1kIHsgZmxleDogMCAxIDIwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y1LW1kIHsgZmxleDogMCAxIDQwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y1LW1kIHsgZmxleDogMCAxIDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y1LW1kIHsgZmxleDogMCAxIDgwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y2LW1kIHsgZmxleDogMCAxIDE2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y2LW1kIHsgZmxleDogMCAxIDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y2LW1kIHsgZmxleDogMCAxIDQ5Ljk5JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y2LW1kIHsgZmxleDogMCAxIDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC01b2Y2LW1kIHsgZmxleDogMCAxIDgzLjMzJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMC1tZCB7IGZsZXg6IDAgMSAxMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTE1LW1kIHsgZmxleDogMCAxIDE1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMjAtbWQgeyBmbGV4OiAwIDEgMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNS1tZCB7IGZsZXg6IDAgMSAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTMwLW1kIHsgZmxleDogMCAxIDMwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNDAtbWQgeyBmbGV4OiAwIDEgNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC01MC1tZCB7IGZsZXg6IDAgMSA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTYwLW1kIHsgZmxleDogMCAxIDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNzUtbWQgeyBmbGV4OiAwIDEgNzUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC04MC1tZCB7IGZsZXg6IDAgMSA4MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTkwLW1kIHsgZmxleDogMCAxIDkwJTsgfVxufVxuXG5AbWVkaWEgKC0tZm9yLXNtLWRvd24pIHtcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMS1zbS1kb3duLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2YyLXNtLWRvd24sXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjMtc20tZG93bixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNC1zbS1kb3duLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC01b2Y1LXNtLWRvd24sXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTZvZjYtc20tZG93bixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTEwMC1zbS1kb3duIHsgZmxleDogMCAxIDEwMCU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YyLXNtLWRvd24geyBmbGV4OiAwIDEgNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjMtc20tZG93biB7IGZsZXg6IDAgMSAzMy4zMyU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mMy1zbS1kb3duIHsgZmxleDogMCAxIDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y0LXNtLWRvd24geyBmbGV4OiAwIDEgMjUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjQtc20tZG93biB7IGZsZXg6IDAgMSA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNC1zbS1kb3duIHsgZmxleDogMCAxIDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y1LXNtLWRvd24geyBmbGV4OiAwIDEgMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjUtc20tZG93biB7IGZsZXg6IDAgMSA0MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNS1zbS1kb3duIHsgZmxleDogMCAxIDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y1LXNtLWRvd24geyBmbGV4OiAwIDEgODAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjYtc20tZG93biB7IGZsZXg6IDAgMSAxNi42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNi1zbS1kb3duIHsgZmxleDogMCAxIDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y2LXNtLWRvd24geyBmbGV4OiAwIDEgNDkuOTklOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTRvZjYtc20tZG93biB7IGZsZXg6IDAgMSA2Ni42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNW9mNi1zbS1kb3duIHsgZmxleDogMCAxIDgzLjMzJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMC1zbS1kb3duIHsgZmxleDogMCAxIDEwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTUtc20tZG93biB7IGZsZXg6IDAgMSAxNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTIwLXNtLWRvd24geyBmbGV4OiAwIDEgMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNS1zbS1kb3duIHsgZmxleDogMCAxIDI1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMzAtc20tZG93biB7IGZsZXg6IDAgMSAzMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTQwLXNtLWRvd24geyBmbGV4OiAwIDEgNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC01MC1zbS1kb3duIHsgZmxleDogMCAxIDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNjAtc20tZG93biB7IGZsZXg6IDAgMSA2MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTc1LXNtLWRvd24geyBmbGV4OiAwIDEgNzUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC04MC1zbS1kb3duIHsgZmxleDogMCAxIDgwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtOTAtc20tZG93biB7IGZsZXg6IDAgMSA5MCU7IH1cbn1cblxuQG1lZGlhICgtLWZvci14cykge1xuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YxLXhzIHsgZmxleDogMCAxIDEwMCU7IH1cbn1cblxuQG1lZGlhICgtLWZvci1zdGFuZGFyZC1uYXYpIHtcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMS1zdGFuZGFyZC1uYXYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjItc3RhbmRhcmQtbmF2LFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2YzLXN0YW5kYXJkLW5hdixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNC1zdGFuZGFyZC1uYXYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjUtc3RhbmRhcmQtbmF2LFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC02b2Y2LXN0YW5kYXJkLW5hdixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTEwMC1zdGFuZGFyZC1uYXYgeyBmbGV4OiAwIDEgMTAwJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjItc3RhbmRhcmQtbmF2IHsgZmxleDogMCAxIDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YzLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSAzMy4zMyU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mMy1zdGFuZGFyZC1uYXYgeyBmbGV4OiAwIDEgNjYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjQtc3RhbmRhcmQtbmF2IHsgZmxleDogMCAxIDI1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y0LXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNC1zdGFuZGFyZC1uYXYgeyBmbGV4OiAwIDEgNzUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjUtc3RhbmRhcmQtbmF2IHsgZmxleDogMCAxIDIwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y1LXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA0MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNS1zdGFuZGFyZC1uYXYgeyBmbGV4OiAwIDEgNjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTRvZjUtc3RhbmRhcmQtbmF2IHsgZmxleDogMCAxIDgwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y2LXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSAxNi42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNi1zdGFuZGFyZC1uYXYgeyBmbGV4OiAwIDEgMzMuMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjYtc3RhbmRhcmQtbmF2IHsgZmxleDogMCAxIDQ5Ljk5JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y2LXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA2Ni42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNW9mNi1zdGFuZGFyZC1uYXYgeyBmbGV4OiAwIDEgODMuMzMlOyB9XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTEwLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSAxMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTE1LXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSAxNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTIwLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSAyMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTI1LXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTMwLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSAzMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTQwLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA0MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTUwLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTYwLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA2MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTc1LXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA3NSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTgwLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA4MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTkwLXN0YW5kYXJkLW5hdiB7IGZsZXg6IDAgMSA5MCU7IH1cbn1cblxuQG1lZGlhICgtLWZvci1idXJnZXItbmF2KSB7XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjEtYnVyZ2VyLW5hdixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mMi1idXJnZXItbmF2LFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2YzLWJ1cmdlci1uYXYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTRvZjQtYnVyZ2VyLW5hdixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNW9mNS1idXJnZXItbmF2LFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC02b2Y2LWJ1cmdlci1uYXYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMDAtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSAxMDAlOyB9XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMi1idXJnZXItbmF2IHsgZmxleDogMCAxIDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YzLWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgMzMuMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjMtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSA2Ni42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNC1idXJnZXItbmF2IHsgZmxleDogMCAxIDI1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y0LWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjQtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSA3NSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNS1idXJnZXItbmF2IHsgZmxleDogMCAxIDIwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y1LWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjUtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSA2MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNS1idXJnZXItbmF2IHsgZmxleDogMCAxIDgwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y2LWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgMTYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjYtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSAzMy4zMyU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNi1idXJnZXItbmF2IHsgZmxleDogMCAxIDQ5Ljk5JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y2LWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgNjYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjYtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSA4My4zMyU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTAtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSAxMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTE1LWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgMTUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yMC1idXJnZXItbmF2IHsgZmxleDogMCAxIDIwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMjUtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTMwLWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgMzAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00MC1idXJnZXItbmF2IHsgZmxleDogMCAxIDQwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNTAtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTYwLWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgNjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC03NS1idXJnZXItbmF2IHsgZmxleDogMCAxIDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtODAtYnVyZ2VyLW5hdiB7IGZsZXg6IDAgMSA4MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTkwLWJ1cmdlci1uYXYgeyBmbGV4OiAwIDEgOTAlOyB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gICAgLnBhZ2UgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjEtcHJpbnQgeyBmbGV4OiAwIDEgMTAwJTsgfVxuICAgIC5wYWdlIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YzLXByaW50IHsgZmxleDogMCAxIDMzLjMzJTsgfVxuICAgIC5wYWdlIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2YzLXByaW50IHsgZmxleDogMCAxIDY2LjY2JTsgfVxufVxuXG4vKiBJRTEwKyBmbGV4IGZpeDogKi9cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gW2NsYXNzKj1cImNlbGwtXCJdIHsgZmxleDogMCAhaW1wb3J0YW50OyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjEsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjIsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjMsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTRvZjQsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjUsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTZvZjYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMDAgeyBtaW4td2lkdGg6IDEwMCU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YyIHsgbWluLXdpZHRoOiA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMyB7IG1pbi13aWR0aDogMzMuMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjMgeyBtaW4td2lkdGg6IDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y0IHsgbWluLXdpZHRoOiAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNCB7IG1pbi13aWR0aDogNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjQgeyBtaW4td2lkdGg6IDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y1IHsgbWluLXdpZHRoOiAyMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNSB7IG1pbi13aWR0aDogNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjUgeyBtaW4td2lkdGg6IDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y1IHsgbWluLXdpZHRoOiA4MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNiB7IG1pbi13aWR0aDogMTYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjYgeyBtaW4td2lkdGg6IDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y2IHsgbWluLXdpZHRoOiA0OS45OSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNiB7IG1pbi13aWR0aDogNjYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjYgeyBtaW4td2lkdGg6IDgzLjMzJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMCB7IG1pbi13aWR0aDogMTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xNSB7IG1pbi13aWR0aDogMTUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yMCB7IG1pbi13aWR0aDogMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNSB7IG1pbi13aWR0aDogMjUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0zMCB7IG1pbi13aWR0aDogMzAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0zMyB7IG1pbi13aWR0aDogMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00MCB7IG1pbi13aWR0aDogNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC01MCB7IG1pbi13aWR0aDogNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC02MCB7IG1pbi13aWR0aDogNjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC03NSB7IG1pbi13aWR0aDogNzUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC04MCB7IG1pbi13aWR0aDogODAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC05MCB7IG1pbi13aWR0aDogOTAlOyB9XG59XG5cbkBtZWRpYSAoLS1mb3ItbGcpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtLWZvci1sZykgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjEtbGcsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjItbGcsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjMtbGcsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTRvZjQtbGcsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjUtbGcsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTZvZjYtbGcsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMDAtbGcgeyBtaW4td2lkdGg6IDEwMCU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YyLWxnIHsgbWluLXdpZHRoOiA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMy1sZyB7IG1pbi13aWR0aDogMzMuMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjMtbGcgeyBtaW4td2lkdGg6IDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y0LWxnIHsgbWluLXdpZHRoOiAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNC1sZyB7IG1pbi13aWR0aDogNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjQtbGcgeyBtaW4td2lkdGg6IDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y1LWxnIHsgbWluLXdpZHRoOiAyMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNS1sZyB7IG1pbi13aWR0aDogNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjUtbGcgeyBtaW4td2lkdGg6IDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y1LWxnIHsgbWluLXdpZHRoOiA4MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNi1sZyB7IG1pbi13aWR0aDogMTYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjYtbGcgeyBtaW4td2lkdGg6IDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y2LWxnIHsgbWluLXdpZHRoOiA0OS45OSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNi1sZyB7IG1pbi13aWR0aDogNjYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjYtbGcgeyBtaW4td2lkdGg6IDgzLjMzJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMC1sZyB7IG1pbi13aWR0aDogMTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xNS1sZyB7IG1pbi13aWR0aDogMTUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yMC1sZyB7IG1pbi13aWR0aDogMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNS1sZyB7IG1pbi13aWR0aDogMjUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0zMC1sZyB7IG1pbi13aWR0aDogMzAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0zMy1sZyB7IG1pbi13aWR0aDogMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00MC1sZyB7IG1pbi13aWR0aDogNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC01MC1sZyB7IG1pbi13aWR0aDogNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC02MC1sZyB7IG1pbi13aWR0aDogNjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC03NS1sZyB7IG1pbi13aWR0aDogNzUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC04MC1sZyB7IG1pbi13aWR0aDogODAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC05MC1sZyB7IG1pbi13aWR0aDogOTAlOyB9XG59XG5cbkBtZWRpYSAoLS1mb3ItbWQpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtLWZvci1tZCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjEtbWQsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjItbWQsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjMtbWQsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTRvZjQtbWQsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjUtbWQsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTZvZjYtbWQsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMDAtbWQgeyBtaW4td2lkdGg6IDEwMCU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YyLW1kIHsgbWluLXdpZHRoOiA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMy1tZCB7IG1pbi13aWR0aDogMzMuMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjMtbWQgeyBtaW4td2lkdGg6IDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y0LW1kIHsgbWluLXdpZHRoOiAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNC1tZCB7IG1pbi13aWR0aDogNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjQtbWQgeyBtaW4td2lkdGg6IDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y1LW1kIHsgbWluLXdpZHRoOiAyMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNS1tZCB7IG1pbi13aWR0aDogNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTNvZjUtbWQgeyBtaW4td2lkdGg6IDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y1LW1kIHsgbWluLXdpZHRoOiA4MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mNi1tZCB7IG1pbi13aWR0aDogMTYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjYtbWQgeyBtaW4td2lkdGg6IDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y2LW1kIHsgbWluLXdpZHRoOiA0OS45OSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNi1tZCB7IG1pbi13aWR0aDogNjYuNjYlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjYtbWQgeyBtaW4td2lkdGg6IDgzLjMzJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMC1tZCB7IG1pbi13aWR0aDogMTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xNS1tZCB7IG1pbi13aWR0aDogMTUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yMC1tZCB7IG1pbi13aWR0aDogMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNS1tZCB7IG1pbi13aWR0aDogMjUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0zMC1tZCB7IG1pbi13aWR0aDogMzAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0zMy1tZCB7IG1pbi13aWR0aDogMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00MC1tZCB7IG1pbi13aWR0aDogNDAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC01MC1tZCB7IG1pbi13aWR0aDogNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC02MC1tZCB7IG1pbi13aWR0aDogNjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC03NS1tZCB7IG1pbi13aWR0aDogNzUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC04MC1tZCB7IG1pbi13aWR0aDogODAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC05MC1tZCB7IG1pbi13aWR0aDogOTAlOyB9XG59XG5cbkBtZWRpYSAoLS1mb3Itc20tZG93bikgYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC0tZm9yLXNtLWRvd24pIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YxLXNtLWRvd24sXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjItc20tZG93bixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mMy1zbS1kb3duLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y0LXNtLWRvd24sXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjUtc20tZG93bixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNm9mNi1zbS1kb3duLFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTAwLXNtLWRvd24geyBtaW4td2lkdGg6IDEwMCU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YyLXNtLWRvd24geyBtaW4td2lkdGg6IDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YzLXNtLWRvd24geyBtaW4td2lkdGg6IDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2YzLXNtLWRvd24geyBtaW4td2lkdGg6IDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y0LXNtLWRvd24geyBtaW4td2lkdGg6IDI1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y0LXNtLWRvd24geyBtaW4td2lkdGg6IDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y0LXNtLWRvd24geyBtaW4td2lkdGg6IDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y1LXNtLWRvd24geyBtaW4td2lkdGg6IDIwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y1LXNtLWRvd24geyBtaW4td2lkdGg6IDQwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y1LXNtLWRvd24geyBtaW4td2lkdGg6IDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y1LXNtLWRvd24geyBtaW4td2lkdGg6IDgwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y2LXNtLWRvd24geyBtaW4td2lkdGg6IDE2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y2LXNtLWRvd24geyBtaW4td2lkdGg6IDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y2LXNtLWRvd24geyBtaW4td2lkdGg6IDQ5Ljk5JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y2LXNtLWRvd24geyBtaW4td2lkdGg6IDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC01b2Y2LXNtLWRvd24geyBtaW4td2lkdGg6IDgzLjMzJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMC1zbS1kb3duIHsgbWluLXdpZHRoOiAxMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTE1LXNtLWRvd24geyBtaW4td2lkdGg6IDE1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMjAtc20tZG93biB7IG1pbi13aWR0aDogMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNS1zbS1kb3duIHsgbWluLXdpZHRoOiAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTMwLXNtLWRvd24geyBtaW4td2lkdGg6IDMwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMzMtc20tZG93biB7IG1pbi13aWR0aDogMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00MC1zbS1kb3duIHsgbWluLXdpZHRoOiA0MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTUwLXNtLWRvd24geyBtaW4td2lkdGg6IDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNjAtc20tZG93biB7IG1pbi13aWR0aDogNjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC03NS1zbS1kb3duIHsgbWluLXdpZHRoOiA3NSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTgwLXNtLWRvd24geyBtaW4td2lkdGg6IDgwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtOTAtc20tZG93biB7IG1pbi13aWR0aDogOTAlOyB9XG59XG5cbkBtZWRpYSAoLS1mb3Itc3RhbmRhcmQtbmF2KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLS1mb3Itc3RhbmRhcmQtbmF2KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG5cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMS1zdGFuZGFyZC1uYXYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjItc3RhbmRhcmQtbmF2LFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2YzLXN0YW5kYXJkLW5hdixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNG9mNC1zdGFuZGFyZC1uYXYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjUtc3RhbmRhcmQtbmF2LFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC02b2Y2LXN0YW5kYXJkLW5hdixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTEwMC1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDEwMCU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YyLXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogNTAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjMtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiAzMy4zMyU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mMy1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y0LXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogMjUlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjQtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNC1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y1LXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjUtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiA0MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mNS1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y1LXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogODAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTFvZjYtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiAxNi42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mNi1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y2LXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogNDkuOTklOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTRvZjYtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiA2Ni42NiU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNW9mNi1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDgzLjMzJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMC1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDEwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTUtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiAxNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTIwLXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNS1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDI1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMzAtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiAzMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTMzLXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00MC1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDQwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNTAtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiA1MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTYwLXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogNjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC03NS1zdGFuZGFyZC1uYXYgeyBtaW4td2lkdGg6IDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtODAtc3RhbmRhcmQtbmF2IHsgbWluLXdpZHRoOiA4MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTkwLXN0YW5kYXJkLW5hdiB7IG1pbi13aWR0aDogOTAlOyB9XG59XG5cbkBtZWRpYSAoLS1mb3ItYnVyZ2VyLW5hdikgYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC0tZm9yLWJ1cmdlci1uYXYpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YxLWJ1cmdlci1uYXYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTJvZjItYnVyZ2VyLW5hdixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtM29mMy1idXJnZXItbmF2LFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y0LWJ1cmdlci1uYXYsXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLTVvZjUtYnVyZ2VyLW5hdixcbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtNm9mNi1idXJnZXItbmF2LFxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMTAwLWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDEwMCU7IH1cblxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YyLWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YzLWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2YzLWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y0LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDI1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y0LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y0LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDc1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y1LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDIwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y1LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDQwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y1LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDYwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y1LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDgwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2Y2LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDE2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0yb2Y2LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDMzLjMzJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0zb2Y2LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDQ5Ljk5JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC00b2Y2LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDY2LjY2JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC01b2Y2LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDgzLjMzJTsgfVxuXG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0xMC1idXJnZXItbmF2IHsgbWluLXdpZHRoOiAxMCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTE1LWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDE1JTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMjAtYnVyZ2VyLW5hdiB7IG1pbi13aWR0aDogMjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC0yNS1idXJnZXItbmF2IHsgbWluLXdpZHRoOiAyNSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTMwLWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDMwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtMzMtYnVyZ2VyLW5hdiB7IG1pbi13aWR0aDogMzMlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC00MC1idXJnZXItbmF2IHsgbWluLXdpZHRoOiA0MCU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTUwLWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDUwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtNjAtYnVyZ2VyLW5hdiB7IG1pbi13aWR0aDogNjAlOyB9XG4gICAgW2NsYXNzKj1cIm8tZmxleFwiXSA+IC5jZWxsLXBjdC03NS1idXJnZXItbmF2IHsgbWluLXdpZHRoOiA3NSU7IH1cbiAgICBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtcGN0LTgwLWJ1cmdlci1uYXYgeyBtaW4td2lkdGg6IDgwJTsgfVxuICAgIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC1wY3QtOTAtYnVyZ2VyLW5hdiB7IG1pbi13aWR0aDogOTAlOyB9XG59XG5cbkBtZWRpYSBwcmludCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCBwcmludCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG5cbiAgICAucGFnZSBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMW9mMS1wcmludCB7IG1pbi13aWR0aDogMTAwJTsgfVxuICAgIC5wYWdlIFtjbGFzcyo9XCJvLWZsZXhcIl0gPiAuY2VsbC0xb2YzLXByaW50IHsgbWluLXdpZHRoOiAzMy4zMyU7IH1cbiAgICAucGFnZSBbY2xhc3MqPVwiby1mbGV4XCJdID4gLmNlbGwtMm9mMy1wcmludCB7IG1pbi13aWR0aDogNjYuNjYlOyB9XG59XG4iLCJAaW1wb3J0IHVybCguLi8uLi92YXJpYWJsZXMuY3NzKTtcblxuOnJvb3Qge1xuICAgIC8qIEhlYWRlciAqL1xuICAgIC0taGVhZGVyLWNvbnRlbnQtaGVpZ2h0OiA0NHB4O1xuICAgIC0taGVhZGVyLW1hcmdpbi1oZWlnaHQ6IDJyZW07XG4gICAgLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXI6IDMuNXJlbTtcbiAgICAtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlci1zbTogMS41cmVtO1xuXG4gICAgLyogQnVyZ2VyICovXG4gICAgLS1idXJnZXItcGxhY2Vob2xkZXItd2lkdGg6IDMxcHg7XG4gICAgLS1idXJnZXItcGxhY2Vob2xkZXItaGVpZ2h0OiAxNXB4O1xuICAgIC0tYnVyZ2VyLXdpZHRoOiAyOXB4O1xuICAgIC0tYnVyZ2VyLWhlaWdodDogMTVweDtcbiAgICAtLWJ1cmdlci1kaWFnb25hbDogMjBweDsgLyogc3FydCgtLWJ1cmdlci13aWR0aF4yICsgLS1idXJnZXItaGVpZ2h0XjIpICovXG4gICAgLS1idXJnZXItYmFyLWhlaWdodDogMnB4O1xuICAgIC0tYnVyZ2VyLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIC0tYnVyZ2VyLWNvbG9yLWNsb3NlZDogaW5oZXJpdDtcblxuICAgIC0taW9zLW1lbnViYXItaGVpZ2h0OiA1cmVtO1xuXG4gICAgLS1mbHlvdXQtYmdjb2xvcjogdmFyKC0tZGFyayk7XG5cbiAgICAtLWRlZmF1bHQtbmF2aWdhdGlvbi10aW1pbmc6IDAuNXM7XG59XG5cbkBtZWRpYSAoLS1mb3ItYnVyZ2VyLW5hdikge1xuICAgIC5wYWdlLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgfVxuXG4gICAgLnBhZ2UtbG9nbyB7XG4gICAgICAgIHdpZHRoOiA5NnB4O1xuICAgIH1cblxuICAgIC5oaWRkZW4taW4tbW9iaWxlLW5hdiB7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyAwLjVzO1xuICAgIH1cblxuICAgIC5qcy1vcGVuICAuaGlkZGVuLWluLW1vYmlsZS1uYXYge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzO1xuICAgIH1cbn1cblxuLnBhZ2UtbG9nbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ucGFnZS1sb2dvIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLWRlZmF1bHQtdGltaW5nKSBlYXNlO1xufVxuXG4uLWhvbWUgI2xvZ28td2hpdGUsXG4uLWJsb2dPdmVydmlldyAjbG9nby13aGl0ZSxcbi5vLXZpZXc6bm90KC4taG9tZSk6bm90KC4tYmxvZ092ZXJ2aWV3KSAjbG9nby1ibGFjayxcbi4taG9tZSAucGFnZS1oZWFkZXI6bm90KC5qcy1iYWNrZ3JvdW5kKSAuZmx5b3V0Om5vdCguanMtb3BlbikgKyAucGFnZS1uYXYgLnBhZ2UtbG9nbzpob3ZlciAjbG9nby1ibGFjayxcbi4taG9tZSAucGFnZS1oZWFkZXI6bm90KC5qcy1iYWNrZ3JvdW5kKSAuZmx5b3V0Om5vdCguanMtb3BlbikgKyAucGFnZS1uYXYgLnBhZ2UtbG9nbzpmb2N1cyAjbG9nby1ibGFjayxcbi5wYWdlLWxvZ286aG92ZXIgI2xvZ28tYmxhbmssXG4ucGFnZS1sb2dvOmZvY3VzICNsb2dvLWJsYW5rLFxuLmpzLW9wZW4gKyAucGFnZS1uYXYgLnBhZ2UtbG9nbyAjbG9nby13aGl0ZSB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnBhZ2UtbG9nbzpob3ZlciAjbG9nby13aGl0ZSxcbi5wYWdlLWxvZ286Zm9jdXMgI2xvZ28td2hpdGUsXG4uby12aWV3Om5vdCguLWhvbWUpOm5vdCguLWJsb2dPdmVydmlldykgLnBhZ2UtbG9nbzpob3ZlciAjbG9nby1ibGFjayxcbi5vLXZpZXc6bm90KC4taG9tZSk6bm90KC4tYmxvZ092ZXJ2aWV3KSAucGFnZS1sb2dvOmZvY3VzICNsb2dvLWJsYWNrLFxuLmpzLW9wZW4gKyAucGFnZS1uYXYgLnBhZ2UtbG9nbyAjbG9nby1ibGFjayxcbi5qcy1vcGVuICsgLnBhZ2UtbmF2IC5wYWdlLWxvZ286aG92ZXIgI2xvZ28td2hpdGUsXG4uanMtb3BlbiArIC5wYWdlLW5hdiAucGFnZS1sb2dvOmZvY3VzICNsb2dvLXdoaXRlIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ucGFnZS1sb2dvIHtcbiAgICB3aWR0aDogOTZweDtcbiAgICBoZWlnaHQ6IDM5cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTBweDtcbn1cblxuQG1lZGlhICgtLWZvci1sZy11cCkge1xuICAgIC5wYWdlLWxvZ28ge1xuICAgICAgICB3aWR0aDogMTcwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIH1cbn1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycywgYmFja2dyb3VuZC1jb2xvciAuM3M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xufVxuXG4ucGFnZS1oZWFkZXIuanMtdHJhbnNsYXRlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMsIGJhY2tncm91bmQtY29sb3IgLjNzIC4ycztcbn1cblxuLnBhZ2UtaGVhZGVyLmpzLWJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbn1cblxuLm8tc2VjdGlvbi5oZWFkZXItc3BhY2luZyA+IC5vLWdyb3VwIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQpO1xuICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG59XG5cbkBtZWRpYSAoLS1mb3ItbGctdXApIHtcbiAgICAuaGVhZGVyLXNwYWNpbmcgLm1haW4tbmF2aWdhdGlvbjpub3QoLnNvY2lhbC1tZWRpYS1saXN0KSBbY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1ndXR0ZXIgPiAqIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjNyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNHJlbTtcbiAgICB9XG5cbiAgICAuaGVhZGVyLXNwYWNpbmcgLm1haW4tbmF2aWdhdGlvbjpub3QoLnNvY2lhbC1tZWRpYS1saXN0KSBbY2xhc3MqPVwiby1mbGV4XCJdLmhhcy1ndXR0ZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEuNHJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMS40cmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDExNDVweCkge1xuICAgIC5oZWFkZXItc3BhY2luZyAubWFpbi1uYXZpZ2F0aW9uOm5vdCguc29jaWFsLW1lZGlhLWxpc3QpIFtjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlciA+ICoge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuNnJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi42cmVtO1xuICAgIH1cblxuICAgIC5oZWFkZXItc3BhY2luZyAubWFpbi1uYXZpZ2F0aW9uOm5vdCguc29jaWFsLW1lZGlhLWxpc3QpIFtjbGFzcyo9XCJvLWZsZXhcIl0uaGFzLWd1dHRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMi42cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yLjZyZW07XG4gICAgfVxufVxuXG5AbWVkaWEgKC0tZm9yLWJ1cmdlci1uYXYpIHtcbiAgICAuby1zZWN0aW9uLmhlYWRlci1zcGFjaW5nID4gLm8tZ3JvdXAge1xuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyLXNtKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICB9XG5cbiAgICAucGFnZS1oZWFkZXItc2VudGluZWwge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlcikgKyB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXIpICsgdmFyKC0taGVhZGVyLWNvbnRlbnQtaGVpZ2h0KSApO1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSB7XG4gICAgLm8tc2VjdGlvbi5oZWFkZXItc3BhY2luZyA+IC5vLWdyb3VwIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlci1zbSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgfVxuXG4gICAgLnBhZ2UtaGVhZGVyLXNlbnRpbmVsIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXItc20pICsgdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyLXNtKSArIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgKTtcbiAgICB9XG59XG5cbkBtZWRpYSAoLS1mb3ItbGctdXApIHtcbiAgICAucGFnZS1uYXYgLm1haW4tbmF2aWdhdGlvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNjdweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICB9XG5cbiAgICAuanMtb3BlbiArIC5wYWdlLW5hdiAubWFpbi1uYXZpZ2F0aW9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0OXB4O1xuICAgIH1cblxuICAgIC5qcy1vcGVuICsgLnBhZ2UtbmF2IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgICB9XG59XG5cbi5wYWdlLW5hdiB7XG4gICAgei1pbmRleDogMTAwMCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gICAgLnBhZ2UtbmF2IC5pcy1sYXJnZSB7XG4gICAgICAgIG1heC13aWR0aDogMTczMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vKiBmbHlvdXQgKi9cblxuLypAbWVkaWEgKC0tZm9yLWJ1cmdlci1uYXYpIHsqL1xuICAgIC5mbHlvdXQge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogLTEwMHZoO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWZseW91dC1iZ2NvbG9yKTtcbiAgICB9XG5cbiAgICAuZmx5b3V0LmpzLWFuaW1hdGUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4yNXMgbGluZWFyIDAuMjVzO1xuICAgIH1cblxuICAgIC5mbHlvdXQuanMtb3BlbiB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjI1cyBsaW5lYXIgMHM7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbi8qfSovXG5cbi5mbHlvdXQtc2Nyb2xsYm94IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKCB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodCkgKyB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodCkgKyB2YXIoLS1oZWFkZXItY29udGVudC1oZWlnaHQpICk7XG4gICAgaGVpZ2h0OiBjYWxjKCAxMDB2aCAtIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0KSAtIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodCkgKTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoIDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIDBzLCB0b3AgMC4yNXMgMHMsIHZpc2liaWxpdHkgMHMgMHM7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmZseW91dC1uYXYgdWwge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgwLCAjQTVEQzZFIDAlLCAjYTVkYzZlIDQyLjYlLCAjNDZjOGNkIDc2LjQlLCAjNDZjOGNkIDEwMCUpO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmZseW91dC1uYXYgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG59XG5cbi5mbHlvdXQuanMtb3BlbiA+IC5mbHlvdXQtc2Nyb2xsYm94IHtcbiAgICB0b3A6IGNhbGMoIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0KSArIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0KSArIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgMC41cywgdG9wIDAuMjVzIDAuNXMsIHZpc2liaWxpdHkgMHMgMC43NXM7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmZseW91dC1pbm5lciB7XG4gICAgbWluLWhlaWdodDogY2FsYyggMTAwdmggLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodCkgLSB2YXIoLS1oZWFkZXItY29udGVudC1oZWlnaHQpIC0gdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQpICk7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIG1hcmdpbi10b3A6IDAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50O1xufVxuXG4uZmx5b3V0LWlubmVyIC5vLWdyb3VwIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmZseW91dC1jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKCAxMDB2aCAtIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0KSAtIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodCkgLSB2YXIoLS1zZWN0aW9uLW1hcmdpbi1oZWlnaHQpIC0gNzBweCAtIDcwcHggKTtcbn1cblxuLnNob3ctaW4tZmx5b3V0IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZmx5b3V0LmpzLW9wZW4gLnNob3ctaW4tZmx5b3V0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypAbWVkaWEgKC0tZm9yLWJ1cmdlci1uYXYpIHsqL1xuXG4gICAgLmZseW91dC5qcy1vcGVuIC5mbHlvdXQtc2Nyb2xsYm94IHtcbiAgICAgICAgdG9wOiBjYWxjKCB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXIpICsgdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyKSArIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCAxMDB2aCAtIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlcikgLSB2YXIoLS1oZWFkZXItY29udGVudC1oZWlnaHQpIC0gdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyKSApO1xuICAgIH1cblxuICAgIC5mbHlvdXQtc2Nyb2xsYm94IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoIDEwMHZoIC0gdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyKSAtIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXIpICk7XG4gICAgfVxuXG4gICAgLmZseW91dC1pbm5lciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoIDEwMHZoIC0gdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyKSAtIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXIpICk7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3dnc7IC8qIDYwcHg7ICovXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDd2dyArIDVyZW0pOyAvKiAzMHB4OyAqL1xuICAgIH1cblxuICAgIC5mbHlvdXQtY29udGVudCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoIDEwMHZoIC0gdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyKSAtIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlcikgLSB2YXIoLS1oZWFkZXItY29udGVudC1oZWlnaHQpIC0gdmFyKC0tc2VjdGlvbi1tYXJnaW4taGVpZ2h0KSAtIDE1dncgLSAxNXZ3ICk7XG4gICAgfVxuLyp9Ki9cblxuQG1lZGlhICgtLWZvci1tZC1kb3duKSB7XG4gICAgLmZseW91dC1uYXYge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjJweDtcbiAgICB9XG59XG5cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSB7XG5cbiAgICAuZmx5b3V0LmpzLW9wZW4gLmZseW91dC1zY3JvbGxib3gge1xuICAgICAgICB0b3A6IGNhbGMoIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlci1zbSkgKyB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXItc20pICsgdmFyKC0taGVhZGVyLWNvbnRlbnQtaGVpZ2h0KSApO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoIDEwMHZoIC0gdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyLXNtKSAtIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXItc20pICk7XG4gICAgfVxuXG4gICAgLmZseW91dC1zY3JvbGxib3gge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGhlaWdodDogY2FsYyggMTAwdmggLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXItc20pIC0gdmFyKC0taGVhZGVyLWNvbnRlbnQtaGVpZ2h0KSAtIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlci1zbSkgKTtcbiAgICB9XG5cbiAgICAuZmx5b3V0LWlubmVyIHtcbiAgICAgICAgbWluLWhlaWdodDogY2FsYyggMTAwdmggLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXItc20pIC0gdmFyKC0taGVhZGVyLWNvbnRlbnQtaGVpZ2h0KSAtIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlci1zbSkgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDd2dzsgLyogNjBweDsgKi9cbiAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoN3Z3ICsgNXJlbSk7IC8qIDMwcHg7ICovXG4gICAgfVxuXG4gICAgLmZseW91dC1jb250ZW50IHtcbiAgICAgICAgbWluLWhlaWdodDogY2FsYyggMTAwdmggLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXItc20pIC0gdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyLXNtKSAtIHZhcigtLWhlYWRlci1jb250ZW50LWhlaWdodCkgLSB2YXIoLS1zZWN0aW9uLW1hcmdpbi1oZWlnaHQpIC0gMTV2dyAtIDE1dncgKTtcbiAgICB9XG5cbiAgICAuZmx5b3V0LW5hdiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMnB4O1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuXG4gICAgQHN1cHBvcnRzICgtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2gpIHtcblxuICAgICAgICAuZmx5b3V0LmpzLW9wZW4gLmZseW91dC1zY3JvbGxib3gge1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKCAxMDB2aCAtIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlci1zbSkgLSB2YXIoLS1oZWFkZXItY29udGVudC1oZWlnaHQpIC0gdmFyKC0taGVhZGVyLW1hcmdpbi1oZWlnaHQtYnVyZ2VyLXNtKSAtIHZhcigtLWlvcy1tZW51YmFyLWhlaWdodCkgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mbHlvdXQtaW5uZXIge1xuICAgICAgICAgICAgbWluLWhlaWdodDogY2FsYyggMTAwdmggLSB2YXIoLS1oZWFkZXItbWFyZ2luLWhlaWdodC1idXJnZXItc20pIC0gdmFyKC0taGVhZGVyLWNvbnRlbnQtaGVpZ2h0KSAtIHZhcigtLWhlYWRlci1tYXJnaW4taGVpZ2h0LWJ1cmdlci1zbSkgLSB2YXIoLS1pb3MtbWVudWJhci1oZWlnaHQpICk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAoLS1mb3ItbGctdXApIHtcbiAgICAuZmx5b3V0LWlubmVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIG1heC13aWR0aDogMTM2LjZyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mbHlvdXQtc2Nyb2xsYm94IHtcbiAgICAgICAgcGFkZGluZzogMCA1cmVtO1xuICAgIH1cblxuICAgIC5mbHlvdXQtbmF2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgIH1cblxuICAgIC5mbHlvdXQtbmF2IGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzNweDtcbiAgICB9XG5cbiAgICAuZmx5b3V0LW5hdiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICAuZmx5b3V0LWlubmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNzMycHg7XG4gICAgfVxufVxuXG4vKiBidXJnZXIgKi9cbi5idXJnZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogdmFyKC0tYnVyZ2VyLXBsYWNlaG9sZGVyLXdpZHRoKTtcbiAgICBtaW4td2lkdGg6IHZhcigtLWJ1cmdlci1wbGFjZWhvbGRlci13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1idXJnZXItcGxhY2Vob2xkZXItaGVpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXJnZXItYmFja2dyb3VuZCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogLTVweDtcbiAgICBjb2xvcjogdmFyKC0tYnVyZ2VyLWNvbG9yLWNsb3NlZCk7XG4gICAgei1pbmRleDogMztcbiAgICBvdXRsaW5lOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKCAodmFyKC0tYnVyZ2VyLXBsYWNlaG9sZGVyLXdpZHRoKSAtIHZhcigtLWJ1cmdlci13aWR0aCkpIC8gMiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoICh2YXIoLS1idXJnZXItcGxhY2Vob2xkZXItd2lkdGgpIC0gdmFyKC0tYnVyZ2VyLXdpZHRoKSkgLyAyICk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCAtMSAqICh2YXIoLS1idXJnZXItcGxhY2Vob2xkZXItd2lkdGgpIC0gdmFyKC0tYnVyZ2VyLXdpZHRoKSkgLyAyICk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIGVhc2UgLjFzO1xufVxuXG4uYnVyZ2VyLWJhcnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IHZhcigtLWJ1cmdlci1oZWlnaHQpO1xuICAgIHdpZHRoOiB2YXIoLS1idXJnZXItd2lkdGgpO1xufVxuXG4uYnVyZ2VyLWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiB2YXIoLS1idXJnZXItd2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tYnVyZ2VyLWJhci1oZWlnaHQpO1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICAvKnRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tZGVmYXVsdC1uYXZpZ2F0aW9uLXRpbWluZyksIHRyYW5zZm9ybSB2YXIoLS1kZWZhdWx0LW5hdmlnYXRpb24tdGltaW5nKSwgd2lkdGggdmFyKC0tZGVmYXVsdC1uYXZpZ2F0aW9uLXRpbWluZyk7Ki9cbiAgICAvKndpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIHdpZHRoOyovXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGFuaW1hdGlvbjogLjVzIGVhc2Utb3V0IC4xcyAxIGdyb3dJbkZyb21MZWZ0O1xufVxuXG4uYnVyZ2VyLWJhci10b3AgeyB0b3A6IDA7IHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OyB9XG4uYnVyZ2VyLWJhci1taWRkbGUge1xuICAgIHRvcDogNTAlO1xuICAgIC8qdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLWRlZmF1bHQtbmF2aWdhdGlvbi10aW1pbmcpOyovXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDE5cHg7XG4gICAgYW5pbWF0aW9uOiAuNXMgZWFzZS1vdXQgLjFzIDEgZ3Jvd0luRnJvbUxlZnRNaWRkbGVCYXI7XG59XG4uYnVyZ2VyLWJhci1ib3R0b20geyBib3R0b206IDA7IHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0OyB9XG5cbi5idXJnZXIuanMtb3BlbiAuYnVyZ2VyLWJhci10b3Age1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiB2YXIoLS1idXJnZXItZGlhZ29uYWwpO1xufVxuLmJ1cmdlci5qcy1vcGVuIC5idXJnZXItYmFyLW1pZGRsZSB7IHRyYW5zZm9ybTogc2NhbGVYKDApIHRyYW5zbGF0ZVkoLTUwJSk7IH1cbi5idXJnZXIuanMtb3BlbiAuYnVyZ2VyLWJhci1ib3R0b20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWSg1MCUpO1xuICAgIHdpZHRoOiB2YXIoLS1idXJnZXItZGlhZ29uYWwpO1xufVxuXG5AbWVkaWEgKC0tZm9yLWxnLXVwKSB7XG4gICAgLmJ1cmdlci5qcy1vcGVuIC5idXJnZXItYmFyLWJvdHRvbSxcbiAgICAuYnVyZ2VyLmpzLW9wZW4gLmJ1cmdlci1iYXItdG9wIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgfVxuXG4gICAgLmJ1cmdlci5qcy1vcGVuIC5idXJnZXItYmFyLWJvdHRvbSB7XG4gICAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgICBsZWZ0OiAtM3B4O1xuICAgIH1cbiAgICAuYnVyZ2VyLmpzLW9wZW4gLmJ1cmdlci1iYXItdG9wIHtcbiAgICAgICAgbGVmdDogLTNweDtcbiAgICB9XG5cblxuICAgIC5idXJnZXIuanMtb3BlbiB7XG4gICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgIH1cbn1cblxuOnJvb3Qge1xuICAgIC0tY2lyY2xlLWJvcmRlci13aWR0aDogMnB4O1xuICAgIC0tY2lyY2xlLWJvcmRlci1jb2xvcjogdmFyKC0tZ3JlZW4pO1xufVxuXG4uanMtb3BlbiAgLmJ1cmdlcntcbiAgICB3aWR0aDogNDRweDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIGhlaWdodDogNDRweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgIHRvcDogM3B4O1xufVxuXG4uYnVyZ2VyOjpiZWZvcmUsXG4uYnVyZ2VyOjphZnRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYnVyZ2VyOjpiZWZvcmUge1xuICAgIGJvcmRlcjogdmFyKC0tY2lyY2xlLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbiAuYnVyZ2VyOjphZnRlciB7XG4gICAgYm9yZGVyOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uanMtb3BlbiAuYnVyZ2VyLWJhcnMge1xuICAgIHdpZHRoOiAxNXB4O1xufVxuXG4uanMtb3BlbiAuYnVyZ2VyOjpiZWZvcmUge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNpcmNsZS1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tY2lyY2xlLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY2lyY2xlLWJvcmRlci1jb2xvcik7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLXRvcC1jb2xvciAwLjA3NXMgbGluZWFyLCBib3JkZXItcmlnaHQtY29sb3IgMC4wNzVzIGxpbmVhciAwLjA1cywgYm9yZGVyLWJvdHRvbS1jb2xvciAwLjA3NXMgbGluZWFyIDAuMTBzO1xufVxuXG4uanMtb3BlbiAuYnVyZ2VyOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogdmFyKC0tY2lyY2xlLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tY2lyY2xlLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IHZhcigtLWNpcmNsZS1ib3JkZXItd2lkdGgpO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogdmFyKC0tY2lyY2xlLWJvcmRlci13aWR0aCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBsaW5lYXIgMHMsIGJvcmRlci1sZWZ0LXdpZHRoIDBzIGxpbmVhciAwLjE1cywgLXdlYmtpdC10cmFuc2Zvcm0gMC4ycyBsaW5lYXIgMHM7XG59XG5cbkBrZXlmcmFtZXMgZ3Jvd0luRnJvbUxlZnQge1xuICAgIDAlIHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB3aWR0aDogdmFyKC0tYnVyZ2VyLXdpZHRoKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZ3Jvd0luRnJvbUxlZnRNaWRkbGVCYXIge1xuICAgIDAlIHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB3aWR0aDogMTlweDtcbiAgICB9XG59XG5cblxuQG1lZGlhICgtLWZvci1sZy11cCkge1xuICAgIC5idXJnZXItYmFycyB7XG4gICAgICAgIGhlaWdodDogMjNweDtcbiAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgfVxuXG4gICAgLmJ1cmdlci1iYXIge1xuICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgfVxuXG4gICAgLmJ1cmdlci1iYXItbWlkZGxlIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgfVxuXG4gICAgLmpzLW9wZW4gLmJ1cmdlciB7XG4gICAgICAgIHRvcDogLThweDtcbiAgICB9XG59XG5cbi5tYWluLW5hdmlnYXRpb24ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIG1hcmdpbi10b3A6IC00cHg7XG59XG5cbi8qIE5hdiBJdGVtICovXG4ubmF2LWl0ZW0ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS1kZWZhdWx0LXRpbWluZykgZWFzZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubmF2LWl0ZW06aG92ZXIsXG4ubmF2LWl0ZW06Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jeWFuKTtcbn1cblxuLmNvbnRhY3QtaXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG59XG5cbi4taG9tZSAubmF2LWl0ZW06aG92ZXIsXG4uLWhvbWUgLm5hdi1pdGVtOmZvY3VzLFxuLi1ob21lIC5uYXYtaXRlbTpob3Zlcixcbi50cmFuc3BhcmVudCAubmF2LWl0ZW06Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG59XG5cbkBtZWRpYSAoLS1mb3ItbGctdXApIHtcbiAgICAubWFpbi1uYXZpZ2F0aW9uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNDBweDtcbiAgICB9XG5cbiAgICBuYXYgLm5hdi1pdGVtIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1idXR0b24tZm9udC1zaXplKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTZweDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICAuY29udGFjdC1pdGVtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIH1cbn1cblxuLyogU29jaWFsIE1lZGlhICovXG4uc29jaWFsLW1lZGlhLWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG59XG4uc29jaWFsLW1lZGlhIC5zb2NpYWwtaG92ZXIge1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS1kZWZhdWx0LXRpbWluZykgZWFzZTtcbn1cblxuLnNvY2lhbC1tZWRpYSAuc29jaWFsLWJnLWhvdmVyLFxuLnNvY2lhbC1tZWRpYSAuc29jaWFsLWljb24taG92ZXIgIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4uc29jaWFsLW1lZGlhIGE6aG92ZXIgLnNvY2lhbC1iZy1kZWZhdWx0LFxuLnNvY2lhbC1tZWRpYSBhOmZvY3VzIC5zb2NpYWwtYmctZGVmYXVsdCxcbi5zb2NpYWwtbWVkaWEgYTpob3ZlciAuc29jaWFsLWljb24tZGVmYXVsdCxcbi5zb2NpYWwtbWVkaWEgYTpmb2N1cyAuc29jaWFsLWljb24tZGVmYXVsdCAge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5zb2NpYWwtbWVkaWEgYTpob3ZlciAuc29jaWFsLWJnLWhvdmVyLFxuLnNvY2lhbC1tZWRpYSBhOmZvY3VzIC5zb2NpYWwtYmctaG92ZXIsXG4uc29jaWFsLW1lZGlhIGE6aG92ZXIgLnNvY2lhbC1pY29uLWhvdmVyLFxuLnNvY2lhbC1tZWRpYSBhOmZvY3VzIC5zb2NpYWwtaWNvbi1ob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnBhZ2UtaGVhZGVyIC5zb2NpYWwtbWVkaWEgYSBwYXRoIHtcbiAgICB0cmFuc2l0aW9uOiBmaWxsIHZhcigtLWRlZmF1bHQtdGltaW5nKSBlYXNlO1xufVxuXG4ucGFnZS1oZWFkZXIgLnNvY2lhbC1tZWRpYTpob3ZlciBhIHBhdGgsXG4ucGFnZS1oZWFkZXIgLnNvY2lhbC1tZWRpYTpmb2N1cyBhIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLWdyZWVuKTtcbn1cblxuLyogQ2FydCAqL1xuLmNhcnQtaWNvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNnB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG59XG4uY2FyZC1oYXMtcHJvZHVjdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTVweDtcbiAgICB0b3A6IDVweDtcbn1cblxuQG1lZGlhICgtLWZvci1tZCkge1xuXG4gICAgLnNvY2lhbC1tZWRpYS1saXN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICB9XG59XG5cbkBtZWRpYSAoLS1mb3ItbWQtdXApIHtcbiAgICAuc29jaWFsLW1lZGlhLnRpay10b2sge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNHB4O1xuICAgIH1cbn1cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSB7XG4gICAgLnNvY2lhbC1tZWRpYS1saXN0Lmhhcy1ndXR0ZXIgPiAqIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDJyZW0gLyAyKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygycmVtIC8gMik7XG4gICAgfVxuXG4gICAgLmNhcnQtaWNvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgfVxuXG4gICAgLnVzZXItaWNvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICB9XG5cbiAgICAudXNlci1pY29uIHN2ZyB7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICB9XG5cbiAgICAuY2FydC1pY29uIHN2ZyB7XG4gICAgICAgIGhlaWdodDogMTlweDtcbiAgICB9XG59XG5cbi8qQG1lZGlhIChtaW4td2lkdGg6IDExNDVweCkgeyovXG5cbi8qICAgIC5zb2NpYWwtbWVkaWEudGlrLXRvayB7Ki9cbi8qICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yN3B4OyovXG4vKiAgICB9Ki9cbi8qfSovXG5cbi5qcy1vcGVuICsgLnBhZ2UtbmF2IC5zb2NpYWwtbWVkaWEtbGlzdCB7XG4gICAgY29sb3I6IHZhcigtLWxpZ2h0KTtcbn1cblxuQG1lZGlhICgtLWZvci1zbS1kb3duKSB7XG4gICAgLnNvY2lhbC1tZWRpYS1saXN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICB9XG5cbiAgICAuc29jaWFsLW1lZGlhLnRpay10b2sge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yM3B4O1xuICAgIH1cblxuICAgIC5zb2NpYWwtbWVkaWEuaW5zdGFncmFtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gICAgfVxufVxuXG4uc29jaWFsLWljb25zIHtcbiAgICBtYXJnaW4tdG9wOiAyN3B4O1xufVxuXG4uc29jaWFsLWljb25zIC50aWstdG9re1xuICAgIG1hcmdpbi1yaWdodDogNDVweDtcbn1cblxuLyoqIE5ld3NsZXR0ZXIgSW5wdXQgKiovXG4ubmV3c2xldHRlci1tZW51IHtcbiAgICBtYXgtd2lkdGg6IDQxN3B4O1xuICAgIG1hcmdpbjogMi41cmVtIGF1dG8gMDtcbn1cblxuLm5ld3NsZXR0ZXItbWVudSBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuXG4ubmV3c2xldHRlci1tZW51IGlucHV0LmJ1dHRvbixcbi5uZXdzbGV0dGVyLW1lbnUgLmJ1dHRvbi1pbnB1dC1hcnJvdyB7XG4gICAgY29sb3I6IHZhcigtLWN5YW4pO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ubmV3c2xldHRlci1tZW51IGlucHV0LmJ1dHRvbiB7XG4gICAgcGFkZGluZzogOHB4IDQ4cHggOHB4IDIzcHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMjYuNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5uZXdzbGV0dGVyLW1lbnUgLmJ1dHRvbi1pbnB1dC1hcnJvdzo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAyNnB4O1xufVxuXG5AbWVkaWEgKC0tZm9yLWxnLXVwKSB7XG4gICAgLm5ld3NsZXR0ZXItbWVudSB7XG4gICAgICAgIG1heC13aWR0aDogODU2cHg7XG4gICAgICAgIG1hcmdpbjogMTZweCAwIDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNS41cmVtO1xuICAgIH1cblxuICAgIC5uZXdzbGV0dGVyLW1lbnUgcCB7XG4gICAgICAgIG1heC13aWR0aDogNTg1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gICAgfVxuXG4gICAgLm5ld3NsZXR0ZXItbWVudSBmb3JtIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgfVxuXG4gICAgLm5ld3NsZXR0ZXItbWVudSBpbnB1dC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDUxcHggMTBweCAyM3B4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm5ld3NsZXR0ZXItbWVudSBpbnB1dC5idXR0b24sXG4gICAgLm5ld3NsZXR0ZXItbWVudSAuYnV0dG9uLWlucHV0LWFycm93IHtcbiAgICAgICAgbWF4LXdpZHRoOiA1OTBweDtcbiAgICB9XG59XG5cbi8qKiBQaG9uZSBJbnB1dCAqKi9cbi5wYWdlLWhlYWRlciAuby1vaS1mb3JtIHtcbiAgICBtYXJnaW4tdG9wOiAyLjNyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2UtaGVhZGVyIGZpZWxkc2V0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbi5wYWdlLWhlYWRlciAuZm9ybS1pbnB1dCB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jeWFuKTtcbiAgICBjb2xvcjogdmFyKC0tY3lhbik7XG59XG5cbi5wYWdlLWhlYWRlciAuYnV0dG9uLWlucHV0LWFycm93IC5zaGFkb3csXG4ucGFnZS1oZWFkZXIgLmJ1dHRvbi1pbnB1dC1hcnJvdyAuc2hhZG93LWJnIHtcbiAgICBkaXNwbGF5OiBub25lO1xufSIsIi5wYWdlLWZvb3RlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZGFyayk7XG4gICAgY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgICBwYWRkaW5nOiAwIDIxcHg7XG59XG5cbi5wYWdlLWZvb3RlciAuby1ncm91cCB7XG4gICAgbWF4LXdpZHRoOiAyMDEuMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiA1cmVtO1xufVxuXG4uZm9vdGVyLWxpbmstd3JhcHBlciB7XG4gICAgcGFkZGluZzogNXJlbSAwIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbn1cblxuLmZvb3Rlci1zZXJ2aWNlICAuZm9vdGVyLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IC0uNXJlbTtcbn1cblxuLmZvb3Rlci1saXN0IGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmZvb3Rlci1zZXJ2aWNlIC5mb290ZXItbGlzdCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG59XG5cbltjbGFzcyo9XCJvLWZsZXhcIl0uZm9vdGVyLWxpbmtzLmhhcy1ndXR0ZXI6bm90KC5uby12ZXJ0aWNhbC1tYXJnaW4pID4gbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4ycmVtO1xufVxuXG4uZm9vdGVyLWxpbmtzIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZm9vdGVyLXNlcnZpY2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgbWFyZ2luLXRvcDogLTNyZW07XG59XG5cbi5wYWdlLWZvb3RlciAubmV3c2xldHRlciwgLnBhZ2UtZm9vdGVyIC5idXR0b24taW5wdXQtYXJyb3csXG4ucGFnZS1mb290ZXIgLmZvcm0taW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ucGFnZS1mb290ZXIgLmZvcm0taW5wdXQge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY3lhbik7XG4gICAgY29sb3I6IHZhcigtLWN5YW4pO1xufVxuXG4ucGFnZS1mb290ZXIgLm8tb2ktZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMi4zcmVtO1xufVxuXG4ucGFnZS1mb290ZXIgZmllbGRzZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxuLnBhZ2UtZm9vdGVyIC5idXR0b24taW5wdXQtYXJyb3cgLnNoYWRvdyxcbi5wYWdlLWZvb3RlciAuYnV0dG9uLWlucHV0LWFycm93IC5zaGFkb3ctYmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDNlbTtcbn1cblxuLnBhZ2UtZm9vdGVyIGEuaGFzLXN2Zy1ob3ZlciB7XG4gICAgd2lkdGg6IDIxOXB4O1xuICAgIGhlaWdodDogOTBweDtcbiAgICBtYXJnaW46IDczcHggYXV0byAxMjZweDtcbn1cblxuLmZvb3Rlci1sb2dvIHtcbiAgICB3aWR0aDogMjE5cHg7XG59XG5cbi5mb290ZXItbGlzdCBsaTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZm9vdGVyLWxpc3QgYSB7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tZGVmYXVsdC10aW1pbmcpIGVhc2U7XG59XG5cbi5mb290ZXItbGlzdCBsaTpob3ZlciBhLFxuLmZvb3Rlci1saXN0IGxpOmZvY3VzIGEge1xuICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG59XG5cbi5mb290ZXItc2VydmljZSBsaTpudGgtY2hpbGQoMyksXG4uZm9vdGVyLXNlcnZpY2UgbGk6bnRoLWNoaWxkKDQpIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmZvb3Rlci1uZXdzbGV0dGVyLXRleHQuaDUge1xuICAgIG1hcmdpbi1ib3R0b206IDQuMXJlbTtcbn1cblxuQG1lZGlhICgtLWZvci1tZC11cCkge1xuICAgIC5wYWdlLWZvb3RlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zbWFsbC1zcGFjaW5nKTtcbiAgICB9XG5cbiAgICAucGFnZS1mb290ZXIgLm8tZ3JvdXAge1xuICAgICAgICBwYWRkaW5nOiA1cmVtIDE0cmVtIDA7XG4gICAgfVxuXG4gICAgLnBhZ2UtZm9vdGVyIC5uZXdzbGV0dGVyLFxuICAgIC5wYWdlLWZvb3RlciAuZm9ybS1pbnB1dCxcbiAgICAucGFnZS1mb290ZXIgLmJ1dHRvbi1pbnB1dC1hcnJvdyB7XG4gICAgICAgIG1heC13aWR0aDogNTU0cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5wYWdlLWZvb3RlciBhLmhhcy1zdmctaG92ZXIge1xuICAgICAgICBtYXJnaW46IDU3cHggYXV0byAxMTFweDtcbiAgICB9XG5cbiAgICAucGFnZS1mb290ZXIgYS5oYXMtc3ZnLWhvdmVyLFxuICAgIC5mb290ZXItbG9nbyB7XG4gICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgaGVpZ2h0OiAxNjRweDtcbiAgICB9XG5cbiAgICAuZm9vdGVyLW5ld3NsZXR0ZXItdGV4dCBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5mb290ZXItbGluay13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDAgNDJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuZm9vdGVyLXNlcnZpY2UgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5mb290ZXItbGlua3MgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYnV0dG9uLWZvbnQtc2l6ZSk7XG4gICAgfVxuXG4gICAgLmZvb3Rlci1zZXJ2aWNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC41cmVtO1xuICAgIH1cblxuICAgIC5jb3B5cmlnaHQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTFweDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NTlweCkge1xuICAgIC5mb290ZXItbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKC0tZm9yLWxnLXVwKSB7XG4gICAgLnBhZ2UtZm9vdGVyIC5uZXdzbGV0dGVyLFxuICAgIC5wYWdlLWZvb3RlciAuZm9ybS1pbnB1dCB7XG4gICAgICAgIHdpZHRoOiA1NTRweDtcbiAgICB9XG5cbiAgICAucGFnZS1mb290ZXIgLmJ1dHRvbi1pbnB1dC1hcnJvdyB7XG4gICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICAucGFnZS1mb290ZXIgYS5oYXMtc3ZnLWhvdmVyLFxuICAgIC5mb290ZXItbG9nbyB7XG4gICAgICAgIHdpZHRoOiA0MzZweDtcbiAgICAgICAgaGVpZ2h0OiAxODBweDtcbiAgICB9XG5cbiAgICAuY29weXJpZ2h0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE0cHg7XG4gICAgfVxuXG4gICAgLmZvb3Rlci1saW5rcy13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDAgNDVweFxuICAgIH1cbn0iXSwic291cmNlUm9vdCI6IiJ9*/