@charset "UTF-8";
/*
The base folder is used for general styles that are used across the website.

The animations file is used for generic animations that are not block specific.
The global file is used for general style choices such as border radius, overlays and box shadows.
The grid file is for creating a grid system using flexbox should the design call for a grid system. It may be commented out if not needed.
The layout file is used for general layout patterns.
The reset file is used to reset the default browser styles.
The typography file is used for font styles.

The index file is used to import all the files in the base folder.
*/
/*
This helpers folder is used to store reusable SASS utilities to make styling more maintainable and consistent across a project. The files can be imported into different SASS modules.

The breakpoints file is used to define media query breakpoints.
The colors file is used to define color variables according to the design.
The mixins file is used to define reusable SASS mixins using @include.
The placeholders file is used to define placeholder selectors using @extend.
The zindex file is used to define z-index values for stacking elements clearly in one place.

The index file is used to import all the files in the helpers folder.
*/
.woocommerce .woocommerce-breadcrumb, body:not(.wp-admin) {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 400;
}

.small-text {
    font-size: 1rem;
    line-height: 1.25rem;
}

body:not(.wp-admin) .button,
.wp-block.acf-block-preview .button, .search-box .search-input {
    font-size: 1rem;
    line-height: 1;
    font-weight: 600;
    text-transform: uppercase;
}

.h4 {
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 600;
}

.wysiwyg blockquote, .h3 {
    font-size: 1.75rem;
    line-height: 2.375rem;
    font-weight: 400;
}

.woocommerce.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel h2, .woocommerce.single-product div.product .upsells h2:not(.woocommerce-loop-product__title),
.woocommerce.single-product div.product .related.products h2:not(.woocommerce-loop-product__title), .woocommerce .page-title,
.woocommerce .product_title, .h2 {
    font-size: 2.125rem;
    line-height: 2.75rem;
    font-weight: 600;
}

.h1 {
    font-size: clamp(2.25rem, 1.875rem + 1.6667vw, 3.375rem);
    line-height: clamp(2.625rem, 2.1667rem + 2.037vw, 4rem);
    font-weight: 600;
}

body:not(.wp-admin) {
    font-family: "Inter", sans-serif;
    color: #1F1E23;
}

.has-black-background-color,
.has-green-background-color,
.has-purple-background-color {
    color: #ffffff;
}

.bold {
    font-weight: 600;
}

.center {
    text-align: center;
}

/* Box sizing rules */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Prevent font size inflation */
html {
    -moz-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
}

/* Remove default margin in favour of better control in authored CSS */
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 {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
    list-style: none;
    padding-left: 0;
}

ul {
    padding: 0;
    margin: 0;
}

/* Set core root defaults */
html:focus-within {
    scroll-behavior: smooth;
}

/* Set core body defaults */
body {
    min-height: 100vh;
    line-height: 1.3;
}

/* Set shorter line heights on headings and interactive elements */
h1,
h2,
h3,
h4,
button,
input,
label {
    line-height: 1.1;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto;
    color: currentColor;
}

/* Make images easier to work with */
img,
picture {
    max-width: 100%;
    display: block;
}

iframe {
    display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
    font-family: inherit;
    font-size: inherit;
}

/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
    min-height: 10em;
}

/* Undo reset rules inside the classic editor (TinyMCE) iframe */
body.mce-content-body {
    min-height: 0;
    margin: revert;
    padding: revert;
    border: revert;
}
body.mce-content-body h1, body.mce-content-body h2, body.mce-content-body h3, body.mce-content-body h4, body.mce-content-body h5, body.mce-content-body h6, body.mce-content-body p, body.mce-content-body blockquote, body.mce-content-body pre,
body.mce-content-body a, body.mce-content-body abbr, body.mce-content-body acronym, body.mce-content-body address, body.mce-content-body big, body.mce-content-body cite, body.mce-content-body code,
body.mce-content-body del, body.mce-content-body dfn, body.mce-content-body em, body.mce-content-body img, body.mce-content-body ins, body.mce-content-body kbd, body.mce-content-body q, body.mce-content-body s, body.mce-content-body samp,
body.mce-content-body small, body.mce-content-body strike, body.mce-content-body strong, body.mce-content-body sub, body.mce-content-body sup, body.mce-content-body tt, body.mce-content-body var,
body.mce-content-body b, body.mce-content-body u, body.mce-content-body i, body.mce-content-body center,
body.mce-content-body dl, body.mce-content-body dt, body.mce-content-body dd, body.mce-content-body ol, body.mce-content-body ul, body.mce-content-body li,
body.mce-content-body fieldset, body.mce-content-body form, body.mce-content-body label, body.mce-content-body legend,
body.mce-content-body table, body.mce-content-body caption, body.mce-content-body tbody, body.mce-content-body tfoot, body.mce-content-body thead, body.mce-content-body tr, body.mce-content-body th, body.mce-content-body td,
body.mce-content-body article, body.mce-content-body aside, body.mce-content-body canvas, body.mce-content-body details, body.mce-content-body embed,
body.mce-content-body figure, body.mce-content-body figcaption, body.mce-content-body footer, body.mce-content-body header, body.mce-content-body hgroup,
body.mce-content-body menu, body.mce-content-body nav, body.mce-content-body output, body.mce-content-body ruby, body.mce-content-body section, body.mce-content-body summary,
body.mce-content-body time, body.mce-content-body mark, body.mce-content-body audio, body.mce-content-body video {
    margin: revert;
    padding: revert;
    border: revert;
    vertical-align: revert;
}
body.mce-content-body ul[role=list],
body.mce-content-body ol[role=list] {
    list-style: revert;
    padding-left: revert;
}
body.mce-content-body ul {
    padding: revert;
    margin: revert;
}
body.mce-content-body img, body.mce-content-body picture {
    max-width: revert;
    display: revert;
}
body.mce-content-body iframe {
    display: revert;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
    html:focus-within {
        scroll-behavior: auto;
    }
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
.header-content,
.nav-content,
.footer-content-wrapper,
section,
main > .pmpro {
    display: grid;
    grid-template-columns: 1fr repeat(12, calc(min(100% - clamp(40px, 6vw, 80px), 1440px) / 12)) 1fr;
}
.header-content > *,
.nav-content > *,
.footer-content-wrapper > *,
section > *,
main > .pmpro > * {
    grid-column: 2/14;
}
.header-content > *.full-width,
.nav-content > *.full-width,
.footer-content-wrapper > *.full-width,
section > *.full-width,
main > .pmpro > *.full-width {
    grid-column: 1/-1;
}

header,
section {
    position: relative;
}

.flex-row {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}

.flex-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
    gap: 1em;
}
@media screen and (max-width: 720px) {
    .flex-grid {
        grid-template-columns: 1fr;
    }
}

.grid-2-col {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 80px;
}
@media screen and (max-width: 960px) {
    .grid-2-col {
        gap: 40px;
    }
}
@media screen and (max-width: 720px) {
    .grid-2-col {
        grid-template-columns: 1fr;
    }
}

.grid-3-col {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 80px;
}
@media screen and (max-width: 1200px) {
    .grid-3-col {
        gap: 40px;
    }
}
@media screen and (max-width: 960px) {
    .grid-3-col {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width: 720px) {
    .grid-3-col {
        grid-template-columns: 1fr;
    }
}

.grid-4-col {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}
@media screen and (max-width: 1200px) {
    .grid-4-col {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width: 720px) {
    .grid-4-col {
        grid-template-columns: 1fr;
    }
}

body:not(.wp-admin, .mce-content-body) {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100vh;
}
body:not(.wp-admin, .mce-content-body).modal-open, body:not(.wp-admin, .mce-content-body).mobile-nav-open {
    overflow: hidden;
}
body:not(.wp-admin, .mce-content-body) .has-black-background-color {
    background-color: #1F1E23;
}
body:not(.wp-admin, .mce-content-body) .has-yellow-background-color {
    background-color: #FFD400;
}

.site-main {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.site-main:has(.block_404) {
    position: relative;
}

body:not(.wp-admin) nav ul li a {
    text-decoration: none;
}

body:not(.wp-admin) a:not(.button),
.wp-block.acf-block-preview a:not(.button) {
    color: inherit;
    transition: text-decoration-color 200ms ease;
}
body:not(.wp-admin) a:not(.button):hover,
.wp-block.acf-block-preview a:not(.button):hover {
    text-decoration-color: transparent;
}

.white {
    background-color: #ffffff;
}

.black {
    background-color: #1F1E23;
    color: #ffffff;
}

.yellow {
    background-color: #FFD400;
}

.yellow-light {
    background-color: #FFFAF0;
}

.grey {
    background-color: #898989;
    color: #ffffff;
}

.grey-light {
    background-color: #F0F0F0;
}

.purple {
    background-color: #A84E88;
    color: #ffffff;
}

.green {
    background-color: #203C3B;
    color: #ffffff;
}

.green-light {
    background-color: #89DABD;
}

.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg p,
.wysiwyg ul,
.wysiwyg ol,
.wysiwyg blockquote {
    margin-bottom: 1.5rem;
}
.wysiwyg h2:not(:first-child),
.wysiwyg h3:not(:first-child),
.wysiwyg h4:not(:first-child) {
    padding-top: 0.5em;
}
.wysiwyg ol,
.wysiwyg ul {
    padding-left: 1.25em;
}
.wysiwyg ol li::marker {
    font-weight: 600;
}
.wysiwyg :last-child {
    margin-bottom: 0;
}
.wysiwyg a:visited {
    color: inherit;
}
.wysiwyg blockquote {
    display: flex;
    gap: 1em;
    font-style: italic;
}
.wysiwyg blockquote::before {
    content: "";
    display: block;
    width: 12px;
    height: auto;
    background-color: #FFD400;
    border-radius: 5px;
    flex-shrink: 0;
}

.bkg-image {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    grid-column: 1/-1;
}
.bkg-image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;
}

section:has(.zebra-background).has-grey-tint-background-color::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../../assets/img/backgrounds/zebra-background.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.01;
    pointer-events: none;
}
section:has(.zebra-background).has-yellow-tint-background-color::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../../assets/img/backgrounds/zebra-background.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.025;
    pointer-events: none;
}
section:has(.zebra-background).has-white-background-color::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../../assets/img/backgrounds/zebra-background.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.02;
    pointer-events: none;
}
section:has(.zebra-background).has-black-background-color::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../../assets/img/backgrounds/zebra-background-black.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.6;
    pointer-events: none;
}
section:has(.zebra-background).has-purple-background-color::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../../assets/img/backgrounds/zebra-background-purple.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.8;
    pointer-events: none;
}
section:has(.zebra-background).has-green-background-color::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../../assets/img/backgrounds/zebra-background-green.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.6;
    pointer-events: none;
}
section:has(.zebra-background) .zebra-background {
    z-index: 2;
}

/* https://medium.com/@matuzo/writing-css-with-accessibility-in-mind-8514a0007939 */
.visually-hidden {
    position: absolute;
    white-space: nowrap;
    width: 1px;
    height: 1px;
    overflow: hidden;
    border: 0;
    padding: 0;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    margin: -1px;
}

/*
This components folder is used for styles that are specific to a section or component on the website.

The index file is used to import all the files in the components folder.
*/
.header {
    z-index: 10;
}
.header #skip-link {
    transform: translateY(-120%);
    position: absolute;
}
.header #skip-link:focus {
    -webkit-clip-path: none;
    clip-path: none;
    clip: auto;
    width: auto;
    height: auto;
    z-index: 1000;
    transform: translateY(0);
}
.header .has-black-background-color {
    padding: 40px 0 30px;
}
@media screen and (max-width: 960px) {
    .header .has-black-background-color {
        padding-bottom: 20px;
    }
}
.header .has-black-background-color .header-content .flex-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 30px;
}
.header .has-black-background-color .header-content .header-logo {
    width: 260px;
}
.header .has-black-background-color .header-content .header-logo svg {
    display: block;
    width: 100%;
    height: auto;
}
@media screen and (max-width: 1200px) {
    .header .has-black-background-color .header-content .header-logo {
        width: 200px;
    }
}
@media screen and (max-width: 720px) {
    .header .has-black-background-color .header-content .header-logo {
        width: 150px;
    }
}
.header .has-black-background-color .header-content a.button {
    text-transform: none;
}
@media screen and (max-width: 1200px) {
    .header .has-black-background-color .header-content a.button {
        display: none;
    }
}
@media screen and (max-width: 1200px) {
    .header .has-black-background-color .header-content .flex-wrapper {
        gap: 20px;
    }
    .header .has-black-background-color .header-content .flex-wrapper > .flex-wrapper {
        width: 100%;
    }
    .header .has-black-background-color .header-content .flex-wrapper.mobile-wrap {
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
    }
    .header .has-black-background-color .header-content .controls-wrapper {
        align-items: center;
    }
}
.header .has-black-background-color .button.donate {
    background-color: #A84E88;
    color: #ffffff;
    justify-content: center;
    border-color: #A84E88;
}
.header .has-black-background-color .button.donate:hover {
    background-color: #b25992;
    border-color: #b25992;
}
.header .has-yellow-background-color {
    border-bottom: 2px solid #1F1E23;
}
@media screen and (max-width: 1200px) {
    .header .has-yellow-background-color:has(.main-nav) {
        display: none;
    }
}
@media screen and (max-width: 1200px) {
    .header .search-container {
        width: 100%;
    }
}

.search-box {
    position: relative;
    display: flex;
    align-items: center;
    background-color: #ffffff;
    border: 2px solid #ffffff;
    border-radius: 5px;
    padding: 8px 15px;
    transition: all 400ms ease;
}
@media screen and (max-width: 1200px) {
    .search-box {
        padding: 12px 15px;
    }
}
.search-box:focus, .search-box:focus-visible, .search-box:focus-within {
    border-color: #ffffff;
    outline-offset: 0;
}
.search-box .search-input {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    text-transform: none;
    color: #1F1E23;
    padding: 0;
    margin: 0;
}
.search-box .search-input > div {
    height: auto;
}
.search-box .search-input::-moz-placeholder {
    color: #1F1E23;
}
.search-box .search-input::placeholder {
    color: #1F1E23;
}
.search-box .search-input:focus {
    outline: none;
}
.search-box .search-input::-webkit-search-cancel-button, .search-box .search-input::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}
.search-box .search-icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 8px;
    width: 20px;
    background: none;
    padding: 0;
    flex-shrink: 0;
}
.search-box .search-icon-wrapper svg {
    width: 100%;
    height: 100%;
}

@media screen and (min-width: 1200px) {
    .mobile-controls {
        display: none;
    }
}
.mobile-controls .burger-icon {
    display: block;
    width: 44px;
    height: 44px;
    padding: 10px 0 10px 10px;
    cursor: pointer;
    z-index: 5;
    transition: opacity 100ms ease, transform 500ms ease;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
}
.mobile-controls .burger-icon .bar {
    display: block;
    position: absolute;
    width: 34px;
    height: 2px;
    background-color: #FFD400;
    transition: transform 500ms ease, opacity 300ms ease, color 300ms ease;
    transform-origin: center;
}
.mobile-controls .burger-icon .bar-1 {
    top: 10px;
}
.mobile-controls .burger-icon .bar-2 {
    top: 21px;
}
.mobile-controls .burger-icon .bar-3 {
    top: 32px;
}
.mobile-controls .burger-icon.active .bar-1 {
    top: 21px;
    transform: rotate(45deg);
    background-color: #1F1E23;
}
.mobile-controls .burger-icon.active .bar-2 {
    opacity: 0;
}
.mobile-controls .burger-icon.active .bar-3 {
    top: 21px;
    transform: rotate(-45deg);
    background-color: #1F1E23;
}

.site-footer .has-yellow-background-color {
    height: 70px;
}
.site-footer .footer-content-wrapper {
    padding: 60px 0 40px;
}
.site-footer .footer-content-wrapper .flex-wrapper {
    display: flex;
    gap: 60px;
}
@media screen and (max-width: 1200px) {
    .site-footer .footer-content-wrapper .flex-wrapper {
        flex-direction: column;
        gap: 40px;
    }
}
.site-footer .footer-content-wrapper .footer-logo {
    max-width: 200px;
}
.site-footer .footer-content-wrapper .footer-logo svg {
    display: block;
    width: 100%;
    height: auto;
}
.site-footer .footer-content-wrapper .footer-right {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.site-footer .footer-content-wrapper .footer-right .footer-menus {
    display: flex;
    gap: 80px;
}
@media screen and (max-width: 1200px) {
    .site-footer .footer-content-wrapper .footer-right .footer-menus {
        gap: 60px;
    }
}
@media screen and (max-width: 960px) {
    .site-footer .footer-content-wrapper .footer-right .footer-menus {
        flex-direction: column;
        gap: 20px;
    }
}
.site-footer .footer-content-wrapper .footer-right .footer-menus h2 {
    color: #FFD400;
    font-size: 1.5rem;
    line-height: 1.75rem;
    font-weight: 400;
    margin-bottom: 1rem;
}
.site-footer .footer-content-wrapper .footer-right .footer-menus nav ul {
    list-style-type: none;
    display: grid;
    grid-template-rows: repeat(5, auto);
    grid-auto-flow: column;
    gap: 0 3rem;
}
.site-footer .footer-content-wrapper .footer-right .footer-menus nav ul li {
    margin-bottom: 0.5rem;
}
.site-footer .footer-content-wrapper .footer-right .footer-menus nav ul li:nth-child(5), .site-footer .footer-content-wrapper .footer-right .footer-menus nav ul li:last-child {
    margin-bottom: 0;
}
.site-footer .footer-content-wrapper .footer-right .footer-menus nav ul li a {
    text-decoration: none;
}
.site-footer .footer-content-wrapper .footer-right .footer-menus nav ul li a:hover {
    color: #A7A7A7;
}
@media screen and (max-width: 720px) {
    .site-footer .footer-content-wrapper .footer-right .footer-menus nav ul {
        display: block;
    }
    .site-footer .footer-content-wrapper .footer-right .footer-menus nav ul li:nth-child(5) {
        margin-bottom: 0.5rem;
    }
}
.site-footer .footer-content-wrapper .footer-right .footer-contact p,
.site-footer .footer-content-wrapper .footer-right .footer-copyright p {
    margin-bottom: 0.5rem;
}
.site-footer .footer-content-wrapper .footer-right .footer-contact a,
.site-footer .footer-content-wrapper .footer-right .footer-copyright a {
    text-decoration: none;
}
.site-footer .footer-content-wrapper .footer-right .footer-contact a:hover,
.site-footer .footer-content-wrapper .footer-right .footer-copyright a:hover {
    color: #A7A7A7;
}
.site-footer .footer-content-wrapper .footer-right .footer-logos {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 30px;
}
.site-footer .footer-content-wrapper .footer-right .footer-logos .footer-logo-item img {
    width: auto;
    height: 60px;
    max-width: 100%;
}
.site-footer .footer-content-wrapper .footer-right .footer-small-print nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style-type: none;
}
.site-footer .footer-content-wrapper .footer-right .footer-small-print nav ul li::after {
    content: "|";
    margin-left: 10px;
}
.site-footer .footer-content-wrapper .footer-right .footer-small-print nav ul li:last-child::after {
    content: "";
    margin: 0;
}
.site-footer .footer-content-wrapper .footer-right .footer-small-print nav ul a:hover {
    color: #A7A7A7;
}

.nav ul {
    list-style-type: none;
}
.nav ul li {
    position: relative;
}
.nav ul li button.item-link {
    padding: 0;
    background-color: transparent;
    line-height: 1.25rem;
}
.nav ul li a {
    display: inline-block;
}
.nav ul li .arrow {
    margin-left: 7px;
    transition: transform 400ms ease;
}
.nav ul li .arrow.rotate-arrow {
    transform: rotate(180deg);
}
.nav ul.main-nav-list {
    display: flex;
    gap: 30px;
    justify-content: flex-end;
    align-items: center;
}
.nav ul.main-nav-list li {
    padding: 20px 0;
}
.nav ul.main-nav-list .login-link {
    display: inline-block;
    width: 20px;
}
.nav ul.main-nav-list .login-link svg {
    width: 100%;
    height: 100%;
}
.nav ul.main-nav-list .nav-login {
    position: relative;
}
.nav ul.main-nav-list .nav-login .mini-login-dropdown {
    position: absolute;
    top: 45px;
    right: 0;
    width: clamp(200px, 100vw, 300px);
    background-color: #FFFAF0;
    padding: 20px 0 40px;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease, visibility 300ms ease;
}
.nav ul.main-nav-list .nav-login .mini-login-dropdown.open {
    opacity: 1;
    visibility: visible;
}
.nav ul.main-nav-list .nav-login .mini-login-dropdown .login-welcome {
    font-weight: 600;
    padding: 10px 40px;
}
.nav ul.main-nav-list .nav-login .mini-login-dropdown ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.nav ul.main-nav-list .nav-login .mini-login-dropdown ul li {
    padding: 10px 40px;
    transition: background-color 300ms ease;
}
.nav ul.main-nav-list .nav-login .mini-login-dropdown ul li:has(> a:hover) {
    background-color: #FFD400;
}
.nav ul.main-nav-list .nav-basket {
    position: relative;
}
.nav ul.main-nav-list .nav-basket .site-basket-link {
    display: flex;
    gap: 5px;
    align-items: center;
    text-decoration: none;
}
.nav ul.main-nav-list .nav-basket .site-basket-link .svg-wrapper {
    display: inline-block;
    width: 27px;
}
.nav ul.main-nav-list .nav-basket .site-basket-link .svg-wrapper svg {
    width: 100%;
    height: 100%;
}
.nav ul.main-nav-list .nav-basket .mini-basket-dropdown {
    position: absolute;
    top: 45px;
    right: 0;
    width: 360px;
    background-color: #FFFAF0;
    padding: 1.5rem;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease, visibility 300ms ease;
}
body.woocommerce-cart .nav ul.main-nav-list .nav-basket .mini-basket-dropdown, body.woocommerce-checkout .nav ul.main-nav-list .nav-basket .mini-basket-dropdown {
    display: none;
}
.nav ul.main-nav-list .nav-basket .mini-basket-dropdown.open {
    opacity: 1;
    visibility: visible;
}
.nav ul.main-nav-list .nav-basket .mini-basket-dropdown ul.woocommerce-mini-cart li {
    padding: 0 0 20px;
}
.nav ul.main-nav-list .nav-basket .mini-basket-dropdown ul.woocommerce-mini-cart li a.remove {
    float: right;
    margin-left: 20px;
}
.nav ul.main-nav-list .nav-basket .mini-basket-dropdown ul.woocommerce-mini-cart li span.quantity {
    display: block;
    margin-top: 5px;
}
.nav ul.main-nav-list .nav-basket .mini-basket-dropdown .woocommerce-mini-cart__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 10px;
}

@media screen and (max-width: 1200px) {
    .main-nav {
        display: none;
    }
}
.main-nav .submenu-container .submenu li {
    padding: 10px 40px;
    transition: background-color 300ms ease;
}
.main-nav .submenu-container .submenu li:has(> a:hover), .main-nav .submenu-container .submenu li:has(.second-level.open) {
    background-color: #FFD400;
}
.main-nav .submenu-container.first-level {
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease, visibility 300ms ease;
    position: absolute;
    top: 62px;
    left: 0;
    background-color: #FFFAF0;
    z-index: 2;
    width: clamp(200px, 100vw, 300px);
}
.main-nav .submenu-container.first-level.open {
    opacity: 1;
    visibility: visible;
}
.main-nav .submenu-container.first-level > .submenu {
    padding: 20px 0 40px;
}
.main-nav .submenu-container.first-level > .submenu .arrow {
    transform: rotate(-90deg);
    margin-left: 10px;
}
.main-nav .submenu-container.second-level {
    position: absolute;
    left: 100%;
    top: -20px;
    background-color: #FFFAF0;
    width: clamp(200px, 100vw, 300px);
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease, visibility 300ms ease;
}
.main-nav .submenu-container.second-level.open {
    opacity: 1;
    visibility: visible;
}
.main-nav .submenu-container.second-level > .submenu {
    padding: 20px 0 40px;
}

.mobile-nav-wrapper {
    visibility: hidden;
    transform: translateX(100%);
    transition: transform 400ms ease, visibility 0s linear 400ms;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100dvh;
    padding-bottom: 40px;
    overflow-y: auto;
    background-color: #FFD400;
}
.mobile-nav-wrapper.menu-open {
    visibility: visible;
    transform: translateX(0);
    transition: transform 400ms ease;
}
.mobile-nav-wrapper .mobile-nav {
    margin-top: 90px;
    padding: 0 1.25rem;
}
.mobile-nav-wrapper .mobile-nav-list li,
.mobile-nav-wrapper .mobile-nav-list button {
    font-weight: 500;
    padding: 10px 0;
}
.mobile-nav-wrapper .mobile-nav-list li .item-link,
.mobile-nav-wrapper .mobile-nav-list button .item-link {
    display: flex;
    gap: 10px;
    align-items: center;
}
.mobile-nav-wrapper .mobile-nav-list li .arrow,
.mobile-nav-wrapper .mobile-nav-list button .arrow {
    width: 15px;
    height: 15px;
}
.mobile-nav-wrapper .mobile-nav-list li.submenu-open > .item-link > .arrow,
.mobile-nav-wrapper .mobile-nav-list button.submenu-open > .item-link > .arrow {
    transform: rotate(180deg);
}
.mobile-nav-wrapper .mobile-nav-list .login-link,
.mobile-nav-wrapper .mobile-nav-list .site-basket-link {
    display: block;
    text-decoration: none;
    padding: 10px 0;
    font-weight: 500;
}
.mobile-nav-wrapper .mobile-nav-list .mobile-login-links .mobile-login-label {
    display: block;
    font-weight: 600;
    padding: 10px 0;
}
.mobile-nav-wrapper .mobile-nav-list .mobile-login-links a {
    display: block;
    text-decoration: none;
    font-weight: 500;
    padding: 10px 0 10px 20px;
}
.mobile-nav-wrapper .submenu-container {
    font-size: 1rem;
    line-height: 1.25rem;
}
.mobile-nav-wrapper .submenu-container.first-level {
    display: none;
    overflow: hidden;
    transition: none;
}
.mobile-nav-wrapper .submenu-container.first-level > .submenu {
    margin: 10px 0;
    padding-left: 20px;
}
.mobile-nav-wrapper .submenu-container.second-level {
    display: none;
    overflow: hidden;
    transition: none;
}
.mobile-nav-wrapper .submenu-container.second-level > .submenu {
    margin: 10px 0;
    padding-left: 40px;
}

body:not(.wp-admin) button,
.wp-block.acf-block-preview button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    cursor: pointer;
}

body:not(.wp-admin) button:disabled,
.wp-block.acf-block-preview button:disabled {
    background-color: #ffffff;
    border-color: #1F1E23;
    cursor: not-allowed;
}

body:not(.wp-admin) .button,
.wp-block.acf-block-preview .button {
    display: inline-flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    min-width: 140px;
    padding: 10px 15px;
    background-color: #FFD400;
    color: #1F1E23;
    text-decoration: none;
    border: 2px solid #FFD400;
    border-radius: 5px;
    transition: all 400ms ease;
    position: relative;
}
body:not(.wp-admin) .button:not(.no-arrow)::after,
.wp-block.acf-block-preview .button:not(.no-arrow)::after {
    content: "";
    width: 11px;
    height: 11px;
    display: inline-block;
    background-image: url("../../assets/img/icons/button-arrow.svg");
    background-size: contain;
    background-repeat: no-repeat;
}
body:not(.wp-admin) .button:hover, body:not(.wp-admin) .button:active,
.wp-block.acf-block-preview .button:hover,
.wp-block.acf-block-preview .button:active {
    background-color: #FFE600;
    border-color: #FFE600;
}
body:not(.wp-admin) .button:focus, body:not(.wp-admin) .button:focus-visible, body:not(.wp-admin) .button:focus-within,
.wp-block.acf-block-preview .button:focus,
.wp-block.acf-block-preview .button:focus-visible,
.wp-block.acf-block-preview .button:focus-within {
    border-color: #1F1E23;
    outline-offset: 0;
}

.block_404 {
    color: #ffffff;
    background-color: #1F1E23;
    flex: 1;
    align-items: center;
    padding: clamp(120px, 10vw, 240px) 0;
    min-height: 80dvh;
}
@media screen and (max-width: 960px) {
    .block_404 {
        min-height: 60dvh;
    }
}
@media screen and (max-width: 720px) {
    .block_404 {
        min-height: 80dvh;
    }
}
.block_404 .content {
    z-index: 2;
}
.block_404 .content > * {
    margin-bottom: 30px;
}
.block_404 .content > *:last-child {
    margin-bottom: 0;
}
.block_404 .content .h1 {
    color: #FFD400;
}
.block_404 .bkg-image {
    background-position: top right;
}
@media screen and (max-width: 960px) {
    .block_404 .bkg-image {
        background-position: 75% 0;
    }
}
.block_404 .bkg-image::before {
    background-color: rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 960px) {
    .block_404 .bkg-image::before {
        background-color: rgba(0, 0, 0, 0.4);
    }
}

.heading-wrapper:has(*) {
    margin-bottom: 80px;
}
.heading-wrapper .h2 {
    max-width: 720px;
    text-wrap: balance;
}
.heading-wrapper p {
    max-width: 1080px;
}
.heading-wrapper:has(p) .h2 {
    margin-bottom: 50px;
}

.swiper-controls.stacked-layout {
    display: flex;
    justify-content: center;
    gap: 10px;
    height: 40px;
}
.swiper-controls.stacked-layout .swiper-button-next,
.swiper-controls.stacked-layout .swiper-button-prev {
    position: relative;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin-top: 0;
    color: #1F1E23;
    transition: color 300ms ease;
    width: 40px;
    height: 40px;
}
.swiper-controls.stacked-layout .swiper-button-next::after,
.swiper-controls.stacked-layout .swiper-button-prev::after {
    font-size: 40px;
}
.swiper-controls.stacked-layout .swiper-button-next:hover,
.swiper-controls.stacked-layout .swiper-button-prev:hover {
    color: #FFD400;
}

.gcontainer #glightbox-slider .gslide .gslide-image img {
    max-height: 80vh;
}

.goverlay {
    background: rgba(31, 30, 35, 0.95);
}

.post-item .img-wrapper {
    margin-bottom: 30px;
}
.post-item .img-wrapper img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 20px;
}
.post-item .post-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
}
.post-item .post-content .meta-content-wrapper {
    display: flex;
    gap: 18px;
}
.post-item .post-content .meta-content-wrapper::before {
    content: "";
    display: block;
    width: 4px;
    height: auto;
    background-color: #FFD400;
    border-radius: 5px;
    flex-shrink: 0;
}
.post-item .post-content .meta-content-wrapper .meta-content {
    text-transform: uppercase;
    font-weight: 500;
}
.post-item .post-content .meta-content-wrapper .meta-content .event-meta {
    display: flex;
    flex-direction: column;
}
.post-item:not(.sup-groups-item) .post-content a {
    display: block;
    text-transform: uppercase;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
    font-weight: 600;
}

.pagination {
    margin-top: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
.pagination .page-numbers {
    text-decoration: none;
    padding: 10px 15px;
    min-width: 44px;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 300ms ease;
    font-weight: 600;
    line-height: 1;
    background-color: #FFD400;
    border-radius: 5px;
}
.pagination .page-numbers:hover:not(.current, .next, .prev) {
    background-color: #FFE600;
}
.pagination .page-numbers.current {
    background-color: #1F1E23;
    color: #ffffff;
}
.pagination .page-numbers.next, .pagination .page-numbers.prev {
    min-width: auto;
    display: flex;
    align-items: center;
    background-color: transparent;
    padding: 5px 10px;
}
.pagination .page-numbers.next svg, .pagination .page-numbers.prev svg {
    width: 16px;
}
.pagination .page-numbers.next svg path, .pagination .page-numbers.prev svg path {
    transition: fill 300ms ease;
}
.pagination .page-numbers.next svg:hover path, .pagination .page-numbers.prev svg:hover path {
    fill: #FFD400;
}

section.has-black-background-color .pagination .page-numbers {
    color: #1F1E23;
}
section.has-black-background-color .pagination .page-numbers.current {
    background-color: #ffffff;
    color: #1F1E23;
}
section.has-black-background-color .pagination .page-numbers.next svg path, section.has-black-background-color .pagination .page-numbers.prev svg path {
    fill: #ffffff;
}
section.has-black-background-color .pagination .page-numbers.next svg path:hover, section.has-black-background-color .pagination .page-numbers.prev svg path:hover {
    fill: #FFD400;
}

.filters-dropdown {
    position: relative;
    display: inline-block;
    margin-bottom: 60px;
    min-width: 260px;
    width: -moz-max-content;
    width: max-content;
    border: 1px solid #A7A7A7;
}
@media screen and (max-width: 720px) {
    .filters-dropdown {
        width: 100%;
    }
}
.filters-dropdown .dropdown-toggle {
    font-size: 1rem;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 15px;
    background-color: #ffffff;
    color: #1F1E23;
    border: none;
    cursor: pointer;
    transition: all 300ms ease;
    width: 100%;
}
.filters-dropdown .dropdown-toggle[aria-expanded=true] .dropdown-icon {
    transform: rotate(180deg);
}
.filters-dropdown .dropdown-toggle .current-filter {
    font-weight: 500;
    white-space: nowrap;
}
.filters-dropdown .dropdown-toggle .dropdown-icon {
    transition: transform 300ms ease;
    flex-shrink: 0;
}
.filters-dropdown .dropdown-menu {
    position: absolute;
    top: 100%;
    left: -1px;
    right: -1px;
    background-color: #ffffff;
    list-style: none;
    padding: 0;
    margin: 0;
    overflow: auto;
    max-height: 0;
    transition: max-height 300ms ease;
    z-index: 15;
}
.filters-dropdown .dropdown-menu .dropdown-item a {
    display: block;
    padding: 10px 15px;
    font-size: 1rem;
    line-height: 1;
    text-decoration: none;
    color: inherit;
    transition: background-color 300ms ease;
    white-space: nowrap;
}
.filters-dropdown .dropdown-menu .dropdown-item a:hover, .filters-dropdown .dropdown-menu .dropdown-item a:focus {
    background-color: rgba(255, 212, 0, 0.5);
    outline: none;
}
.filters-dropdown .dropdown-toggle[aria-expanded=true] + .dropdown-menu {
    max-height: 400px;
    border: 1px solid #A7A7A7;
    border-top: none;
}
.filters-dropdown.sup-groups-filters .dropdown-menu .dropdown-item {
    padding: 5px 10px;
}
.filters-dropdown.sup-groups-filters .dropdown-menu .dropdown-item:last-child {
    padding-bottom: 15px;
}
.filters-dropdown.sup-groups-filters .dropdown-menu .dropdown-item .sup-groups-filter__label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1rem;
    line-height: 1;
    cursor: pointer;
}
.filters-dropdown.sup-groups-filters .dropdown-menu .dropdown-item .sup-groups-filter__label input[type=checkbox] {
    width: 16px;
    height: 16px;
    cursor: pointer;
}
.filters-dropdown.sup-groups-filters .dropdown-menu .dropdown-item .sup-groups-filter__label input[type=checkbox]:checked {
    accent-color: #1F1E23;
}

section.has-black-background-color .filters-dropdown.sup-groups-filters .dropdown-menu .dropdown-item .sup-groups-filter__label {
    color: #1F1E23;
}

.breadcrumb-block {
    margin-bottom: 30px;
    font-size: 1rem;
    line-height: 1;
}
.breadcrumb-block .yoast-breadcrumbs > span {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 30px;
}
.breadcrumb-block .yoast-breadcrumbs > span span {
    text-underline-offset: 2px;
}
.breadcrumb-block .yoast-breadcrumbs > span span:not(:last-child) {
    font-weight: 600;
}

.search-results-section .has-yellow-background-color {
    padding: 120px 0;
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: 1fr repeat(12, calc(min(100% - clamp(40px, 6vw, 80px), 1440px) / 12)) 1fr;
}
.search-results-section .has-yellow-background-color > * {
    grid-column: 2/14;
}
.search-results-section .has-yellow-background-color .search-box {
    max-width: 450px;
}

.search-results-heading {
    margin-bottom: 24px;
}
.search-results-heading span {
    color: #707070;
}

.archive-wrapper_search {
    list-style: none;
    padding: 120px 0 80px;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.search-result {
    padding-bottom: 20px;
    border-bottom: 1px solid #707070;
}
.search-result__meta {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}
.search-result__meta .meta-content-wrapper {
    display: flex;
    gap: 12px;
}
.search-result__meta .meta-content-wrapper::before {
    content: "";
    display: block;
    width: 4px;
    height: auto;
    background-color: #FFD400;
    border-radius: 5px;
    flex-shrink: 0;
}
.search-result__meta .meta-content-wrapper .meta-content {
    line-height: 1.2;
    font-weight: 500;
    text-transform: uppercase;
}
.search-result .h2 {
    margin-bottom: 20px;
}
.search-result .h2 a {
    text-decoration: none;
    transition: color 300ms ease;
}
.search-result .h2 a:hover {
    color: #707070;
}
.search-result__excerpt strong {
    font-weight: 600;
}

.search-results-pagination {
    margin-bottom: 120px;
}
.search-results-pagination .pagination {
    margin-top: 0;
}
.search-results-pagination .pagination .nav-links {
    display: flex;
    align-items: center;
    gap: 10px;
}

.archive-wrapper_no-results {
    padding: 120px 0;
}

.woocommerce.post-type-archive-product .woocommerce-breadcrumb {
    display: none;
}
.woocommerce .woocommerce-breadcrumb {
    color: #1F1E23;
    margin-bottom: 1.5rem;
}
.woocommerce .page-title,
.woocommerce .product_title {
    margin-bottom: 40px;
}
.woocommerce a.button:not(.donate),
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #review_form #submit {
    display: inline-block;
    background-color: #FFD400 !important;
    color: #1F1E23 !important;
    min-width: auto;
}
.woocommerce a.button:not(.donate)::after,
.woocommerce button.button::after,
.woocommerce input.button::after,
.woocommerce #review_form #submit::after {
    content: none !important;
}
.woocommerce a.button:not(.donate):hover, .woocommerce a.button:not(.donate):active,
.woocommerce button.button:hover,
.woocommerce button.button:active,
.woocommerce input.button:hover,
.woocommerce input.button:active,
.woocommerce #review_form #submit:hover,
.woocommerce #review_form #submit:active {
    background-color: #FFE600 !important;
}
.woocommerce .woocommerce-pagination {
    margin-top: 3rem;
}
.woocommerce .woocommerce-pagination ul li span.current {
    background-color: rgba(31, 30, 35, 0.2);
    color: rgba(31, 30, 35, 0.8);
}
.woocommerce .woocommerce-no-products-found .woocommerce-info {
    border-top-color: #1F1E23;
    color: #1F1E23;
}
.woocommerce .woocommerce-no-products-found .woocommerce-info::before {
    color: #1F1E23;
}
.woocommerce a.added_to_cart {
    text-decoration: underline;
    padding-top: 0;
    margin-left: 10px;
}

.woocommerce.single-product #main {
    margin: 80px 0;
    display: grid;
    grid-template-columns: 1fr repeat(12, calc(min(100% - clamp(40px, 6vw, 80px), 1440px) / 12)) 1fr;
}
.woocommerce.single-product #main > * {
    grid-column: 2/14;
}
.woocommerce.single-product #main > *.full-width {
    grid-column: 1/-1;
}
.woocommerce.single-product #main section {
    display: block;
}
.woocommerce.single-product div.product .price,
.woocommerce.single-product div.product .stock {
    color: #1F1E23;
    margin-bottom: 30px;
}
.woocommerce.single-product div.product .woocommerce-product-gallery ol.flex-control-thumbs {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.woocommerce.single-product div.product .woocommerce-product-gallery ol.flex-control-thumbs li {
    width: calc((100% - 60px) / 4);
}
@media screen and (max-width: 960px) {
    .woocommerce.single-product div.product .woocommerce-product-gallery ol.flex-control-thumbs li {
        width: calc((100% - 40px) / 3);
    }
}
.woocommerce.single-product div.product .woocommerce-product-details__short-description {
    margin-bottom: 30px;
}
.woocommerce.single-product div.product .woocommerce-product-details__short-description p:not(:last-child) {
    margin-bottom: 1rem;
}
.woocommerce.single-product div.product form.cart:not(.variations_form) {
    display: flex;
    gap: 20px;
}
.woocommerce.single-product div.product form.cart:not(.variations_form)::before, .woocommerce.single-product div.product form.cart:not(.variations_form)::after {
    content: none;
}
.woocommerce.single-product div.product form.cart.variations_form .variations select {
    padding: 5px;
}
.woocommerce.single-product div.product form.cart.variations_form .variations tr {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.woocommerce.single-product div.product form.cart.variations_form .variations tr td.value {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.woocommerce.single-product div.product form.cart.variations_form .variations tr td.value select {
    min-width: 300px;
    margin-right: 0;
}
.woocommerce.single-product div.product form.cart.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.woocommerce.single-product div.product form.cart .quantity {
    float: none;
    margin: 0;
}
.woocommerce.single-product div.product form.cart .quantity input {
    padding: 8px;
}
.woocommerce.single-product div.product .product_meta {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.woocommerce.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel > *:not(:last-child) {
    margin-bottom: 1.25rem;
}
.woocommerce.single-product div.product .upsells,
.woocommerce.single-product div.product .related.products {
    margin-top: 80px;
}
.woocommerce.single-product div.product .upsells h2:not(.woocommerce-loop-product__title),
.woocommerce.single-product div.product .related.products h2:not(.woocommerce-loop-product__title) {
    margin-bottom: 40px;
}
.woocommerce.single-product div.product .upsells ul.products,
.woocommerce.single-product div.product .related.products ul.products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    margin-bottom: 0;
}
@media screen and (max-width: 1200px) {
    .woocommerce.single-product div.product .upsells ul.products,
    .woocommerce.single-product div.product .related.products ul.products {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media screen and (max-width: 720px) {
    .woocommerce.single-product div.product .upsells ul.products,
    .woocommerce.single-product div.product .related.products ul.products {
        grid-template-columns: 1fr;
    }
}
.woocommerce.single-product div.product .upsells ul.products::after, .woocommerce.single-product div.product .upsells ul.products::before,
.woocommerce.single-product div.product .related.products ul.products::after,
.woocommerce.single-product div.product .related.products ul.products::before {
    content: none;
}
.woocommerce.single-product div.product .upsells ul.products li.product,
.woocommerce.single-product div.product .related.products ul.products li.product {
    margin: 0;
    width: auto;
    float: none;
}
.woocommerce.single-product div.product .upsells ul.products li.product .price,
.woocommerce.single-product div.product .related.products ul.products li.product .price {
    color: #1F1E23;
}

.woocommerce-cart .site-main {
    margin: 80px 0;
    display: grid;
    grid-template-columns: 1fr repeat(12, calc(min(100% - clamp(40px, 6vw, 80px), 1440px) / 12)) 1fr;
}
.woocommerce-cart .site-main > * {
    grid-column: 2/14;
}
.woocommerce-cart .site-main > *.full-width {
    grid-column: 1/-1;
}
.woocommerce-cart .site-main section {
    display: block;
}
.woocommerce-cart .hero-heading-container h1 {
    margin-bottom: 40px;
}
.woocommerce-cart .wc-block-cart__submit-button {
    color: #ffffff !important;
    background-color: #1F1E23 !important;
}

.woocommerce-checkout .site-main {
    margin: 80px 0;
    display: grid;
    grid-template-columns: 1fr repeat(12, calc(min(100% - clamp(40px, 6vw, 80px), 1440px) / 12)) 1fr;
}
.woocommerce-checkout .site-main > * {
    grid-column: 2/14;
}
.woocommerce-checkout .site-main > *.full-width {
    grid-column: 1/-1;
}
.woocommerce-checkout .site-main section {
    display: block;
}
.woocommerce-checkout .hero-heading-container h1 {
    margin-bottom: 40px;
}
.woocommerce-checkout .wp-block-woocommerce-checkout {
    padding-top: 0;
}

.woocommerce-account .site-main {
    margin: 80px 0;
    display: grid;
    grid-template-columns: 1fr repeat(12, calc(min(100% - clamp(40px, 6vw, 80px), 1440px) / 12)) 1fr;
}
.woocommerce-account .site-main > * {
    grid-column: 2/14;
}
.woocommerce-account .site-main > *.full-width {
    grid-column: 1/-1;
}
.woocommerce-account .site-main section {
    display: block;
}
.woocommerce-account .hero-heading-container h1 {
    margin-bottom: 40px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style-type: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    padding: 10px 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li:first-child {
    padding-top: 20px;
}
.woocommerce-account .woocommerce-MyAccount-content > *:not(:last-child) {
    margin-bottom: 1.25rem;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
    border-top-color: #1F1E23;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before {
    color: #1F1E23;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses address {
    margin-top: 20px;
}
.woocommerce-account .woocommerce-MyAccount-content button[type=submit] {
    margin-top: 20px;
}

.woocommerce.tax-product_cat #main {
    margin: 80px 0;
    display: grid;
    grid-template-columns: 1fr repeat(12, calc(min(100% - clamp(40px, 6vw, 80px), 1440px) / 12)) 1fr;
}
.woocommerce.tax-product_cat #main > * {
    grid-column: 2/14;
}
.woocommerce.tax-product_cat #main > *.full-width {
    grid-column: 1/-1;
}
.woocommerce.tax-product_cat #main section {
    display: block;
}
.woocommerce.tax-product_cat .woocommerce-products-header {
    margin-bottom: 40px;
}
.woocommerce.tax-product_cat .woocommerce-products-header .term-description p:not(:last-child) {
    margin-bottom: 1.25rem;
}
.woocommerce.tax-product_cat .woocommerce-result-count {
    margin-bottom: 10px;
}
.woocommerce.tax-product_cat .woocommerce-ordering {
    margin-bottom: 40px;
}
.woocommerce.tax-product_cat .woocommerce-ordering select {
    padding: 5px;
}
.woocommerce.tax-product_cat ul.products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    margin-bottom: 0;
}
@media screen and (max-width: 1200px) {
    .woocommerce.tax-product_cat ul.products {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media screen and (max-width: 720px) {
    .woocommerce.tax-product_cat ul.products {
        grid-template-columns: 1fr;
    }
}
.woocommerce.tax-product_cat ul.products::after, .woocommerce.tax-product_cat ul.products::before {
    content: none;
}
.woocommerce.tax-product_cat ul.products li.product {
    margin: 0;
    width: auto;
    float: none;
}
.woocommerce.tax-product_cat ul.products li.product .button {
    display: inline-flex;
    margin-top: 0;
}
.woocommerce.tax-product_cat ul.products li.product .button:hover {
    color: #1F1E23;
}
.woocommerce.tax-product_cat ul.products li.product .price {
    color: #1F1E23;
}

section.pmpro-shortcode {
    padding: 80px 0 120px;
}
section.pmpro-shortcode:has(.pmpro-member-area-menu) {
    /*.pmpro-menu-wrapper {
        display: flex;

        @include mq-sm {
            flex-direction: column;
        }

        .pmpro-member-area-menu {
            width: 30%;
            padding-right: 5%;

            @include mq-sm {
                width: 100%;
                padding-right: 0;
            }
        }

        .pmpro {
            display: block;
            width: 70%;

            @include mq-sm {
                width: 100%;
                padding-top: $pd-sm;
            }
        }
    } */
}
section.pmpro-shortcode:has(.pmpro-member-area-menu) .pmpro-member-area-menu {
    width: 30%;
    padding-right: 5%;
    float: left;
}
@media screen and (max-width: 720px) {
    section.pmpro-shortcode:has(.pmpro-member-area-menu) .pmpro-member-area-menu {
        width: 100%;
        padding-right: 0;
        float: none;
    }
}
section.pmpro-shortcode:has(.pmpro-member-area-menu) .pmpro {
    display: block;
    width: 70%;
    float: right;
}
@media screen and (max-width: 720px) {
    section.pmpro-shortcode:has(.pmpro-member-area-menu) .pmpro {
        width: 100%;
        padding-top: 40px;
        float: none;
    }
}
section.pmpro-shortcode:has(.pmpro-member-area-menu) .pmpro_message {
    display: block;
    width: 70%;
    float: right;
    margin-top: 0;
}
@media screen and (max-width: 720px) {
    section.pmpro-shortcode:has(.pmpro-member-area-menu) .pmpro_message {
        width: 100%;
        margin-top: 40px;
        margin-bottom: 0;
        float: none;
    }
}
section.pmpro-shortcode:has(.pmpro-member-area-menu) section#pmpro_cancel > * {
    clear: both;
}
section.pmpro-shortcode:has(.pmpro-member-area-menu) section#pmpro_cancel .pmpro_message {
    width: 100%;
}

.pmpro {
    color: #1F1E23;
}
.pmpro section {
    display: block;
}
.pmpro > .pmpro_section {
    margin: 0;
}
.pmpro .pmpro_card,
.pmpro .pmpro_message {
    box-shadow: none;
    margin: 0;
    overflow-wrap: break-word;
}
.pmpro .pmpro_message {
    margin-bottom: 18px;
}
.pmpro .pmpro_card.welcome-message {
    padding: 36px;
}
.pmpro .pmpro_card.welcome-message > * {
    margin-bottom: 1.5rem;
}
.pmpro .pmpro_card.welcome-message > *:last-child {
    margin-bottom: 0;
}
.pmpro .pmpro_card.pmpro_content_message {
    margin: 80px 0;
    max-width: none;
}
.pmpro .pmpro_card.pmpro_content_message h2 {
    flex-wrap: wrap;
}
.pmpro .pmpro_card.pmpro_content_message h2 svg {
    flex-shrink: 0;
}
.pmpro .pmpro_btn,
.pmpro #pmpro_login #loginform .login-submit .button {
    color: #1F1E23;
    border-color: #FFD400;
    box-shadow: none;
}
.pmpro .pmpro_btn:hover, .pmpro .pmpro_btn:focus,
.pmpro #pmpro_login #loginform .login-submit .button:hover,
.pmpro #pmpro_login #loginform .login-submit .button:focus {
    background-color: #FFE600;
    border-color: #FFE600;
    color: #1F1E23;
}
.pmpro .pmpro_btn-cancel {
    border-color: #1F1E23;
}
.pmpro .pmpro_form_field-password-toggle button {
    border: 1px solid transparent !important;
    color: #1F1E23 !important;
}
.pmpro .pmpro_form_field-password-toggle button .pmpro_icon-eye svg,
.pmpro .pmpro_form_field-password-toggle button:focus .pmpro_icon-eye svg,
.pmpro .pmpro_form_field-password-toggle button:active .pmpro_icon-eye svg {
    stroke: #1F1E23;
}
.pmpro h2,
.pmpro .pmpro_section_title,
.pmpro .pmpro_form_heading,
.pmpro .pmpro_card_title {
    font-size: 1.75rem;
    line-height: 2.375rem;
    font-weight: 600;
}
.pmpro a:focus,
.pmpro a:focus-visible {
    outline: 2px solid #1F1E23 !important;
    border-radius: 5px !important;
}
.pmpro input:focus,
.pmpro input:focus-visible,
.pmpro button:focus,
.pmpro button:focus-visible,
.pmpro select:focus,
.pmpro select:focus-visible {
    border-color: #1F1E23 !important;
    box-shadow: 0 0 0 1px #1F1E23 !important;
    outline-offset: 0 !important;
}
.pmpro .avatar {
    box-shadow: none;
}
@media screen and (max-width: 720px) {
    .pmpro .pmpro_card .pmpro_card_content,
    .pmpro .pmpro_card_actions,
    .pmpro .pmpro_card_title {
        padding-left: 20px;
        padding-right: 20px;
    }
}

body.pmpro-login #pmpro_login .pmpro_card {
    max-width: 720px;
    margin: 0 auto;
}

body.pmpro-member-profile-edit .pmpro_form_submit {
    margin-top: 60px;
}

#pmpro_levels {
    gap: 40px;
}
@media screen and (max-width: 960px) {
    #pmpro_levels {
        gap: 30px;
    }
}
#pmpro_levels .pmpro_level {
    padding: 0;
    flex: 0 0 calc((100% - 40px) / 2);
}
@media screen and (max-width: 960px) {
    #pmpro_levels .pmpro_level {
        flex: 0 0 calc((100% - 30px) / 2);
    }
}
@media screen and (max-width: 720px) {
    #pmpro_levels .pmpro_level {
        flex: 0 0 100%;
    }
}
#pmpro_levels .pmpro_level-highlight .pmpro_card {
    border: 4px solid #FFD400;
    position: relative;
    overflow: visible;
}
#pmpro_levels .pmpro_level-highlight .pmpro_card::before {
    content: "Most Popular";
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #FFD400;
    color: #1F1E23;
    font-size: 1.2rem;
    line-height: 1;
    font-weight: 600;
    padding: 15px 25px;
    text-transform: uppercase;
    text-align: center;
}
#pmpro_levels .pmpro_level-highlight .pmpro_card h2::before {
    background-image: url("../../assets/img/membership-digital.png") !important;
}
#pmpro_levels .pmpro_level:last-child .pmpro_card h2::before {
    background-image: url("../../assets/img/membership-basic.png") !important;
}
#pmpro_levels .pmpro_level .pmpro_card {
    border-radius: 20px;
    padding: 45px 30px 30px;
    gap: 30px;
}
@media screen and (max-width: 720px) {
    #pmpro_levels .pmpro_level .pmpro_card {
        padding: 30px 20px;
    }
}
#pmpro_levels .pmpro_level .pmpro_card h2 {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
    text-align: center;
    padding: 0;
}
#pmpro_levels .pmpro_level .pmpro_card h2::before {
    content: "";
    display: block;
    width: 100%;
    height: 200px;
    background-image: url("../../assets/img/membership-uk.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin: 0 auto 20px;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_content {
    order: 1;
    padding: 0;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_content .pmpro_level-description p {
    margin-bottom: 1rem;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_content .pmpro_level-description ul {
    list-style-type: none;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_content .pmpro_level-description ul li {
    margin-bottom: 0.5rem;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_content .pmpro_level-description ul li::before {
    content: "✓";
    color: green;
    margin-right: 8px;
    font-weight: 700;
    font-size: 1.3rem;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_content .pmpro_level-description ul li:is(.cross) {
    color: rgba(31, 30, 35, 0.6);
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_content .pmpro_level-description ul li:is(.cross)::before {
    content: "✗";
    color: red;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_actions {
    background-color: transparent;
    border: none;
    padding: 0;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_actions .pmpro_level-meta {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 10px;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_actions .pmpro_level-meta .pmpro_level-price {
    order: 2;
    font-weight: 600;
}
#pmpro_levels .pmpro_level .pmpro_card .pmpro_card_actions .pmpro_level-meta a {
    margin-left: 0;
    float: none;
    width: 100%;
    max-width: 300px;
}

body.pmpro-levels .pmpro_actions_nav {
    margin-bottom: 80px;
}

body.pmpro-account .pmpro > section {
    padding: 0;
    margin-bottom: 80px;
}
body.pmpro-account .pmpro > section:last-child {
    margin-bottom: 0;
}
body.pmpro-account .pmpro .pmpro_section_title {
    margin-bottom: 1.5rem;
}
body.pmpro-account .pmpro .pmpro_card {
    max-width: none;
}

body.pmpro-checkout .pmpro form {
    margin: 0 auto;
    width: 100%;
    max-width: 1000px;
}
body.pmpro-checkout .pmpro form > * {
    width: 100%;
    max-width: none;
    margin-bottom: 20px;
}
body.pmpro-checkout .pmpro form select {
    box-sizing: border-box;
    max-width: 100%;
    width: 100%;
}
body.pmpro-checkout .pmpro form select#donation_dropdown {
    max-width: none;
    width: auto;
}
body.pmpro-checkout .pmpro .pmpro_card {
    max-width: none;
}
body.pmpro-checkout .pmpro .pmpro_card .pmpro_level_description_text p {
    margin-bottom: 1rem;
}
body.pmpro-checkout .pmpro .pmpro_card .pmpro_level_description_text ul {
    list-style-type: none;
}
body.pmpro-checkout .pmpro .pmpro_card .pmpro_level_description_text ul li {
    margin-bottom: 0.5rem;
}
body.pmpro-checkout .pmpro .pmpro_card .pmpro_level_description_text ul li::before {
    content: "✓";
    color: green;
    margin-right: 8px;
    font-weight: 700;
    font-size: 1.3rem;
}
body.pmpro-checkout .pmpro .pmpro_card .pmpro_level_description_text ul li:is(.cross) {
    color: rgba(31, 30, 35, 0.6);
}
body.pmpro-checkout .pmpro .pmpro_card .pmpro_level_description_text ul li:is(.cross)::before {
    content: "✗";
    color: red;
}
body.pmpro-checkout .pmpro #pmpro_form_fieldset-donation .pmpro_card {
    border: 4px solid #FFD400;
    border-radius: 8px;
    background-color: #FFFAF0;
}
body.pmpro-checkout .pmpro #pmpro_form_fieldset-donation .pmpro_form_fields-inline {
    gap: 20px;
}
body.pmpro-checkout .pmpro #pmpro_form_fieldset-donation .pmpro_form_hint {
    font-size: 1.125rem;
    opacity: 1;
}
body.pmpro-checkout .pmpro #pmpro_gift_aid .pmpro_form_fields-description {
    margin: 0;
}
body.pmpro-checkout .pmpro .pmpro_form_submit {
    margin-top: 40px;
}
body.pmpro-checkout .pmpro #pmpro_btn-submit-paypalexpress.pmpro_btn-submit-checkout-paypal {
    background-color: #FFD400;
    border-color: #FFD400;
}
body.pmpro-checkout .pmpro #pmpro_btn-submit-paypalexpress.pmpro_btn-submit-checkout-paypal:hover {
    background-color: #FFE600;
    border-color: #FFE600;
}

body.pmpro-confirmation .pmpro section p {
    margin-bottom: 1rem;
}
body.pmpro-confirmation .pmpro section .pmpro_card {
    max-width: none;
    margin-bottom: 2rem;
}
body.pmpro-confirmation .pmpro section .pmpro_actions_nav-right {
    text-align: left;
}

body.pmpro-invoice .pmpro section,
body.pmpro-invoice .pmpro .pmpro_actions_nav,
body.pmpro-billing .pmpro section,
body.pmpro-billing .pmpro .pmpro_actions_nav {
    grid-column: 4/12;
}
body.pmpro-invoice .pmpro section,
body.pmpro-billing .pmpro section {
    padding-bottom: 40px;
}
body.pmpro-invoice .pmpro .pmpro_section_title,
body.pmpro-billing .pmpro .pmpro_section_title {
    margin-bottom: 1.5rem;
}
body.pmpro-invoice .pmpro .pmpro_actions_nav,
body.pmpro-billing .pmpro .pmpro_actions_nav {
    padding-bottom: 80px;
}
body.pmpro-invoice .pmpro .pmpro_card,
body.pmpro-billing .pmpro .pmpro_card {
    max-width: none;
}
body.pmpro-invoice .pmpro .pmpro_card .pmpro_btn-print,
body.pmpro-billing .pmpro .pmpro_card .pmpro_btn-print {
    color: #1F1E23;
}

.pmpro-member-area-menu .pmpro-member-links {
    list-style-type: none;
    display: flex;
    flex-direction: column;
}
.pmpro-member-area-menu .pmpro-member-links li {
    padding: 20px 0;
    border-bottom: rgba(31, 30, 35, 0.2) 1px solid;
}
@media screen and (max-width: 720px) {
    .pmpro-member-area-menu .pmpro-member-links li {
        padding: 15px 0;
    }
}
.pmpro-member-area-menu .pmpro-member-links li:first-child {
    padding-top: 0;
}
.pmpro-member-area-menu .pmpro-member-links li.current-menu-item {
    font-weight: 600;
}

#pmpro_form_fieldset-eds_contact_information input:not([type=checkbox]):not([type=radio]),
#pmpro_form_fieldset-eds_contact_information select,
#pmpro_form_fieldset-eds_additional_information input:not([type=checkbox]):not([type=radio]),
#pmpro_form_fieldset-eds_additional_information select,
#pmpro_form_fieldset-eds_comms_information input:not([type=checkbox]):not([type=radio]),
#pmpro_form_fieldset-eds_comms_information select {
    width: 100%;
}

#pmpro_form_fieldset-eds_contact_information .pmpro_form_fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}
@media screen and (max-width: 720px) {
    #pmpro_form_fieldset-eds_contact_information .pmpro_form_fields {
        grid-template-columns: 1fr;
    }
}
#pmpro_form_fieldset-eds_contact_information .pmpro_form_fields .pmpro_form_field {
    margin: 0;
}
#pmpro_form_fieldset-eds_contact_information .pmpro_form_fields .pmpro_form_field:nth-child(2) {
    grid-column-start: 1;
}
#pmpro_form_fieldset-eds_contact_information .pmpro_form_fields input,
#pmpro_form_fieldset-eds_contact_information .pmpro_form_fields select {
    width: 100%;
}
#pmpro_form_fieldset-eds_contact_information .pmpro_form_fields label {
    display: block;
}

#pmpro_form_fieldset-eds_additional_information select[name=support_group] option[value^=region_] {
    font-weight: 600;
    color: #1F1E23;
}
#pmpro_form_fieldset-eds_additional_information h3 {
    font-weight: 600;
    margin-top: 10px;
}
#pmpro_form_fieldset-eds_additional_information #support_group_div {
    margin-bottom: 20px;
}
#pmpro_form_fieldset-eds_additional_information .pmpro_form_field-radio-items .pmpro_form_field-radio-item {
    background-color: #F0F0F0;
    padding: 10px 20px;
    border-radius: 8px;
    margin: 10px 0;
}

#pmpro_form_fieldset-eds_comms_information h3 {
    font-weight: 600;
    margin-top: 10px;
}
#pmpro_form_fieldset-eds_comms_information .mailchimp-text {
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: rgba(31, 30, 35, 0.8);
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsImJhc2UvX2luZGV4LnNjc3MiLCJoZWxwZXJzL19pbmRleC5zY3NzIiwiaGVscGVycy9fcGxhY2Vob2xkZXJzLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJoZWxwZXJzL192YXJpYWJsZXMuc2NzcyIsImhlbHBlcnMvX2NvbG9ycy5zY3NzIiwiYmFzZS9fcmVzZXQuc2NzcyIsImJhc2UvX2xheW91dC5zY3NzIiwiaGVscGVycy9fYnJlYWtwb2ludHMuc2NzcyIsImJhc2UvX2dsb2JhbC5zY3NzIiwiaGVscGVycy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL19pbmRleC5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX25hdi5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fNDA0LnNjc3MiLCJjb21wb25lbnRzL19ibG9jay1oZWFkaW5nLnNjc3MiLCJjb21wb25lbnRzL19zd2lwZXItY29udHJvbHMuc2NzcyIsImNvbXBvbmVudHMvX2xpZ2h0Ym94LnNjc3MiLCJjb21wb25lbnRzL19wb3N0LWl0ZW0uc2NzcyIsImNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2ZpbHRlcnMuc2NzcyIsImNvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2guc2NzcyIsIndvb2NvbW1lcmNlL19zaG9wLnNjc3MiLCJ3b29jb21tZXJjZS9fcHJvZHVjdC5zY3NzIiwid29vY29tbWVyY2UvX2NhcnQuc2NzcyIsIndvb2NvbW1lcmNlL19jaGVja291dC5zY3NzIiwid29vY29tbWVyY2UvX2FjY291bnQuc2NzcyIsIndvb2NvbW1lcmNlL19jYXRlZ29yaWVzLnNjc3MiLCJtZW1iZXJzaGlwcy9fZ2VuZXJhbC5zY3NzIiwibWVtYmVyc2hpcHMvX2xldmVscy5zY3NzIiwibWVtYmVyc2hpcHMvX2FjY291bnQuc2NzcyIsIm1lbWJlcnNoaXBzL19jaGVja291dC5zY3NzIiwibWVtYmVyc2hpcHMvX2JpbGxpbmcuc2NzcyIsIm1lbWJlcnNoaXBzL19tZW1iZXJzLW1lbnUuc2NzcyIsIm1lbWJlcnNoaXBzL191c2VyLWZpZWxkcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7O0NBQUE7QUNlQTtJQUNJLG1CQUFBO0lBQ0Esb0JBQUE7SUFDQSxnQkFBQTtBSFVKOztBR05BO0lBQ0ksZUFBQTtJQUNBLG9CQUFBO0FIU0o7O0FHTkE7O0lBQ0ksZUFBQTtJQUNBLGNBQUE7SUFDQSxnQkFBQTtJQUNBLHlCQUFBO0FIVUo7O0FHTkE7SUFDSSxpQkFBQTtJQUNBLGlCQUFBO0lBQ0EsZ0JBQUE7QUhTSjs7QUdMQTtJQUNJLGtCQUFBO0lBQ0EscUJBQUE7SUFDQSxnQkFBQTtBSFFKOztBR0pBOzs7SUFDSSxtQkFBQTtJQUNBLG9CQUFBO0lBQ0EsZ0JBQUE7QUhTSjs7QUdMQTtJQUNJLHdEQUFBO0lBQ0EsdURBQUE7SUFDQSxnQkFBQTtBSFFKOztBSWpFQTtJQUNJLGdDQ01VO0lETFYsY0VISTtBTnVFUjs7QUloRUE7OztJQUdJLGNFWEk7QU44RVI7O0FJaEVBO0lBQ0ksZ0JBQUE7QUptRUo7O0FJaEVBO0lBQ0ksa0JBQUE7QUptRUo7O0FPdEZFLHFCQUFBO0FBQ0E7OztJQUdFLHNCQUFBO0FQeUZKOztBT3RGRSxnQ0FBQTtBQUNBO0lBQ0UsMkJBQUE7SUFDQSw4QkFBQTtJQUNBLHNCQUFBO0FQeUZKOztBT3RGRSxzRUFBQTtBQUNBOzs7Ozs7Ozs7Ozs7O0lBYUUsU0FBQTtJQUNBLFVBQUE7SUFDQSxTQUFBO0lBQ0Esd0JBQUE7QVB5Rko7O0FPdEZFLDJHQUFBO0FBQ0E7O0lBRUUsZ0JBQUE7SUFDQSxlQUFBO0FQeUZKOztBT3RGRTtJQUNFLFVBQUE7SUFDQSxTQUFBO0FQeUZKOztBT3RGRSwyQkFBQTtBQUNBO0lBQ0UsdUJBQUE7QVB5Rko7O0FPdEZFLDJCQUFBO0FBQ0E7SUFDRSxpQkFBQTtJQUNBLGdCQUFBO0FQeUZKOztBT3RGRSxrRUFBQTtBQUNBOzs7Ozs7O0lBT0UsZ0JBQUE7QVB5Rko7O0FPdEZFLDBEQUFBO0FBQ0E7SUFDRSxpQ0FBQTtJQUFBLDhCQUFBO0lBQ0EsbUJBQUE7QVB5Rko7O0FPdEZFLG9DQUFBO0FBQ0E7O0lBRUUsZUFBQTtJQUNBLGNBQUE7QVB5Rko7O0FPdEZFO0lBQ0UsY0FBQTtBUHlGSjs7QU90RkUseUNBQUE7QUFDQTs7OztJQUlFLG9CQUFBO0lBQ0Esa0JBQUE7QVB5Rko7O0FPdEZFLDhEQUFBO0FBQ0E7SUFDRSxnQkFBQTtBUHlGSjs7QU90RkUsZ0VBQUE7QUFDQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0lBQ0EsZUFBQTtJQUNBLGNBQUE7QVB5Rko7QU92Rkk7Ozs7Ozs7Ozs7OztJQVlFLGNBQUE7SUFDQSxlQUFBO0lBQ0EsY0FBQTtJQUNBLHNCQUFBO0FQeUZOO0FPdEZJOztJQUVFLGtCQUFBO0lBQ0Esb0JBQUE7QVB3Rk47QU9yRkk7SUFDRSxlQUFBO0lBQ0EsY0FBQTtBUHVGTjtBT3BGSTtJQUNFLGlCQUFBO0lBQ0EsZUFBQTtBUHNGTjtBT25GSTtJQUNFLGVBQUE7QVBxRk47O0FPakZFLGdHQUFBO0FBQ0E7SUFDRTtRQUNFLHFCQUFBO0lQb0ZGO0lPakZBOzs7UUFHRSxxQ0FBQTtRQUNBLHVDQUFBO1FBQ0Esc0NBQUE7UUFDQSxnQ0FBQTtJUG1GRjtBQUNKO0FRL09BOzs7OztJQU1JLGFBQUE7SUFDQSxnR0FBQTtBUmdQSjtBUTlPSTs7Ozs7SUFDSSxpQkFBQTtBUm9QUjtBUWxQUTs7Ozs7SUFDSSxpQkFBQTtBUndQWjs7QVFuUEE7O0lBRUksa0JBQUE7QVJzUEo7O0FRblBBO0lBQ0ksYUFBQTtJQUNBLG1CQUFBO0lBQ0EsbUJBQUE7QVJzUEo7O0FRblBBO0lBQ0ksYUFBQTtJQUNBLHVEQUFBO0lBQ0EsUUFBQTtBUnNQSjtBU3hRSTtJRGVKO1FBTVEsMEJBQUE7SVJ1UEo7QUFDSjs7QVFwUEE7SUFDSSxhQUFBO0lBQ0EscUNBQUE7SUFDQSxTQUFBO0FSdVBKO0FTN1FJO0lEbUJKO1FBTVEsU0FBQTtJUndQSjtBQUNKO0FTeFJJO0lEeUJKO1FBVVEsMEJBQUE7SVJ5UEo7QUFDSjs7QVF0UEE7SUFDSSxhQUFBO0lBQ0EscUNBQUE7SUFDQSxTQUFBO0FSeVBKO0FTdlJJO0lEMkJKO1FBTVEsU0FBQTtJUjBQSjtBQUNKO0FTbFNJO0lEaUNKO1FBVVEscUNBQUE7SVIyUEo7QUFDSjtBUzdTSTtJRHVDSjtRQWNRLDBCQUFBO0lSNFBKO0FBQ0o7O0FRelBBO0lBQ0ksYUFBQTtJQUNBLHFDQUFBO0lBQ0EsU0FBQTtBUjRQSjtBUzVTSTtJRDZDSjtRQU1RLHFDQUFBO0lSNlBKO0FBQ0o7QVM3VEk7SUR5REo7UUFVUSwwQkFBQTtJUjhQSjtBQUNKOztBVWhWQTtJQUNJLGFBQUE7SUFDQSxzQkFBQTtJQUNBLDhCQUFBO0lBQ0EsaUJBQUE7QVZtVko7QVVqVkk7SUFFSSxnQkFBQTtBVmtWUjtBVS9VSTtJQUNJLHlCSmJBO0FOOFZSO0FVOVVJO0lBQ0kseUJKZkM7QU4rVlQ7O0FVNVVBO0lBQ0ksT0FBQTtJQUNBLGFBQUE7SUFDQSxzQkFBQTtBVitVSjtBVTdVSTtJQUNJLGtCQUFBO0FWK1VSOztBVXpVUTtJQUNJLHFCQUFBO0FWNFVaOztBVXZVQTs7SUFFSSxjQUFBO0lBQ0EsNENBQUE7QVYwVUo7QVV4VUk7O0lBQ0ksa0NBQUE7QVYyVVI7O0FVdlVBO0lBQ0kseUJKbkRJO0FONlhSOztBVXZVQTtJQUNJLHlCSnRESTtJSXVESixjSnhESTtBTmtZUjs7QVV2VUE7SUFDSSx5Qkp6REs7QU5tWVQ7O0FVdlVBO0lBQ0kseUJKM0RjO0FOcVlsQjs7QVV2VUE7SUFDSSx5QkozREc7SUk0REgsY0pyRUk7QU4rWVI7O0FVdlVBO0lBQ0kseUJKOURZO0FOd1loQjs7QVV2VUE7SUFDSSx5QkpoRUs7SUlpRUwsY0o5RUk7QU53WlI7O0FVdlVBO0lBQ0kseUJKbkVJO0lJb0VKLGNKbkZJO0FO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Z3pFaEI7O0FvQ3Z5RVE7Ozs7SUFFSSxpQkFBQTtBcEM0eUVaO0FvQ3p5RVE7O0lBQ0ksb0JBQUE7QXBDNHlFWjtBb0N6eUVROztJQUNJLHFCQUFBO0FwQzR5RVo7QW9DenlFUTs7SUFDSSxvQi9CdEJKO0FMazBFUjtBb0N6eUVROztJQUNJLGVBQUE7QXBDNHlFWjtBb0MxeUVZOztJQUNJLGM5QjdDUjtBTjAxRVI7O0FxQ3YxRUk7SUFDSSxxQkFBQTtJQUNBLGFBQUE7SUFDQSxzQkFBQTtBckMwMUVSO0FxQ3gxRVE7SUFDSSxlQUFBO0lBQ0EsOENBQUE7QXJDMDFFWjtBU3IxRUk7STRCUEk7UUFLUSxlQUFBO0lyQzIxRVo7QUFDSjtBcUN6MUVZO0lBQ0ksY0FBQTtBckMyMUVoQjtBcUN4MUVZO0lBQ0ksZ0JBQUE7QXJDMDFFaEI7O0FzQzEyRUk7Ozs7OztJQUVJLFdBQUE7QXRDaTNFUjs7QXNDMzJFSTtJQUNJLGFBQUE7SUFDQSxnREFBQTtJQUNBLFNBQUE7QXRDODJFUjtBUy8yRUk7STZCRkE7UUFNUSwwQkFBQTtJdEMrMkVSO0FBQ0o7QXNDNzJFUTtJQUNJLFNBQUE7QXRDKzJFWjtBc0M3MkVZO0lBQ0ksb0JBQUE7QXRDKzJFaEI7QXNDMzJFUTs7SUFFSSxXQUFBO0F0QzYyRVo7QXNDMTJFUTtJQUNJLGNBQUE7QXRDNDJFWjs7QXNDcjJFSTtJQUNJLGdCQUFBO0lBQ0EsY2hDN0NBO0FOcTVFUjtBc0NyMkVJO0lBQ0ksZ0JBQUE7SUFDQSxnQkFBQTtBdEN1MkVSO0FzQ3AyRUk7SUFDSSxtQkFBQTtBdENzMkVSO0FzQ2wyRVE7SUFDSSx5QmhDakRJO0lnQ2tESixrQkFBQTtJQUNBLGtCQUFBO0lBQ0EsY0FBQTtBdENvMkVaOztBc0M5MUVJO0lBQ0ksZ0JBQUE7SUFDQSxnQkFBQTtBdENpMkVSO0FzQzkxRUk7SUFDSSxtQkFBQTtJQUNBLG9CQUFBO0lBQ0EsNEJBQUE7QXRDZzJFUiIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKlxuVGhlIGJhc2UgZm9sZGVyIGlzIHVzZWQgZm9yIGdlbmVyYWwgc3R5bGVzIHRoYXQgYXJlIHVzZWQgYWNyb3NzIHRoZSB3ZWJzaXRlLlxuXG5UaGUgYW5pbWF0aW9ucyBmaWxlIGlzIHVzZWQgZm9yIGdlbmVyaWMgYW5pbWF0aW9ucyB0aGF0IGFyZSBub3QgYmxvY2sgc3BlY2lmaWMuXG5UaGUgZ2xvYmFsIGZpbGUgaXMgdXNlZCBmb3IgZ2VuZXJhbCBzdHlsZSBjaG9pY2VzIHN1Y2ggYXMgYm9yZGVyIHJhZGl1cywgb3ZlcmxheXMgYW5kIGJveCBzaGFkb3dzLlxuVGhlIGdyaWQgZmlsZSBpcyBmb3IgY3JlYXRpbmcgYSBncmlkIHN5c3RlbSB1c2luZyBmbGV4Ym94IHNob3VsZCB0aGUgZGVzaWduIGNhbGwgZm9yIGEgZ3JpZCBzeXN0ZW0uIEl0IG1heSBiZSBjb21tZW50ZWQgb3V0IGlmIG5vdCBuZWVkZWQuXG5UaGUgbGF5b3V0IGZpbGUgaXMgdXNlZCBmb3IgZ2VuZXJhbCBsYXlvdXQgcGF0dGVybnMuXG5UaGUgcmVzZXQgZmlsZSBpcyB1c2VkIHRvIHJlc2V0IHRoZSBkZWZhdWx0IGJyb3dzZXIgc3R5bGVzLlxuVGhlIHR5cG9ncmFwaHkgZmlsZSBpcyB1c2VkIGZvciBmb250IHN0eWxlcy5cblxuVGhlIGluZGV4IGZpbGUgaXMgdXNlZCB0byBpbXBvcnQgYWxsIHRoZSBmaWxlcyBpbiB0aGUgYmFzZSBmb2xkZXIuXG4qL1xuLypcblRoaXMgaGVscGVycyBmb2xkZXIgaXMgdXNlZCB0byBzdG9yZSByZXVzYWJsZSBTQVNTIHV0aWxpdGllcyB0byBtYWtlIHN0eWxpbmcgbW9yZSBtYWludGFpbmFibGUgYW5kIGNvbnNpc3RlbnQgYWNyb3NzIGEgcHJvamVjdC4gVGhlIGZpbGVzIGNhbiBiZSBpbXBvcnRlZCBpbnRvIGRpZmZlcmVudCBTQVNTIG1vZHVsZXMuXG5cblRoZSBicmVha3BvaW50cyBmaWxlIGlzIHVzZWQgdG8gZGVmaW5lIG1lZGlhIHF1ZXJ5IGJyZWFrcG9pbnRzLlxuVGhlIGNvbG9ycyBmaWxlIGlzIHVzZWQgdG8gZGVmaW5lIGNvbG9yIHZhcmlhYmxlcyBhY2NvcmRpbmcgdG8gdGhlIGRlc2lnbi5cblRoZSBtaXhpbnMgZmlsZSBpcyB1c2VkIHRvIGRlZmluZSByZXVzYWJsZSBTQVNTIG1peGlucyB1c2luZyBAaW5jbHVkZS5cblRoZSBwbGFjZWhvbGRlcnMgZmlsZSBpcyB1c2VkIHRvIGRlZmluZSBwbGFjZWhvbGRlciBzZWxlY3RvcnMgdXNpbmcgQGV4dGVuZC5cblRoZSB6aW5kZXggZmlsZSBpcyB1c2VkIHRvIGRlZmluZSB6LWluZGV4IHZhbHVlcyBmb3Igc3RhY2tpbmcgZWxlbWVudHMgY2xlYXJseSBpbiBvbmUgcGxhY2UuXG5cblRoZSBpbmRleCBmaWxlIGlzIHVzZWQgdG8gaW1wb3J0IGFsbCB0aGUgZmlsZXMgaW4gdGhlIGhlbHBlcnMgZm9sZGVyLlxuKi9cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtYnJlYWRjcnVtYiwgYm9keTpub3QoLndwLWFkbWluKSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uc21hbGwtdGV4dCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xufVxuXG5ib2R5Om5vdCgud3AtYWRtaW4pIC5idXR0b24sXG4ud3AtYmxvY2suYWNmLWJsb2NrLXByZXZpZXcgLmJ1dHRvbiwgLnNlYXJjaC1ib3ggLnNlYXJjaC1pbnB1dCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmg0IHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ud3lzaXd5ZyBibG9ja3F1b3RlLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi4zNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIGgyLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLnVwc2VsbHMgaDI6bm90KC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlKSxcbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAucmVsYXRlZC5wcm9kdWN0cyBoMjpub3QoLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUpLCAud29vY29tbWVyY2UgLnBhZ2UtdGl0bGUsXG4ud29vY29tbWVyY2UgLnByb2R1Y3RfdGl0bGUsIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi43NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uaDEge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMi4yNXJlbSwgMS44NzVyZW0gKyAxLjY2Njd2dywgMy4zNzVyZW0pO1xuICAgIGxpbmUtaGVpZ2h0OiBjbGFtcCgyLjYyNXJlbSwgMi4xNjY3cmVtICsgMi4wMzd2dywgNHJlbSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuYm9keTpub3QoLndwLWFkbWluKSB7XG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogIzFGMUUyMztcbn1cblxuLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yLFxuLmhhcy1ncmVlbi1iYWNrZ3JvdW5kLWNvbG9yLFxuLmhhcy1wdXJwbGUtYmFja2dyb3VuZC1jb2xvciB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5ib2xkIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qIEJveCBzaXppbmcgcnVsZXMgKi9cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogUHJldmVudCBmb250IHNpemUgaW5mbGF0aW9uICovXG5odG1sIHtcbiAgICAtbW96LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiBub25lO1xuICAgIHRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG59XG5cbi8qIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBpbiBmYXZvdXIgb2YgYmV0dGVyIGNvbnRyb2wgaW4gYXV0aG9yZWQgQ1NTICovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKiBSZW1vdmUgbGlzdCBzdHlsZXMgb24gdWwsIG9sIGVsZW1lbnRzIHdpdGggYSBsaXN0IHJvbGUsIHdoaWNoIHN1Z2dlc3RzIGRlZmF1bHQgc3R5bGluZyB3aWxsIGJlIHJlbW92ZWQgKi9cbnVsW3JvbGU9bGlzdF0sXG5vbFtyb2xlPWxpc3RdIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbn1cblxudWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vKiBTZXQgY29yZSByb290IGRlZmF1bHRzICovXG5odG1sOmZvY3VzLXdpdGhpbiB7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbi8qIFNldCBjb3JlIGJvZHkgZGVmYXVsdHMgKi9cbmJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi8qIFNldCBzaG9ydGVyIGxpbmUgaGVpZ2h0cyBvbiBoZWFkaW5ncyBhbmQgaW50ZXJhY3RpdmUgZWxlbWVudHMgKi9cbmgxLFxuaDIsXG5oMyxcbmg0LFxuYnV0dG9uLFxuaW5wdXQsXG5sYWJlbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbn1cblxuLyogQSBlbGVtZW50cyB0aGF0IGRvbid0IGhhdmUgYSBjbGFzcyBnZXQgZGVmYXVsdCBzdHlsZXMgKi9cbmE6bm90KFtjbGFzc10pIHtcbiAgICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IGF1dG87XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLyogTWFrZSBpbWFnZXMgZWFzaWVyIHRvIHdvcmsgd2l0aCAqL1xuaW1nLFxucGljdHVyZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5pZnJhbWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBJbmhlcml0IGZvbnRzIGZvciBpbnB1dHMgYW5kIGJ1dHRvbnMgKi9cbmlucHV0LFxuYnV0dG9uLFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuLyogTWFrZSBzdXJlIHRleHRhcmVhcyB3aXRob3V0IGEgcm93cyBhdHRyaWJ1dGUgYXJlIG5vdCB0aW55ICovXG50ZXh0YXJlYTpub3QoW3Jvd3NdKSB7XG4gICAgbWluLWhlaWdodDogMTBlbTtcbn1cblxuLyogVW5kbyByZXNldCBydWxlcyBpbnNpZGUgdGhlIGNsYXNzaWMgZWRpdG9yIChUaW55TUNFKSBpZnJhbWUgKi9cbmJvZHkubWNlLWNvbnRlbnQtYm9keSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBtYXJnaW46IHJldmVydDtcbiAgICBwYWRkaW5nOiByZXZlcnQ7XG4gICAgYm9yZGVyOiByZXZlcnQ7XG59XG5ib2R5Lm1jZS1jb250ZW50LWJvZHkgaDEsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBoMiwgYm9keS5tY2UtY29udGVudC1ib2R5IGgzLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgaDQsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBoNSwgYm9keS5tY2UtY29udGVudC1ib2R5IGg2LCBib2R5Lm1jZS1jb250ZW50LWJvZHkgcCwgYm9keS5tY2UtY29udGVudC1ib2R5IGJsb2NrcXVvdGUsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBwcmUsXG5ib2R5Lm1jZS1jb250ZW50LWJvZHkgYSwgYm9keS5tY2UtY29udGVudC1ib2R5IGFiYnIsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBhY3JvbnltLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgYWRkcmVzcywgYm9keS5tY2UtY29udGVudC1ib2R5IGJpZywgYm9keS5tY2UtY29udGVudC1ib2R5IGNpdGUsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBjb2RlLFxuYm9keS5tY2UtY29udGVudC1ib2R5IGRlbCwgYm9keS5tY2UtY29udGVudC1ib2R5IGRmbiwgYm9keS5tY2UtY29udGVudC1ib2R5IGVtLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgaW1nLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgaW5zLCBib2R5Lm1jZS1jb250ZW50LWJvZHkga2JkLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgcSwgYm9keS5tY2UtY29udGVudC1ib2R5IHMsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBzYW1wLFxuYm9keS5tY2UtY29udGVudC1ib2R5IHNtYWxsLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgc3RyaWtlLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgc3Ryb25nLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgc3ViLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgc3VwLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgdHQsIGJvZHkubWNlLWNvbnRlbnQtYm9keSB2YXIsXG5ib2R5Lm1jZS1jb250ZW50LWJvZHkgYiwgYm9keS5tY2UtY29udGVudC1ib2R5IHUsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBpLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgY2VudGVyLFxuYm9keS5tY2UtY29udGVudC1ib2R5IGRsLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgZHQsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBkZCwgYm9keS5tY2UtY29udGVudC1ib2R5IG9sLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgdWwsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBsaSxcbmJvZHkubWNlLWNvbnRlbnQtYm9keSBmaWVsZHNldCwgYm9keS5tY2UtY29udGVudC1ib2R5IGZvcm0sIGJvZHkubWNlLWNvbnRlbnQtYm9keSBsYWJlbCwgYm9keS5tY2UtY29udGVudC1ib2R5IGxlZ2VuZCxcbmJvZHkubWNlLWNvbnRlbnQtYm9keSB0YWJsZSwgYm9keS5tY2UtY29udGVudC1ib2R5IGNhcHRpb24sIGJvZHkubWNlLWNvbnRlbnQtYm9keSB0Ym9keSwgYm9keS5tY2UtY29udGVudC1ib2R5IHRmb290LCBib2R5Lm1jZS1jb250ZW50LWJvZHkgdGhlYWQsIGJvZHkubWNlLWNvbnRlbnQtYm9keSB0ciwgYm9keS5tY2UtY29udGVudC1ib2R5IHRoLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgdGQsXG5ib2R5Lm1jZS1jb250ZW50LWJvZHkgYXJ0aWNsZSwgYm9keS5tY2UtY29udGVudC1ib2R5IGFzaWRlLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgY2FudmFzLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgZGV0YWlscywgYm9keS5tY2UtY29udGVudC1ib2R5IGVtYmVkLFxuYm9keS5tY2UtY29udGVudC1ib2R5IGZpZ3VyZSwgYm9keS5tY2UtY29udGVudC1ib2R5IGZpZ2NhcHRpb24sIGJvZHkubWNlLWNvbnRlbnQtYm9keSBmb290ZXIsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBoZWFkZXIsIGJvZHkubWNlLWNvbnRlbnQtYm9keSBoZ3JvdXAsXG5ib2R5Lm1jZS1jb250ZW50LWJvZHkgbWVudSwgYm9keS5tY2UtY29udGVudC1ib2R5IG5hdiwgYm9keS5tY2UtY29udGVudC1ib2R5IG91dHB1dCwgYm9keS5tY2UtY29udGVudC1ib2R5IHJ1YnksIGJvZHkubWNlLWNvbnRlbnQtYm9keSBzZWN0aW9uLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgc3VtbWFyeSxcbmJvZHkubWNlLWNvbnRlbnQtYm9keSB0aW1lLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgbWFyaywgYm9keS5tY2UtY29udGVudC1ib2R5IGF1ZGlvLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgdmlkZW8ge1xuICAgIG1hcmdpbjogcmV2ZXJ0O1xuICAgIHBhZGRpbmc6IHJldmVydDtcbiAgICBib3JkZXI6IHJldmVydDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogcmV2ZXJ0O1xufVxuYm9keS5tY2UtY29udGVudC1ib2R5IHVsW3JvbGU9bGlzdF0sXG5ib2R5Lm1jZS1jb250ZW50LWJvZHkgb2xbcm9sZT1saXN0XSB7XG4gICAgbGlzdC1zdHlsZTogcmV2ZXJ0O1xuICAgIHBhZGRpbmctbGVmdDogcmV2ZXJ0O1xufVxuYm9keS5tY2UtY29udGVudC1ib2R5IHVsIHtcbiAgICBwYWRkaW5nOiByZXZlcnQ7XG4gICAgbWFyZ2luOiByZXZlcnQ7XG59XG5ib2R5Lm1jZS1jb250ZW50LWJvZHkgaW1nLCBib2R5Lm1jZS1jb250ZW50LWJvZHkgcGljdHVyZSB7XG4gICAgbWF4LXdpZHRoOiByZXZlcnQ7XG4gICAgZGlzcGxheTogcmV2ZXJ0O1xufVxuYm9keS5tY2UtY29udGVudC1ib2R5IGlmcmFtZSB7XG4gICAgZGlzcGxheTogcmV2ZXJ0O1xufVxuXG4vKiBSZW1vdmUgYWxsIGFuaW1hdGlvbnMsIHRyYW5zaXRpb25zIGFuZCBzbW9vdGggc2Nyb2xsIGZvciBwZW9wbGUgdGhhdCBwcmVmZXIgbm90IHRvIHNlZSB0aGVtICovXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIGh0bWw6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvO1xuICAgIH1cbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5oZWFkZXItY29udGVudCxcbi5uYXYtY29udGVudCxcbi5mb290ZXItY29udGVudC13cmFwcGVyLFxuc2VjdGlvbixcbm1haW4gPiAucG1wcm8ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgcmVwZWF0KDEyLCBjYWxjKG1pbigxMDAlIC0gY2xhbXAoNDBweCwgNnZ3LCA4MHB4KSwgMTQ0MHB4KSAvIDEyKSkgMWZyO1xufVxuLmhlYWRlci1jb250ZW50ID4gKixcbi5uYXYtY29udGVudCA+ICosXG4uZm9vdGVyLWNvbnRlbnQtd3JhcHBlciA+ICosXG5zZWN0aW9uID4gKixcbm1haW4gPiAucG1wcm8gPiAqIHtcbiAgICBncmlkLWNvbHVtbjogMi8xNDtcbn1cbi5oZWFkZXItY29udGVudCA+ICouZnVsbC13aWR0aCxcbi5uYXYtY29udGVudCA+ICouZnVsbC13aWR0aCxcbi5mb290ZXItY29udGVudC13cmFwcGVyID4gKi5mdWxsLXdpZHRoLFxuc2VjdGlvbiA+ICouZnVsbC13aWR0aCxcbm1haW4gPiAucG1wcm8gPiAqLmZ1bGwtd2lkdGgge1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xufVxuXG5oZWFkZXIsXG5zZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mbGV4LXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgwLCAxZnIpKTtcbiAgICBnYXA6IDFlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyMHB4KSB7XG4gICAgLmZsZXgtZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbn1cblxuLmdyaWQtMi1jb2wge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBnYXA6IDgwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICAgIC5ncmlkLTItY29sIHtcbiAgICAgICAgZ2FwOiA0MHB4O1xuICAgIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyMHB4KSB7XG4gICAgLmdyaWQtMi1jb2wge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG59XG5cbi5ncmlkLTMtY29sIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiA4MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLmdyaWQtMy1jb2wge1xuICAgICAgICBnYXA6IDQwcHg7XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgICAuZ3JpZC0zLWNvbCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAuZ3JpZC0zLWNvbCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbn1cblxuLmdyaWQtNC1jb2wge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICBnYXA6IDMwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZ3JpZC00LWNvbCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAuZ3JpZC00LWNvbCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbn1cblxuYm9keTpub3QoLndwLWFkbWluLCAubWNlLWNvbnRlbnQtYm9keSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG59XG5ib2R5Om5vdCgud3AtYWRtaW4sIC5tY2UtY29udGVudC1ib2R5KS5tb2RhbC1vcGVuLCBib2R5Om5vdCgud3AtYWRtaW4sIC5tY2UtY29udGVudC1ib2R5KS5tb2JpbGUtbmF2LW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5ib2R5Om5vdCgud3AtYWRtaW4sIC5tY2UtY29udGVudC1ib2R5KSAuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxRjFFMjM7XG59XG5ib2R5Om5vdCgud3AtYWRtaW4sIC5tY2UtY29udGVudC1ib2R5KSAuaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENDAwO1xufVxuXG4uc2l0ZS1tYWluIHtcbiAgICBmbGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zaXRlLW1haW46aGFzKC5ibG9ja180MDQpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmJvZHk6bm90KC53cC1hZG1pbikgbmF2IHVsIGxpIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYm9keTpub3QoLndwLWFkbWluKSBhOm5vdCguYnV0dG9uKSxcbi53cC1ibG9jay5hY2YtYmxvY2stcHJldmlldyBhOm5vdCguYnV0dG9uKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogdGV4dC1kZWNvcmF0aW9uLWNvbG9yIDIwMG1zIGVhc2U7XG59XG5ib2R5Om5vdCgud3AtYWRtaW4pIGE6bm90KC5idXR0b24pOmhvdmVyLFxuLndwLWJsb2NrLmFjZi1ibG9jay1wcmV2aWV3IGE6bm90KC5idXR0b24pOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ud2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi5ibGFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFGMUUyMztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnllbGxvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDQwMDtcbn1cblxuLnllbGxvdy1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMDtcbn1cblxuLmdyZXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4OTg5ODk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5ncmV5LWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMEYwO1xufVxuXG4ucHVycGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTg0RTg4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4uZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDNDM0I7XG4gICAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5ncmVlbi1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg5REFCRDtcbn1cblxuLnd5c2l3eWcgaDIsXG4ud3lzaXd5ZyBoMyxcbi53eXNpd3lnIGg0LFxuLnd5c2l3eWcgcCxcbi53eXNpd3lnIHVsLFxuLnd5c2l3eWcgb2wsXG4ud3lzaXd5ZyBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4ud3lzaXd5ZyBoMjpub3QoOmZpcnN0LWNoaWxkKSxcbi53eXNpd3lnIGgzOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLnd5c2l3eWcgaDQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTtcbn1cbi53eXNpd3lnIG9sLFxuLnd5c2l3eWcgdWwge1xuICAgIHBhZGRpbmctbGVmdDogMS4yNWVtO1xufVxuLnd5c2l3eWcgb2wgbGk6Om1hcmtlciB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi53eXNpd3lnIDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnd5c2l3eWcgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbn1cbi53eXNpd3lnIGJsb2NrcXVvdGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLnd5c2l3eWcgYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENDAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLmJrZy1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xufVxuLmJrZy1pbWFnZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbnNlY3Rpb246aGFzKC56ZWJyYS1iYWNrZ3JvdW5kKS5oYXMtZ3JleS10aW50LWJhY2tncm91bmQtY29sb3I6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ltZy9iYWNrZ3JvdW5kcy96ZWJyYS1iYWNrZ3JvdW5kLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG9wYWNpdHk6IDAuMDE7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5zZWN0aW9uOmhhcyguemVicmEtYmFja2dyb3VuZCkuaGFzLXllbGxvdy10aW50LWJhY2tncm91bmQtY29sb3I6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ltZy9iYWNrZ3JvdW5kcy96ZWJyYS1iYWNrZ3JvdW5kLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG9wYWNpdHk6IDAuMDI1O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuc2VjdGlvbjpoYXMoLnplYnJhLWJhY2tncm91bmQpLmhhcy13aGl0ZS1iYWNrZ3JvdW5kLWNvbG9yOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2Fzc2V0cy9pbWcvYmFja2dyb3VuZHMvemVicmEtYmFja2dyb3VuZC5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBvcGFjaXR5OiAwLjAyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuc2VjdGlvbjpoYXMoLnplYnJhLWJhY2tncm91bmQpLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2Fzc2V0cy9pbWcvYmFja2dyb3VuZHMvemVicmEtYmFja2dyb3VuZC1ibGFjay5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5zZWN0aW9uOmhhcyguemVicmEtYmFja2dyb3VuZCkuaGFzLXB1cnBsZS1iYWNrZ3JvdW5kLWNvbG9yOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2Fzc2V0cy9pbWcvYmFja2dyb3VuZHMvemVicmEtYmFja2dyb3VuZC1wdXJwbGUuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuc2VjdGlvbjpoYXMoLnplYnJhLWJhY2tncm91bmQpLmhhcy1ncmVlbi1iYWNrZ3JvdW5kLWNvbG9yOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2Fzc2V0cy9pbWcvYmFja2dyb3VuZHMvemVicmEtYmFja2dyb3VuZC1ncmVlbi5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5zZWN0aW9uOmhhcyguemVicmEtYmFja2dyb3VuZCkgLnplYnJhLWJhY2tncm91bmQge1xuICAgIHotaW5kZXg6IDI7XG59XG5cbi8qIGh0dHBzOi8vbWVkaXVtLmNvbS9AbWF0dXpvL3dyaXRpbmctY3NzLXdpdGgtYWNjZXNzaWJpbGl0eS1pbi1taW5kLTg1MTRhMDAwNzkzOSAqL1xuLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIG1hcmdpbjogLTFweDtcbn1cblxuLypcblRoaXMgY29tcG9uZW50cyBmb2xkZXIgaXMgdXNlZCBmb3Igc3R5bGVzIHRoYXQgYXJlIHNwZWNpZmljIHRvIGEgc2VjdGlvbiBvciBjb21wb25lbnQgb24gdGhlIHdlYnNpdGUuXG5cblRoZSBpbmRleCBmaWxlIGlzIHVzZWQgdG8gaW1wb3J0IGFsbCB0aGUgZmlsZXMgaW4gdGhlIGNvbXBvbmVudHMgZm9sZGVyLlxuKi9cbi5oZWFkZXIge1xuICAgIHotaW5kZXg6IDEwO1xufVxuLmhlYWRlciAjc2tpcC1saW5rIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMCUpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5oZWFkZXIgI3NraXAtbGluazpmb2N1cyB7XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuLmhlYWRlciAuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3Ige1xuICAgIHBhZGRpbmc6IDQwcHggMCAzMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgICAuaGVhZGVyIC5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cbn1cbi5oZWFkZXIgLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIC5oZWFkZXItY29udGVudCAuZmxleC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgZ2FwOiAzMHB4O1xufVxuLmhlYWRlciAuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLmhlYWRlci1jb250ZW50IC5oZWFkZXItbG9nbyB7XG4gICAgd2lkdGg6IDI2MHB4O1xufVxuLmhlYWRlciAuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLmhlYWRlci1jb250ZW50IC5oZWFkZXItbG9nbyBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC5oZWFkZXIgLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIC5oZWFkZXItY29udGVudCAuaGVhZGVyLWxvZ28ge1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAuaGVhZGVyIC5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciAuaGVhZGVyLWNvbnRlbnQgLmhlYWRlci1sb2dvIHtcbiAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgIH1cbn1cbi5oZWFkZXIgLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIC5oZWFkZXItY29udGVudCBhLmJ1dHRvbiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuaGVhZGVyIC5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciAuaGVhZGVyLWNvbnRlbnQgYS5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC5oZWFkZXIgLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIC5oZWFkZXItY29udGVudCAuZmxleC13cmFwcGVyIHtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgIH1cbiAgICAuaGVhZGVyIC5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciAuaGVhZGVyLWNvbnRlbnQgLmZsZXgtd3JhcHBlciA+IC5mbGV4LXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLmhlYWRlciAuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLmhlYWRlci1jb250ZW50IC5mbGV4LXdyYXBwZXIubW9iaWxlLXdyYXAge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5oZWFkZXIgLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIC5oZWFkZXItY29udGVudCAuY29udHJvbHMtd3JhcHBlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxufVxuLmhlYWRlciAuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLmJ1dHRvbi5kb25hdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNBODRFODg7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiAjQTg0RTg4O1xufVxuLmhlYWRlciAuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLmJ1dHRvbi5kb25hdGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiMjU5OTI7XG4gICAgYm9yZGVyLWNvbG9yOiAjYjI1OTkyO1xufVxuLmhlYWRlciAuaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzFGMUUyMztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC5oZWFkZXIgLmhhcy15ZWxsb3ctYmFja2dyb3VuZC1jb2xvcjpoYXMoLm1haW4tbmF2KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLmhlYWRlciAuc2VhcmNoLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnNlYXJjaC1ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC5zZWFyY2gtYm94IHtcbiAgICAgICAgcGFkZGluZzogMTJweCAxNXB4O1xuICAgIH1cbn1cbi5zZWFyY2gtYm94OmZvY3VzLCAuc2VhcmNoLWJveDpmb2N1cy12aXNpYmxlLCAuc2VhcmNoLWJveDpmb2N1cy13aXRoaW4ge1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZjtcbiAgICBvdXRsaW5lLW9mZnNldDogMDtcbn1cbi5zZWFyY2gtYm94IC5zZWFyY2gtaW5wdXQge1xuICAgIGZsZXg6IDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgY29sb3I6ICMxRjFFMjM7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG59XG4uc2VhcmNoLWJveCAuc2VhcmNoLWlucHV0ID4gZGl2IHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG4uc2VhcmNoLWJveCAuc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICMxRjFFMjM7XG59XG4uc2VhcmNoLWJveCAuc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuLnNlYXJjaC1ib3ggLnNlYXJjaC1pbnB1dDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgLnNlYXJjaC1ib3ggLnNlYXJjaC1pbnB1dDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnNlYXJjaC1ib3ggLnNlYXJjaC1pY29uLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbn1cbi5zZWFyY2gtYm94IC5zZWFyY2gtaWNvbi13cmFwcGVyIHN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAubW9iaWxlLWNvbnRyb2xzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4ubW9iaWxlLWNvbnRyb2xzIC5idXJnZXItaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMCAxMHB4IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMDBtcyBlYXNlLCB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5tb2JpbGUtY29udHJvbHMgLmJ1cmdlci1pY29uIC5iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENDAwO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLCBvcGFjaXR5IDMwMG1zIGVhc2UsIGNvbG9yIDMwMG1zIGVhc2U7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xufVxuLm1vYmlsZS1jb250cm9scyAuYnVyZ2VyLWljb24gLmJhci0xIHtcbiAgICB0b3A6IDEwcHg7XG59XG4ubW9iaWxlLWNvbnRyb2xzIC5idXJnZXItaWNvbiAuYmFyLTIge1xuICAgIHRvcDogMjFweDtcbn1cbi5tb2JpbGUtY29udHJvbHMgLmJ1cmdlci1pY29uIC5iYXItMyB7XG4gICAgdG9wOiAzMnB4O1xufVxuLm1vYmlsZS1jb250cm9scyAuYnVyZ2VyLWljb24uYWN0aXZlIC5iYXItMSB7XG4gICAgdG9wOiAyMXB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUYxRTIzO1xufVxuLm1vYmlsZS1jb250cm9scyAuYnVyZ2VyLWljb24uYWN0aXZlIC5iYXItMiB7XG4gICAgb3BhY2l0eTogMDtcbn1cbi5tb2JpbGUtY29udHJvbHMgLmJ1cmdlci1pY29uLmFjdGl2ZSAuYmFyLTMge1xuICAgIHRvcDogMjFweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxRjFFMjM7XG59XG5cbi5zaXRlLWZvb3RlciAuaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBoZWlnaHQ6IDcwcHg7XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDYwcHggMCA0MHB4O1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mbGV4LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA2MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mbGV4LXdyYXBwZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDQwcHg7XG4gICAgfVxufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItbG9nbyB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWxvZ28gc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogNDBweDtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLXJpZ2h0IC5mb290ZXItbWVudXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA4MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1tZW51cyB7XG4gICAgICAgIGdhcDogNjBweDtcbiAgICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICAgIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLXJpZ2h0IC5mb290ZXItbWVudXMge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDIwcHg7XG4gICAgfVxufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1tZW51cyBoMiB7XG4gICAgY29sb3I6ICNGRkQ0MDA7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1tZW51cyBuYXYgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDUsIGF1dG8pO1xuICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgZ2FwOiAwIDNyZW07XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1yaWdodCAuZm9vdGVyLW1lbnVzIG5hdiB1bCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1tZW51cyBuYXYgdWwgbGk6bnRoLWNoaWxkKDUpLCAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1yaWdodCAuZm9vdGVyLW1lbnVzIG5hdiB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1tZW51cyBuYXYgdWwgbGkgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1tZW51cyBuYXYgdWwgbGkgYTpob3ZlciB7XG4gICAgY29sb3I6ICNBN0E3QTc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MjBweCkge1xuICAgIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLXJpZ2h0IC5mb290ZXItbWVudXMgbmF2IHVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLXJpZ2h0IC5mb290ZXItbWVudXMgbmF2IHVsIGxpOm50aC1jaGlsZCg1KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB9XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1yaWdodCAuZm9vdGVyLWNvbnRhY3QgcCxcbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLXJpZ2h0IC5mb290ZXItY29weXJpZ2h0IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLXJpZ2h0IC5mb290ZXItY29udGFjdCBhLFxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1jb3B5cmlnaHQgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1jb250YWN0IGE6aG92ZXIsXG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1yaWdodCAuZm9vdGVyLWNvcHlyaWdodCBhOmhvdmVyIHtcbiAgICBjb2xvcjogI0E3QTdBNztcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLXJpZ2h0IC5mb290ZXItbG9nb3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAzMHB4O1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudC13cmFwcGVyIC5mb290ZXItcmlnaHQgLmZvb3Rlci1sb2dvcyAuZm9vdGVyLWxvZ28taXRlbSBpbWcge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogNjBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1yaWdodCAuZm9vdGVyLXNtYWxsLXByaW50IG5hdiB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAxMHB4O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLXJpZ2h0IC5mb290ZXItc21hbGwtcHJpbnQgbmF2IHVsIGxpOjphZnRlciB7XG4gICAgY29udGVudDogXCJ8XCI7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1yaWdodCAuZm9vdGVyLXNtYWxsLXByaW50IG5hdiB1bCBsaTpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBtYXJnaW46IDA7XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1yaWdodCAuZm9vdGVyLXNtYWxsLXByaW50IG5hdiB1bCBhOmhvdmVyIHtcbiAgICBjb2xvcjogI0E3QTdBNztcbn1cblxuLm5hdiB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLm5hdiB1bCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm5hdiB1bCBsaSBidXR0b24uaXRlbS1saW5rIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xufVxuLm5hdiB1bCBsaSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubmF2IHVsIGxpIC5hcnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgZWFzZTtcbn1cbi5uYXYgdWwgbGkgLmFycm93LnJvdGF0ZS1hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5uYXYgdWwubWFpbi1uYXYtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDMwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLm5hdiB1bC5tYWluLW5hdi1saXN0IGxpIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLmxvZ2luLWxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMjBweDtcbn1cbi5uYXYgdWwubWFpbi1uYXYtbGlzdCAubG9naW4tbGluayBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cbi5uYXYgdWwubWFpbi1uYXYtbGlzdCAubmF2LWxvZ2luIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1sb2dpbiAubWluaS1sb2dpbi1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDVweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogY2xhbXAoMjAwcHgsIDEwMHZ3LCAzMDBweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMDtcbiAgICBwYWRkaW5nOiAyMHB4IDAgNDBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZSwgdmlzaWJpbGl0eSAzMDBtcyBlYXNlO1xufVxuLm5hdiB1bC5tYWluLW5hdi1saXN0IC5uYXYtbG9naW4gLm1pbmktbG9naW4tZHJvcGRvd24ub3BlbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLm5hdiB1bC5tYWluLW5hdi1saXN0IC5uYXYtbG9naW4gLm1pbmktbG9naW4tZHJvcGRvd24gLmxvZ2luLXdlbGNvbWUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZzogMTBweCA0MHB4O1xufVxuLm5hdiB1bC5tYWluLW5hdi1saXN0IC5uYXYtbG9naW4gLm1pbmktbG9naW4tZHJvcGRvd24gdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1sb2dpbiAubWluaS1sb2dpbi1kcm9wZG93biB1bCBsaSB7XG4gICAgcGFkZGluZzogMTBweCA0MHB4O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZTtcbn1cbi5uYXYgdWwubWFpbi1uYXYtbGlzdCAubmF2LWxvZ2luIC5taW5pLWxvZ2luLWRyb3Bkb3duIHVsIGxpOmhhcyg+IGE6aG92ZXIpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENDAwO1xufVxuLm5hdiB1bC5tYWluLW5hdi1saXN0IC5uYXYtYmFza2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1iYXNrZXQgLnNpdGUtYmFza2V0LWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA1cHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1iYXNrZXQgLnNpdGUtYmFza2V0LWxpbmsgLnN2Zy13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDI3cHg7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1iYXNrZXQgLnNpdGUtYmFza2V0LWxpbmsgLnN2Zy13cmFwcGVyIHN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuLm5hdiB1bC5tYWluLW5hdi1saXN0IC5uYXYtYmFza2V0IC5taW5pLWJhc2tldC1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDVweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMzYwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMDtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgei1pbmRleDogMjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UsIHZpc2liaWxpdHkgMzAwbXMgZWFzZTtcbn1cbmJvZHkud29vY29tbWVyY2UtY2FydCAubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1iYXNrZXQgLm1pbmktYmFza2V0LWRyb3Bkb3duLCBib2R5Lndvb2NvbW1lcmNlLWNoZWNrb3V0IC5uYXYgdWwubWFpbi1uYXYtbGlzdCAubmF2LWJhc2tldCAubWluaS1iYXNrZXQtZHJvcGRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1iYXNrZXQgLm1pbmktYmFza2V0LWRyb3Bkb3duLm9wZW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5uYXYgdWwubWFpbi1uYXYtbGlzdCAubmF2LWJhc2tldCAubWluaS1iYXNrZXQtZHJvcGRvd24gdWwud29vY29tbWVyY2UtbWluaS1jYXJ0IGxpIHtcbiAgICBwYWRkaW5nOiAwIDAgMjBweDtcbn1cbi5uYXYgdWwubWFpbi1uYXYtbGlzdCAubmF2LWJhc2tldCAubWluaS1iYXNrZXQtZHJvcGRvd24gdWwud29vY29tbWVyY2UtbWluaS1jYXJ0IGxpIGEucmVtb3ZlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1iYXNrZXQgLm1pbmktYmFza2V0LWRyb3Bkb3duIHVsLndvb2NvbW1lcmNlLW1pbmktY2FydCBsaSBzcGFuLnF1YW50aXR5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG59XG4ubmF2IHVsLm1haW4tbmF2LWxpc3QgLm5hdi1iYXNrZXQgLm1pbmktYmFza2V0LWRyb3Bkb3duIC53b29jb21tZXJjZS1taW5pLWNhcnRfX2J1dHRvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAubWFpbi1uYXYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5tYWluLW5hdiAuc3VibWVudS1jb250YWluZXIgLnN1Ym1lbnUgbGkge1xuICAgIHBhZGRpbmc6IDEwcHggNDBweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2U7XG59XG4ubWFpbi1uYXYgLnN1Ym1lbnUtY29udGFpbmVyIC5zdWJtZW51IGxpOmhhcyg+IGE6aG92ZXIpLCAubWFpbi1uYXYgLnN1Ym1lbnUtY29udGFpbmVyIC5zdWJtZW51IGxpOmhhcyguc2Vjb25kLWxldmVsLm9wZW4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENDAwO1xufVxuLm1haW4tbmF2IC5zdWJtZW51LWNvbnRhaW5lci5maXJzdC1sZXZlbCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLCB2aXNpYmlsaXR5IDMwMG1zIGVhc2U7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNjJweDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZBRjA7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogY2xhbXAoMjAwcHgsIDEwMHZ3LCAzMDBweCk7XG59XG4ubWFpbi1uYXYgLnN1Ym1lbnUtY29udGFpbmVyLmZpcnN0LWxldmVsLm9wZW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5tYWluLW5hdiAuc3VibWVudS1jb250YWluZXIuZmlyc3QtbGV2ZWwgPiAuc3VibWVudSB7XG4gICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG59XG4ubWFpbi1uYXYgLnN1Ym1lbnUtY29udGFpbmVyLmZpcnN0LWxldmVsID4gLnN1Ym1lbnUgLmFycm93IHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuLm1haW4tbmF2IC5zdWJtZW51LWNvbnRhaW5lci5zZWNvbmQtbGV2ZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHRvcDogLTIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMDtcbiAgICB3aWR0aDogY2xhbXAoMjAwcHgsIDEwMHZ3LCAzMDBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLCB2aXNpYmlsaXR5IDMwMG1zIGVhc2U7XG59XG4ubWFpbi1uYXYgLnN1Ym1lbnUtY29udGFpbmVyLnNlY29uZC1sZXZlbC5vcGVuIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4ubWFpbi1uYXYgLnN1Ym1lbnUtY29udGFpbmVyLnNlY29uZC1sZXZlbCA+IC5zdWJtZW51IHtcbiAgICBwYWRkaW5nOiAyMHB4IDAgNDBweDtcbn1cblxuLm1vYmlsZS1uYXYtd3JhcHBlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgZWFzZSwgdmlzaWJpbGl0eSAwcyBsaW5lYXIgNDAwbXM7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwZHZoO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDQwMDtcbn1cbi5tb2JpbGUtbmF2LXdyYXBwZXIubWVudS1vcGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgZWFzZTtcbn1cbi5tb2JpbGUtbmF2LXdyYXBwZXIgLm1vYmlsZS1uYXYge1xuICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgcGFkZGluZzogMCAxLjI1cmVtO1xufVxuLm1vYmlsZS1uYXYtd3JhcHBlciAubW9iaWxlLW5hdi1saXN0IGxpLFxuLm1vYmlsZS1uYXYtd3JhcHBlciAubW9iaWxlLW5hdi1saXN0IGJ1dHRvbiB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG59XG4ubW9iaWxlLW5hdi13cmFwcGVyIC5tb2JpbGUtbmF2LWxpc3QgbGkgLml0ZW0tbGluayxcbi5tb2JpbGUtbmF2LXdyYXBwZXIgLm1vYmlsZS1uYXYtbGlzdCBidXR0b24gLml0ZW0tbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDEwcHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5tb2JpbGUtbmF2LXdyYXBwZXIgLm1vYmlsZS1uYXYtbGlzdCBsaSAuYXJyb3csXG4ubW9iaWxlLW5hdi13cmFwcGVyIC5tb2JpbGUtbmF2LWxpc3QgYnV0dG9uIC5hcnJvdyB7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xufVxuLm1vYmlsZS1uYXYtd3JhcHBlciAubW9iaWxlLW5hdi1saXN0IGxpLnN1Ym1lbnUtb3BlbiA+IC5pdGVtLWxpbmsgPiAuYXJyb3csXG4ubW9iaWxlLW5hdi13cmFwcGVyIC5tb2JpbGUtbmF2LWxpc3QgYnV0dG9uLnN1Ym1lbnUtb3BlbiA+IC5pdGVtLWxpbmsgPiAuYXJyb3cge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4ubW9iaWxlLW5hdi13cmFwcGVyIC5tb2JpbGUtbmF2LWxpc3QgLmxvZ2luLWxpbmssXG4ubW9iaWxlLW5hdi13cmFwcGVyIC5tb2JpbGUtbmF2LWxpc3QgLnNpdGUtYmFza2V0LWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi5tb2JpbGUtbmF2LXdyYXBwZXIgLm1vYmlsZS1uYXYtbGlzdCAubW9iaWxlLWxvZ2luLWxpbmtzIC5tb2JpbGUtbG9naW4tbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZzogMTBweCAwO1xufVxuLm1vYmlsZS1uYXYtd3JhcHBlciAubW9iaWxlLW5hdi1saXN0IC5tb2JpbGUtbG9naW4tbGlua3MgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogMTBweCAwIDEwcHggMjBweDtcbn1cbi5tb2JpbGUtbmF2LXdyYXBwZXIgLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG59XG4ubW9iaWxlLW5hdi13cmFwcGVyIC5zdWJtZW51LWNvbnRhaW5lci5maXJzdC1sZXZlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG59XG4ubW9iaWxlLW5hdi13cmFwcGVyIC5zdWJtZW51LWNvbnRhaW5lci5maXJzdC1sZXZlbCA+IC5zdWJtZW51IHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4ubW9iaWxlLW5hdi13cmFwcGVyIC5zdWJtZW51LWNvbnRhaW5lci5zZWNvbmQtbGV2ZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xufVxuLm1vYmlsZS1uYXYtd3JhcHBlciAuc3VibWVudS1jb250YWluZXIuc2Vjb25kLWxldmVsID4gLnN1Ym1lbnUge1xuICAgIG1hcmdpbjogMTBweCAwO1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbn1cblxuYm9keTpub3QoLndwLWFkbWluKSBidXR0b24sXG4ud3AtYmxvY2suYWNmLWJsb2NrLXByZXZpZXcgYnV0dG9uIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJvZHk6bm90KC53cC1hZG1pbikgYnV0dG9uOmRpc2FibGVkLFxuLndwLWJsb2NrLmFjZi1ibG9jay1wcmV2aWV3IGJ1dHRvbjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItY29sb3I6ICMxRjFFMjM7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuYm9keTpub3QoLndwLWFkbWluKSAuYnV0dG9uLFxuLndwLWJsb2NrLmFjZi1ibG9jay1wcmV2aWV3IC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxMHB4O1xuICAgIG1pbi13aWR0aDogMTQwcHg7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkQ0MDA7XG4gICAgY29sb3I6ICMxRjFFMjM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkQ0MDA7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmJvZHk6bm90KC53cC1hZG1pbikgLmJ1dHRvbjpub3QoLm5vLWFycm93KTo6YWZ0ZXIsXG4ud3AtYmxvY2suYWNmLWJsb2NrLXByZXZpZXcgLmJ1dHRvbjpub3QoLm5vLWFycm93KTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDExcHg7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9hc3NldHMvaW1nL2ljb25zL2J1dHRvbi1hcnJvdy5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5ib2R5Om5vdCgud3AtYWRtaW4pIC5idXR0b246aG92ZXIsIGJvZHk6bm90KC53cC1hZG1pbikgLmJ1dHRvbjphY3RpdmUsXG4ud3AtYmxvY2suYWNmLWJsb2NrLXByZXZpZXcgLmJ1dHRvbjpob3Zlcixcbi53cC1ibG9jay5hY2YtYmxvY2stcHJldmlldyAuYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRTYwMDtcbiAgICBib3JkZXItY29sb3I6ICNGRkU2MDA7XG59XG5ib2R5Om5vdCgud3AtYWRtaW4pIC5idXR0b246Zm9jdXMsIGJvZHk6bm90KC53cC1hZG1pbikgLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCBib2R5Om5vdCgud3AtYWRtaW4pIC5idXR0b246Zm9jdXMtd2l0aGluLFxuLndwLWJsb2NrLmFjZi1ibG9jay1wcmV2aWV3IC5idXR0b246Zm9jdXMsXG4ud3AtYmxvY2suYWNmLWJsb2NrLXByZXZpZXcgLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndwLWJsb2NrLmFjZi1ibG9jay1wcmV2aWV3IC5idXR0b246Zm9jdXMtd2l0aGluIHtcbiAgICBib3JkZXItY29sb3I6ICMxRjFFMjM7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDA7XG59XG5cbi5ibG9ja180MDQge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxRjFFMjM7XG4gICAgZmxleDogMTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IGNsYW1wKDEyMHB4LCAxMHZ3LCAyNDBweCkgMDtcbiAgICBtaW4taGVpZ2h0OiA4MGR2aDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgLmJsb2NrXzQwNCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDYwZHZoO1xuICAgIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyMHB4KSB7XG4gICAgLmJsb2NrXzQwNCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDgwZHZoO1xuICAgIH1cbn1cbi5ibG9ja180MDQgLmNvbnRlbnQge1xuICAgIHotaW5kZXg6IDI7XG59XG4uYmxvY2tfNDA0IC5jb250ZW50ID4gKiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5ibG9ja180MDQgLmNvbnRlbnQgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYmxvY2tfNDA0IC5jb250ZW50IC5oMSB7XG4gICAgY29sb3I6ICNGRkQ0MDA7XG59XG4uYmxvY2tfNDA0IC5ia2ctaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgLmJsb2NrXzQwNCAuYmtnLWltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNzUlIDA7XG4gICAgfVxufVxuLmJsb2NrXzQwNCAuYmtnLWltYWdlOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgLmJsb2NrXzQwNCAuYmtnLWltYWdlOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgfVxufVxuXG4uaGVhZGluZy13cmFwcGVyOmhhcygqKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbn1cbi5oZWFkaW5nLXdyYXBwZXIgLmgyIHtcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbn1cbi5oZWFkaW5nLXdyYXBwZXIgcCB7XG4gICAgbWF4LXdpZHRoOiAxMDgwcHg7XG59XG4uaGVhZGluZy13cmFwcGVyOmhhcyhwKSAuaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5zd2lwZXItY29udHJvbHMuc3RhY2tlZC1sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xuICAgIGhlaWdodDogNDBweDtcbn1cbi5zd2lwZXItY29udHJvbHMuc3RhY2tlZC1sYXlvdXQgLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItY29udHJvbHMuc3RhY2tlZC1sYXlvdXQgLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiAjMUYxRTIzO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDMwMG1zIGVhc2U7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xufVxuLnN3aXBlci1jb250cm9scy5zdGFja2VkLWxheW91dCAuc3dpcGVyLWJ1dHRvbi1uZXh0OjphZnRlcixcbi5zd2lwZXItY29udHJvbHMuc3RhY2tlZC1sYXlvdXQgLnN3aXBlci1idXR0b24tcHJldjo6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbn1cbi5zd2lwZXItY29udHJvbHMuc3RhY2tlZC1sYXlvdXQgLnN3aXBlci1idXR0b24tbmV4dDpob3Zlcixcbi5zd2lwZXItY29udHJvbHMuc3RhY2tlZC1sYXlvdXQgLnN3aXBlci1idXR0b24tcHJldjpob3ZlciB7XG4gICAgY29sb3I6ICNGRkQ0MDA7XG59XG5cbi5nY29udGFpbmVyICNnbGlnaHRib3gtc2xpZGVyIC5nc2xpZGUgLmdzbGlkZS1pbWFnZSBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDgwdmg7XG59XG5cbi5nb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzMSwgMzAsIDM1LCAwLjk1KTtcbn1cblxuLnBvc3QtaXRlbSAuaW1nLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4ucG9zdC1pdGVtIC5pbWctd3JhcHBlciBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xufVxuLnBvc3QtaXRlbSAucG9zdC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiAxNXB4O1xufVxuLnBvc3QtaXRlbSAucG9zdC1jb250ZW50IC5tZXRhLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDE4cHg7XG59XG4ucG9zdC1pdGVtIC5wb3N0LWNvbnRlbnQgLm1ldGEtY29udGVudC13cmFwcGVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDQwMDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZmxleC1zaHJpbms6IDA7XG59XG4ucG9zdC1pdGVtIC5wb3N0LWNvbnRlbnQgLm1ldGEtY29udGVudC13cmFwcGVyIC5tZXRhLWNvbnRlbnQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi5wb3N0LWl0ZW0gLnBvc3QtY29udGVudCAubWV0YS1jb250ZW50LXdyYXBwZXIgLm1ldGEtY29udGVudCAuZXZlbnQtbWV0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnBvc3QtaXRlbTpub3QoLnN1cC1ncm91cHMtaXRlbSkgLnBvc3QtY29udGVudCBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDJweDtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDNweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbn1cbi5wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgbWluLXdpZHRoOiA0NHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDMwMG1zIGVhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENDAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cbi5wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnM6aG92ZXI6bm90KC5jdXJyZW50LCAubmV4dCwgLnByZXYpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZFNjAwO1xufVxuLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5jdXJyZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUYxRTIzO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xufVxuLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5uZXh0LCAucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLnByZXYge1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG59XG4ucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLm5leHQgc3ZnLCAucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLnByZXYgc3ZnIHtcbiAgICB3aWR0aDogMTZweDtcbn1cbi5wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMubmV4dCBzdmcgcGF0aCwgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5wcmV2IHN2ZyBwYXRoIHtcbiAgICB0cmFuc2l0aW9uOiBmaWxsIDMwMG1zIGVhc2U7XG59XG4ucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLm5leHQgc3ZnOmhvdmVyIHBhdGgsIC5wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMucHJldiBzdmc6aG92ZXIgcGF0aCB7XG4gICAgZmlsbDogI0ZGRDQwMDtcbn1cblxuc2VjdGlvbi5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciAucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzIHtcbiAgICBjb2xvcjogIzFGMUUyMztcbn1cbnNlY3Rpb24uaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5jdXJyZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMUYxRTIzO1xufVxuc2VjdGlvbi5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciAucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLm5leHQgc3ZnIHBhdGgsIHNlY3Rpb24uaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5wcmV2IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiAjZmZmZmZmO1xufVxuc2VjdGlvbi5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciAucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLm5leHQgc3ZnIHBhdGg6aG92ZXIsIHNlY3Rpb24uaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5wcmV2IHN2ZyBwYXRoOmhvdmVyIHtcbiAgICBmaWxsOiAjRkZENDAwO1xufVxuXG4uZmlsdGVycy1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIG1pbi13aWR0aDogMjYwcHg7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNBN0E3QTc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MjBweCkge1xuICAgIC5maWx0ZXJzLWRyb3Bkb3duIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuLmZpbHRlcnMtZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxMnB4O1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMUYxRTIzO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2U7XG4gICAgd2lkdGg6IDEwMCU7XG59XG4uZmlsdGVycy1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmRyb3Bkb3duLWljb24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4uZmlsdGVycy1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIC5jdXJyZW50LWZpbHRlciB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmZpbHRlcnMtZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZSAuZHJvcGRvd24taWNvbiB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2U7XG4gICAgZmxleC1zaHJpbms6IDA7XG59XG4uZmlsdGVycy1kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAtMXB4O1xuICAgIHJpZ2h0OiAtMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMzAwbXMgZWFzZTtcbiAgICB6LWluZGV4OiAxNTtcbn1cbi5maWx0ZXJzLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmZpbHRlcnMtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gYTpob3ZlciwgLmZpbHRlcnMtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDIxMiwgMCwgMC41KTtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuLmZpbHRlcnMtZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdICsgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNBN0E3QTc7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi5maWx0ZXJzLWRyb3Bkb3duLnN1cC1ncm91cHMtZmlsdGVycyAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG59XG4uZmlsdGVycy1kcm9wZG93bi5zdXAtZ3JvdXBzLWZpbHRlcnMgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG4uZmlsdGVycy1kcm9wZG93bi5zdXAtZ3JvdXBzLWZpbHRlcnMgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gLnN1cC1ncm91cHMtZmlsdGVyX19sYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZmlsdGVycy1kcm9wZG93bi5zdXAtZ3JvdXBzLWZpbHRlcnMgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gLnN1cC1ncm91cHMtZmlsdGVyX19sYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5maWx0ZXJzLWRyb3Bkb3duLnN1cC1ncm91cHMtZmlsdGVycyAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSAuc3VwLWdyb3Vwcy1maWx0ZXJfX2xhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQge1xuICAgIGFjY2VudC1jb2xvcjogIzFGMUUyMztcbn1cblxuc2VjdGlvbi5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciAuZmlsdGVycy1kcm9wZG93bi5zdXAtZ3JvdXBzLWZpbHRlcnMgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gLnN1cC1ncm91cHMtZmlsdGVyX19sYWJlbCB7XG4gICAgY29sb3I6ICMxRjFFMjM7XG59XG5cbi5icmVhZGNydW1iLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cbi5icmVhZGNydW1iLWJsb2NrIC55b2FzdC1icmVhZGNydW1icyA+IHNwYW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMjBweCAzMHB4O1xufVxuLmJyZWFkY3J1bWItYmxvY2sgLnlvYXN0LWJyZWFkY3J1bWJzID4gc3BhbiBzcGFuIHtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcbn1cbi5icmVhZGNydW1iLWJsb2NrIC55b2FzdC1icmVhZGNydW1icyA+IHNwYW4gc3Bhbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uc2VhcmNoLXJlc3VsdHMtc2VjdGlvbiAuaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBwYWRkaW5nOiAxMjBweCAwO1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgcmVwZWF0KDEyLCBjYWxjKG1pbigxMDAlIC0gY2xhbXAoNDBweCwgNnZ3LCA4MHB4KSwgMTQ0MHB4KSAvIDEyKSkgMWZyO1xufVxuLnNlYXJjaC1yZXN1bHRzLXNlY3Rpb24gLmhhcy15ZWxsb3ctYmFja2dyb3VuZC1jb2xvciA+ICoge1xuICAgIGdyaWQtY29sdW1uOiAyLzE0O1xufVxuLnNlYXJjaC1yZXN1bHRzLXNlY3Rpb24gLmhhcy15ZWxsb3ctYmFja2dyb3VuZC1jb2xvciAuc2VhcmNoLWJveCB7XG4gICAgbWF4LXdpZHRoOiA0NTBweDtcbn1cblxuLnNlYXJjaC1yZXN1bHRzLWhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4uc2VhcmNoLXJlc3VsdHMtaGVhZGluZyBzcGFuIHtcbiAgICBjb2xvcjogIzcwNzA3MDtcbn1cblxuLmFyY2hpdmUtd3JhcHBlcl9zZWFyY2gge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMTIwcHggMCA4MHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA0MHB4O1xufVxuXG4uc2VhcmNoLXJlc3VsdCB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3MDcwNzA7XG59XG4uc2VhcmNoLXJlc3VsdF9fbWV0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLnNlYXJjaC1yZXN1bHRfX21ldGEgLm1ldGEtY29udGVudC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTJweDtcbn1cbi5zZWFyY2gtcmVzdWx0X19tZXRhIC5tZXRhLWNvbnRlbnQtd3JhcHBlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkQ0MDA7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xufVxuLnNlYXJjaC1yZXN1bHRfX21ldGEgLm1ldGEtY29udGVudC13cmFwcGVyIC5tZXRhLWNvbnRlbnQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnNlYXJjaC1yZXN1bHQgLmgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLnNlYXJjaC1yZXN1bHQgLmgyIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAzMDBtcyBlYXNlO1xufVxuLnNlYXJjaC1yZXN1bHQgLmgyIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjNzA3MDcwO1xufVxuLnNlYXJjaC1yZXN1bHRfX2V4Y2VycHQgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uc2VhcmNoLXJlc3VsdHMtcGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTIwcHg7XG59XG4uc2VhcmNoLXJlc3VsdHMtcGFnaW5hdGlvbiAucGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cbi5zZWFyY2gtcmVzdWx0cy1wYWdpbmF0aW9uIC5wYWdpbmF0aW9uIC5uYXYtbGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEwcHg7XG59XG5cbi5hcmNoaXZlLXdyYXBwZXJfbm8tcmVzdWx0cyB7XG4gICAgcGFkZGluZzogMTIwcHggMDtcbn1cblxuLndvb2NvbW1lcmNlLnBvc3QtdHlwZS1hcmNoaXZlLXByb2R1Y3QgLndvb2NvbW1lcmNlLWJyZWFkY3J1bWIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWJyZWFkY3J1bWIge1xuICAgIGNvbG9yOiAjMUYxRTIzO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi53b29jb21tZXJjZSAucGFnZS10aXRsZSxcbi53b29jb21tZXJjZSAucHJvZHVjdF90aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoLmRvbmF0ZSksXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24sXG4ud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNzdWJtaXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENDAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMxRjFFMjMgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IGF1dG87XG59XG4ud29vY29tbWVyY2UgYS5idXR0b246bm90KC5kb25hdGUpOjphZnRlcixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOjphZnRlcixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b246OmFmdGVyLFxuLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjc3VibWl0OjphZnRlciB7XG4gICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCguZG9uYXRlKTpob3ZlciwgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCguZG9uYXRlKTphY3RpdmUsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpob3Zlcixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmFjdGl2ZSxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b246aG92ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmFjdGl2ZSxcbi53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3N1Ym1pdDpob3Zlcixcbi53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3N1Ym1pdDphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkU2MDAgIWltcG9ydGFudDtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtcGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBzcGFuLmN1cnJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzEsIDMwLCAzNSwgMC4yKTtcbiAgICBjb2xvcjogcmdiYSgzMSwgMzAsIDM1LCAwLjgpO1xufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1uby1wcm9kdWN0cy1mb3VuZCAud29vY29tbWVyY2UtaW5mbyB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzFGMUUyMztcbiAgICBjb2xvcjogIzFGMUUyMztcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2Utbm8tcHJvZHVjdHMtZm91bmQgLndvb2NvbW1lcmNlLWluZm86OmJlZm9yZSB7XG4gICAgY29sb3I6ICMxRjFFMjM7XG59XG4ud29vY29tbWVyY2UgYS5hZGRlZF90b19jYXJ0IHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNtYWluIHtcbiAgICBtYXJnaW46IDgwcHggMDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIHJlcGVhdCgxMiwgY2FsYyhtaW4oMTAwJSAtIGNsYW1wKDQwcHgsIDZ2dywgODBweCksIDE0NDBweCkgLyAxMikpIDFmcjtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjbWFpbiA+ICoge1xuICAgIGdyaWQtY29sdW1uOiAyLzE0O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNtYWluID4gKi5mdWxsLXdpZHRoIHtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjbWFpbiBzZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAucHJpY2UsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLnN0b2NrIHtcbiAgICBjb2xvcjogIzFGMUUyMztcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkgb2wuZmxleC1jb250cm9sLXRodW1icyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDIwcHg7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSBvbC5mbGV4LWNvbnRyb2wtdGh1bWJzIGxpIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDYwcHgpIC8gNCk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICAgIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IG9sLmZsZXgtY29udHJvbC10aHVtYnMgbGkge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAtIDQwcHgpIC8gMyk7XG4gICAgfVxufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCBmb3JtLmNhcnQ6bm90KC52YXJpYXRpb25zX2Zvcm0pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMjBweDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCBmb3JtLmNhcnQ6bm90KC52YXJpYXRpb25zX2Zvcm0pOjpiZWZvcmUsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCBmb3JtLmNhcnQ6bm90KC52YXJpYXRpb25zX2Zvcm0pOjphZnRlciB7XG4gICAgY29udGVudDogbm9uZTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCBmb3JtLmNhcnQudmFyaWF0aW9uc19mb3JtIC52YXJpYXRpb25zIHNlbGVjdCB7XG4gICAgcGFkZGluZzogNXB4O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IGZvcm0uY2FydC52YXJpYXRpb25zX2Zvcm0gLnZhcmlhdGlvbnMgdHIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCBmb3JtLmNhcnQudmFyaWF0aW9uc19mb3JtIC52YXJpYXRpb25zIHRyIHRkLnZhbHVlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDIwcHg7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0LnZhcmlhdGlvbnNfZm9ybSAudmFyaWF0aW9ucyB0ciB0ZC52YWx1ZSBzZWxlY3Qge1xuICAgIG1pbi13aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IGZvcm0uY2FydC52YXJpYXRpb25zX2Zvcm0gLnNpbmdsZV92YXJpYXRpb25fd3JhcCAud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDIwcHg7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5xdWFudGl0eSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucXVhbnRpdHkgaW5wdXQge1xuICAgIHBhZGRpbmc6IDhweDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAucHJvZHVjdF9tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxMHB4O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC51cHNlbGxzLFxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC5yZWxhdGVkLnByb2R1Y3RzIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC51cHNlbGxzIGgyOm5vdCgud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSksXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLnJlbGF0ZWQucHJvZHVjdHMgaDI6bm90KC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAudXBzZWxscyB1bC5wcm9kdWN0cyxcbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAucmVsYXRlZC5wcm9kdWN0cyB1bC5wcm9kdWN0cyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgIGdhcDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC51cHNlbGxzIHVsLnByb2R1Y3RzLFxuICAgIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAucmVsYXRlZC5wcm9kdWN0cyB1bC5wcm9kdWN0cyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLnVwc2VsbHMgdWwucHJvZHVjdHMsXG4gICAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC5yZWxhdGVkLnByb2R1Y3RzIHVsLnByb2R1Y3RzIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC51cHNlbGxzIHVsLnByb2R1Y3RzOjphZnRlciwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC51cHNlbGxzIHVsLnByb2R1Y3RzOjpiZWZvcmUsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLnJlbGF0ZWQucHJvZHVjdHMgdWwucHJvZHVjdHM6OmFmdGVyLFxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC5yZWxhdGVkLnByb2R1Y3RzIHVsLnByb2R1Y3RzOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLnVwc2VsbHMgdWwucHJvZHVjdHMgbGkucHJvZHVjdCxcbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAucmVsYXRlZC5wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZmxvYXQ6IG5vbmU7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLnVwc2VsbHMgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJpY2UsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLnJlbGF0ZWQucHJvZHVjdHMgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJpY2Uge1xuICAgIGNvbG9yOiAjMUYxRTIzO1xufVxuXG4ud29vY29tbWVyY2UtY2FydCAuc2l0ZS1tYWluIHtcbiAgICBtYXJnaW46IDgwcHggMDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIHJlcGVhdCgxMiwgY2FsYyhtaW4oMTAwJSAtIGNsYW1wKDQwcHgsIDZ2dywgODBweCksIDE0NDBweCkgLyAxMikpIDFmcjtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC5zaXRlLW1haW4gPiAqIHtcbiAgICBncmlkLWNvbHVtbjogMi8xNDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC5zaXRlLW1haW4gPiAqLmZ1bGwtd2lkdGgge1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLnNpdGUtbWFpbiBzZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi53b29jb21tZXJjZS1jYXJ0IC5oZXJvLWhlYWRpbmctY29udGFpbmVyIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndjLWJsb2NrLWNhcnRfX3N1Ym1pdC1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFGMUUyMyAhaW1wb3J0YW50O1xufVxuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLnNpdGUtbWFpbiB7XG4gICAgbWFyZ2luOiA4MHB4IDA7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciByZXBlYXQoMTIsIGNhbGMobWluKDEwMCUgLSBjbGFtcCg0MHB4LCA2dncsIDgwcHgpLCAxNDQwcHgpIC8gMTIpKSAxZnI7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLnNpdGUtbWFpbiA+ICoge1xuICAgIGdyaWQtY29sdW1uOiAyLzE0O1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5zaXRlLW1haW4gPiAqLmZ1bGwtd2lkdGgge1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5zaXRlLW1haW4gc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLmhlcm8taGVhZGluZy1jb250YWluZXIgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLndvb2NvbW1lcmNlLWFjY291bnQgLnNpdGUtbWFpbiB7XG4gICAgbWFyZ2luOiA4MHB4IDA7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciByZXBlYXQoMTIsIGNhbGMobWluKDEwMCUgLSBjbGFtcCg0MHB4LCA2dncsIDgwcHgpLCAxNDQwcHgpIC8gMTIpKSAxZnI7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAuc2l0ZS1tYWluID4gKiB7XG4gICAgZ3JpZC1jb2x1bW46IDIvMTQ7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAuc2l0ZS1tYWluID4gKi5mdWxsLXdpZHRoIHtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC5zaXRlLW1haW4gc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAuaGVyby1oZWFkaW5nLWNvbnRhaW5lciBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIGxpIHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50ID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZS1pbmZvIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMUYxRTIzO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZS1pbmZvOjpiZWZvcmUge1xuICAgIGNvbG9yOiAjMUYxRTIzO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZS1BZGRyZXNzZXMgYWRkcmVzcyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBidXR0b25bdHlwZT1zdWJtaXRdIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4ud29vY29tbWVyY2UudGF4LXByb2R1Y3RfY2F0ICNtYWluIHtcbiAgICBtYXJnaW46IDgwcHggMDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIHJlcGVhdCgxMiwgY2FsYyhtaW4oMTAwJSAtIGNsYW1wKDQwcHgsIDZ2dywgODBweCksIDE0NDBweCkgLyAxMikpIDFmcjtcbn1cbi53b29jb21tZXJjZS50YXgtcHJvZHVjdF9jYXQgI21haW4gPiAqIHtcbiAgICBncmlkLWNvbHVtbjogMi8xNDtcbn1cbi53b29jb21tZXJjZS50YXgtcHJvZHVjdF9jYXQgI21haW4gPiAqLmZ1bGwtd2lkdGgge1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xufVxuLndvb2NvbW1lcmNlLnRheC1wcm9kdWN0X2NhdCAjbWFpbiBzZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi53b29jb21tZXJjZS50YXgtcHJvZHVjdF9jYXQgLndvb2NvbW1lcmNlLXByb2R1Y3RzLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi53b29jb21tZXJjZS50YXgtcHJvZHVjdF9jYXQgLndvb2NvbW1lcmNlLXByb2R1Y3RzLWhlYWRlciAudGVybS1kZXNjcmlwdGlvbiBwOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4ud29vY29tbWVyY2UudGF4LXByb2R1Y3RfY2F0IC53b29jb21tZXJjZS1yZXN1bHQtY291bnQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4ud29vY29tbWVyY2UudGF4LXByb2R1Y3RfY2F0IC53b29jb21tZXJjZS1vcmRlcmluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi53b29jb21tZXJjZS50YXgtcHJvZHVjdF9jYXQgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCB7XG4gICAgcGFkZGluZzogNXB4O1xufVxuLndvb2NvbW1lcmNlLnRheC1wcm9kdWN0X2NhdCB1bC5wcm9kdWN0cyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgIGdhcDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLndvb2NvbW1lcmNlLnRheC1wcm9kdWN0X2NhdCB1bC5wcm9kdWN0cyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAud29vY29tbWVyY2UudGF4LXByb2R1Y3RfY2F0IHVsLnByb2R1Y3RzIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxufVxuLndvb2NvbW1lcmNlLnRheC1wcm9kdWN0X2NhdCB1bC5wcm9kdWN0czo6YWZ0ZXIsIC53b29jb21tZXJjZS50YXgtcHJvZHVjdF9jYXQgdWwucHJvZHVjdHM6OmJlZm9yZSB7XG4gICAgY29udGVudDogbm9uZTtcbn1cbi53b29jb21tZXJjZS50YXgtcHJvZHVjdF9jYXQgdWwucHJvZHVjdHMgbGkucHJvZHVjdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiBub25lO1xufVxuLndvb2NvbW1lcmNlLnRheC1wcm9kdWN0X2NhdCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4ud29vY29tbWVyY2UudGF4LXByb2R1Y3RfY2F0IHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6ICMxRjFFMjM7XG59XG4ud29vY29tbWVyY2UudGF4LXByb2R1Y3RfY2F0IHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByaWNlIHtcbiAgICBjb2xvcjogIzFGMUUyMztcbn1cblxuc2VjdGlvbi5wbXByby1zaG9ydGNvZGUge1xuICAgIHBhZGRpbmc6IDgwcHggMCAxMjBweDtcbn1cbnNlY3Rpb24ucG1wcm8tc2hvcnRjb2RlOmhhcygucG1wcm8tbWVtYmVyLWFyZWEtbWVudSkge1xuICAgIC8qLnBtcHJvLW1lbnUtd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wbXByby1tZW1iZXItYXJlYS1tZW51IHtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1JTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG1wcm8ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRwZC1zbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gKi9cbn1cbnNlY3Rpb24ucG1wcm8tc2hvcnRjb2RlOmhhcygucG1wcm8tbWVtYmVyLWFyZWEtbWVudSkgLnBtcHJvLW1lbWJlci1hcmVhLW1lbnUge1xuICAgIHdpZHRoOiAzMCU7XG4gICAgcGFkZGluZy1yaWdodDogNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MjBweCkge1xuICAgIHNlY3Rpb24ucG1wcm8tc2hvcnRjb2RlOmhhcygucG1wcm8tbWVtYmVyLWFyZWEtbWVudSkgLnBtcHJvLW1lbWJlci1hcmVhLW1lbnUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxufVxuc2VjdGlvbi5wbXByby1zaG9ydGNvZGU6aGFzKC5wbXByby1tZW1iZXItYXJlYS1tZW51KSAucG1wcm8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA3MCU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICBzZWN0aW9uLnBtcHJvLXNob3J0Y29kZTpoYXMoLnBtcHJvLW1lbWJlci1hcmVhLW1lbnUpIC5wbXBybyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxufVxuc2VjdGlvbi5wbXByby1zaG9ydGNvZGU6aGFzKC5wbXByby1tZW1iZXItYXJlYS1tZW51KSAucG1wcm9fbWVzc2FnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyMHB4KSB7XG4gICAgc2VjdGlvbi5wbXByby1zaG9ydGNvZGU6aGFzKC5wbXByby1tZW1iZXItYXJlYS1tZW51KSAucG1wcm9fbWVzc2FnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG59XG5zZWN0aW9uLnBtcHJvLXNob3J0Y29kZTpoYXMoLnBtcHJvLW1lbWJlci1hcmVhLW1lbnUpIHNlY3Rpb24jcG1wcm9fY2FuY2VsID4gKiB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5zZWN0aW9uLnBtcHJvLXNob3J0Y29kZTpoYXMoLnBtcHJvLW1lbWJlci1hcmVhLW1lbnUpIHNlY3Rpb24jcG1wcm9fY2FuY2VsIC5wbXByb19tZXNzYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLnBtcHJvIHtcbiAgICBjb2xvcjogIzFGMUUyMztcbn1cbi5wbXBybyBzZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi5wbXBybyA+IC5wbXByb19zZWN0aW9uIHtcbiAgICBtYXJnaW46IDA7XG59XG4ucG1wcm8gLnBtcHJvX2NhcmQsXG4ucG1wcm8gLnBtcHJvX21lc3NhZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4ucG1wcm8gLnBtcHJvX21lc3NhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG59XG4ucG1wcm8gLnBtcHJvX2NhcmQud2VsY29tZS1tZXNzYWdlIHtcbiAgICBwYWRkaW5nOiAzNnB4O1xufVxuLnBtcHJvIC5wbXByb19jYXJkLndlbGNvbWUtbWVzc2FnZSA+ICoge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi5wbXBybyAucG1wcm9fY2FyZC53ZWxjb21lLW1lc3NhZ2UgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4ucG1wcm8gLnBtcHJvX2NhcmQucG1wcm9fY29udGVudF9tZXNzYWdlIHtcbiAgICBtYXJnaW46IDgwcHggMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG59XG4ucG1wcm8gLnBtcHJvX2NhcmQucG1wcm9fY29udGVudF9tZXNzYWdlIGgyIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG59XG4ucG1wcm8gLnBtcHJvX2NhcmQucG1wcm9fY29udGVudF9tZXNzYWdlIGgyIHN2ZyB7XG4gICAgZmxleC1zaHJpbms6IDA7XG59XG4ucG1wcm8gLnBtcHJvX2J0bixcbi5wbXBybyAjcG1wcm9fbG9naW4gI2xvZ2luZm9ybSAubG9naW4tc3VibWl0IC5idXR0b24ge1xuICAgIGNvbG9yOiAjMUYxRTIzO1xuICAgIGJvcmRlci1jb2xvcjogI0ZGRDQwMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuLnBtcHJvIC5wbXByb19idG46aG92ZXIsIC5wbXBybyAucG1wcm9fYnRuOmZvY3VzLFxuLnBtcHJvICNwbXByb19sb2dpbiAjbG9naW5mb3JtIC5sb2dpbi1zdWJtaXQgLmJ1dHRvbjpob3Zlcixcbi5wbXBybyAjcG1wcm9fbG9naW4gI2xvZ2luZm9ybSAubG9naW4tc3VibWl0IC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkU2MDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjRkZFNjAwO1xuICAgIGNvbG9yOiAjMUYxRTIzO1xufVxuLnBtcHJvIC5wbXByb19idG4tY2FuY2VsIHtcbiAgICBib3JkZXItY29sb3I6ICMxRjFFMjM7XG59XG4ucG1wcm8gLnBtcHJvX2Zvcm1fZmllbGQtcGFzc3dvcmQtdG9nZ2xlIGJ1dHRvbiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzFGMUUyMyAhaW1wb3J0YW50O1xufVxuLnBtcHJvIC5wbXByb19mb3JtX2ZpZWxkLXBhc3N3b3JkLXRvZ2dsZSBidXR0b24gLnBtcHJvX2ljb24tZXllIHN2Zyxcbi5wbXBybyAucG1wcm9fZm9ybV9maWVsZC1wYXNzd29yZC10b2dnbGUgYnV0dG9uOmZvY3VzIC5wbXByb19pY29uLWV5ZSBzdmcsXG4ucG1wcm8gLnBtcHJvX2Zvcm1fZmllbGQtcGFzc3dvcmQtdG9nZ2xlIGJ1dHRvbjphY3RpdmUgLnBtcHJvX2ljb24tZXllIHN2ZyB7XG4gICAgc3Ryb2tlOiAjMUYxRTIzO1xufVxuLnBtcHJvIGgyLFxuLnBtcHJvIC5wbXByb19zZWN0aW9uX3RpdGxlLFxuLnBtcHJvIC5wbXByb19mb3JtX2hlYWRpbmcsXG4ucG1wcm8gLnBtcHJvX2NhcmRfdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi4zNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5wbXBybyBhOmZvY3VzLFxuLnBtcHJvIGE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICMxRjFFMjMgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDtcbn1cbi5wbXBybyBpbnB1dDpmb2N1cyxcbi5wbXBybyBpbnB1dDpmb2N1cy12aXNpYmxlLFxuLnBtcHJvIGJ1dHRvbjpmb2N1cyxcbi5wbXBybyBidXR0b246Zm9jdXMtdmlzaWJsZSxcbi5wbXBybyBzZWxlY3Q6Zm9jdXMsXG4ucG1wcm8gc2VsZWN0OmZvY3VzLXZpc2libGUge1xuICAgIGJvcmRlci1jb2xvcjogIzFGMUUyMyAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMUYxRTIzICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDAgIWltcG9ydGFudDtcbn1cbi5wbXBybyAuYXZhdGFyIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAucG1wcm8gLnBtcHJvX2NhcmQgLnBtcHJvX2NhcmRfY29udGVudCxcbiAgICAucG1wcm8gLnBtcHJvX2NhcmRfYWN0aW9ucyxcbiAgICAucG1wcm8gLnBtcHJvX2NhcmRfdGl0bGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxufVxuXG5ib2R5LnBtcHJvLWxvZ2luICNwbXByb19sb2dpbiAucG1wcm9fY2FyZCB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuYm9keS5wbXByby1tZW1iZXItcHJvZmlsZS1lZGl0IC5wbXByb19mb3JtX3N1Ym1pdCB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbn1cblxuI3BtcHJvX2xldmVscyB7XG4gICAgZ2FwOiA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgICAjcG1wcm9fbGV2ZWxzIHtcbiAgICAgICAgZ2FwOiAzMHB4O1xuICAgIH1cbn1cbiNwbXByb19sZXZlbHMgLnBtcHJvX2xldmVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsZXg6IDAgMCBjYWxjKCgxMDAlIC0gNDBweCkgLyAyKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgI3BtcHJvX2xldmVscyAucG1wcm9fbGV2ZWwge1xuICAgICAgICBmbGV4OiAwIDAgY2FsYygoMTAwJSAtIDMwcHgpIC8gMik7XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAjcG1wcm9fbGV2ZWxzIC5wbXByb19sZXZlbCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIH1cbn1cbiNwbXByb19sZXZlbHMgLnBtcHJvX2xldmVsLWhpZ2hsaWdodCAucG1wcm9fY2FyZCB7XG4gICAgYm9yZGVyOiA0cHggc29saWQgI0ZGRDQwMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4jcG1wcm9fbGV2ZWxzIC5wbXByb19sZXZlbC1oaWdobGlnaHQgLnBtcHJvX2NhcmQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJNb3N0IFBvcHVsYXJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMjVweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkQ0MDA7XG4gICAgY29sb3I6ICMxRjFFMjM7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwYWRkaW5nOiAxNXB4IDI1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jcG1wcm9fbGV2ZWxzIC5wbXByb19sZXZlbC1oaWdobGlnaHQgLnBtcHJvX2NhcmQgaDI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ltZy9tZW1iZXJzaGlwLWRpZ2l0YWwucG5nXCIpICFpbXBvcnRhbnQ7XG59XG4jcG1wcm9fbGV2ZWxzIC5wbXByb19sZXZlbDpsYXN0LWNoaWxkIC5wbXByb19jYXJkIGgyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2Fzc2V0cy9pbWcvbWVtYmVyc2hpcC1iYXNpYy5wbmdcIikgIWltcG9ydGFudDtcbn1cbiNwbXByb19sZXZlbHMgLnBtcHJvX2xldmVsIC5wbXByb19jYXJkIHtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHBhZGRpbmc6IDQ1cHggMzBweCAzMHB4O1xuICAgIGdhcDogMzBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyMHB4KSB7XG4gICAgI3BtcHJvX2xldmVscyAucG1wcm9fbGV2ZWwgLnBtcHJvX2NhcmQge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgfVxufVxuI3BtcHJvX2xldmVscyAucG1wcm9fbGV2ZWwgLnBtcHJvX2NhcmQgaDIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG59XG4jcG1wcm9fbGV2ZWxzIC5wbXByb19sZXZlbCAucG1wcm9fY2FyZCBoMjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ltZy9tZW1iZXJzaGlwLXVrLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbn1cbiNwbXByb19sZXZlbHMgLnBtcHJvX2xldmVsIC5wbXByb19jYXJkIC5wbXByb19jYXJkX2NvbnRlbnQge1xuICAgIG9yZGVyOiAxO1xuICAgIHBhZGRpbmc6IDA7XG59XG4jcG1wcm9fbGV2ZWxzIC5wbXByb19sZXZlbCAucG1wcm9fY2FyZCAucG1wcm9fY2FyZF9jb250ZW50IC5wbXByb19sZXZlbC1kZXNjcmlwdGlvbiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI3BtcHJvX2xldmVscyAucG1wcm9fbGV2ZWwgLnBtcHJvX2NhcmQgLnBtcHJvX2NhcmRfY29udGVudCAucG1wcm9fbGV2ZWwtZGVzY3JpcHRpb24gdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbiNwbXByb19sZXZlbHMgLnBtcHJvX2xldmVsIC5wbXByb19jYXJkIC5wbXByb19jYXJkX2NvbnRlbnQgLnBtcHJvX2xldmVsLWRlc2NyaXB0aW9uIHVsIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jcG1wcm9fbGV2ZWxzIC5wbXByb19sZXZlbCAucG1wcm9fY2FyZCAucG1wcm9fY2FyZF9jb250ZW50IC5wbXByb19sZXZlbC1kZXNjcmlwdGlvbiB1bCBsaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKck1wiO1xuICAgIGNvbG9yOiBncmVlbjtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuI3BtcHJvX2xldmVscyAucG1wcm9fbGV2ZWwgLnBtcHJvX2NhcmQgLnBtcHJvX2NhcmRfY29udGVudCAucG1wcm9fbGV2ZWwtZGVzY3JpcHRpb24gdWwgbGk6aXMoLmNyb3NzKSB7XG4gICAgY29sb3I6IHJnYmEoMzEsIDMwLCAzNSwgMC42KTtcbn1cbiNwbXByb19sZXZlbHMgLnBtcHJvX2xldmVsIC5wbXByb19jYXJkIC5wbXByb19jYXJkX2NvbnRlbnQgLnBtcHJvX2xldmVsLWRlc2NyaXB0aW9uIHVsIGxpOmlzKC5jcm9zcyk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLinJdcIjtcbiAgICBjb2xvcjogcmVkO1xufVxuI3BtcHJvX2xldmVscyAucG1wcm9fbGV2ZWwgLnBtcHJvX2NhcmQgLnBtcHJvX2NhcmRfYWN0aW9ucyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG59XG4jcG1wcm9fbGV2ZWxzIC5wbXByb19sZXZlbCAucG1wcm9fY2FyZCAucG1wcm9fY2FyZF9hY3Rpb25zIC5wbXByb19sZXZlbC1tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbn1cbiNwbXByb19sZXZlbHMgLnBtcHJvX2xldmVsIC5wbXByb19jYXJkIC5wbXByb19jYXJkX2FjdGlvbnMgLnBtcHJvX2xldmVsLW1ldGEgLnBtcHJvX2xldmVsLXByaWNlIHtcbiAgICBvcmRlcjogMjtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuI3BtcHJvX2xldmVscyAucG1wcm9fbGV2ZWwgLnBtcHJvX2NhcmQgLnBtcHJvX2NhcmRfYWN0aW9ucyAucG1wcm9fbGV2ZWwtbWV0YSBhIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xufVxuXG5ib2R5LnBtcHJvLWxldmVscyAucG1wcm9fYWN0aW9uc19uYXYge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG59XG5cbmJvZHkucG1wcm8tYWNjb3VudCAucG1wcm8gPiBzZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG59XG5ib2R5LnBtcHJvLWFjY291bnQgLnBtcHJvID4gc2VjdGlvbjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuYm9keS5wbXByby1hY2NvdW50IC5wbXBybyAucG1wcm9fc2VjdGlvbl90aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuYm9keS5wbXByby1hY2NvdW50IC5wbXBybyAucG1wcm9fY2FyZCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xufVxuXG5ib2R5LnBtcHJvLWNoZWNrb3V0IC5wbXBybyBmb3JtIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcbn1cbmJvZHkucG1wcm8tY2hlY2tvdXQgLnBtcHJvIGZvcm0gPiAqIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbmJvZHkucG1wcm8tY2hlY2tvdXQgLnBtcHJvIGZvcm0gc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbn1cbmJvZHkucG1wcm8tY2hlY2tvdXQgLnBtcHJvIGZvcm0gc2VsZWN0I2RvbmF0aW9uX2Ryb3Bkb3duIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG59XG5ib2R5LnBtcHJvLWNoZWNrb3V0IC5wbXBybyAucG1wcm9fY2FyZCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xufVxuYm9keS5wbXByby1jaGVja291dCAucG1wcm8gLnBtcHJvX2NhcmQgLnBtcHJvX2xldmVsX2Rlc2NyaXB0aW9uX3RleHQgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbmJvZHkucG1wcm8tY2hlY2tvdXQgLnBtcHJvIC5wbXByb19jYXJkIC5wbXByb19sZXZlbF9kZXNjcmlwdGlvbl90ZXh0IHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5ib2R5LnBtcHJvLWNoZWNrb3V0IC5wbXBybyAucG1wcm9fY2FyZCAucG1wcm9fbGV2ZWxfZGVzY3JpcHRpb25fdGV4dCB1bCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuYm9keS5wbXByby1jaGVja291dCAucG1wcm8gLnBtcHJvX2NhcmQgLnBtcHJvX2xldmVsX2Rlc2NyaXB0aW9uX3RleHQgdWwgbGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLinJNcIjtcbiAgICBjb2xvcjogZ3JlZW47XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbn1cbmJvZHkucG1wcm8tY2hlY2tvdXQgLnBtcHJvIC5wbXByb19jYXJkIC5wbXByb19sZXZlbF9kZXNjcmlwdGlvbl90ZXh0IHVsIGxpOmlzKC5jcm9zcykge1xuICAgIGNvbG9yOiByZ2JhKDMxLCAzMCwgMzUsIDAuNik7XG59XG5ib2R5LnBtcHJvLWNoZWNrb3V0IC5wbXBybyAucG1wcm9fY2FyZCAucG1wcm9fbGV2ZWxfZGVzY3JpcHRpb25fdGV4dCB1bCBsaTppcyguY3Jvc3MpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4pyXXCI7XG4gICAgY29sb3I6IHJlZDtcbn1cbmJvZHkucG1wcm8tY2hlY2tvdXQgLnBtcHJvICNwbXByb19mb3JtX2ZpZWxkc2V0LWRvbmF0aW9uIC5wbXByb19jYXJkIHtcbiAgICBib3JkZXI6IDRweCBzb2xpZCAjRkZENDAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGQUYwO1xufVxuYm9keS5wbXByby1jaGVja291dCAucG1wcm8gI3BtcHJvX2Zvcm1fZmllbGRzZXQtZG9uYXRpb24gLnBtcHJvX2Zvcm1fZmllbGRzLWlubGluZSB7XG4gICAgZ2FwOiAyMHB4O1xufVxuYm9keS5wbXByby1jaGVja291dCAucG1wcm8gI3BtcHJvX2Zvcm1fZmllbGRzZXQtZG9uYXRpb24gLnBtcHJvX2Zvcm1faGludCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBvcGFjaXR5OiAxO1xufVxuYm9keS5wbXByby1jaGVja291dCAucG1wcm8gI3BtcHJvX2dpZnRfYWlkIC5wbXByb19mb3JtX2ZpZWxkcy1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luOiAwO1xufVxuYm9keS5wbXByby1jaGVja291dCAucG1wcm8gLnBtcHJvX2Zvcm1fc3VibWl0IHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuYm9keS5wbXByby1jaGVja291dCAucG1wcm8gI3BtcHJvX2J0bi1zdWJtaXQtcGF5cGFsZXhwcmVzcy5wbXByb19idG4tc3VibWl0LWNoZWNrb3V0LXBheXBhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDQwMDtcbiAgICBib3JkZXItY29sb3I6ICNGRkQ0MDA7XG59XG5ib2R5LnBtcHJvLWNoZWNrb3V0IC5wbXBybyAjcG1wcm9fYnRuLXN1Ym1pdC1wYXlwYWxleHByZXNzLnBtcHJvX2J0bi1zdWJtaXQtY2hlY2tvdXQtcGF5cGFsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZFNjAwO1xuICAgIGJvcmRlci1jb2xvcjogI0ZGRTYwMDtcbn1cblxuYm9keS5wbXByby1jb25maXJtYXRpb24gLnBtcHJvIHNlY3Rpb24gcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbmJvZHkucG1wcm8tY29uZmlybWF0aW9uIC5wbXBybyBzZWN0aW9uIC5wbXByb19jYXJkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbmJvZHkucG1wcm8tY29uZmlybWF0aW9uIC5wbXBybyBzZWN0aW9uIC5wbXByb19hY3Rpb25zX25hdi1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuYm9keS5wbXByby1pbnZvaWNlIC5wbXBybyBzZWN0aW9uLFxuYm9keS5wbXByby1pbnZvaWNlIC5wbXBybyAucG1wcm9fYWN0aW9uc19uYXYsXG5ib2R5LnBtcHJvLWJpbGxpbmcgLnBtcHJvIHNlY3Rpb24sXG5ib2R5LnBtcHJvLWJpbGxpbmcgLnBtcHJvIC5wbXByb19hY3Rpb25zX25hdiB7XG4gICAgZ3JpZC1jb2x1bW46IDQvMTI7XG59XG5ib2R5LnBtcHJvLWludm9pY2UgLnBtcHJvIHNlY3Rpb24sXG5ib2R5LnBtcHJvLWJpbGxpbmcgLnBtcHJvIHNlY3Rpb24ge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuYm9keS5wbXByby1pbnZvaWNlIC5wbXBybyAucG1wcm9fc2VjdGlvbl90aXRsZSxcbmJvZHkucG1wcm8tYmlsbGluZyAucG1wcm8gLnBtcHJvX3NlY3Rpb25fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbmJvZHkucG1wcm8taW52b2ljZSAucG1wcm8gLnBtcHJvX2FjdGlvbnNfbmF2LFxuYm9keS5wbXByby1iaWxsaW5nIC5wbXBybyAucG1wcm9fYWN0aW9uc19uYXYge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xufVxuYm9keS5wbXByby1pbnZvaWNlIC5wbXBybyAucG1wcm9fY2FyZCxcbmJvZHkucG1wcm8tYmlsbGluZyAucG1wcm8gLnBtcHJvX2NhcmQge1xuICAgIG1heC13aWR0aDogbm9uZTtcbn1cbmJvZHkucG1wcm8taW52b2ljZSAucG1wcm8gLnBtcHJvX2NhcmQgLnBtcHJvX2J0bi1wcmludCxcbmJvZHkucG1wcm8tYmlsbGluZyAucG1wcm8gLnBtcHJvX2NhcmQgLnBtcHJvX2J0bi1wcmludCB7XG4gICAgY29sb3I6ICMxRjFFMjM7XG59XG5cbi5wbXByby1tZW1iZXItYXJlYS1tZW51IC5wbXByby1tZW1iZXItbGlua3Mge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ucG1wcm8tbWVtYmVyLWFyZWEtbWVudSAucG1wcm8tbWVtYmVyLWxpbmtzIGxpIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogcmdiYSgzMSwgMzAsIDM1LCAwLjIpIDFweCBzb2xpZDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyMHB4KSB7XG4gICAgLnBtcHJvLW1lbWJlci1hcmVhLW1lbnUgLnBtcHJvLW1lbWJlci1saW5rcyBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICB9XG59XG4ucG1wcm8tbWVtYmVyLWFyZWEtbWVudSAucG1wcm8tbWVtYmVyLWxpbmtzIGxpOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbn1cbi5wbXByby1tZW1iZXItYXJlYS1tZW51IC5wbXByby1tZW1iZXItbGlua3MgbGkuY3VycmVudC1tZW51LWl0ZW0ge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbiNwbXByb19mb3JtX2ZpZWxkc2V0LWVkc19jb250YWN0X2luZm9ybWF0aW9uIGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pLFxuI3BtcHJvX2Zvcm1fZmllbGRzZXQtZWRzX2NvbnRhY3RfaW5mb3JtYXRpb24gc2VsZWN0LFxuI3BtcHJvX2Zvcm1fZmllbGRzZXQtZWRzX2FkZGl0aW9uYWxfaW5mb3JtYXRpb24gaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSksXG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfYWRkaXRpb25hbF9pbmZvcm1hdGlvbiBzZWxlY3QsXG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfY29tbXNfaW5mb3JtYXRpb24gaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSksXG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfY29tbXNfaW5mb3JtYXRpb24gc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuI3BtcHJvX2Zvcm1fZmllbGRzZXQtZWRzX2NvbnRhY3RfaW5mb3JtYXRpb24gLnBtcHJvX2Zvcm1fZmllbGRzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcbiAgICBnYXA6IDE4cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MjBweCkge1xuICAgICNwbXByb19mb3JtX2ZpZWxkc2V0LWVkc19jb250YWN0X2luZm9ybWF0aW9uIC5wbXByb19mb3JtX2ZpZWxkcyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbn1cbiNwbXByb19mb3JtX2ZpZWxkc2V0LWVkc19jb250YWN0X2luZm9ybWF0aW9uIC5wbXByb19mb3JtX2ZpZWxkcyAucG1wcm9fZm9ybV9maWVsZCB7XG4gICAgbWFyZ2luOiAwO1xufVxuI3BtcHJvX2Zvcm1fZmllbGRzZXQtZWRzX2NvbnRhY3RfaW5mb3JtYXRpb24gLnBtcHJvX2Zvcm1fZmllbGRzIC5wbXByb19mb3JtX2ZpZWxkOm50aC1jaGlsZCgyKSB7XG4gICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XG59XG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfY29udGFjdF9pbmZvcm1hdGlvbiAucG1wcm9fZm9ybV9maWVsZHMgaW5wdXQsXG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfY29udGFjdF9pbmZvcm1hdGlvbiAucG1wcm9fZm9ybV9maWVsZHMgc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbn1cbiNwbXByb19mb3JtX2ZpZWxkc2V0LWVkc19jb250YWN0X2luZm9ybWF0aW9uIC5wbXByb19mb3JtX2ZpZWxkcyBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNwbXByb19mb3JtX2ZpZWxkc2V0LWVkc19hZGRpdGlvbmFsX2luZm9ybWF0aW9uIHNlbGVjdFtuYW1lPXN1cHBvcnRfZ3JvdXBdIG9wdGlvblt2YWx1ZV49cmVnaW9uX10ge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMxRjFFMjM7XG59XG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfYWRkaXRpb25hbF9pbmZvcm1hdGlvbiBoMyB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuI3BtcHJvX2Zvcm1fZmllbGRzZXQtZWRzX2FkZGl0aW9uYWxfaW5mb3JtYXRpb24gI3N1cHBvcnRfZ3JvdXBfZGl2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuI3BtcHJvX2Zvcm1fZmllbGRzZXQtZWRzX2FkZGl0aW9uYWxfaW5mb3JtYXRpb24gLnBtcHJvX2Zvcm1fZmllbGQtcmFkaW8taXRlbXMgLnBtcHJvX2Zvcm1fZmllbGQtcmFkaW8taXRlbSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YwRjBGMDtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIG1hcmdpbjogMTBweCAwO1xufVxuXG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfY29tbXNfaW5mb3JtYXRpb24gaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbn1cbiNwbXByb19mb3JtX2ZpZWxkc2V0LWVkc19jb21tc19pbmZvcm1hdGlvbiAubWFpbGNoaW1wLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgY29sb3I6IHJnYmEoMzEsIDMwLCAzNSwgMC44KTtcbn0iLCIvKlxuVGhlIGJhc2UgZm9sZGVyIGlzIHVzZWQgZm9yIGdlbmVyYWwgc3R5bGVzIHRoYXQgYXJlIHVzZWQgYWNyb3NzIHRoZSB3ZWJzaXRlLlxuXG5UaGUgYW5pbWF0aW9ucyBmaWxlIGlzIHVzZWQgZm9yIGdlbmVyaWMgYW5pbWF0aW9ucyB0aGF0IGFyZSBub3QgYmxvY2sgc3BlY2lmaWMuXG5UaGUgZ2xvYmFsIGZpbGUgaXMgdXNlZCBmb3IgZ2VuZXJhbCBzdHlsZSBjaG9pY2VzIHN1Y2ggYXMgYm9yZGVyIHJhZGl1cywgb3ZlcmxheXMgYW5kIGJveCBzaGFkb3dzLlxuVGhlIGdyaWQgZmlsZSBpcyBmb3IgY3JlYXRpbmcgYSBncmlkIHN5c3RlbSB1c2luZyBmbGV4Ym94IHNob3VsZCB0aGUgZGVzaWduIGNhbGwgZm9yIGEgZ3JpZCBzeXN0ZW0uIEl0IG1heSBiZSBjb21tZW50ZWQgb3V0IGlmIG5vdCBuZWVkZWQuXG5UaGUgbGF5b3V0IGZpbGUgaXMgdXNlZCBmb3IgZ2VuZXJhbCBsYXlvdXQgcGF0dGVybnMuXG5UaGUgcmVzZXQgZmlsZSBpcyB1c2VkIHRvIHJlc2V0IHRoZSBkZWZhdWx0IGJyb3dzZXIgc3R5bGVzLlxuVGhlIHR5cG9ncmFwaHkgZmlsZSBpcyB1c2VkIGZvciBmb250IHN0eWxlcy5cblxuVGhlIGluZGV4IGZpbGUgaXMgdXNlZCB0byBpbXBvcnQgYWxsIHRoZSBmaWxlcyBpbiB0aGUgYmFzZSBmb2xkZXIuXG4qL1xuXG5AZm9yd2FyZCAndHlwb2dyYXBoeSc7XG5AZm9yd2FyZCAncmVzZXQnO1xuQGZvcndhcmQgJ2xheW91dCc7XG5AZm9yd2FyZCAnZ2xvYmFsJzsiLCIvKlxuVGhpcyBoZWxwZXJzIGZvbGRlciBpcyB1c2VkIHRvIHN0b3JlIHJldXNhYmxlIFNBU1MgdXRpbGl0aWVzIHRvIG1ha2Ugc3R5bGluZyBtb3JlIG1haW50YWluYWJsZSBhbmQgY29uc2lzdGVudCBhY3Jvc3MgYSBwcm9qZWN0LiBUaGUgZmlsZXMgY2FuIGJlIGltcG9ydGVkIGludG8gZGlmZmVyZW50IFNBU1MgbW9kdWxlcy5cblxuVGhlIGJyZWFrcG9pbnRzIGZpbGUgaXMgdXNlZCB0byBkZWZpbmUgbWVkaWEgcXVlcnkgYnJlYWtwb2ludHMuXG5UaGUgY29sb3JzIGZpbGUgaXMgdXNlZCB0byBkZWZpbmUgY29sb3IgdmFyaWFibGVzIGFjY29yZGluZyB0byB0aGUgZGVzaWduLlxuVGhlIG1peGlucyBmaWxlIGlzIHVzZWQgdG8gZGVmaW5lIHJldXNhYmxlIFNBU1MgbWl4aW5zIHVzaW5nIEBpbmNsdWRlLlxuVGhlIHBsYWNlaG9sZGVycyBmaWxlIGlzIHVzZWQgdG8gZGVmaW5lIHBsYWNlaG9sZGVyIHNlbGVjdG9ycyB1c2luZyBAZXh0ZW5kLlxuVGhlIHppbmRleCBmaWxlIGlzIHVzZWQgdG8gZGVmaW5lIHotaW5kZXggdmFsdWVzIGZvciBzdGFja2luZyBlbGVtZW50cyBjbGVhcmx5IGluIG9uZSBwbGFjZS5cblxuVGhlIGluZGV4IGZpbGUgaXMgdXNlZCB0byBpbXBvcnQgYWxsIHRoZSBmaWxlcyBpbiB0aGUgaGVscGVycyBmb2xkZXIuXG4qL1xuQGZvcndhcmQgJ2JyZWFrcG9pbnRzJztcbkBmb3J3YXJkICdjb2xvcnMnO1xuQGZvcndhcmQgJ21peGlucyc7XG5AZm9yd2FyZCAncGxhY2Vob2xkZXJzJztcbkBmb3J3YXJkICd2YXJpYWJsZXMnO1xuQGZvcndhcmQgJ3ppbmRleCc7IiwiQHVzZSAndmFyaWFibGVzJyBhcyAqO1xuQHVzZSAnYnJlYWtwb2ludHMnIGFzICo7XG5cbi8vIEhlYWRlciBoZWlnaHQgLSBhcHBseSBtYXJnaW4gdG9wIHRvIGVsZW1lbnRzIHRvIGFsbG93IHNwYWNlIGZvciBoZWFkZXJcbiVoZWFkZXItaGVpZ2h0IHtcbiAgICBtYXJnaW4tdG9wOiAkaGVhZGVyLWhlaWdodDtcblxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCBcIm1kXCIpKSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRoZWFkZXItaGVpZ2h0LW1vYmlsZTtcbiAgICB9XG59XG5cbi8vIEZvbnQgc3R5bGVzXG5cbi8vIGZvbnQtc2l6ZSAxOHB4IGxpbmUtaGVpZ2h0IDI4cHhcbiVib2R5LXRleHQge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLy8gMTZweC8yMHB4XG4lc21hbGwtdGV4dCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xufVxuXG4lYnV0dG9uLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIDI0cHgvMzJweFxuJWg0IHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vLyAyOHB4LzM4cHhcbiVoMyB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjM3NXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG4vLyAzNHB4LzQ0cHhcbiVoMiB7XG4gICAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi43NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vLyA1NHB4LzY0cHhcbiVoMSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgyLjI1cmVtLCAxLjg3NXJlbSArIDEuNjY2N3Z3LCAzLjM3NXJlbSk7XG4gICAgbGluZS1oZWlnaHQ6IGNsYW1wKDIuNjI1cmVtLCAyLjE2NjdyZW0gKyAyLjAzN3Z3LCA0cmVtKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG5ib2R5Om5vdCgud3AtYWRtaW4pIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgQGV4dGVuZCAlYm9keS10ZXh0O1xufVxuXG4uaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IsXG4uaGFzLWdyZWVuLWJhY2tncm91bmQtY29sb3IsXG4uaGFzLXB1cnBsZS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4uYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc21hbGwtdGV4dCB7XG4gICAgQGV4dGVuZCAlc21hbGwtdGV4dDtcbn1cblxuLmg0IHtcbiAgICBAZXh0ZW5kICVoNDtcbn1cblxuLmgzIHtcbiAgICBAZXh0ZW5kICVoMztcbn1cblxuLmgyIHtcbiAgICBAZXh0ZW5kICVoMjtcbn1cblxuLmgxIHtcbiAgICBAZXh0ZW5kICVoMTtcbn0iLCIvLyBMQVlPVVQgVkFSSUFCTEVTXG4vLyBzaXRlLW1heC13aWR0aCBhY2NvcmRpbmcgdG8gZGVzaWduIC0gdGhpcyB2YXJpYWJsZSBpcyByZXF1aXJlZCBmb3IgZ3JpZCBsYXlvdXRcbiRzaXRlLW1heC13aWR0aDogMTQ0MHB4O1xuLy8gc2l0ZS1zaWRlLXBhZGRpbmcgYWNjb3JkaW5nIHRvIGRlc2lnbiAtIHRoaXMgdmFyaWFibGUgaXMgcmVxdWlyZWQgZm9yIGdyaWQgbGF5b3V0XG4kc2l0ZS1zaWRlLXBhZGRpbmc6IGNsYW1wKDQwcHgsIDZ2dywgODBweCk7IC8vIG1pbiAyMHB4LCBtYXggNDBweFxuXG4kaGVhZGVyLWhlaWdodDogMjE1cHg7XG4kaGVhZGVyLWhlaWdodC1tb2JpbGU6IDE3NXB4O1xuXG4kZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcblxuLy8gYnV0dG9uLCBpbnB1dHNcbiRib3JkZXItcmFkaXVzOiA1cHg7XG4vLyBpbWFnZXMsIGNhcmRzXG4kYm9yZGVyLXJhZGl1cy1sZzogMjBweDtcblxuLy8gcGFkZGluZ1xuJHBkLXNtOiA4MHB4O1xuJHBkLWxnOiAxMjBweDsiLCIkd2hpdGU6ICNmZmZmZmY7XG4kYmxhY2s6ICMxRjFFMjM7XG5cbiR5ZWxsb3c6ICNGRkQ0MDA7XG4keWVsbG93LWxpZ2h0OiAjRkZFNjAwO1xuJHllbGxvdy1saWdodGVzdDogI0ZGRkFGMDtcbiR5ZWxsb3ctb3BhY2l0eTogI0ZGRDQwMDkzO1xuXG4kZ3JleS1kYXJrOiAjNzA3MDcwO1xuJGdyZXk6ICM4OTg5ODk7XG4kZ3JleS1saWdodDogI0E3QTdBNztcbiRncmV5LWxpZ2h0ZXN0OiAjRjBGMEYwO1xuXG4kcHVycGxlOiAjQTg0RTg4O1xuXG4kZ3JlZW46ICMyMDNDM0I7XG4kZ3JlZW4tbGlnaHQ6ICM4OURBQkQ7XG4iLCIgIC8qIEJveCBzaXppbmcgcnVsZXMgKi9cbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8qIFByZXZlbnQgZm9udCBzaXplIGluZmxhdGlvbiAqL1xuICBodG1sIHtcbiAgICAtbW96LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiBub25lO1xuICAgIHRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gIH1cblxuICAvKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gaW4gZmF2b3VyIG9mIGJldHRlciBjb250cm9sIGluIGF1dGhvcmVkIENTUyAqL1xuICBodG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbiAgYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuICBkZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG4gIHNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsXG4gIGIsIHUsIGksIGNlbnRlcixcbiAgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbiAgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG4gIHRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuICBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbiAgZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLFxuICBtZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbiAgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLyogUmVtb3ZlIGxpc3Qgc3R5bGVzIG9uIHVsLCBvbCBlbGVtZW50cyB3aXRoIGEgbGlzdCByb2xlLCB3aGljaCBzdWdnZXN0cyBkZWZhdWx0IHN0eWxpbmcgd2lsbCBiZSByZW1vdmVkICovXG4gIHVsW3JvbGU9J2xpc3QnXSxcbiAgb2xbcm9sZT0nbGlzdCddIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIHVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8qIFNldCBjb3JlIHJvb3QgZGVmYXVsdHMgKi9cbiAgaHRtbDpmb2N1cy13aXRoaW4ge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICB9XG5cbiAgLyogU2V0IGNvcmUgYm9keSBkZWZhdWx0cyAqL1xuICBib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG5cbiAgLyogU2V0IHNob3J0ZXIgbGluZSBoZWlnaHRzIG9uIGhlYWRpbmdzIGFuZCBpbnRlcmFjdGl2ZSBlbGVtZW50cyAqL1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgbGFiZWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIH1cblxuICAvKiBBIGVsZW1lbnRzIHRoYXQgZG9uJ3QgaGF2ZSBhIGNsYXNzIGdldCBkZWZhdWx0IHN0eWxlcyAqL1xuICBhOm5vdChbY2xhc3NdKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvO1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIH1cblxuICAvKiBNYWtlIGltYWdlcyBlYXNpZXIgdG8gd29yayB3aXRoICovXG4gIGltZyxcbiAgcGljdHVyZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaWZyYW1lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8qIEluaGVyaXQgZm9udHMgZm9yIGlucHV0cyBhbmQgYnV0dG9ucyAqL1xuICBpbnB1dCxcbiAgYnV0dG9uLFxuICB0ZXh0YXJlYSxcbiAgc2VsZWN0IHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvKiBNYWtlIHN1cmUgdGV4dGFyZWFzIHdpdGhvdXQgYSByb3dzIGF0dHJpYnV0ZSBhcmUgbm90IHRpbnkgKi9cbiAgdGV4dGFyZWE6bm90KFtyb3dzXSkge1xuICAgIG1pbi1oZWlnaHQ6IDEwZW07XG4gIH1cblxuICAvKiBVbmRvIHJlc2V0IHJ1bGVzIGluc2lkZSB0aGUgY2xhc3NpYyBlZGl0b3IgKFRpbnlNQ0UpIGlmcmFtZSAqL1xuICBib2R5Lm1jZS1jb250ZW50LWJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiByZXZlcnQ7XG4gICAgcGFkZGluZzogcmV2ZXJ0O1xuICAgIGJvcmRlcjogcmV2ZXJ0O1xuXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuICAgIGEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbiAgICBkZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG4gICAgc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbiAgICBiLCB1LCBpLCBjZW50ZXIsXG4gICAgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbiAgICBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbiAgICB0YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcbiAgICBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbiAgICBmaWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG4gICAgbWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXG4gICAgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgICAgIG1hcmdpbjogcmV2ZXJ0O1xuICAgICAgcGFkZGluZzogcmV2ZXJ0O1xuICAgICAgYm9yZGVyOiByZXZlcnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogcmV2ZXJ0O1xuICAgIH1cblxuICAgIHVsW3JvbGU9J2xpc3QnXSxcbiAgICBvbFtyb2xlPSdsaXN0J10ge1xuICAgICAgbGlzdC1zdHlsZTogcmV2ZXJ0O1xuICAgICAgcGFkZGluZy1sZWZ0OiByZXZlcnQ7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgcGFkZGluZzogcmV2ZXJ0O1xuICAgICAgbWFyZ2luOiByZXZlcnQ7XG4gICAgfVxuXG4gICAgaW1nLCBwaWN0dXJlIHtcbiAgICAgIG1heC13aWR0aDogcmV2ZXJ0O1xuICAgICAgZGlzcGxheTogcmV2ZXJ0O1xuICAgIH1cblxuICAgIGlmcmFtZSB7XG4gICAgICBkaXNwbGF5OiByZXZlcnQ7XG4gICAgfVxuICB9XG5cbiAgLyogUmVtb3ZlIGFsbCBhbmltYXRpb25zLCB0cmFuc2l0aW9ucyBhbmQgc21vb3RoIHNjcm9sbCBmb3IgcGVvcGxlIHRoYXQgcHJlZmVyIG5vdCB0byBzZWUgdGhlbSAqL1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIGh0bWw6Zm9jdXMtd2l0aGluIHtcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0bztcbiAgICB9XG5cbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH0iLCJAdXNlICcuLi9oZWxwZXJzLycgYXMgKjtcblxuLmhlYWRlci1jb250ZW50LFxuLm5hdi1jb250ZW50LFxuLmZvb3Rlci1jb250ZW50LXdyYXBwZXIsXG5zZWN0aW9uLFxubWFpbj4ucG1wcm9cbntcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIHJlcGVhdCgxMiwgY2FsYyhtaW4oMTAwJSAtICRzaXRlLXNpZGUtcGFkZGluZywgJHNpdGUtbWF4LXdpZHRoKSAvIDEyKSkgMWZyO1xuXG4gICAgJj4qIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAxNDtcblxuICAgICAgICAmLmZ1bGwtd2lkdGgge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuaGVhZGVyLFxuc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmxleC1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZmxleC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgZ2FwOiAxZW07XG5cbiAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbn1cblxuLmdyaWQtMi1jb2wge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBnYXA6IDgwcHg7XG5cbiAgICBAaW5jbHVkZSBtcS1tZCB7XG4gICAgICAgIGdhcDogNDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbn1cblxuLmdyaWQtMy1jb2wge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBnYXA6IDgwcHg7XG5cbiAgICBAaW5jbHVkZSBtcS1sZyB7XG4gICAgICAgIGdhcDogNDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG59XG5cbi5ncmlkLTQtY29sIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgZ2FwOiAzMHB4O1xuXG4gICAgQGluY2x1ZGUgbXEtbGcge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLXNtIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxufSIsIiRicmVha3BvaW50czogKFxuICAgIFwieHNcIjogNDgwcHgsXG4gICAgXCJzbVwiOiA3MjBweCxcbiAgICBcIm1kXCI6IDk2MHB4LFxuICAgIFwibGdcIjogMTIwMHB4LFxuICAgIFwieGxcIjogMjAwMHB4XG4pO1xuXG4vLyBOT1RFOiB0aGUgZm9sbG93aW5nIG1peGlucyBmb2xsb3cgYSBkZXNrdG9wIGZpcnN0IGFwcHJvYWNoXG5AbWl4aW4gbXEteHMge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCBcInhzXCIpKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIG1xLXNtIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgXCJzbVwiKSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBtcS1tZCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsIFwibWRcIikpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gbXEtbGcge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCBcImxnXCIpKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIG1xLXhsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgXCJ4bFwiKSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbi8vIHRoaXMgbWl4aW4gY2FuIGJlIHVzZWQgZm9yIGFueSBjdXN0b20gYnJlYWtwb2ludCBidXQgd2lsbCBkZWZhdWx0IHRvIDAgaWYgbm8gdmFsdWUgaXMgcGFzc2VkXG5AbWl4aW4gYnJlYWtwb2ludCgkYnA6IDApIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnApIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG5ib2R5Om5vdCgud3AtYWRtaW4sIC5tY2UtY29udGVudC1ib2R5KSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcblxuICAgICYubW9kYWwtb3BlbixcbiAgICAmLm1vYmlsZS1uYXYtb3BlbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIH1cblxuICAgIC5oYXMteWVsbG93LWJhY2tncm91bmQtY29sb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgIH1cbn1cblxuLnNpdGUtbWFpbiB7XG4gICAgZmxleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAmOmhhcyguYmxvY2tfNDA0KSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbmJvZHk6bm90KC53cC1hZG1pbikge1xuICAgIG5hdiB7XG4gICAgICAgIHVsIGxpIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5Om5vdCgud3AtYWRtaW4pIGE6bm90KC5idXR0b24pLFxuLndwLWJsb2NrLmFjZi1ibG9jay1wcmV2aWV3IGE6bm90KC5idXR0b24pIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiB0ZXh0LWRlY29yYXRpb24tY29sb3IgMjAwbXMgZWFzZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cblxuLndoaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG59XG5cbi5ibGFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5cbi55ZWxsb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG59XG5cbi55ZWxsb3ctbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctbGlnaHRlc3Q7XG59XG5cbi5ncmV5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4uZ3JleS1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXktbGlnaHRlc3Q7XG59XG5cbi5wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLmdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG4gICAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLmdyZWVuLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4tbGlnaHQ7XG59XG5cbi53eXNpd3lnIHtcblxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIHAsXG4gICAgdWwsXG4gICAgb2wsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICBoMjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICBoMzpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICBoNDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgICB9XG5cbiAgICBvbCxcbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yNWVtO1xuICAgIH1cblxuICAgIG9sIHtcbiAgICAgICAgbGk6Om1hcmtlciB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAxZW07XG4gICAgICAgIEBleHRlbmQgJWgzO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBmb3IgZWxlbWVudHMgd2l0aCBhIGJhY2tncm91bmQgaW1hZ2UgLSBwb3NpdGlvbiBpbWFnZSBhbmQgYWRkIG92ZXJsYXlcbi5ia2ctaW1hZ2Uge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgei1pbmRleDogeihcIm92ZXJsYXlcIik7XG4gICAgfVxufVxuXG5zZWN0aW9uOmhhcyguemVicmEtYmFja2dyb3VuZCkge1xuICAgICYuaGFzLWdyZXktdGludC1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgICAgQGluY2x1ZGUgemVicmEtc3RyaXBlcygnLi4vLi4vYXNzZXRzL2ltZy9iYWNrZ3JvdW5kcy96ZWJyYS1iYWNrZ3JvdW5kLnN2ZycsXG4gICAgICAgICRvcGFjaXR5OiAwLjAxXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgJi5oYXMteWVsbG93LXRpbnQtYmFja2dyb3VuZC1jb2xvciB7XG4gICAgICAgIEBpbmNsdWRlIHplYnJhLXN0cmlwZXMoJy4uLy4uL2Fzc2V0cy9pbWcvYmFja2dyb3VuZHMvemVicmEtYmFja2dyb3VuZC5zdmcnLFxuICAgICAgICAkb3BhY2l0eTogMC4wMjVcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAmLmhhcy13aGl0ZS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgICAgQGluY2x1ZGUgemVicmEtc3RyaXBlcygnLi4vLi4vYXNzZXRzL2ltZy9iYWNrZ3JvdW5kcy96ZWJyYS1iYWNrZ3JvdW5kLnN2ZycsXG4gICAgICAgICRvcGFjaXR5OiAwLjAyXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgJi5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciB7XG4gICAgICAgIEBpbmNsdWRlIHplYnJhLXN0cmlwZXMoJy4uLy4uL2Fzc2V0cy9pbWcvYmFja2dyb3VuZHMvemVicmEtYmFja2dyb3VuZC1ibGFjay5zdmcnLFxuICAgICAgICAkb3BhY2l0eTogMC42XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgJi5oYXMtcHVycGxlLWJhY2tncm91bmQtY29sb3Ige1xuICAgICAgICBAaW5jbHVkZSB6ZWJyYS1zdHJpcGVzKCcuLi8uLi9hc3NldHMvaW1nL2JhY2tncm91bmRzL3plYnJhLWJhY2tncm91bmQtcHVycGxlLnN2ZycsXG4gICAgICAgICRvcGFjaXR5OiAwLjhcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAmLmhhcy1ncmVlbi1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgICAgQGluY2x1ZGUgemVicmEtc3RyaXBlcygnLi4vLi4vYXNzZXRzL2ltZy9iYWNrZ3JvdW5kcy96ZWJyYS1iYWNrZ3JvdW5kLWdyZWVuLnN2ZycsXG4gICAgICAgICRvcGFjaXR5OiAwLjZcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAuemVicmEtYmFja2dyb3VuZCB7XG4gICAgICAgIHotaW5kZXg6IHooXCJoYXMtYmFja2dyb3VuZFwiKTtcbiAgICB9XG59XG5cbi8qIGh0dHBzOi8vbWVkaXVtLmNvbS9AbWF0dXpvL3dyaXRpbmctY3NzLXdpdGgtYWNjZXNzaWJpbGl0eS1pbi1taW5kLTg1MTRhMDAwNzkzOSAqL1xuLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIG1hcmdpbjogLTFweDtcbn0iLCIvLyBCYWNrZ3JvdW5kIG92ZXJsYXkgZm9yIHplYnJhIGJhY2tncm91bmRzXG5AbWl4aW4gemVicmEtc3RyaXBlcyhcbiAgICAkaW1hZ2UtcGF0aCxcbiAgICAkb3BhY2l0eTogMC4wMixcbiAgICAkc2l6ZTogY292ZXIsXG4gICAgJHBvc2l0aW9uOiBjZW50ZXJcbikge1xuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJHNpemU7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbn0iLCIvKlxuVGhpcyBjb21wb25lbnRzIGZvbGRlciBpcyB1c2VkIGZvciBzdHlsZXMgdGhhdCBhcmUgc3BlY2lmaWMgdG8gYSBzZWN0aW9uIG9yIGNvbXBvbmVudCBvbiB0aGUgd2Vic2l0ZS5cblxuVGhlIGluZGV4IGZpbGUgaXMgdXNlZCB0byBpbXBvcnQgYWxsIHRoZSBmaWxlcyBpbiB0aGUgY29tcG9uZW50cyBmb2xkZXIuXG4qL1xuQGZvcndhcmQgJ2hlYWRlcic7XG5AZm9yd2FyZCAnZm9vdGVyJztcbkBmb3J3YXJkICduYXYnO1xuQGZvcndhcmQgJ2J1dHRvbnMnO1xuQGZvcndhcmQgJzQwNCc7XG5AZm9yd2FyZCAnYmxvY2staGVhZGluZyc7XG5AZm9yd2FyZCAnc3dpcGVyLWNvbnRyb2xzJztcbkBmb3J3YXJkICdsaWdodGJveCc7XG5AZm9yd2FyZCAncG9zdC1pdGVtJztcbkBmb3J3YXJkICdwYWdpbmF0aW9uJztcbkBmb3J3YXJkICdmaWx0ZXJzJztcbkBmb3J3YXJkICdicmVhZGNydW1icyc7XG5AZm9yd2FyZCAnc2VhcmNoJzsiLCJAdXNlICcuLi9oZWxwZXJzLycgYXMgKjtcblxuLmhlYWRlciB7XG4gICAgei1pbmRleDogeihcImhlYWRlclwiKTtcblxuICAgICNza2lwLWxpbmsge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMCUpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgICAgICAgICBjbGlwOiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDMwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLWNvbnRlbnQge1xuICAgICAgICAgICAgLmZsZXgtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIGdhcDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhlYWRlci1sb2dvIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjYwcHg7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1sZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLWxnIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLWxnIHtcbiAgICAgICAgICAgICAgICAuZmxleC13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgID4uZmxleC13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5tb2JpbGUtd3JhcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250cm9scy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uLmRvbmF0ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHVycGxlO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwdXJwbGUsIDQlKTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJHB1cnBsZSwgNCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhhcy15ZWxsb3ctYmFja2dyb3VuZC1jb2xvciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYmxhY2s7XG5cbiAgICAgICAgJjpoYXMoLm1haW4tbmF2KSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1sZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWFyY2gtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbXEtbGcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWFyY2gtYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgcGFkZGluZzogOHB4IDE1cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2U7XG5cbiAgICBAaW5jbHVkZSBtcS1sZyB7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTVweDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgICB9XG5cbiAgICAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLXRleHQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgJj5kaXYge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VhcmNoLWljb24td3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubW9iaWxlLWNvbnRyb2xzIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgXCJsZ1wiKSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5idXJnZXItaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgaGVpZ2h0OiA0NHB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAxMHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHotaW5kZXg6IHooXCJidXJnZXJcIik7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTAwbXMgZWFzZSwgdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmJhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UsIG9wYWNpdHkgMzAwbXMgZWFzZSwgY29sb3IgMzAwbXMgZWFzZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLmJhci0xIHtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYXItMiB7XG4gICAgICAgICAgICB0b3A6IDIxcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFyLTMge1xuICAgICAgICAgICAgdG9wOiAzMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgLmJhci0xIHtcbiAgICAgICAgICAgICAgICB0b3A6IDIxcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhci0yIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmFyLTMge1xuICAgICAgICAgICAgICAgIHRvcDogMjFweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cblxuICAgICAgICAvLyAmLmFjdGl2ZSB7XG4gICAgICAgIC8vICAgICAuYmFyLTEge1xuICAgICAgICAvLyAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoNXB4LCA1cHgpO1xuICAgICAgICAvLyAgICAgfVxuXG4gICAgICAgIC8vICAgICAuYmFyLTIge1xuICAgICAgICAvLyAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgLy8gICAgIC5iYXItMyB7XG4gICAgICAgIC8vICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUoNXB4LCAtNXB4KTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgIH1cbn0iLCJAdXNlICcuLi9oZWxwZXJzLycgYXMgKjtcblxuLnNpdGUtZm9vdGVyIHtcbiAgICAuaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgIH1cblxuICAgIC5mb290ZXItY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogNjBweCAwIDQwcHg7XG5cbiAgICAgICAgLmZsZXgtd3JhcHBlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiA2MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1sZyB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBnYXA6IDQwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItbG9nbyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItcmlnaHQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDQwcHg7XG5cbiAgICAgICAgICAgIC5mb290ZXItbWVudXMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZ2FwOiA4MHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbGcge1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDYwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWQge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIG5hdiB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNSwgYXV0byk7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMCAzcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gUmVtb3ZlIGJvdHRvbSBtYXJnaW4gZnJvbSBsYXN0IGl0ZW0gaW4gZWFjaCBjb2x1bW5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLXNtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9vdGVyLWNvbnRhY3QsXG4gICAgICAgICAgICAuZm9vdGVyLWNvcHlyaWdodCB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9vdGVyLWxvZ29zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGdhcDogMzBweDtcblxuICAgICAgICAgICAgICAgIC5mb290ZXItbG9nby1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9vdGVyLXNtYWxsLXByaW50IHtcbiAgICAgICAgICAgICAgICBuYXYgdWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgIGxpOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgbGk6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4ubmF2IHtcbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGJ1dHRvbi5pdGVtLWxpbmsge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA0MDBtcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgJi5yb3RhdGUtYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubWFpbi1uYXYtbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAzMHB4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sb2dpbi1saW5rIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hdi1sb2dpbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgLm1pbmktbG9naW4tZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjbGFtcCgyMDBweCwgMTAwdncsIDMwMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdy1saWdodGVzdDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IHooXCJzdWJtZW51XCIpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZSwgdmlzaWJpbGl0eSAzMDBtcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5sb2dpbi13ZWxjb21lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhhcyg+IGE6aG92ZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uYXYtYmFza2V0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAuc2l0ZS1iYXNrZXQtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgLnN2Zy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyN3B4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5taW5pLWJhc2tldC1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM2MHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93LWxpZ2h0ZXN0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IHooXCJzdWJtZW51XCIpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZSwgdmlzaWJpbGl0eSAzMDBtcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgIGJvZHkud29vY29tbWVyY2UtY2FydCAmLFxuICAgICAgICAgICAgICAgICAgICBib2R5Lndvb2NvbW1lcmNlLWNoZWNrb3V0ICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vIG1pbmkgYmFza2V0IHN0eWxlc1xuICAgICAgICAgICAgICAgICAgICB1bC53b29jb21tZXJjZS1taW5pLWNhcnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYS5yZW1vdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ucXVhbnRpdHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC53b29jb21tZXJjZS1taW5pLWNhcnRfX2J1dHRvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYWluLW5hdiB7XG4gICAgQGluY2x1ZGUgbXEtbGcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5zdWJtZW51LWNvbnRhaW5lciB7XG4gICAgICAgIC5zdWJtZW51IHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDQwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgJjpoYXMoPiBhOmhvdmVyKSxcbiAgICAgICAgICAgICAgICAmOmhhcyguc2Vjb25kLWxldmVsLm9wZW4pIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZpcnN0LWxldmVsIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UsIHZpc2liaWxpdHkgMzAwbXMgZWFzZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNjJweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93LWxpZ2h0ZXN0O1xuICAgICAgICAgICAgei1pbmRleDogeihcInN1Ym1lbnVcIik7XG4gICAgICAgICAgICB3aWR0aDogY2xhbXAoMjAwcHgsIDEwMHZ3LCAzMDBweCk7XG5cbiAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+LnN1Ym1lbnUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCA0MHB4O1xuXG4gICAgICAgICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWNvbmQtbGV2ZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgIHRvcDogLTIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93LWxpZ2h0ZXN0O1xuICAgICAgICAgICAgd2lkdGg6IGNsYW1wKDIwMHB4LCAxMDB2dywgMzAwcHgpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZSwgdmlzaWJpbGl0eSAzMDBtcyBlYXNlO1xuXG4gICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPi5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vYmlsZS1uYXYtd3JhcHBlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgZWFzZSwgdmlzaWJpbGl0eSAwcyBsaW5lYXIgNDAwbXM7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwZHZoO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcblxuICAgICYubWVudS1vcGVuIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgZWFzZTtcbiAgICB9XG5cbiAgICAubW9iaWxlLW5hdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgICB9XG5cbiAgICAubW9iaWxlLW5hdi1saXN0IHtcblxuICAgICAgICBsaSxcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG5cbiAgICAgICAgICAgIC5pdGVtLWxpbmsge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnN1Ym1lbnUtb3Blbj4uaXRlbS1saW5rPi5hcnJvdyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dpbi1saW5rLFxuICAgICAgICAuc2l0ZS1iYXNrZXQtbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cblxuICAgICAgICAubW9iaWxlLWxvZ2luLWxpbmtzIHtcbiAgICAgICAgICAgIC5tb2JpbGUtbG9naW4tbGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcblxuICAgICAgICAmLmZpcnN0LWxldmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgPi5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY29uZC1sZXZlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgID4uc3VibWVudSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4vLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVzXG5ib2R5Om5vdCgud3AtYWRtaW4pIGJ1dHRvbixcbi53cC1ibG9jay5hY2YtYmxvY2stcHJldmlldyBidXR0b24ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuYm9keTpub3QoLndwLWFkbWluKSBidXR0b246ZGlzYWJsZWQsXG4ud3AtYmxvY2suYWNmLWJsb2NrLXByZXZpZXcgYnV0dG9uOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuYm9keTpub3QoLndwLWFkbWluKSAuYnV0dG9uLFxuLndwLWJsb2NrLmFjZi1ibG9jay1wcmV2aWV3IC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxMHB4O1xuICAgIG1pbi13aWR0aDogMTQwcHg7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBAZXh0ZW5kICVidXR0b24tdGV4dDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHllbGxvdztcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICB0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOm5vdCgubm8tYXJyb3cpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaW1nL2ljb25zL2J1dHRvbi1hcnJvdy5zdmcnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdy1saWdodDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkeWVsbG93LWxpZ2h0O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAwO1xuICAgIH1cbn0iLCJAdXNlICcuLi9oZWxwZXJzLycgYXMgKjtcblxuLmJsb2NrXzQwNCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgZmxleDogMTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IGNsYW1wKDEyMHB4LCAxMHZ3LCAyNDBweCkgMDtcbiAgICBtaW4taGVpZ2h0OiA4MGR2aDtcblxuICAgIEBpbmNsdWRlIG1xLW1kIHtcbiAgICAgICAgbWluLWhlaWdodDogNjBkdmg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICBtaW4taGVpZ2h0OiA4MGR2aDtcbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICAgIHotaW5kZXg6IHooXCJoYXMtYmFja2dyb3VuZFwiKTtcblxuICAgICAgICA+KiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaDEge1xuICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmtnLWltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1kIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDc1JSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1kIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4uaGVhZGluZy13cmFwcGVyIHtcbiAgICAmOmhhcygqKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgfVxuXG4gICAgLmgyIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKCRzaXRlLW1heC13aWR0aCAqIDAuNSk7XG4gICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKCRzaXRlLW1heC13aWR0aCAqIDAuNzUpO1xuICAgIH1cblxuICAgICY6aGFzKHApIHtcbiAgICAgICAgLmgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi8vIHN3aXBlciBuYXZpZ2F0aW9uIGNvbnRyb2xzIC0gcmVzZXQgYW5kIHN0eWxlc1xuXG4vLyBpZiBzd2lwZXIgY29udHJvbHMgYXJlIHBvc2l0aW9uZWQgdW5kZXIgdGhlIHN3aXBlciAod2l0aCBjbGFzcyBzdGFja2VkLWxheW91dCAtIHNlZSBpbWFnZS1nYWxsZXJ5IGJsb2NrKSAtIHRoaXMgbmVlZHMgdG8gYmUgc2V0IHVwIGluIHRoZSBwaHAgZmlyc3Rcbi5zd2lwZXItY29udHJvbHMuc3RhY2tlZC1sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xuICAgIGhlaWdodDogNDBweDsgLy8gYWRkZWQgdG8gbWF0Y2ggdGhlIGJ1dHRvbiBkZWZhdWx0IGhlaWdodFxuXG4gICAgLnN3aXBlci1idXR0b24tbmV4dCxcbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDMwMG1zIGVhc2U7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gZW5kIiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi5nY29udGFpbmVyICNnbGlnaHRib3gtc2xpZGVyIHtcbiAgICAuZ3NsaWRlIHtcbiAgICAgICAgLmdzbGlkZS1pbWFnZSBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogODB2aDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdvdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDMxLCAzMCwgMzUsIDAuOTUpO1xufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4ucG9zdC1pdGVtIHtcbiAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucG9zdC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogMTVweDtcblxuICAgICAgICAubWV0YS1jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMThweDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWV0YS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgICAgICAgICAuZXZlbnQtbWV0YSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3BlY2lhbCBzdHlsaW5nIGZvciBub24gc3VwcG9ydCBncm91cHMgaXRlbVxuICAgICY6bm90KC5zdXAtZ3JvdXBzLWl0ZW0pIHtcbiAgICAgICAgLnBvc3QtY29udGVudCB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDJweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDNweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4ucGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcblxuICAgIC5wYWdlLW51bWJlcnMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMzAwbXMgZWFzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXG4gICAgICAgICY6aG92ZXI6bm90KC5jdXJyZW50LCAubmV4dCwgLnByZXYpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctbGlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmV4dCxcbiAgICAgICAgJi5wcmV2IHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcblxuICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDMwMG1zIGVhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuc2VjdGlvbi5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciB7XG4gICAgLnBhZ2luYXRpb24ge1xuICAgICAgICAucGFnZS1udW1iZXJzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubmV4dCxcbiAgICAgICAgICAgICYucHJldiB7XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi5maWx0ZXJzLWRyb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgbWluLXdpZHRoOiAyNjBweDtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXktbGlnaHQ7XG5cbiAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogMTJweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAuZHJvcGRvd24taWNvbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXJyZW50LWZpbHRlciB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93bi1pY29uIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiAtMXB4O1xuICAgICAgICByaWdodDogLTFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDMwMG1zIGVhc2U7XG4gICAgICAgIHotaW5kZXg6IHooXCJmaWx0ZXJzXCIpO1xuXG4gICAgICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZTtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkeWVsbG93LCAwLjUpO1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNob3cgZHJvcGRvd24gd2hlbiB0b2dnbGUgaXMgYWN0aXZlXG4gICAgLmRyb3Bkb3duLXRvZ2dsZVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSsuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleS1saWdodDtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBDdXN0b20gc3R5bGVzIGZvciBzdXBwb3J0IGdyb3VwcyBmaWx0ZXJzXG4gICAgJi5zdXAtZ3JvdXBzLWZpbHRlcnMge1xuICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc3VwLWdyb3Vwcy1maWx0ZXJfX2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjZW50LWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnNlY3Rpb24uaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3Ige1xuICAgIC5maWx0ZXJzLWRyb3Bkb3duLnN1cC1ncm91cHMtZmlsdGVycyAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSAuc3VwLWdyb3Vwcy1maWx0ZXJfX2xhYmVsIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi5icmVhZGNydW1iLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIC55b2FzdC1icmVhZGNydW1icz5zcGFuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDIwcHggMzBweDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMnB4O1xuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi5zZWFyY2gtcmVzdWx0cy1zZWN0aW9uIHtcbiAgICAuaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgICAgcGFkZGluZzogJHBkLWxnIDA7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIHJlcGVhdCgxMiwgY2FsYyhtaW4oMTAwJSAtICRzaXRlLXNpZGUtcGFkZGluZywgJHNpdGUtbWF4LXdpZHRoKSAvIDEyKSkgMWZyO1xuXG4gICAgICAgICY+KiB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIDE0O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1ib3gge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzLWhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRncmV5LWRhcms7XG4gICAgfVxufVxuXG4uYXJjaGl2ZS13cmFwcGVyX3NlYXJjaCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAkcGQtbGcgMCAkcGQtc207XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDQwcHg7XG59XG5cbi5zZWFyY2gtcmVzdWx0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXktZGFyaztcblxuICAgICZfX21ldGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgLm1ldGEtY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDEycHg7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1ldGEtY29udGVudCB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMzAwbXMgZWFzZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcms7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19leGNlcnB0IHtcblxuICAgICAgICAvLyBSZWxldmFuc3NpIGhpZ2hsaWdodHMgbWF0Y2hpbmcgdGVybXMgaW4gPHN0cm9uZz4gdGFnc1xuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzLXBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206ICRwZC1sZztcblxuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAubmF2LWxpbmtzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJjaGl2ZS13cmFwcGVyX25vLXJlc3VsdHMge1xuICAgIHBhZGRpbmc6ICRwZC1sZyAwO1xufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4vLyBHZW5lcmFsIHN0eWxlIG92ZXJyaWRlc1xuLndvb2NvbW1lcmNlIHtcblxuICAgIC8vIHRhcmdldCBzaG9wIGhvbWUgb25seVxuICAgICYucG9zdC10eXBlLWFyY2hpdmUtcHJvZHVjdCB7XG4gICAgICAgIC53b29jb21tZXJjZS1icmVhZGNydW1iIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1icmVhZGNydW1iIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgQGV4dGVuZCAlYm9keS10ZXh0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLnBhZ2UtdGl0bGUsXG4gICAgLnByb2R1Y3RfdGl0bGUge1xuICAgICAgICBAZXh0ZW5kICVoMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICBhLmJ1dHRvbjpub3QoLmRvbmF0ZSksXG4gICAgYnV0dG9uLmJ1dHRvbixcbiAgICBpbnB1dC5idXR0b24sXG4gICAgI3Jldmlld19mb3JtICNzdWJtaXQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3cgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IGF1dG87XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdy1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHNwYW4ge1xuICAgICAgICAgICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjIpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2ssIDAuOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLW5vLXByb2R1Y3RzLWZvdW5kIHtcbiAgICAgICAgLndvb2NvbW1lcmNlLWluZm8ge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYS5hZGRlZF90b19jYXJ0IHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi8vIFNpbmdsZSBwcm9kdWN0IHBhZ2Ugb3ZlcnJpZGVzXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3Qge1xuICAgICNtYWluIHtcbiAgICAgICAgbWFyZ2luOiAkcGQtc20gMDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgcmVwZWF0KDEyLCBjYWxjKG1pbigxMDAlIC0gJHNpdGUtc2lkZS1wYWRkaW5nLCAkc2l0ZS1tYXgtd2lkdGgpIC8gMTIpKSAxZnI7XG5cbiAgICAgICAgJj4qIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gMTQ7XG5cbiAgICAgICAgICAgICYuZnVsbC13aWR0aCB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBkaXYucHJvZHVjdCB7XG4gICAgICAgIC5wcmljZSxcbiAgICAgICAgLnN0b2NrIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG4gICAgICAgICAgICBvbC5mbGV4LWNvbnRyb2wtdGh1bWJzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGdhcDogMjBweDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSA2MHB4KSAvIDQpO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1kIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gNDBweCkgLyAzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAgIHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZvcm0uY2FydCB7XG4gICAgICAgICAgICAmOm5vdCgudmFyaWF0aW9uc19mb3JtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi52YXJpYXRpb25zX2Zvcm0ge1xuICAgICAgICAgICAgICAgIC52YXJpYXRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRkLnZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNpbmdsZV92YXJpYXRpb25fd3JhcCAud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucXVhbnRpdHkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X21ldGEge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAud29vY29tbWVyY2UtdGFicyB7XG4gICAgICAgICAgICAud29vY29tbWVyY2UtVGFicy1wYW5lbCB7XG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kICVoMjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+Kjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudXBzZWxscyxcbiAgICAgICAgLnJlbGF0ZWQucHJvZHVjdHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogODBweDtcblxuICAgICAgICAgICAgaDI6bm90KC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlKSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAlaDI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwucHJvZHVjdHMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgICAgICAgICAgICBnYXA6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLWxnIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmFmdGVyLFxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkucHJvZHVjdCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIGEgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnO1xuICAgICAgICAgICAgICAgICAgICAvLyB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi8vIENhcnQgcGFnZSBvdmVycmlkZXNcbi53b29jb21tZXJjZS1jYXJ0IHtcbiAgICAuc2l0ZS1tYWluIHtcbiAgICAgICAgbWFyZ2luOiAkcGQtc20gMDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgcmVwZWF0KDEyLCBjYWxjKG1pbigxMDAlIC0gJHNpdGUtc2lkZS1wYWRkaW5nLCAkc2l0ZS1tYXgtd2lkdGgpIC8gMTIpKSAxZnI7XG5cbiAgICAgICAgJj4qIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gMTQ7XG5cbiAgICAgICAgICAgICYuZnVsbC13aWR0aCB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyby1oZWFkaW5nLWNvbnRhaW5lciB7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud2MtYmxvY2stY2FydF9fc3VibWl0LWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgfVxufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4vLyBDaGVja291dCBwYWdlIG92ZXJyaWRlc1xuLndvb2NvbW1lcmNlLWNoZWNrb3V0IHtcbiAgICAuc2l0ZS1tYWluIHtcbiAgICAgICAgbWFyZ2luOiAkcGQtc20gMDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgcmVwZWF0KDEyLCBjYWxjKG1pbigxMDAlIC0gJHNpdGUtc2lkZS1wYWRkaW5nLCAkc2l0ZS1tYXgtd2lkdGgpIC8gMTIpKSAxZnI7XG5cbiAgICAgICAgJj4qIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gMTQ7XG5cbiAgICAgICAgICAgICYuZnVsbC13aWR0aCB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyby1oZWFkaW5nLWNvbnRhaW5lciB7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG59XG4iLCJAdXNlICcuLi9oZWxwZXJzLycgYXMgKjtcblxuLy8gTXkgQWNjb3VudCBwYWdlIG92ZXJyaWRlc1xuLndvb2NvbW1lcmNlLWFjY291bnQge1xuICAgIC5zaXRlLW1haW4ge1xuICAgICAgICBtYXJnaW46ICRwZC1zbSAwO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciByZXBlYXQoMTIsIGNhbGMobWluKDEwMCUgLSAkc2l0ZS1zaWRlLXBhZGRpbmcsICRzaXRlLW1heC13aWR0aCkgLyAxMikpIDFmcjtcblxuICAgICAgICAmPioge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAxNDtcblxuICAgICAgICAgICAgJi5mdWxsLXdpZHRoIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZXJvLWhlYWRpbmctY29udGFpbmVyIHtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQge1xuICAgICAgICA+Kjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAud29vY29tbWVyY2UtaW5mbyB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC53b29jb21tZXJjZS1BZGRyZXNzZXMge1xuICAgICAgICAgICAgYWRkcmVzcyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi8vIENhdGVnb3JpeSBwYWdlIG92ZXJyaWRlc1xuLndvb2NvbW1lcmNlLnRheC1wcm9kdWN0X2NhdCB7XG4gICAgI21haW4ge1xuICAgICAgICBtYXJnaW46ICRwZC1zbSAwO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciByZXBlYXQoMTIsIGNhbGMobWluKDEwMCUgLSAkc2l0ZS1zaWRlLXBhZGRpbmcsICRzaXRlLW1heC13aWR0aCkgLyAxMikpIDFmcjtcblxuICAgICAgICAmPioge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAxNDtcblxuICAgICAgICAgICAgJi5mdWxsLXdpZHRoIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1wcm9kdWN0cy1oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICAgIC50ZXJtLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1vcmRlcmluZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgICAgZ2FwOiA0MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLWxnIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyLFxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpLnByb2R1Y3Qge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgICAgICAgLy8gYSBpbWcge1xuICAgICAgICAgICAgLy8gICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnO1xuICAgICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi8vIElmIHRoZSBQTVBybyBzaG9ydGNvZGUgYmxvY2sgaXMgdXNlZCBvdXRzaWRlIG9mIHRoZSBtZW1iZXJzIGFyZWEsIGl0IHdpbGwgYmUgd3JhcHBlZCBpbiBhIGRpdiB3aXRoIHRoZSAubWVtYmVycy1jb250ZW50LW1lbnUgY2xhc3MuIFRoaXMgYWxsb3dzIHVzIHRvIGFwcGx5IHRoZSBzYW1lIGdyaWQgbGF5b3V0IHRvIHRoZSBjb250ZW50IHdpdGhpbiB0aGUgYmxvY2sgYXMgd2UgZG8gdG8gdGhlIHJlc3Qgb2YgdGhlIG1lbWJlcnMgYXJlYS5cbnNlY3Rpb24ucG1wcm8tc2hvcnRjb2RlIHtcbiAgICBwYWRkaW5nOiAkcGQtc20gMCAkcGQtbGc7XG5cbiAgICAmOmhhcygucG1wcm8tbWVtYmVyLWFyZWEtbWVudSkge1xuICAgICAgICAvKi5wbXByby1tZW51LXdyYXBwZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wbXByby1tZW1iZXItYXJlYS1tZW51IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wbXBybyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLXNtIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkcGQtc207XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9ICovXG5cbiAgICAgICAgLnBtcHJvLW1lbWJlci1hcmVhLW1lbnUge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLXNtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBtcHJvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBtcHJvX21lc3NhZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNlY3Rpb24jcG1wcm9fY2FuY2VsIHtcbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wbXByb19tZXNzYWdlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gR2VuZXJhbCBzdHlsZSBvdmVycmlkZXNcbi5wbXBybyB7XG4gICAgY29sb3I6ICRibGFjaztcblxuICAgIHNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICA+LnBtcHJvX3NlY3Rpb24ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLnBtcHJvX2NhcmQsXG4gICAgLnBtcHJvX21lc3NhZ2Uge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgfVxuXG4gICAgLnBtcHJvX21lc3NhZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIH1cblxuICAgIC5wbXByb19jYXJkLndlbGNvbWUtbWVzc2FnZSB7XG4gICAgICAgIHBhZGRpbmc6IDM2cHg7XG5cbiAgICAgICAgPioge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucG1wcm9fY2FyZC5wbXByb19jb250ZW50X21lc3NhZ2Uge1xuICAgICAgICBtYXJnaW46ICRwZC1zbSAwO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBtcHJvX2J0bixcbiAgICAjcG1wcm9fbG9naW4gI2xvZ2luZm9ybSAubG9naW4tc3VibWl0IC5idXR0b24ge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBib3JkZXItY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93LWxpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkeWVsbG93LWxpZ2h0O1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wbXByb19idG4tY2FuY2VsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgLnBtcHJvX2Zvcm1fZmllbGQtcGFzc3dvcmQtdG9nZ2xlIHtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24gLnBtcHJvX2ljb24tZXllIHN2ZyxcbiAgICAgICAgYnV0dG9uOmZvY3VzIC5wbXByb19pY29uLWV5ZSBzdmcsXG4gICAgICAgIGJ1dHRvbjphY3RpdmUgLnBtcHJvX2ljb24tZXllIHN2ZyB7XG4gICAgICAgICAgICBzdHJva2U6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyLFxuICAgIC5wbXByb19zZWN0aW9uX3RpdGxlLFxuICAgIC5wbXByb19mb3JtX2hlYWRpbmcsXG4gICAgLnBtcHJvX2NhcmRfdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjM3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICBhOmZvY3VzLFxuICAgIGE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaW5wdXQ6Zm9jdXMsXG4gICAgaW5wdXQ6Zm9jdXMtdmlzaWJsZSxcbiAgICBidXR0b246Zm9jdXMsXG4gICAgYnV0dG9uOmZvY3VzLXZpc2libGUsXG4gICAgc2VsZWN0OmZvY3VzLFxuICAgIHNlbGVjdDpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5hdmF0YXIge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLXNtIHtcblxuICAgICAgICAucG1wcm9fY2FyZCAucG1wcm9fY2FyZF9jb250ZW50LFxuICAgICAgICAucG1wcm9fY2FyZF9hY3Rpb25zLFxuICAgICAgICAucG1wcm9fY2FyZF90aXRsZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5LnBtcHJvLWxvZ2luIHtcbiAgICAjcG1wcm9fbG9naW4gLnBtcHJvX2NhcmQge1xuICAgICAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG59XG5cbmJvZHkucG1wcm8tbWVtYmVyLXByb2ZpbGUtZWRpdCB7XG4gICAgLnBtcHJvX2Zvcm1fc3VibWl0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi8vIE1lbWJlcnNoaXBzIGxldmVscyBzdHlsZSBvdmVycmlkZXNcbiNwbXByb19sZXZlbHMge1xuICAgIGdhcDogNDBweDtcblxuICAgIEBpbmNsdWRlIG1xLW1kIHtcbiAgICAgICAgZ2FwOiAzMHB4O1xuICAgIH1cblxuICAgIC5wbXByb19sZXZlbCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZsZXg6IDAgMCBjYWxjKCgxMDAlIC0gNDBweCkgLyAyKTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tZCB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgY2FsYygoMTAwJSAtIDMwcHgpIC8gMik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaGlnaGxpZ2h0IHtcbiAgICAgICAgICAgIC5wbXByb19jYXJkIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAkeWVsbG93O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiTW9zdCBQb3B1bGFyXCI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMjVweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAyNXB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaW1nL21lbWJlcnNoaXAtZGlnaXRhbC5wbmcnKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5wbXByb19jYXJkIHtcbiAgICAgICAgICAgICAgICBoMjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaW1nL21lbWJlcnNoaXAtYmFzaWMucG5nJykgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG1wcm9fY2FyZCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZztcbiAgICAgICAgICAgIHBhZGRpbmc6IDQ1cHggMzBweCAzMHB4O1xuICAgICAgICAgICAgZ2FwOiAzMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaW1nL21lbWJlcnNoaXAtdWsucG5nJyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBtcHJvX2NhcmRfY29udGVudCB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgIC5wbXByb19sZXZlbC1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi4pyTXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aXMoLmNyb3NzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRibGFjaywgMC42KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCLinJdcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wbXByb19jYXJkX2FjdGlvbnMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgLnBtcHJvX2xldmVsLW1ldGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAucG1wcm9fbGV2ZWwtcHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5LnBtcHJvLWxldmVscyB7XG4gICAgLnBtcHJvX2FjdGlvbnNfbmF2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHBkLXNtO1xuICAgIH1cbn0iLCJAdXNlICcuLi9oZWxwZXJzLycgYXMgKjtcblxuLy8gTWVtYmVyc2hpcCBhY2NvdW50IHN0eWxlIG92ZXJyaWRlc1xuYm9keS5wbXByby1hY2NvdW50IHtcbiAgICAucG1wcm8ge1xuICAgICAgICA+c2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHBkLXNtO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG1wcm9fc2VjdGlvbl90aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAucG1wcm9fY2FyZCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiQHVzZSAnLi4vaGVscGVycy8nIGFzICo7XG5cbi8vIENoZWNrb3V0IHBhZ2VzIHN0eWxlIG92ZXJyaWRlc1xuYm9keS5wbXByby1jaGVja291dCB7XG4gICAgLnBtcHJvIHtcbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XG5cbiAgICAgICAgICAgID4qIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICYjZG9uYXRpb25fZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wbXByb19jYXJkIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgICAgICAgLnBtcHJvX2xldmVsX2Rlc2NyaXB0aW9uX3RleHQge1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIuKck1wiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmlzKC5jcm9zcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRibGFjaywgMC42KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi4pyXXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3BtcHJvX2Zvcm1fZmllbGRzZXQtZG9uYXRpb24ge1xuICAgICAgICAgICAgLnBtcHJvX2NhcmQge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctbGlnaHRlc3Q7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wbXByb19mb3JtX2ZpZWxkcy1pbmxpbmUge1xuICAgICAgICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBtcHJvX2Zvcm1faGludCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3BtcHJvX2dpZnRfYWlkIHtcbiAgICAgICAgICAgIC5wbXByb19mb3JtX2ZpZWxkcy1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBtcHJvX2Zvcm1fc3VibWl0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAjcG1wcm9fYnRuLXN1Ym1pdC1wYXlwYWxleHByZXNzLnBtcHJvX2J0bi1zdWJtaXQtY2hlY2tvdXQtcGF5cGFsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR5ZWxsb3c7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctbGlnaHQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkeWVsbG93LWxpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4vLyBTdHlsZSBvdmVycmlkZXMgZm9yIGJpbGxpbmcgcGFnZXMgaW5jbHVnaW5nIGNvbmZpcm1hdGlvbiwgaW52b2ljZSwgc2luZ2xlIGludm9pY2VcbmJvZHkucG1wcm8tY29uZmlybWF0aW9uIHtcbiAgICAucG1wcm8ge1xuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wbXByb19jYXJkIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBtcHJvX2FjdGlvbnNfbmF2LXJpZ2h0IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5LnBtcHJvLWludm9pY2UsXG5ib2R5LnBtcHJvLWJpbGxpbmcge1xuICAgIC5wbXBybyB7XG4gICAgICAgIHNlY3Rpb24sXG4gICAgICAgIC5wbXByb19hY3Rpb25zX25hdiB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogNCAvIDEyO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wbXByb19zZWN0aW9uX3RpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wbXByb19hY3Rpb25zX25hdiB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHBkLXNtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBtcHJvX2NhcmQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgICAgICAucG1wcm9fYnRuLXByaW50IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgJy4uL2hlbHBlcnMvJyBhcyAqO1xuXG4vLyBNZW1iZXJzaGlwcyBtZW51IHN0eWxlc1xuLnBtcHJvLW1lbWJlci1hcmVhLW1lbnUge1xuICAgIC5wbXByby1tZW1iZXItbGlua3Mge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmdiYSgkYmxhY2ssIDAuMikgMXB4IHNvbGlkO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1zbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCJAdXNlICcuLi9oZWxwZXJzLycgYXMgKjtcblxuLy8gVXNlciBmaWVsZHMgYXJlIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbSBwbHVnaW5cbiNwbXByb19mb3JtX2ZpZWxkc2V0LWVkc19jb250YWN0X2luZm9ybWF0aW9uLFxuI3BtcHJvX2Zvcm1fZmllbGRzZXQtZWRzX2FkZGl0aW9uYWxfaW5mb3JtYXRpb24sXG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfY29tbXNfaW5mb3JtYXRpb24ge1xuICAgIGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSksXG4gICAgc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4vLyBDb250YWN0IEluZm9ybWF0aW9uIGZpZWxkIGdyb3VwXG4jcG1wcm9fZm9ybV9maWVsZHNldC1lZHNfY29udGFjdF9pbmZvcm1hdGlvbiB7XG4gICAgLnBtcHJvX2Zvcm1fZmllbGRzIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgICAgICBnYXA6IDE4cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtc20ge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIH1cblxuICAgICAgICAucG1wcm9fZm9ybV9maWVsZCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0LFxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQWRkaXRpb25hbCBJbmZvcm1hdGlvbiBmaWVsZCBncm91cFxuI3BtcHJvX2Zvcm1fZmllbGRzZXQtZWRzX2FkZGl0aW9uYWxfaW5mb3JtYXRpb24ge1xuICAgIHNlbGVjdFtuYW1lPVwic3VwcG9ydF9ncm91cFwiXSBvcHRpb25bdmFsdWVePVwicmVnaW9uX1wiXSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cblxuICAgICNzdXBwb3J0X2dyb3VwX2RpdiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgLnBtcHJvX2Zvcm1fZmllbGQtcmFkaW8taXRlbXMge1xuICAgICAgICAucG1wcm9fZm9ybV9maWVsZC1yYWRpby1pdGVtIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LWxpZ2h0ZXN0O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNwbXByb19mb3JtX2ZpZWxkc2V0LWVkc19jb21tc19pbmZvcm1hdGlvbiB7XG4gICAgaDMge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cblxuICAgIC5tYWlsY2hpbXAtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2ssIDAuOCk7XG4gICAgfVxufSJdfQ== */
