/*!
Theme Name: Wednesday's Domaine
Theme URI: http://wednesdaysdomaine.com/
Author: Dhruve on Mars
Author URI: dhruveonmars.com
Description: Wednesday's Domaine Website
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wd

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
:root {
    --color-transparent: transparent;
    --color-white: rgb(255, 255, 255);
    --color-white-fifty: rgb(255, 255, 255, 0.5);
    --color-white-twentyfive: rgb(255, 255, 255, 0.25);
    --color-white-thirty: rgb(255, 255, 255, 0.3);
    --color-white-ten: rgb(255, 255, 255, 0.1);
    --color-offwhite: rgb(255, 247, 246);
    --color-offwhite-fifty: rgb(255, 247, 246, 0.5);
    --color-offwhite-twentyfive: rgb(255, 247, 246, 0.25);
    --color-offwhite-ten: rgb(255, 247, 246, 0.1);
    --color-black: rgb(37, 30, 33);
    --color-black-fifty: rgb(37, 30, 33, 0.5);
    --color-black-twentyfive: rgb(37, 30, 33, 0.25);
    --color-black-ten: rgb(37, 30, 33, 0.1);
    --color-brand1: rgb(199, 183, 255);
    --color-brand2: rgb(255, 0, 0);
    --color-brand3: rgb(150, 223, 194);
    --color-brand4: rgb(23, 40, 206);
    --color-background: var(--color-offwhite);
    --color-text: var(--color-black)
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

main {
    display: block
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
[type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

:root {
    --font-primary: "New Kansas";
    --font-secondary: "Jean Luc Web", Arial, sans-serif;
    --font-tertiary: "Earth Rich";
    --base-size: 1rem;
    --text-sm: 0.8125rem;
    --text-rg: 0.9375rem;
    --text-md: 1rem;
    --text-lg: 1.25rem;
    --text-xl: 1.5rem;
    --text-xxl: 1.875rem;
    --text-xxxl: 3rem;
    --text-xxxxl: 3.8rem
}

@media(min-width: 768px) {
    :root {
        --text-xxxl: 3.4rem;
        --text-xxxxl: 4rem
    }
}

@media(min-width: 1080px) {
    :root {
        --text-xxxl: 3.75rem;
        --text-xxxxl: 4.5rem
    }
}

:is(.rte h1, .typ-heading1) {
    font-family: var(--font-secondary);
    font-size: var(--text-xxxxl);
    font-weight: 100;
    line-height: 1
}

:is(.rte h2, .typ-heading2, .junip-product-review-title, .junip-product-review-average) {
    font-family: var(--font-tertiary);
    font-size: var(--text-xxxl);
    letter-spacing: .25rem;
    line-height: 1
}

:is(.rte h3, .typ-heading3) {
    font-family: var(--font-secondary);
    font-size: var(--text-xxl);
    font-weight: 100;
    letter-spacing: 0
}

:is(.rte h4, .typ-heading4) {
    font-family: var(--font-primary);
    font-size: var(--text-xl);
    font-weight: 600
}

.cky-title {
    font-family: var(--font-primary) !important;
    font-size: var(--text-xl) !important;
    font-weight: 600 !important
}

:is(.rte h5, .typ-heading5) {
    font-family: var(--font-tertiary);
    font-size: var(--text-lg);
    letter-spacing: .16em
}

:is(.rte h6, .typ-heading6, .section__container .junip-review-list-item .junip-review-title) {
    font-family: var(--font-tertiary);
    font-size: var(--text-md);
    letter-spacing: .16em
}

.section__container .junip-see-more {
    font-family: var(--font-secondary);
    font-size: var(--text-md);
    font-weight: 100;
    letter-spacing: .16em
}

.typ-body {
    font-family: var(--font-primary);
    font-size: var(--text-rg);
    line-height: 1.4375rem;
    font-weight: 400
}

.typ-body-bold {
    font-family: var(--font-primary);
    font-size: var(--text-rg);
    line-height: 1.4375rem;
    font-weight: 700
}

:is(.typ-body-small, .junip-product-review-count) {
    font-family: var(--font-primary);
    font-size: var(--text-sm);
    font-weight: 400
}

.typ-body-small-semibold {
    font-family: var(--font-primary);
    font-size: var(--text-sm);
    font-weight: 600
}

html {
    font-size: var(--base-size)
}

body {
    font-family: var(--font-primary);
    font-size: var(--text-rg);
    line-height: 1.4375rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased
}

.fw-600 {
    font-weight: 600
}

:is(h1, h2, h3, h4, h5, h6) {
    margin: 0
}

.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

@media(min-width: 768px) {
    .text-left--tablet {
        text-align: left
    }

    .text-center--tablet {
        text-align: center
    }

    .text-right--tablet {
        text-align: right
    }
}

.tt-lowercase {
    text-transform: lowercase
}

.tt-uppercase {
    text-transform: uppercase
}

.mw-65 {
    max-width: 65ch;
    margin-left: auto;
    margin-right: auto
}

blockquote {
    margin: 0
}

blockquote p {
    margin: 0
}

blockquote p::before {
    content: "“"
}

blockquote p::after {
    content: "”"
}

:root {
    --size-xxs-maxwidth: min(calc(100% - (var(--t-gap) * 2)), 680px);
    --size-xs-maxwidth: min(calc(100% - (var(--t-gap) * 2)), 840px);
    --size-sm-maxwidth: min(calc(100% - (var(--t-gap) * 2)), 1080px);
    --size-md-maxwidth: min(calc(100% - (var(--t-gap) * 2)), 1416px);
    --size-lg-maxwidth: min(calc(100% - (var(--t-gap) * 2)), 1640px);
    --size-fullwidth: calc(100% - (var(--t-gap) * 2));
    --transition-short: none;
    --transition-regular: none;
    --transition-long: none;
    --border-width: 2px;
    --border-width-sm: 1px;
    --border-radius-xs: 2px;
    --border-radius-sm: 5px;
    --border-radius-md: 10px;
    --border-radius-lg: 20px;
    --border-radius-xl: 35px;
    --safetop: env(safe-area-inset-top);
    --saferight: env(safe-area-inset-right);
    --safebottom: env(safe-area-inset-bottom);
    --safeleft: env(safe-area-inset-left);
    --space-xxs: 0.25rem;
    --space-xs: 0.5rem;
    --space-sm: 1rem;
    --space-md: 1.5rem;
    --space-lg: 3rem;
    --space-xl: 4rem;
    --space-xxl: 4.5rem;
    --t-gap: var(--space-sm);
    --header-height: calc((0.625rem * 2) + 32px)
}

@media(prefers-reduced-motion: no-preference) {
    :root {
        --transition-short: 0.1s ease;
        --transition-regular: 0.3s ease;
        --transition-long: 0.5s ease
    }
}

@media(min-width: 768px) {
    :root {
        --t-gap: var(--space-md)
    }
}

@media(min-width: 1080px) {
    :root {
        --t-gap: var(--space-lg)
    }
}

@media(min-width: 980px) {
    :root {
        --header-height: calc((0.925rem * 2) + 33px)
    }
}

@media(min-width: 1080px) {
    :root {
        --header-height: calc((0.625rem * 2) + 43px)
    }
}

html {
    box-sizing: border-box;
    background: var(--color-background);
    min-height: 100%;
    display: flex;
    scroll-padding-top: calc(var(--header-height) + var(--space-sm))
}

*,
*:before,
*:after {
    box-sizing: inherit
}

body {
    margin: 0;
    padding: 0;
    background: var(--color-background);
    color: var(--color-text);
    overflow-x: hidden;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    width: 100%
}

@supports(scroll-behavior: smooth) {
    body {
        scroll-behavior: smooth
    }
}

main {
    position: relative;
    flex-grow: 1;
    display: flex;
    flex-direction: column
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 12
}

.hidden {
    display: none !important
}

.visually-hidden {
    position: absolute !important;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
    word-wrap: normal !important
}

.visually-hidden--inline {
    margin: 0;
    height: 1em
}

.overflow-hidden {
    overflow: hidden
}

.skip-to-content-link:focus {
    z-index: 9999;
    position: inherit;
    overflow: auto;
    width: auto;
    height: auto;
    clip: auto
}

.template-captcha main {
    padding-top: var(--space-lg);
    padding-bottom: var(--space-lg)
}

input:is([type=email], [type=password], [type=text], [type=tel]),
select {
    font-family: var(--font-primary);
    font-size: var(--text-rg);
    line-height: 1.4375rem;
    font-weight: 400;
    color: var(--color-text);
    box-shadow: none;
    padding: var(--space-xs) 0;
    border: 0;
    border-bottom: var(--border-width-sm) solid var(--color-text);
    background: transparent
}

input:is([type=email], [type=password], [type=text], [type=tel])::-moz-placeholder,
select::-moz-placeholder {
    font-family: var(--font-primary);
    font-size: var(--text-rg);
    line-height: 1.4375rem;
    font-weight: 400;
    color: var(--color-text)
}

input:is([type=email], [type=password], [type=text], [type=tel]):-ms-input-placeholder,
select:-ms-input-placeholder {
    font-family: var(--font-primary);
    font-size: var(--text-rg);
    line-height: 1.4375rem;
    font-weight: 400;
    color: var(--color-text)
}

input:is([type=email], [type=password], [type=text], [type=tel])::placeholder,
select::placeholder {
    font-family: var(--font-primary);
    font-size: var(--text-rg);
    line-height: 1.4375rem;
    font-weight: 400;
    color: var(--color-text)
}

input:is([type=email], [type=password], [type=text], [type=tel]):focus-visible,
select:focus-visible {
    outline: none;
    border-bottom-color: var(--color-brand1)
}

.input-submit-arrow {
    position: relative
}

.input-submit-arrow input {
    padding-right: var(--space-lg)
}

.input-submit-arrow .button--arrow {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    min-width: var(--space-lg);
    text-align: right
}

label {
    display: block
}

.select {
    position: relative;
    display: inline-flex
}

.select select {
    padding-right: var(--space-sm);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0
}

.select .icon {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: var(--space-sm);
    pointer-events: none
}

input[type=checkbox] {
    position: absolute;
    top: 0;
    left: -99999px;
    width: 1px;
    height: 1px
}

input[type=checkbox]+label::before {
    content: "";
    width: .889rem;
    height: .889rem;
    border: var(--border-width-sm) solid var(--color-text);
    border-radius: var(--border-radius-xs);
    margin-right: var(--space-xs);
    display: inline-block
}

input[type=checkbox]:checked+label::before {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTAgMTAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+Q2hlY2s8L3RpdGxlPgogICAgPGcgaWQ9InN0eWxlLXNoZWV0cyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9InNzLWZvcm1zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzA3LjAwMDAwMCwgLTYxMS4wMDAwMDApIiBmaWxsPSIjMDAwMDAwIj4KICAgICAgICAgICAgPGcgaWQ9ImdyYWQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI4OC4wMDAwMDAsIDE2OC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJjaGVja2JveCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTYuMDAwMDAwLCA0MDQuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9ImNoZWNrZWQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAuMDAwMDAwLCAzMi4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9ImljL2NoZWNrIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyLjAwMDAwMCwgNi4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPSJjaGVjay1zaW5nbGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEuMTI1MDAwLCAxLjEyNTAwMCkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0zLjY1Nzg3MTU3LDkuNzUgQzMuNDk2NTI3OTEsOS43NDk5NjMyMyAzLjM0MTgwNTA1LDkuNjgxNTQ1NTMgMy4yMjc3MzUwOCw5LjU1OTc5NTczIEwwLjE4NTc1MTQyNyw2LjMxMzk4OTA4IEMwLjAyNzU5NDY5MDksNi4xNTEwMDEyNSAtMC4wMzU4MzQzMjY1LDUuOTA5NjQwODQgMC4wMTk4NDMzNjg1LDUuNjgyNjc0OTQgQzAuMDc1NTIxMDYzNCw1LjQ1NTcwOTAzIDAuMjQxNjQwNzI1LDUuMjc4NDU4OCAwLjQ1NDM1NDEyOCw1LjIxOTA1MDUyIEMwLjY2NzA2NzUzMSw1LjE1OTY0MjIzIDAuODkzMjcxNTE4LDUuMjI3MzIxMiAxLjA0NjAyNDQsNS4zOTYwNzQ5NiBMMy41NzI2OTYwMyw4LjA5MTM5MjggTDguNjMzMzQwMDQsMC4yOTIzNjg1OTQgQzguNzU0Njg1NTYsMC4wOTU1NzE2NzU4IDguOTY2NDI1NTMsLTAuMDE1NjM5NTU3NCA5LjE4NjU5Nzc1LDAuMDAxNzgzNTI3NDkgQzkuNDA2NzY5OTcsMC4wMTkyMDY2MTI0IDkuNjAwODE3OTQsMC4xNjI1Mjk0MjQgOS42OTM2Mjc4NCwwLjM3NjI3MzI5NSBDOS43ODY0Mzc3NSwwLjU5MDAxNzE2NSA5Ljc2MzQ0Mjg3LDAuODQwNjM0NTI4IDkuNjMzNTQ0MjYsMS4wMzExMTQxOSBMNC4xNTc5NzM2OCw5LjQ3MDIxMTQ3IEM0LjA1NTg3MDY1LDkuNjI5NDU4MzIgMy44OTI2NjgyMyw5LjczMTk5MDExIDMuNzEyNjI3MjgsOS43NSBDMy42OTQzNzUzOCw5Ljc1IDMuNjc2MTIzNDcsOS43NSAzLjY1Nzg3MTU3LDkuNzUgWiIgaWQ9IlBhdGgiIGZpbGwtcnVsZT0ibm9uemVybyI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=);
    background-size: .556rem .556rem;
    background-position: center center;
    background-repeat: no-repeat
}

[class*=klaviyo-form-]:not(:empty)+.klaviyo-loading-message {
    display: none
}

.section__container .klaviyo-form form {
    padding: 0 !important
}

.section__container .klaviyo-form form>.needsclick {
    gap: var(--space-md);
    min-height: unset !important
}

.section__container .klaviyo-form form * {
    color: var(--color-text) !important
}

.section__container .klaviyo-form form [role=alert] {
    color: var(--color-brand2) !important
}

.section__container .klaviyo-form .ql-editor {
    display: grid !important;
    gap: var(--space-md)
}

.section__container .klaviyo-form .ql-editor p {
    font-family: var(--font-primary) !important;
    font-size: var(--text-rg) !important;
    line-height: 1.4375rem !important;
    font-weight: 400 !important
}

.section__container .klaviyo-form .form-row {
    position: relative
}

.section__container .klaviyo-form [data-testid=form-component] {
    padding: 0 !important;
    position: static !important
}

.section__container .klaviyo-form :is(input, textarea, select) {
    font-family: var(--font-primary) !important;
    font-size: var(--text-rg) !important;
    line-height: 1.4375rem !important;
    font-weight: 400 !important;
    color: var(--color-text) !important;
    box-shadow: none !important
}

.section__container .klaviyo-form :is(input, textarea, select)::-moz-placeholder {
    font-family: var(--font-primary) !important;
    font-size: var(--text-rg) !important;
    line-height: 1.4375rem !important;
    font-weight: 400 !important;
    color: var(--color-text) !important
}

.section__container .klaviyo-form :is(input, textarea, select):-ms-input-placeholder {
    font-family: var(--font-primary) !important;
    font-size: var(--text-rg) !important;
    line-height: 1.4375rem !important;
    font-weight: 400 !important;
    color: var(--color-text) !important
}

.section__container .klaviyo-form :is(input, textarea, select)::placeholder {
    font-family: var(--font-primary) !important;
    font-size: var(--text-rg) !important;
    line-height: 1.4375rem !important;
    font-weight: 400 !important;
    color: var(--color-text) !important
}

.section__container .klaviyo-form input:is([type=email], [type=text]) {
    padding: 0 !important
}

.section__container .klaviyo-form input[type=email] {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-bottom: var(--border-width) solid var(--color-text) !important;
    padding-right: 3rem !important
}

.section__container .klaviyo-form div[data-testid=form-row] div[data-testid=form-component]:nth-of-type(2) {
    position: absolute !important;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    height: 100%
}

.section__container .klaviyo-form button[type=button] {
    position: absolute;
    top: 0;
    right: 0;
    background: none !important;
    border-radius: 0 !important;
    font-family: var(--font-primary) !important;
    font-size: var(--text-rg) !important;
    line-height: 1.4375rem !important;
    font-weight: 700 !important;
    color: var(--color-text) !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center;
    height: 100% !important;
    position: relative !important;
    padding: 0 !important
}

.list--inline {
    display: flex;
    flex-direction: row;
    align-items: center
}

:is(.list--nolist, .list-unstyled) {
    list-style: none;
    padding: 0;
    margin: 0
}

img,
picture,
video {
    max-width: 100%;
    height: auto;
    -o-object-fit: contain;
    object-fit: contain
}

img.obj-cover,
picture.obj-cover,
video.obj-cover {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center
}

img.obj-contain,
picture.obj-contain,
video.obj-contain {
    -o-object-fit: contain;
    object-fit: contain
}

svg {
    max-width: 100%;
    display: block
}

figure {
    margin: 0
}

.background-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none
}

.background-image :is(img, source) {
    width: 100%;
    height: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none
}

.background-image :is(img, source):not(.obj-contain) {
    -o-object-fit: cover;
    object-fit: cover
}

hr,
.section__divider {
    height: 0;
    width: 100%;
    border-bottom: var(--border-width) solid var(--color-text);
    margin: 0;
    padding: 0
}

a {
    color: var(--color-text);
    text-decoration: underline
}

.link--text {
    text-decoration: none
}

.link--nolink {
    color: var(--color-text);
    text-decoration: none
}

.link--nolink:hover {
    color: var(--color-text);
    text-decoration: underline
}

table {
    width: 100%;
    border-collapse: collapse
}

td {
    border: var(--border-width-sm) solid var(--color-text);
    padding: var(--space-xs)
}

.gap-xs {
    gap: var(--space-xs)
}

.row-gap-xs {
    row-gap: var(--space-xs)
}

.column-gap-xs {
    -moz-column-gap: var(--space-xs);
    column-gap: var(--space-xs)
}

.gap-sm {
    gap: var(--space-sm)
}

.row-gap-sm {
    row-gap: var(--space-sm)
}

.column-gap-sm {
    -moz-column-gap: var(--space-sm);
    column-gap: var(--space-sm)
}

.gap-md {
    gap: var(--space-md)
}

.row-gap-md {
    row-gap: var(--space-md)
}

.column-gap-md {
    -moz-column-gap: var(--space-md);
    column-gap: var(--space-md)
}

.gap-lg {
    gap: var(--space-lg)
}

.row-gap-lg {
    row-gap: var(--space-lg)
}

.column-gap-lg {
    -moz-column-gap: var(--space-lg);
    column-gap: var(--space-lg)
}

.gap-xl {
    gap: var(--space-xl)
}

.row-gap-xl {
    row-gap: var(--space-xl)
}

.column-gap-xl {
    -moz-column-gap: var(--space-xl);
    column-gap: var(--space-xl)
}

.gap-xxl {
    gap: var(--space-xxl)
}

.row-gap-xxl {
    row-gap: var(--space-xxl)
}

.column-gap-xxl {
    -moz-column-gap: var(--space-xxl);
    column-gap: var(--space-xxl)
}

@media(min-width: 768px) {
    .gap-xs--tablet {
        gap: var(--space-xs)
    }

    .row-gap-xs--tablet {
        row-gap: var(--space-xs)
    }

    .column-gap-xs--tablet {
        -moz-column-gap: var(--space-xs);
        column-gap: var(--space-xs)
    }
}

@media(min-width: 768px) {
    .gap-sm--tablet {
        gap: var(--space-sm)
    }

    .row-gap-sm--tablet {
        row-gap: var(--space-sm)
    }

    .column-gap-sm--tablet {
        -moz-column-gap: var(--space-sm);
        column-gap: var(--space-sm)
    }
}

@media(min-width: 768px) {
    .gap-md--tablet {
        gap: var(--space-md)
    }

    .row-gap-md--tablet {
        row-gap: var(--space-md)
    }

    .column-gap-md--tablet {
        -moz-column-gap: var(--space-md);
        column-gap: var(--space-md)
    }
}

@media(min-width: 768px) {
    .gap-lg--tablet {
        gap: var(--space-lg)
    }

    .row-gap-lg--tablet {
        row-gap: var(--space-lg)
    }

    .column-gap-lg--tablet {
        -moz-column-gap: var(--space-lg);
        column-gap: var(--space-lg)
    }
}

@media(min-width: 768px) {
    .gap-xl--tablet {
        gap: var(--space-xl)
    }

    .row-gap-xl--tablet {
        row-gap: var(--space-xl)
    }

    .column-gap-xl--tablet {
        -moz-column-gap: var(--space-xl);
        column-gap: var(--space-xl)
    }
}

@media(min-width: 768px) {
    .gap-xxl--tablet {
        gap: var(--space-xxl)
    }

    .row-gap-xxl--tablet {
        row-gap: var(--space-xxl)
    }

    .column-gap-xxl--tablet {
        -moz-column-gap: var(--space-xxl);
        column-gap: var(--space-xxl)
    }
}

@media(min-width: 1080px) {
    .gap-xs--smalldesktop {
        gap: var(--space-xs)
    }

    .row-gap-xs--smalldesktop {
        row-gap: var(--space-xs)
    }

    .column-gap-xs--smalldesktop {
        -moz-column-gap: var(--space-xs);
        column-gap: var(--space-xs)
    }
}

@media(min-width: 1080px) {
    .gap-sm--smalldesktop {
        gap: var(--space-sm)
    }

    .row-gap-sm--smalldesktop {
        row-gap: var(--space-sm)
    }

    .column-gap-sm--smalldesktop {
        -moz-column-gap: var(--space-sm);
        column-gap: var(--space-sm)
    }
}

@media(min-width: 1080px) {
    .gap-md--smalldesktop {
        gap: var(--space-md)
    }

    .row-gap-md--smalldesktop {
        row-gap: var(--space-md)
    }

    .column-gap-md--smalldesktop {
        -moz-column-gap: var(--space-md);
        column-gap: var(--space-md)
    }
}

@media(min-width: 1080px) {
    .gap-lg--smalldesktop {
        gap: var(--space-lg)
    }

    .row-gap-lg--smalldesktop {
        row-gap: var(--space-lg)
    }

    .column-gap-lg--smalldesktop {
        -moz-column-gap: var(--space-lg);
        column-gap: var(--space-lg)
    }
}

@media(min-width: 1080px) {
    .gap-xl--smalldesktop {
        gap: var(--space-xl)
    }

    .row-gap-xl--smalldesktop {
        row-gap: var(--space-xl)
    }

    .column-gap-xl--smalldesktop {
        -moz-column-gap: var(--space-xl);
        column-gap: var(--space-xl)
    }
}

@media(min-width: 1080px) {
    .gap-xxl--smalldesktop {
        gap: var(--space-xxl)
    }

    .row-gap-xxl--smalldesktop {
        row-gap: var(--space-xxl)
    }

    .column-gap-xxl--smalldesktop {
        -moz-column-gap: var(--space-xxl);
        column-gap: var(--space-xxl)
    }
}

@media(min-width: 1280px) {
    .gap-xs--bigdesktop {
        gap: var(--space-xs)
    }

    .row-gap-xs--bigdesktop {
        row-gap: var(--space-xs)
    }

    .column-gap-xs--bigdesktop {
        -moz-column-gap: var(--space-xs);
        column-gap: var(--space-xs)
    }
}

@media(min-width: 1280px) {
    .gap-sm--bigdesktop {
        gap: var(--space-sm)
    }

    .row-gap-sm--bigdesktop {
        row-gap: var(--space-sm)
    }

    .column-gap-sm--bigdesktop {
        -moz-column-gap: var(--space-sm);
        column-gap: var(--space-sm)
    }
}

@media(min-width: 1280px) {
    .gap-md--bigdesktop {
        gap: var(--space-md)
    }

    .row-gap-md--bigdesktop {
        row-gap: var(--space-md)
    }

    .column-gap-md--bigdesktop {
        -moz-column-gap: var(--space-md);
        column-gap: var(--space-md)
    }
}

@media(min-width: 1280px) {
    .gap-lg--bigdesktop {
        gap: var(--space-lg)
    }

    .row-gap-lg--bigdesktop {
        row-gap: var(--space-lg)
    }

    .column-gap-lg--bigdesktop {
        -moz-column-gap: var(--space-lg);
        column-gap: var(--space-lg)
    }
}

@media(min-width: 1280px) {
    .gap-xl--bigdesktop {
        gap: var(--space-xl)
    }

    .row-gap-xl--bigdesktop {
        row-gap: var(--space-xl)
    }

    .column-gap-xl--bigdesktop {
        -moz-column-gap: var(--space-xl);
        column-gap: var(--space-xl)
    }
}

@media(min-width: 1280px) {
    .gap-xxl--bigdesktop {
        gap: var(--space-xxl)
    }

    .row-gap-xxl--bigdesktop {
        row-gap: var(--space-xxl)
    }

    .column-gap-xxl--bigdesktop {
        -moz-column-gap: var(--space-xxl);
        column-gap: var(--space-xxl)
    }
}

.flex {
    display: flex
}

.flex-wrap {
    flex-wrap: wrap
}

@media(min-width: 768px) {
    .flex-wrap--tablet {
        flex-wrap: wrap
    }
}

.flex-nowrap {
    flex-wrap: nowrap
}

.flex--column {
    flex-direction: column
}

.flex--row {
    flex-direction: row
}

@media(max-width: 767px) {
    .flex--column--mobile {
        flex-direction: column
    }

    .flex--row--mobile {
        flex-direction: row
    }
}

@media(min-width: 768px) {
    .flex--column--tablet {
        flex-direction: column
    }

    .flex--row--tablet {
        flex-direction: row
    }
}

.align-start {
    align-items: start
}

.justify-start {
    justify-content: start
}

.align-center {
    align-items: center
}

.justify-center {
    justify-content: center
}

.align-end {
    align-items: end
}

.justify-end {
    justify-content: end
}

.align-baseline {
    align-items: baseline
}

.justify-baseline {
    justify-content: baseline
}

.align-stretch {
    align-items: stretch
}

.justify-stretch {
    justify-content: stretch
}

@media(min-width: 768px) {
    .align-start--tablet {
        align-items: start
    }

    .justify-start--tablet {
        justify-content: start
    }
}

@media(min-width: 768px) {
    .align-center--tablet {
        align-items: center
    }

    .justify-center--tablet {
        justify-content: center
    }
}

@media(min-width: 768px) {
    .align-end--tablet {
        align-items: end
    }

    .justify-end--tablet {
        justify-content: end
    }
}

@media(min-width: 768px) {
    .align-baseline--tablet {
        align-items: baseline
    }

    .justify-baseline--tablet {
        justify-content: baseline
    }
}

@media(min-width: 768px) {
    .align-stretch--tablet {
        align-items: stretch
    }

    .justify-stretch--tablet {
        justify-content: stretch
    }
}

.content-start {
    align-content: start
}

.justify-space-between {
    justify-content: space-between
}

.grid {
    display: grid
}

@media(min-width: 768px) {
    .grid--tablet {
        display: grid
    }
}

@media(min-width: 1080px) {
    .grid--smalldesktop {
        display: grid
    }
}

@media(min-width: 1280px) {
    .grid--bigdesktop {
        display: grid
    }
}

.grid--1 {
    grid-template-columns: repeat(1, 1fr)
}

.grid--2 {
    grid-template-columns: repeat(2, 1fr)
}

.grid--3 {
    grid-template-columns: repeat(3, 1fr)
}

.grid--4 {
    grid-template-columns: repeat(4, 1fr)
}

.grid--5 {
    grid-template-columns: repeat(5, 1fr)
}

.grid--6 {
    grid-template-columns: repeat(6, 1fr)
}

.grid--7 {
    grid-template-columns: repeat(7, 1fr)
}

@media(min-width: 768px) {
    .grid--1--tablet {
        grid-template-columns: repeat(1, 1fr)
    }
}

@media(min-width: 768px) {
    .grid--2--tablet {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media(min-width: 768px) {
    .grid--3--tablet {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media(min-width: 768px) {
    .grid--4--tablet {
        grid-template-columns: repeat(4, 1fr)
    }
}

@media(min-width: 768px) {
    .grid--5--tablet {
        grid-template-columns: repeat(5, 1fr)
    }
}

@media(min-width: 768px) {
    .grid--6--tablet {
        grid-template-columns: repeat(6, 1fr)
    }
}

@media(min-width: 768px) {
    .grid--7--tablet {
        grid-template-columns: repeat(7, 1fr)
    }
}

@media(min-width: 1080px) {
    .grid--1--smalldesktop {
        grid-template-columns: repeat(1, 1fr)
    }
}

@media(min-width: 1080px) {
    .grid--2--smalldesktop {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media(min-width: 1080px) {
    .grid--3--smalldesktop {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media(min-width: 1080px) {
    .grid--4--smalldesktop {
        grid-template-columns: repeat(4, 1fr)
    }
}

@media(min-width: 1080px) {
    .grid--5--smalldesktop {
        grid-template-columns: repeat(5, 1fr)
    }
}

@media(min-width: 1080px) {
    .grid--6--smalldesktop {
        grid-template-columns: repeat(6, 1fr)
    }
}

@media(min-width: 1080px) {
    .grid--7--smalldesktop {
        grid-template-columns: repeat(7, 1fr)
    }
}

@media(min-width: 1280px) {
    .grid--1--bigdesktop {
        grid-template-columns: repeat(1, 1fr)
    }
}

@media(min-width: 1280px) {
    .grid--2--bigdesktop {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media(min-width: 1280px) {
    .grid--3--bigdesktop {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media(min-width: 1280px) {
    .grid--4--bigdesktop {
        grid-template-columns: repeat(4, 1fr)
    }
}

@media(min-width: 1280px) {
    .grid--5--bigdesktop {
        grid-template-columns: repeat(5, 1fr)
    }
}

@media(min-width: 1280px) {
    .grid--6--bigdesktop {
        grid-template-columns: repeat(6, 1fr)
    }
}

@media(min-width: 1280px) {
    .grid--7--bigdesktop {
        grid-template-columns: repeat(7, 1fr)
    }
}

.colspan-1 {
    grid-column: span 1
}

.colspan-2 {
    grid-column: span 2
}

.colspan-3 {
    grid-column: span 3
}

.colspan-4 {
    grid-column: span 4
}

.colspan-5 {
    grid-column: span 5
}

.colspan-6 {
    grid-column: span 6
}

.colspan-7 {
    grid-column: span 7
}

@media(min-width: 768px) {
    .colspan-1--tablet {
        grid-column: span 1
    }
}

@media(min-width: 768px) {
    .colspan-2--tablet {
        grid-column: span 2
    }
}

@media(min-width: 768px) {
    .colspan-3--tablet {
        grid-column: span 3
    }
}

@media(min-width: 768px) {
    .colspan-4--tablet {
        grid-column: span 4
    }
}

@media(min-width: 768px) {
    .colspan-5--tablet {
        grid-column: span 5
    }
}

@media(min-width: 768px) {
    .colspan-6--tablet {
        grid-column: span 6
    }
}

@media(min-width: 768px) {
    .colspan-7--tablet {
        grid-column: span 7
    }
}

@media(min-width: 1080px) {
    .colspan-1--smalldesktop {
        grid-column: span 1
    }
}

@media(min-width: 1080px) {
    .colspan-2--smalldesktop {
        grid-column: span 2
    }
}

@media(min-width: 1080px) {
    .colspan-3--smalldesktop {
        grid-column: span 3
    }
}

@media(min-width: 1080px) {
    .colspan-4--smalldesktop {
        grid-column: span 4
    }
}

@media(min-width: 1080px) {
    .colspan-5--smalldesktop {
        grid-column: span 5
    }
}

@media(min-width: 1080px) {
    .colspan-6--smalldesktop {
        grid-column: span 6
    }
}

@media(min-width: 1080px) {
    .colspan-7--smalldesktop {
        grid-column: span 7
    }
}

@media(min-width: 1280px) {
    .colspan-1--bigdesktop {
        grid-column: span 1
    }
}

@media(min-width: 1280px) {
    .colspan-2--bigdesktop {
        grid-column: span 2
    }
}

@media(min-width: 1280px) {
    .colspan-3--bigdesktop {
        grid-column: span 3
    }
}

@media(min-width: 1280px) {
    .colspan-4--bigdesktop {
        grid-column: span 4
    }
}

@media(min-width: 1280px) {
    .colspan-5--bigdesktop {
        grid-column: span 5
    }
}

@media(min-width: 1280px) {
    .colspan-6--bigdesktop {
        grid-column: span 6
    }
}

@media(min-width: 1280px) {
    .colspan-7--bigdesktop {
        grid-column: span 7
    }
}

.grid-center {
    place-items: center
}

#shopify-section-header {
    z-index: 9999;
    position: -webkit-sticky;
    position: sticky;
    top: 0
}

.header *[tabindex="-1"]:focus {
    outline: none
}

.header {
    --color-background: var(--color-white);
    --color-text: var(--color-black);
    background: var(--color-background);
    color: var(--color-text);
    display: block;
    padding: .625rem 0;
    width: 100%
}

@media(min-width: 980px) {
    .header {
        padding: .625rem 0
    }
    /* .header.has-megamenu {
        padding-block: 0;
    }
        .header.has-megamenu .header__innercntr {
        min-height: 63px;
    }
    .header.has-megamenu .header__menu-link {
        padding: 23.5px 0;
    } */
}

.header__innercntr {
    display: grid;
    grid-template-areas: "hamburger . logo . cart";
    grid-template-columns: 5.4375rem 1fr 125px 1fr 5.4375rem;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    max-width: var(--size-fullwidth)
}

@media(min-width: 980px) {
    .header__innercntr {
        grid-template-areas: "leftmenu . logo rightmenu cart";
        grid-template-columns: 1fr 66px 165px 1fr 66px
    }
}

.hamburger {
    grid-area: hamburger;
    text-decoration: none
}

.hamburger-icon {
    display: flex;
    align-items: center;
    gap: var(--space-xs)
}

.header__branding {
    grid-area: logo;
    text-align: center
}

.header__branding-link {
    display: block;
}

.header__branding-link img {
    max-width: 115px;
    object-fit: contain;
    display: flex;
    margin-inline: auto;
}

.header__cart {
    grid-area: cart
}

.header__basket {
    display: flex;
    justify-content: flex-end;
    width: 100%
}

.header__menu--left {
    grid-area: leftmenu
}

.header__menu--right {
    grid-area: rightmenu
}

.header__menu--right .list-menu {
    justify-content: flex-end
}

.header__menu-list {
    display: flex;
    gap: var(--space-md)
}

.header__menu-link {
    line-height: 1;
    text-decoration: none
}

.header__menu-link:hover {
    color: var(--color-brand4)
}

.menu-drawer {
    position: absolute;
    left: 0;
    top: 100%;
    transform: translateX(-100%);
    transition: transform var(--transition-regular);
    background: var(--color-background)
}

.image-with-text.about-img-text {
    --paddbottom: var(--space-md);
}

@media(max-width: 767px) {
    :is(.button, .shopify-payment-button__button--unbranded, .shopify-challenge__button, .junip-product-review-container .junip-write-review-cta-container .junip-btn) {
        padding: 0.69rem 3em !important;
    }

    .menu-drawer {
        width: 100%
    }

    .image-with-text .gap-lg {
        gap: 1.875rem
    }

    .image-with-text {
        padding-bottom: 0;
    }
}

.menu-drawer__menu-link,.menu-drawer details summary {
    padding: .5rem 1rem;
    text-decoration: none;
    display: block;
    transition: background var(--transition-regular), color var(--transition-regular)
}

@media(min-width: 980px) {
    .menu-drawer__menu-link {
        min-width: 20ch
    }
}

.menu-drawer__menu-link:hover {
    background: var(--color-black);
    color: var(--color-white)
}

.menu-opening .menu-drawer {
    transform: translateX(0)
}

:is(.button, .shopify-payment-button__button--unbranded, .shopify-challenge__button, .junip-product-review-container .junip-write-review-cta-container .junip-btn) {
    background: var(--color-background) !important;
    color: var(--color-text) !important;
    border: var(--border-width-sm) solid var(--color-border);
    text-align: center;
    text-decoration: none;
    transition: color var(--transition-regular), background var(--transition-regular), border-color var(--transition-regular);
    cursor: pointer;
    display: inline-block;
    white-space: nowrap;
    font-family: var(--font-secondary);
    font-size: var(--text-md);
    font-weight: 100;
    letter-spacing: .16em;
    max-width: 100%;
    border-radius: var(--border-radius-xl);
    padding: 1rem 3em;
    --color-background: var(--color-black);
    --color-text: var(--color-offwhite);
    --color-border: var(--color-black)
}

:is(.button, .shopify-payment-button__button--unbranded, .shopify-challenge__button, .junip-product-review-container .junip-write-review-cta-container .junip-btn):hover:not([disabled]) {
    --color-background: var(--color-offwhite);
    --color-text: var(--color-black);
    --color-border: var(--color-black)
}

:is(.button, .shopify-payment-button__button--unbranded, .shopify-challenge__button, .junip-product-review-container .junip-write-review-cta-container .junip-btn)[disabled] {
    opacity: 1;
    cursor: not-allowed
}

.nobutton {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: none;
    border-radius: 0;
    box-shadow: none;
    background: none;
    color: inherit;
    cursor: pointer;
    padding: 0
}

.cky-btn {
    background: var(--color-background) !important;
    color: var(--color-text) !important;
    border: var(--border-width-sm) solid var(--color-border) !important;
    border-radius: var(--border-radius-xl) !important;
    text-align: center;
    text-decoration: none;
    transition: color var(--transition-regular), background var(--transition-regular), border-color var(--transition-regular);
    cursor: pointer;
    display: inline-block;
    white-space: nowrap;
    font-family: var(--font-secondary) !important;
    font-size: var(--text-md) !important;
    font-weight: 100 !important;
    letter-spacing: .16em !important;
    --color-background: var(--color-offwhite);
    --color-text: var(--color-black);
    --color-border: var(--color-black)
}

.cky-btn-customize::after {
    top: 50%;
    transform: translateY(-50%)
}

.cky-consent-container.cky-consent-bar-expand .cky-btn-customize::after {
    transform: translateY(-50%) rotate(-180deg) !important
}

:is(.cky-btn-accept, .cky-btn-preferences) {
    --color-background: var(--color-black);
    --color-text: var(--color-offwhite);
    --color-border: var(--color-black)
}

.shopify-challenge__container .shopify-challenge__button {
    margin-top: var(--space-md)
}

.shopify-payment-button__button--unbranded,
.shopify-payment-button__button--unbranded:not([disabled]) {
    --color-background: var(--color-black);
    --color-text: var(--color-offwhite);
    --color-border: var(--color-black)
}

.shopify-payment-button__button--unbranded:hover:not([disabled]),
.shopify-payment-button__button--unbranded:not([disabled]):hover:not([disabled]) {
    --color-background: var(--color-offwhite);
    --color-text: var(--color-black);
    --color-border: var(--color-black)
}

.shopify-payment-button__button--branded [role=button] {
    max-width: 100%;
    border-radius: var(--border-radius-xl);
    padding: 1rem 3em
}

@media(min-width: 768px) {
    .button--tablet {
        --color-background: var(--color-black);
        --color-text: var(--color-offwhite);
        --color-border: var(--color-black)
    }

    .button--tablet:hover:not([disabled]) {
        --color-background: var(--color-offwhite);
        --color-text: var(--color-black);
        --color-border: var(--color-black)
    }
}

:is(.button--secondary, .junip-product-review-container .junip-write-review-cta-container .junip-write-review-cta) {
    --color-background: var(--color-offwhite);
    --color-text: var(--color-black);
    --color-border: var(--color-black)
}

:is(.button--secondary, .junip-product-review-container .junip-write-review-cta-container .junip-write-review-cta):hover:not([disabled]) {
    --color-background: var(--color-black);
    --color-text: var(--color-offwhite);
    --color-border: var(--color-black)
}

@media(min-width: 768px) {
    .button--secondary--tablet {
        --color-background: var(--color-offwhite);
        --color-text: var(--color-black);
        --color-border: var(--color-black)
    }

    .button--secondary--tablet:hover:not([disabled]) {
        --color-background: var(--color-black);
        --color-text: var(--color-offwhite);
        --color-border: var(--color-black)
    }
}

.button--tertiary {
    --color-background: var(--color-white);
    --color-text: var(--color-black);
    --color-border: var(--color-white)
}

.button--tertiary:hover:not([disabled]) {
    --color-background: var(--color-black);
    --color-text: var(--color-white);
    --color-border: var(--color-white)
}

@media(min-width: 768px) {
    .button--tertiary--tablet {
        --color-background: var(--color-white);
        --color-text: var(--color-black);
        --color-border: var(--color-white)
    }

    .button--tertiary--tablet:hover:not([disabled]) {
        --color-background: var(--color-black);
        --color-text: var(--color-white);
        --color-border: var(--color-white)
    }
}

:is(.product-tag, .article-tag) {
    border: var(--border-width-sm) solid var(--color-text);
    border-radius: 4rem;
    display: block;
    font-family: var(--font-primary);
    font-size: var(--text-sm);
    font-weight: 400
}

.product-tag {
    padding: .2rem .2rem
}

.card-wrapper .product-tag {
    padding: 2px 12px
}

@media(min-width: 400px) {
    .product-tag {
        padding: .2rem .4rem
    }
}

.article-tag {
    padding: .1rem .4rem
}

@media(min-width: 400px) {
    .article-tag {
        padding: .1rem .6rem
    }
}

.cart-drawer {
    width: 100%;
    position: fixed;
    top: 0;
    right: 0;
    height: 100%;
    z-index: 109999;
    background-color: var(--color-background);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    padding: var(--space-sm)
}

@media(prefers-reduced-motion: no-preference) {
    .cart-drawer {
        transition: var(--transition-long)
    }
}

@media(min-width: 768px) {
    .cart-drawer {
        width: 27.1875rem;
        padding: var(--space-md)
    }
}

.cart-drawer.active {
    transform: translateX(0)
}

.cart-drawer__header .icon-close {
    cursor: pointer;
    width: 1rem
}

.cart-drawer__main {
    margin-top: var(--space-lg);
    flex-grow: 1;
    overflow-y: auto;
    -ms-scroll-chaining: none;
    overscroll-behavior: contain;
    display: flex;
    flex-direction: column;
    gap: var(--space-xs)
}

.cart-drawer__message {
    background-color: var(--color-white-twentyfive);
    padding: var(--space-xs);
    border-radius: var(--border-radius-md);
    display: flex;
    flex-direction: column;
    gap: var(--space-xs)
}

.cart-drawer .cart-item {
    gap: var(--space-xs)
}

.cart-drawer .quantity-spinner__button {
    font-size: var(--text-sm);
    padding: var(--space-sm)
}

.cart-drawer .quantity-spinner__input {
    padding: var(--space-xs) 0;
    font-size: var(--text-sm);
    width: 5.89rem
}

.cart-drawer__footer {
    display: flex;
    flex-direction: column
}

.cart-drawer__total {
    margin-bottom: 0
}

.cart-drawer--empty .cart-drawer__header {
    border: none
}

.cart-drawer--empty .cart-drawer__title {
    justify-content: flex-end
}

.cart-drawer--empty .cart-drawer__title span {
    display: none
}

.cart-drawer--empty .cart-drawer__main {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0;
    overflow: hidden
}

.cart-drawer--empty .cart-drawer__footer {
    display: none
}

.cart-drawer__empty {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    overflow: hidden
}

.cart-drawer__empty-title {
    margin: 0;
    text-align: center;
    padding: 0 .625rem
}

.cart-drawer__empty-image {
    -o-object-fit: contain;
    object-fit: contain;
    width: 110%;
    flex: 0 0 auto
}

.cart-drawer__empty-action {
    margin: auto auto var(--safebottom) auto;
    width: 100%
}

.cart-drawer__empty-action button {
    width: 100%
}

.cart-drawer .cart-drawer__button .button {
    width: 100%
}

.cart-drawer .cart-drawer__button+.cart-drawer__button {
    margin-top: var(--space-sm)
}

.cart-drawer__single-payment-icon {
    width: 100%;
    max-width: 2.4rem;
    filter: grayscale(1)
}

.cart-item {
    --color-item-title: var(--color-black);
    --color-item-background: var(--color-white)
}

.cart-item__image {
    width: 7.111rem;
    height: 7.111rem;
    background: var(--color-item-background);
    border-radius: var(--border-radius-sm);
    -o-object-fit: cover;
    object-fit: cover
}

@media(min-width: 768px) {
    .cart-item__image {
        width: 9.333rem;
        height: 9.333rem
    }
}

.cart-item__details {
    display: flex;
    flex-direction: column;
    width: 100%
}

.cart-item__title {
    color: var(--color-item-title)
}

.cart-item__title+quantity-spinner {
    margin-top: auto
}

.cart-item__variant {
    margin-bottom: auto
}

.cart-item__quantity {
    margin-top: auto;
    margin-right: auto
}

.cart {
    display: flex;
    flex-direction: column;
    margin: 30px auto;
    height: 100%;
    width: 100%
}

@media(min-width: 768px) {
    .cart {
        width: 30rem;
        border: var(--border-width-sm) solid var(--color-black);
        border-radius: var(--border-radius-lg)
    }
}

.cart__header {
    padding: var(--space-md)
}

.cart__header--empty {
    border: none;
    display: none
}

.cart__title {
    text-transform: uppercase;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center
}

.cart__main {
    padding: 0 var(--space-md) var(--space-md);
    flex-grow: 1;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    gap: var(--space-md)
}

.cart__main--empty {
    align-items: center;
    justify-content: center;
    padding: var(--space-md) 0 0 0
}

.cart__message {
    background-color: var(--color-white-twentyfive);
    padding: var(--space-sm);
    border-radius: var(--border-radius-md);
    display: flex;
    flex-direction: column;
    gap: var(--space-sm)
}

.cart__footer {
    border-top: var(--border-width-sm) solid var(--color-black);
    display: flex;
    flex-direction: column;
    padding: var(--space-md)
}

.cart__footer--empty {
    display: none
}

.cart__footer-notes textarea {
    width: 100%;
    min-height: clamp(4.5rem, 4vh, 6rem);
    resize: none;
    display: block
}

.cart__footer-notes input[type=checkbox]+label {
    margin-bottom: 0
}

.cart__footer-notes input[type=checkbox]+label.cart__footer-notes-label {
    margin-bottom: var(--space-xs)
}

.cart__footer-notes input[type=checkbox]~.giftnote_textarea-cntr {
    display: none
}

.cart__footer-notes input[type=checkbox]:checked~.giftnote_textarea-cntr {
    display: block
}

.cart__footer-notes .giftnote_textarea-cntr {
    position: relative
}

.cart__footer-notes .giftnote_charactercount {
    position: absolute;
    bottom: calc(var(--text-xs)*-1.2 - var(--space-xs));
    right: 0
}

.cart__footer-notes .giftnote_charactercount--warning {
    color: var(--color-brand2)
}

.cart__footer-notes .giftnote_charactercount--error {
    color: var(--color-brand2)
}

.cart__footer-notes .giftnote_charactercount[data-count="0"] {
    display: none
}

.cart-drawer .cart__footer-notes textarea {
    padding: var(--space-xs) var(--space-xs)
}

.cart__total {
    margin-bottom: var(--space-sm)
}

.cart__accepted-methods {
    display: flex;
    justify-content: center;
    gap: 1.375rem;
    margin-top: var(--space-lg)
}

.cart__accepted-methods svg {
    opacity: .25;
    height: 2.222rem
}

.cart__empty {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: auto;
    position: relative
}

.cart__empty-title {
    text-align: center;
    margin: 0
}

.cart__empty-image {
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
    flex: 0 0 auto
}

.cart .cart__button .button {
    width: 100%
}

.cart .cart__button .button[disabled] {
    opacity: 0.5 !important;
}

.cart .cart__button+.cart__button {
    margin-top: var(--space-sm)
}

.cart-count-bubble {
    width: 1.875rem;
    height: 1.875rem;
    border-radius: 50%;
    background: var(--color-black);
    color: var(--color-white)
}

.cart__freeshipping-bar {
    width: 100%;
    height: 6px;
    border-radius: 12px;
    background: var(--color-black-ten);
    position: relative
}

.cart__freeshipping-bar-fill {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    border-radius: 12px;
    background: var(--color-black);
    --width: 0;
    width: var(--width)
}

main-cart {
    display: block
}

.overlay {
    transition: background-color .5s ease
}

.overlay.visible {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: var(--color-black-fifty);
    z-index: 109990
}

.quantity-spinner {
    display: inline-flex;
    position: relative;
    --color-text: var(--color-black)
}

.quantity-spinner--secondary {
    --color-text: var(--color-brand4)
}

.quantity-spinner__input {
    background: var(--color-background);
    color: var(--color-text);
    border: var(--border-width-sm) solid var(--color-text);
    text-align: center;
    text-decoration: none;
    transition: color var(--transition-regular), background var(--transition-regular);
    border-radius: var(--border-radius-xl);
    padding: 12px 0;
    width: 7.5rem;
    -moz-appearance: textfield;
    -webkit-appearance: none
}

@media(min-width: 400px) {
    .quantity-spinner__input {
        width: 8.889rem
    }
}

.quantity-spinner__input::-webkit-outer-spin-button,
.quantity-spinner__input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.quantity-spinner__button {
    color: var(--color-text);
    cursor: pointer;
    position: absolute;
    background: none;
    border: none;
    font-size: var(--text-lg);
    padding: 1rem;
    top: 0;
    height: 100%;
    line-height: 1;
    display: inline-flex;
    align-items: center
}

@media(min-width: 400px) {
    .quantity-spinner__button {
        padding: 1.125rem
    }
}

.quantity-spinner__button:nth-of-type(1) {
    left: 0
}

.quantity-spinner__button:nth-of-type(2) {
    right: 0
}

.spacer {
    display: block !important;
    padding-bottom: var(--space-mob)
}

@media(min-width: 768px) {
    .spacer {
        padding-bottom: var(--space-tablet)
    }
}

summary::-webkit-details-marker {
    display: none
}

:is(.cky-consent-container) {
    box-shadow: none;
    border-radius: var(--border-radius-md);
    background: var(--color-background);
    bottom: var(--safebottom) !important;
    border: var(--border-width-sm) solid var(--color-text);
    padding: var(--space-xs);
    --gap: var(--space-xs);
    -ms-scroll-chaining: none;
    overscroll-behavior: contain
}

@media(min-width: 768px) {
    :is(.cky-consent-container) {
        bottom: max(1rem, var(--safebottom)) !important;
        left: 1rem !important;
        max-width: min(100% - 2rem, 55ch);
        padding: var(--space-sm);
        --gap: var(--space-sm)
    }
}

:is(.cky-consent-container) button {
    margin: 0;
    max-width: 100%
}

:is(.cky-consent-container) *:not(:is(.cky-accordion-chevron, .cky-accordion-header-des)) {
    margin: 0 !important
}

:is(.cky-consent-container) *:not(button) {
    padding: 0 !important
}

.cky-consent-bar {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important
}

.cky-notice {
    display: flex;
    flex-direction: column;
    gap: var(--gap)
}

.cky-notice-group {
    display: flex !important;
    flex-direction: column;
    gap: var(--gap)
}

.cky-notice-btn-wrapper {
    display: flex;
    gap: var(--gap)
}

.cky-preference-header {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 0;
    margin-bottom: var(--space-sm) !important;
    --color-border: var(--color-black);
    border-color: var(--color-border) !important;
    border-bottom: 1px solid var(--color-border) !important;
    z-index: 9
}

.cky-preference {
    max-height: unset !important
}

.cky-preference-body-wrapper {
    max-height: 60vh
}

.cky-preference-wrapper[data-cky-tag=detail] {
    color: var(--color-text) !important;
    background: var(--color-background) !important;
    -ms-scroll-chaining: none;
    overscroll-behavior: contain;
    --color-border: var(--color-black);
    border-color: var(--color-border) !important
}

@media(min-width: 768px) {
    .cky-preference-wrapper[data-cky-tag=detail] {
        margin-top: var(--space-sm) !important
    }
}

.cky-accordion {
    margin-bottom: var(--space-xs) !important
}

.cky-accordion .cky-accordion-item {
    margin-top: var(--space-xs) !important
}

.cky-switch input[type=checkbox] {
    left: unset
}

.cky-switch input[type=checkbox]:checked {
    background-color: var(--color-brand3) !important
}

.cky-footer-wrapper {
    position: -webkit-sticky !important;
    position: sticky !important;
    bottom: 0
}

.cky-footer-wrapper .cky-footer-shadow {
    display: none !important
}

.cky-footer-wrapper .cky-prefrence-btn-wrapper {
    padding: var(--space-xs) 0 !important;
    display: flex;
    flex-direction: column;
    gap: var(--gap)
}

.cky-footer-wrapper [data-cky-tag=detail-powered-by] {
    background-color: var(--color-background) !important
}

.cky-btn-revisit-wrapper {
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
    height: unset !important;
    bottom: 0 !important;
    left: 0 !important;
    background: var(--color-background) !important;
    border: var(--border-width-sm) solid var(--color-text);
    padding: var(--space-xs);
    --gap: var(--space-xs);
    border-radius: var(--border-radius-md) !important;
    border-bottom-left-radius: 0 !important
}

.cky-btn-revisit-wrapper::before,
.cky-btn-revisit-wrapper::after {
    display: none !important
}

@media(max-width: 767px) {
    .cky-btn-revisit {
        padding: 0
    }
}

.cky-btn-revisit:after {
    content: "Cookie preferences"
}

.cky-btn-revisit img {
    display: none
}

.section__container {
    background: var(--color-background);
    color: var(--color-text);
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    position: relative;
    --paddtop: var(--space-lg);
    --paddbottom: var(--space-lg);
    padding-top: var(--paddtop);
    padding-bottom: var(--paddbottom)
}

.section__innercntr--contained-lg {
    max-width: var(--size-lg-maxwidth);
    margin: 0 auto
}

.section__innercntr--contained-md {
    max-width: var(--size-md-maxwidth);
    margin: 0 auto
}

.section__innercntr--contained-sm {
    max-width: var(--size-sm-maxwidth);
    margin: 0 auto
}

.section__innercntr--contained-xs {
    max-width: var(--size-xs-maxwidth);
    margin: 0 auto
}

.section__innercntr--contained-xxs {
    max-width: var(--size-xxs-maxwidth);
    margin: 0 auto
}

.section__innercntr--contained-fullwidth {
    max-width: var(--size-fullwidth);
    margin: 0 auto
}

.section__innercntr :last-child {
    margin-bottom: 0
}

.section__header:empty {
    display: none
}

.section__main:empty {
    display: none
}

.section__footer:empty {
    display: none
}

.section__container img {
    display: block
}

.template-policy main {
    padding: var(--space-xl) 0
}

.shopify-policy__container {
    max-width: var(--size-xs-maxwidth);
    margin: 0 auto
}

.shopify-policy__title h1 {
    font-family: var(--font-tertiary);
    font-size: var(--text-xxxl);
    letter-spacing: .25rem;
    line-height: 1;
    margin-bottom: var(--space-lg)
}

.shopify-policy__body h1 {
    font-family: var(--font-secondary);
    font-size: var(--text-xxl);
    font-weight: 100;
    letter-spacing: 0;
    margin-top: var(--space-lg)
}

@media(min-width: 768px) {
    .mob-only {
        display: none
    }
}

@media(max-width: 767px) {
    .tabletup-only {
        display: none
    }
}

.smalldesktopup-only {
    display: none
}

@media(min-width: 1080px) {
    .smalldesktopup-only {
        display: unset
    }
}

@media(min-width: 980px) {
    .mobmen-only {
        display: none
    }
}

@media(max-width: 979px) {
    .tabletmenu-only {
        display: none
    }
}

.pad-top-zero {
    padding-top: 0
}

.pad-bottom-zero {
    padding-bottom: 0
}

.mg-zero {
    margin: 0
}

.mg-top-sm {
    margin-top: var(--space-sm)
}

.mg-bottom-sm {
    margin-bottom: var(--space-sm)
}

[class*=txt-] {
    color: var(--color-text)
}

[class*=bg-] {
    background-color: var(--color-background)
}

.bg-transparent {
    --color-background: var(--color-transparent)
}

.txt-transparent {
    --color-text: var(--color-transparent)
}

@media(min-width: 768px) {
    .txt-transparent--tablet {
        --color-text: var(--color-transparent)
    }
}

.border-transparent {
    --color-border: var(--color-transparent)
}

.bg-white {
    --color-background: var(--color-white)
}

.txt-white {
    --color-text: var(--color-white)
}

@media(min-width: 768px) {
    .txt-white--tablet {
        --color-text: var(--color-white)
    }
}

.border-white {
    --color-border: var(--color-white)
}

.bg-white-thirty {
    --color-background: var(--color-white-thirty)
}

.txt-white-thirty {
    --color-text: var(--color-white-thirty)
}

@media(min-width: 768px) {
    .txt-white-thirty--tablet {
        --color-text: var(--color-white-thirty)
    }
}

.border-white-thirty {
    --color-border: var(--color-white-thirty)
}

.bg-white-fifty {
    --color-background: var(--color-white-fifty)
}

.txt-white-fifty {
    --color-text: var(--color-white-fifty)
}

@media(min-width: 768px) {
    .txt-white-fifty--tablet {
        --color-text: var(--color-white-fifty)
    }
}

.border-white-fifty {
    --color-border: var(--color-white-fifty)
}

.bg-offwhite {
    --color-background: var(--color-offwhite)
}

.txt-offwhite {
    --color-text: var(--color-offwhite)
}

@media(min-width: 768px) {
    .txt-offwhite--tablet {
        --color-text: var(--color-offwhite)
    }
}

.border-offwhite {
    --color-border: var(--color-offwhite)
}

.bg-black {
    --color-background: var(--color-black)
}

.txt-black {
    --color-text: var(--color-black)
}

@media(min-width: 768px) {
    .txt-black--tablet {
        --color-text: var(--color-black)
    }
}

.border-black {
    --color-border: var(--color-black)
}

.bg-brand1 {
    --color-background: var(--color-brand1)
}

.txt-brand1 {
    --color-text: var(--color-brand1)
}

@media(min-width: 768px) {
    .txt-brand1--tablet {
        --color-text: var(--color-brand1)
    }
}

.border-brand1 {
    --color-border: var(--color-brand1)
}

.bg-brand2 {
    --color-background: var(--color-brand2)
}

.txt-brand2 {
    --color-text: var(--color-brand2)
}

@media(min-width: 768px) {
    .txt-brand2--tablet {
        --color-text: var(--color-brand2)
    }
}

.border-brand2 {
    --color-border: var(--color-brand2)
}

.bg-brand3 {
    --color-background: var(--color-brand3)
}

.txt-brand3 {
    --color-text: var(--color-brand3)
}

@media(min-width: 768px) {
    .txt-brand3--tablet {
        --color-text: var(--color-brand3)
    }
}

.border-brand3 {
    --color-border: var(--color-brand3)
}

.bg-brand4 {
    --color-background: var(--color-brand4)
}

.txt-brand4 {
    --color-text: var(--color-brand4)
}

@media(min-width: 768px) {
    .txt-brand4--tablet {
        --color-text: var(--color-brand4)
    }
}

.border-brand4 {
    --color-border: var(--color-brand4)
}

.txt-inherit {
    --color-text: currentColor
}

@media(min-width: 768px) {
    .txt-inherit--tablet {
        --color-text: currentColor
    }
}

.w-100 {
    width: 100%
}

@media(min-width: 768px) {
    .w-100--tablet {
        width: 100%
    }
}

@media(min-width: 1080px) {
    .w-100--smalldesktop {
        width: 100%
    }
}

.h-100 {
    height: 100%
}

@media(min-width: 768px) {
    .h-100--tablet {
        height: 100%
    }
}

@media(min-width: 1080px) {
    .h-100--smalldesktop {
        height: 100%
    }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRoZW1lLnNjc3MiLCJ2YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwiY29yZS9fdHlwb2dyYXBoeS5zY3NzIiwibWl4aW5zL19taXhpbnMtbWFzdGVyLnNjc3MiLCJjb3JlL19sYXlvdXQuc2NzcyIsImNvcmUvX2Zvcm1zLnNjc3MiLCJjb3JlL19saXN0cy5zY3NzIiwiY29yZS9fbWVkaWEuc2NzcyIsImNvcmUvX25hdmlnYXRpb24uc2NzcyIsImNvcmUvX3RhYmxlcy5zY3NzIiwiY29yZS9fZ3JpZHMuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fdGFncy5zY3NzIiwiY29tcG9uZW50cy9fY2FydC1kcmF3ZXIuc2NzcyIsImNvbXBvbmVudHMvX2NhcnQtaXRlbS5zY3NzIiwiY29tcG9uZW50cy9fY2FydC5zY3NzIiwiY29tcG9uZW50cy9fb3ZlcmxheS5zY3NzIiwiY29tcG9uZW50cy9fcXVhbnRpdHktc3Bpbm5lci5zY3NzIiwiY29tcG9uZW50cy9fc3BhY2VyLnNjc3MiLCJjb21wb25lbnRzL19hY2NvcmRpb25zLnNjc3MiLCJjb21wb25lbnRzL19jb29raWUtZGlzY2xhaW1lci5zY3NzIiwic2VjdGlvbnMvX3NlY3Rpb25zLnNjc3MiLCJfdXRpbC1vdmVycmlkZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQ0FBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUEsUUNDRSxpQ0FFQSxrQ0FDQSw2Q0FDQSxtREFDQSw4Q0FDQSwyQ0FFQSxxQ0FDQSxnREFDQSxzREFDQSw4Q0FFQSwrQkFDQSwwQ0FDQSxnREFDQSx3Q0FHQSxtQ0FDQSwrQkFDQSxtQ0FDQSxpQ0FFQSwwQ0FDQSxpQ0MxQkYsNEVBVUMsS0FDQyxpQkFDQSw4QkFVRixLQUNFLFNBT0YsS0FDRSxjQVFGLEdB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c0NQcEVMLHlCT21FRyxpQkFDRSxzQ1BwRUwseUJPbUVHLGlCQUNFLHNDUHBFTCx5Qk9tRUcsaUJBQ0Usc0NQcEVMLHlCT21FRyxpQkFDRSxzQ1BuREwsMEJPeURHLHVCQUNFLHNDUDFETCwwQk95REcsdUJBQ0Usc0NQMURMLDBCT3lERyx1QkFDRSxzQ1AxREwsMEJPeURHLHVCQUNFLHNDUDFETCwwQk95REcsdUJBQ0Usc0NQMURMLDBCT3lERyx1QkFDRSxzQ1AxREwsMEJPeURHLHVCQUNFLHNDUDlDTCwwQk9vREcscUJBQ0Usc0NQckRMLDBCT29ERyxxQkFDRSxzQ1ByREwsMEJPb0RHLHFCQUNFLHNDUHJETCwwQk9vREcscUJBQ0Usc0NQckRMLDBCT29ERyxxQkFDRSxzQ1ByREwsMEJPb0RHLHFCQUNFLHNDUHJETCwwQk9vREcscUJBQ0Usc0NBTUosV0FDRSxtQkFERixXQUNFLG1CQURGLFdBQ0UsbUJBREYsV0FDRSxtQkFERixXQUNFLG1CQURGLFdBQ0UsbUJBREYsV0FDRSxtQlB6RkgseUJPOEZHLG1CQUNFLG9CUC9GTCx5Qk84RkcsbUJBQ0Usb0JQL0ZMLHlCTzhGRyxtQkFDRSxvQlAvRkwseUJPOEZHLG1CQUNFLG9CUC9GTCx5Qk84RkcsbUJBQ0Usb0JQL0ZMLHlCTzhGRyxtQkFDRSxvQlAvRkwseUJPOEZHLG1CQUNFLG9CUDlFTCwwQk9vRkcseUJBQ0Usb0JQckZMLDBCT29GRyx5QkFDRSxvQlByRkwsMEJPb0ZHLHlCQUNFLG9CUHJGTCwwQk9vRkcseUJBQ0Usb0JQckZMLDBCT29GRyx5QkFDRSxvQlByRkwsMEJPb0ZHLHlCQUNFLG9CUHJGTCwwQk9vRkcseUJBQ0Usb0JQekVMLDBCTytFRyx1QkFDRSxvQlBoRkwsMEJPK0VHLHVCQUNFLG9CUGhGTCwwQk8rRUcsdUJBQ0Usb0JQaEZMLDBCTytFRyx1QkFDRSxvQlBoRkwsMEJPK0VHLHVCQUNFLG9CUGhGTCwwQk8rRUcsdUJBQ0Usb0JQaEZMLDBCTytFRyx1QkFDRSxvQkFLTixhQUNFLG1CQ3hNRix3QkFDRSxhQUVBLGdCQUNBLE1BR0YsK0JB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LHlCb0J6QkMsbUJBRUUsa0NBSUgsY0FDQyxtQ0FiRCxXQUNDLHdDQUVELFlBQ0Msa0NwQjJCRCx5Qm9CekJDLG9CQUVFLG1DQUlILGVBQ0Msb0NBYkQsV0FDQyx3Q0FFRCxZQUNDLGtDcEIyQkQseUJvQnpCQyxvQkFFRSxtQ0FJSCxlQUNDLG9DQWJELFdBQ0Msd0NBRUQsWUFDQyxrQ3BCMkJELHlCb0J6QkMsb0JBRUUsbUNBSUgsZUFDQyxvQ0FiRCxXQUNDLHdDQUVELFlBQ0Msa0NwQjJCRCx5Qm9CekJDLG9CQUVFLG1DQUlILGVBQ0Msb0NBR0YsYUFDQywyQnBCY0EseUJvQmJBLHFCQUVFLDRCQU1ILE9BQ0MsV3BCSUEseUJvQkhBLGVBRUUsWXBCa0JGLDBCb0JmQSxxQkFFRSxZQUlILE9BQ0MsWXBCVEEseUJvQlVBLGVBRUUsYXBCS0YsMEJvQkZBLHFCQUVFIiwiZmlsZSI6InRoZW1lLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuVGhlbWUgTmFtZTogV2VkbmVzZGF5J3MgRG9tYWluZVxuVGhlbWUgVVJJOiBodHRwOi8vd2VkbmVzZGF5c2RvbWFpbmUuY29tL1xuQXV0aG9yOiBEaHJ1dmUgb24gTWFyc1xuQXV0aG9yIFVSSTogZGhydXZlb25tYXJzLmNvbVxuRGVzY3JpcHRpb246IFdlZG5lc2RheSdzIERvbWFpbmUgV2Vic2l0ZVxuVmVyc2lvbjogMS4wLjBcbkxpY2Vuc2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYyIG9yIGxhdGVyXG5MaWNlbnNlIFVSSTogTElDRU5TRVxuVGV4dCBEb21haW46IHdkXG5cbk5vcm1hbGl6aW5nIHN0eWxlcyBoYXZlIGJlZW4gaGVscGVkIGFsb25nIHRoYW5rcyB0byB0aGUgZmluZSB3b3JrIG9mXG5OaWNvbGFzIEdhbGxhZ2hlciBhbmQgSm9uYXRoYW4gTmVhbCBodHRwczovL25lY29sYXMuZ2l0aHViLmlvL25vcm1hbGl6ZS5jc3MvXG4qL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4+Pj4gVEFCTEUgT0YgQ09OVEVOVFM6XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE5vcm1hbGl6ZVxuIyBUeXBvZ3JhcGh5XG4jIENvcmVcbiMgQ29tcG9uZW50c1xuIyBTZWN0aW9uc1xuIyBVdGlsaXR5IE92ZXJyaWRlc1xuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXMvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL21peGlucy1tYXN0ZXJcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBOb3JtYWxpemVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJub3JtYWxpemVcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBDb3JlIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiY29yZS9jb3JlXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgQ29tcG9uZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImNvbXBvbmVudHMvY29tcG9uZW50c1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIFNlY3Rpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwic2VjdGlvbnMvc2VjdGlvbnNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBVdGlsaXR5IE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcInV0aWwtb3ZlcnJpZGVzXCI7IiwiOnJvb3Qge1xuICAtLWNvbG9yLXRyYW5zcGFyZW50OiB0cmFuc3BhcmVudDtcblxuICAtLWNvbG9yLXdoaXRlOiByZ2IoMjU1LCAyNTUsIDI1NSk7IC8vICNmZmZmZmZcbiAgLS1jb2xvci13aGl0ZS1maWZ0eTogcmdiKDI1NSwgMjU1LCAyNTUsIDAuNSk7IC8vICNmZmZmZmZcbiAgLS1jb2xvci13aGl0ZS10d2VudHlmaXZlOiByZ2IoMjU1LCAyNTUsIDI1NSwgMC4yNSk7IC8vICNmZmZmZmZcbiAgLS1jb2xvci13aGl0ZS10aGlydHk6IHJnYigyNTUsIDI1NSwgMjU1LCAwLjMpOyAvLyAjZmZmZmZmXG4gIC0tY29sb3Itd2hpdGUtdGVuOiByZ2IoMjU1LCAyNTUsIDI1NSwgMC4xKTsgLy8gI2ZmZmZmZlxuXG4gIC0tY29sb3Itb2Zmd2hpdGU6IHJnYigyNTUsIDI0NywgMjQ2KTsgLy8gRkZGN0Y2XG4gIC0tY29sb3Itb2Zmd2hpdGUtZmlmdHk6IHJnYigyNTUsIDI0NywgMjQ2LCAwLjUpOyAvLyBGRkY3RjZcbiAgLS1jb2xvci1vZmZ3aGl0ZS10d2VudHlmaXZlOiByZ2IoMjU1LCAyNDcsIDI0NiwgMC4yNSk7IC8vIEZGRjdGNlxuICAtLWNvbG9yLW9mZndoaXRlLXRlbjogcmdiKDI1NSwgMjQ3LCAyNDYsIDAuMSk7IC8vIEZGRjdGNlxuXG4gIC0tY29sb3ItYmxhY2s6IHJnYigzNywgMzAsIDMzKTsgLy8gIzI1MWUyMVxuICAtLWNvbG9yLWJsYWNrLWZpZnR5OiByZ2IoMzcsIDMwLCAzMywgMC41KTsgLy8gIzI1MWUyMVxuICAtLWNvbG9yLWJsYWNrLXR3ZW50eWZpdmU6IHJnYigzNywgMzAsIDMzLCAwLjI1KTsgLy8gIzI1MWUyMVxuICAtLWNvbG9yLWJsYWNrLXRlbjogcmdiKDM3LCAzMCwgMzMsIDAuMSk7IC8vICMyNTFlMjFcblxuICAvLyBicmFuZCBjb2xvdXJzXG4gIC0tY29sb3ItYnJhbmQxOiByZ2IoMTk5LCAxODMsIDI1NSk7XG4gIC0tY29sb3ItYnJhbmQyOiByZ2IoMjU1LCAwLCAwKTtcbiAgLS1jb2xvci1icmFuZDM6IHJnYigxNTAsIDIyMywgMTk0KTtcbiAgLS1jb2xvci1icmFuZDQ6IHJnYigyMywgNDAsIDIwNik7XG5cbiAgLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1vZmZ3aGl0ZSk7XG4gIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xufSIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuIGh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiOnJvb3Qge1xuICAtLWZvbnQtcHJpbWFyeTogJ05ldyBLYW5zYXMnO1xuICAtLWZvbnQtc2Vjb25kYXJ5OiAnSmVhbiBMdWMgV2ViJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC10ZXJ0aWFyeTogJ0VhcnRoIFJpY2gnO1xuXG4gIC8vIC0tYmFzZS1zaXplOiAwLjkzNzVyZW07ICAvLyAxNXB4IC8gMTZweFxuICAtLWJhc2Utc2l6ZTogMXJlbTsgIC8vIDE2cHggLyAxNnB4XG5cbiAgLy8gLS10ZXh0LXNtOiAwLjg2NjY3cmVtOyAvLyAxM3B4XG4gIC0tdGV4dC1zbTogMC44MTI1cmVtOyAvLyAxM3B4XG4gIC8vIC0tdGV4dC1yZzogMXJlbTsgLy8gMTVweFxuICAtLXRleHQtcmc6IDAuOTM3NXJlbTsgLy8gMTVweFxuICAtLXRleHQtbWQ6IDFyZW07IC8vIDE2cHhcbiAgLS10ZXh0LWxnOiAxLjI1cmVtOyAvLyAyMHB4XG4gIC0tdGV4dC14bDogMS41cmVtOyAvLyAyNHB4XG4gIC0tdGV4dC14eGw6IDEuODc1cmVtOyAvLyAzMHB4XG4gIC0tdGV4dC14eHhsOiAzcmVtOyAvLyA0OHB4XG4gIC0tdGV4dC14eHh4bDogMy44cmVtOyAvLyA2MC44cHhcbiAgXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgLS10ZXh0LXh4eGw6IDMuNHJlbTsgLy8gNTQuNHB4XG4gICAgLS10ZXh0LXh4eHhsOiA0cmVtOyAvLyA2NHB4XG4gIH1cbiAgQGluY2x1ZGUgc21hbGxkZXNrdG9wIHtcbiAgICAtLXRleHQteHh4bDogMy43NXJlbTsgLy8gNjBweFxuICAgIC0tdGV4dC14eHh4bDogNC41cmVtOyAvLyA3MnB4XG4gIH1cbn1cblxuQG1peGluIHR5cC1oZWFkaW5nMSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNlY29uZGFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC14eHh4bCk7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGxpbmUtaGVpZ2h0OiAxOyAvLyA/P1xufVxuOmlzKC5ydGUgaDEsIC50eXAtaGVhZGluZzEpIHtcbiAgQGluY2x1ZGUgdHlwLWhlYWRpbmcxO1xufVxuXG5AbWl4aW4gdHlwLWhlYWRpbmcyKCRpbXBvcnRhbnQ6ICcnKSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRlcnRpYXJ5KSN7JGltcG9ydGFudH07XG4gIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC14eHhsKSN7JGltcG9ydGFudH07XG4gIC8vIGxldHRlci1zcGFjaW5nOiAyLjVyZW0jeyRpbXBvcnRhbnR9O1xuICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbSN7JGltcG9ydGFudH07XG4gIGxpbmUtaGVpZ2h0OiAxI3skaW1wb3J0YW50fTtcbn1cbjppcygucnRlIGgyLCAudHlwLWhlYWRpbmcyLCAuanVuaXAtcHJvZHVjdC1yZXZpZXctdGl0bGUsIC5qdW5pcC1wcm9kdWN0LXJldmlldy1hdmVyYWdlKSB7XG4gIEBpbmNsdWRlIHR5cC1oZWFkaW5nMjtcbn1cblxuQG1peGluIHR5cC1oZWFkaW5nMygkaW1wb3J0YW50OiAnJykge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1zZWNvbmRhcnkpI3skaW1wb3J0YW50fTtcbiAgZm9udC1zaXplOiB2YXIoLS10ZXh0LXh4bCkjeyRpbXBvcnRhbnR9O1xuICBmb250LXdlaWdodDogMTAwI3skaW1wb3J0YW50fTtcbiAgLy8gbGV0dGVyLXNwYWNpbmc6IDIuNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAjeyRpbXBvcnRhbnR9O1xufVxuOmlzKC5ydGUgaDMsIC50eXAtaGVhZGluZzMpIHtcbiAgQGluY2x1ZGUgdHlwLWhlYWRpbmczO1xufVxuXG5AbWl4aW4gdHlwLWhlYWRpbmc0KCRpbXBvcnRhbnQ6ICcnKSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpI3skaW1wb3J0YW50fTtcbiAgZm9udC1zaXplOiB2YXIoLS10ZXh0LXhsKSN7JGltcG9ydGFudH07XG4gIGZvbnQtd2VpZ2h0OiA2MDAjeyRpbXBvcnRhbnR9O1xufVxuOmlzKC5ydGUgaDQsIC50eXAtaGVhZGluZzQpIHtcbiAgQGluY2x1ZGUgdHlwLWhlYWRpbmc0O1xufVxuLmNreS10aXRsZSB7XG4gIEBpbmNsdWRlIHR5cC1oZWFkaW5nNCgkaW1wb3J0YW50OiAnICFpbXBvcnRhbnQnKTtcbn1cblxuQG1peGluIHR5cC1oZWFkaW5nNSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRlcnRpYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS10ZXh0LWxnKTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZlbTsgLy8gMTYlXG59XG46aXMoLnJ0ZSBoNSwgLnR5cC1oZWFkaW5nNSkge1xuICBAaW5jbHVkZSB0eXAtaGVhZGluZzU7XG59XG5cbkBtaXhpbiB0eXAtaGVhZGluZzYge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC10ZXJ0aWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC1tZCk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE2ZW07IC8vIDE2JVxufVxuOmlzKC5ydGUgaDYsIC50eXAtaGVhZGluZzYsIC5zZWN0aW9uX19jb250YWluZXIgLmp1bmlwLXJldmlldy1saXN0LWl0ZW0gLmp1bmlwLXJldmlldy10aXRsZSkge1xuICBAaW5jbHVkZSB0eXAtaGVhZGluZzY7XG59XG5cbkBtaXhpbiB0eXAtYnV0dG9uKCRpbXBvcnRhbnQ6ICcnKSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNlY29uZGFyeSkjeyRpbXBvcnRhbnR9O1xuICBmb250LXNpemU6IHZhcigtLXRleHQtbWQpI3skaW1wb3J0YW50fTtcbiAgZm9udC13ZWlnaHQ6IDEwMCN7JGltcG9ydGFudH07XG4gIGxldHRlci1zcGFjaW5nOiAwLjE2ZW0jeyRpbXBvcnRhbnR9OyAvLyAxNiVcbn1cbi5zZWN0aW9uX19jb250YWluZXIgLmp1bmlwLXNlZS1tb3JlIHtcbiAgQGluY2x1ZGUgdHlwLWJ1dHRvbjtcbn1cblxuQG1peGluIHR5cC1ib2R5LWJhc2UoJGltcG9ydGFudDogJycpIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSkjeyRpbXBvcnRhbnR9O1xuICBmb250LXNpemU6IHZhcigtLXRleHQtcmcpI3skaW1wb3J0YW50fTtcbiAgLy8gZm9udC13ZWlnaHQ6IDQwMCN7JGltcG9ydGFudH07XG4gIGxpbmUtaGVpZ2h0OiAxLjQzNzVyZW0jeyRpbXBvcnRhbnR9O1xufVxuQG1peGluIHR5cC1ib2R5KCRpbXBvcnRhbnQ6ICcnKSB7XG4gIEBpbmNsdWRlIHR5cC1ib2R5LWJhc2UoJGltcG9ydGFudCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDAjeyRpbXBvcnRhbnR9O1xufVxuQG1peGluIHR5cC1ib2R5LWJvbGQoJGltcG9ydGFudDogJycpIHtcbiAgQGluY2x1ZGUgdHlwLWJvZHktYmFzZSgkaW1wb3J0YW50KTtcbiAgZm9udC13ZWlnaHQ6IDcwMCN7JGltcG9ydGFudH07XG59XG4udHlwLWJvZHkge1xuICBAaW5jbHVkZSB0eXAtYm9keTtcbn1cbi50eXAtYm9keS1ib2xkIHtcbiAgQGluY2x1ZGUgdHlwLWJvZHktYm9sZDtcbn1cblxuQG1peGluIHR5cC1ib2R5LXNtYWxsLWJhc2Uge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS10ZXh0LXNtKTtcbn1cbkBtaXhpbiB0eXAtYm9keS1zbWFsbCB7XG4gIEBpbmNsdWRlIHR5cC1ib2R5LXNtYWxsLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG46aXMoLnR5cC1ib2R5LXNtYWxsLCAuanVuaXAtcHJvZHVjdC1yZXZpZXctY291bnQpIHtcbiAgQGluY2x1ZGUgdHlwLWJvZHktc21hbGw7XG59XG5cbkBtaXhpbiB0eXAtYm9keS1zbWFsbC1zZW1pYm9sZCB7XG4gIEBpbmNsdWRlIHR5cC1ib2R5LXNtYWxsLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4udHlwLWJvZHktc21hbGwtc2VtaWJvbGQge1xuICBAaW5jbHVkZSB0eXAtYm9keS1zbWFsbC1zZW1pYm9sZDtcbn1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYmFzZS1zaXplKTtcbn1cbmJvZHkge1xuICBAaW5jbHVkZSB0eXAtYm9keTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi5mdy02MDAge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG46aXMoaDEsIGgyLCBoMywgaDQsIGg1LCBoNikge1xuICBtYXJnaW46IDA7XG59XG5cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5AaW5jbHVkZSB0YWJsZXQge1xuICAudGV4dC1sZWZ0LS10YWJsZXQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLnRleHQtY2VudGVyLS10YWJsZXQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAudGV4dC1yaWdodC0tdGFibGV0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4udHQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cbi50dC11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ubXctNjUge1xuICBtYXgtd2lkdGg6IDY1Y2g7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDtcbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4oCcJztcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ+KAnSc7XG4gICAgfVxuICB9XG59IiwiLy8gUmVtb3ZlIGhlaWdodCBhYm92ZSBoZWFkaW5nIHRleHRcbkBtaXhpbiBsaENyb3AoJGxpbmUtaGVpZ2h0KSB7XG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdHdpZHRoOiAwO1xuXHRcdG1hcmdpbi10b3A6IGNhbGMoKDEgLSAjeyRsaW5lLWhlaWdodH0pICogMC41ZW0pO1xuXHR9XG59XG5cbi8vIENlbnRlciBibG9ja1xuQG1peGluIGNlbnRlci1ibG9jayB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBDbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0dGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLy8gQ2xlYXIgYWZ0ZXIgKG5vdCBhbGwgY2xlYXJmaXggbmVlZCB0aGlzIGFsc28pXG5AbWl4aW4gY2xlYXJmaXgtYWZ0ZXIoKSB7XG5cdGNsZWFyOiBib3RoO1xufVxuXG4vLyBDb2x1bW4gd2lkdGggd2l0aCBtYXJnaW5cbkBtaXhpbiBjb2x1bW4td2lkdGgoJG51bWJlckNvbHVtbnM6IDMpIHtcblx0d2lkdGg6IG1hcC1nZXQoICRjb2x1bW5zLCAkbnVtYmVyQ29sdW1ucyApIC0gKCAoICRjb2x1bW5zX19tYXJnaW4gKiAoICRudW1iZXJDb2x1bW5zIC0gMSApICkgLyAkbnVtYmVyQ29sdW1ucyApO1xufVxuXG5AbWl4aW4gaG92ZXJzdXBwb3J0IHtcblx0QG1lZGlhIChob3Zlcikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gbm9ob3ZlcnN1cHBvcnQge1xuXHRAbWVkaWEgKGhvdmVyOiBub25lKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIHJlZHVjZWRtb3Rpb24ge1xuXHRAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gcHJlZmVyc21vdGlvbiB7XG5cdEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8vIE1lZGlhIFF1ZXJpZXMgZm9yIFJlc3BvbnNpdmVcbkBtaXhpbiBtb2JpbGUtbGFuZCB7XG5cdEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtb2JpbGUtbGFuZH0pIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuXHQgIEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gbW9iaWxlLXBvcnQge1xuXHRAbWVkaWEgKG1heC13aWR0aDogI3skbW9iaWxlLXBvcnR9KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuXHQgIEBjb250ZW50O1xuXHR9XG59XG4gIFxuQG1peGluIGxhbmRzY2FwZSB7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbn1cbiAgXG5AbWl4aW4gbW9iaWxlb25seSB7XG5cdEBtZWRpYSAobWF4LXdpZHRoOiAjeyR0YWJsZXQgLSAxcHh9KSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbn1cbiAgXG5AbWl4aW4gbGFyZ2VwaG9uZSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyRsYXJnZXBob25lfSkge1xuXHQgIEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiB0YWJsZXQge1xuXHRAbWVkaWEgKG1pbi13aWR0aDogI3skdGFibGV0fSkge1xuXHQgIEBjb250ZW50O1xuXHR9XG59XG4gIFxuQG1peGluIG1vYmlsZW1lbnUge1xuXHRAbWVkaWEgKG1heC13aWR0aDogI3skbW9iaWxlbWVudSAtIDFweH0pIHtcblx0ICBAY29udGVudDtcblx0fVxufSBcbkBtaXhpbiB0YWJsZXRtZW51IHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7JG1vYmlsZW1lbnV9KSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbn1cbiAgXG5AbWl4aW4gc21hbGxkZXNrdG9wIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7JHNtYWxsZGVza3RvcH0pIHtcblx0ICBAY29udGVudDtcblx0fVxufVxuICBcbkBtaXhpbiBtZWRpdW1kZXNrdG9wIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7JG1lZGl1bWRlc2t0b3B9KSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGJpZ2Rlc2t0b3Age1xuXHRAbWVkaWEgKG1pbi13aWR0aDogI3skYmlnZGVza3RvcH0pIHtcblx0ICBAY29udGVudDtcblx0fVxufVxuICBcbkBtaXhpbiB4YmlnZGVza3RvcCB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyR4YmlnZGVza3RvcH0pIHtcblx0ICBAY29udGVudDtcblx0fVxufVxuXHRcbkBtaXhpbiBub2J1dHRvbigkaW1wb3J0YW50OiAnJykge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUjeyRpbXBvcnRhbnR9O1xuXHRhcHBlYXJhbmNlOiBub25lI3skaW1wb3J0YW50fTtcblx0YmFja2dyb3VuZDogbm9uZSN7JGltcG9ydGFudH07XG5cdGJvcmRlcjogbm9uZSN7JGltcG9ydGFudH07XG5cdGJvcmRlci1yYWRpdXM6IDAjeyRpbXBvcnRhbnR9O1xuXHRib3gtc2hhZG93OiBub25lI3skaW1wb3J0YW50fTtcblx0YmFja2dyb3VuZDogbm9uZSN7JGltcG9ydGFudH07XG5cdGNvbG9yOiBpbmhlcml0I3skaW1wb3J0YW50fTtcblx0Y3Vyc29yOiBwb2ludGVyI3skaW1wb3J0YW50fTtcblx0cGFkZGluZzogMCN7JGltcG9ydGFudH07XG59IiwiOnJvb3Qge1xuXHQtLXNpemUteHhzLW1heHdpZHRoOiBtaW4oY2FsYygxMDAlIC0gKHZhcigtLXQtZ2FwKSAqIDIpKSwgI3skeHhzd2lkdGh9KTtcblx0LS1zaXplLXhzLW1heHdpZHRoOiBtaW4oY2FsYygxMDAlIC0gKHZhcigtLXQtZ2FwKSAqIDIpKSwgI3skeHN3aWR0aH0pO1xuXHQtLXNpemUtc20tbWF4d2lkdGg6IG1pbihjYWxjKDEwMCUgLSAodmFyKC0tdC1nYXApICogMikpLCAjeyRzbXdpZHRofSk7XG5cdC0tc2l6ZS1tZC1tYXh3aWR0aDogbWluKGNhbGMoMTAwJSAtICh2YXIoLS10LWdhcCkgKiAyKSksICN7JG1kd2lkdGh9KTtcblx0LS1zaXplLWxnLW1heHdpZHRoOiBtaW4oY2FsYygxMDAlIC0gKHZhcigtLXQtZ2FwKSAqIDIpKSwgI3skbGd3aWR0aH0pO1xuXHQtLXNpemUtZnVsbHdpZHRoOiBjYWxjKDEwMCUgLSAodmFyKC0tdC1nYXApICogMikpO1xuXG5cdC0tdHJhbnNpdGlvbi1zaG9ydDogbm9uZTtcblx0LS10cmFuc2l0aW9uLXJlZ3VsYXI6IG5vbmU7XG5cdC0tdHJhbnNpdGlvbi1sb25nOiBub25lO1xuXHRAaW5jbHVkZSBwcmVmZXJzbW90aW9uIHtcblx0XHQtLXRyYW5zaXRpb24tc2hvcnQ6IDAuMXMgZWFzZTtcblx0XHQtLXRyYW5zaXRpb24tcmVndWxhcjogMC4zcyBlYXNlO1xuXHRcdC0tdHJhbnNpdGlvbi1sb25nOiAwLjVzIGVhc2U7XG5cdH1cblx0XG5cdC8vIC0tYm9yZGVyLXdpZHRoLXNtOiAxcHg7XG5cdC0tYm9yZGVyLXdpZHRoOiAycHg7XG5cdC0tYm9yZGVyLXdpZHRoLXNtOiAxcHg7XG5cdC0tYm9yZGVyLXJhZGl1cy14czogMnB4O1xuXHQtLWJvcmRlci1yYWRpdXMtc206IDVweDtcblx0LS1ib3JkZXItcmFkaXVzLW1kOiAxMHB4O1xuXHQtLWJvcmRlci1yYWRpdXMtbGc6IDIwcHg7XG5cdC0tYm9yZGVyLXJhZGl1cy14bDogMzVweDtcblx0XG5cdC8vIFNhZmUgU3BhY2luZ1xuXHQtLXNhZmV0b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcblx0LS1zYWZlcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuXHQtLXNhZmVib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcblx0LS1zYWZlbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcblxuXHQvLyAtLXNwYWNlLXNpemU6IHJlbSBjYWxjdWxhdGVkIGZyb20gYm9keSBhdCAxNnB4XG5cdC0tc3BhY2UteHhzOiAwLjI1cmVtOyAvLyA0cHhcblx0LS1zcGFjZS14czogMC41cmVtOyAvLyA4cHhcblx0LS1zcGFjZS1zbTogMXJlbTsgLy8gMTZweFxuXHQtLXNwYWNlLW1kOiAxLjVyZW07IC8vIDI0cHhcblx0LS1zcGFjZS1sZzogM3JlbTsgLy8gNDhweFxuXHQtLXNwYWNlLXhsOiA0cmVtOyAvLyA2NHB4XG5cdC0tc3BhY2UteHhsOiA0LjVyZW07IC8vIDcycHhcblx0XG5cdC0tdC1nYXA6IHZhcigtLXNwYWNlLXNtKTtcblx0QGluY2x1ZGUgdGFibGV0IHtcblx0XHQtLXQtZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG5cdH1cblx0QGluY2x1ZGUgc21hbGxkZXNrdG9wIHtcblx0XHQtLXQtZ2FwOiB2YXIoLS1zcGFjZS1sZyk7XG5cdH1cblxuICAtLWhlYWRlci1oZWlnaHQ6IGNhbGMoKDAuNjI1cmVtICogMikgKyAzMnB4KTtcblx0QGluY2x1ZGUgdGFibGV0bWVudSB7XG5cdFx0LS1oZWFkZXItaGVpZ2h0OiBjYWxjKCgwLjkyNXJlbSAqIDIpICsgMzNweCk7XG5cdH1cblx0QGluY2x1ZGUgc21hbGxkZXNrdG9wIHtcblx0XHQtLWhlYWRlci1oZWlnaHQ6IGNhbGMoKDAuNjI1cmVtICogMikgKyA0M3B4KTtcblx0fVxufVxuXG5odG1sIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCk7XG5cdG1pbi1oZWlnaHQ6IDEwMCU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdHNjcm9sbC1wYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXNwYWNlLXNtKSk7IFxufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcblx0Ym94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCk7XG5cdGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRtaW4taGVpZ2h0OiAxMDAlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHR3aWR0aDogMTAwJTtcblx0QHN1cHBvcnRzIChzY3JvbGwtYmVoYXZpb3I6IHNtb290aCkge1xuXHRcdHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuXHR9XG59XG5cbi8vICNhcHAge1xuLy8gXHRkaXNwbGF5OiBmbGV4O1xuLy8gXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuLy8gXHRtaW4taGVpZ2h0OiAxMDAlO1xuLy8gfVxuXG5tYWluIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRmbGV4LWdyb3c6IDE7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdC8vIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuXG4uc3RpY2t5IHtcblx0cG9zaXRpb246IHN0aWNreTtcblx0dG9wOiAwO1xuXHR6LWluZGV4OiAxMjtcbn1cblxuXG4vLyBQUkVWSU9VU1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnZpc3VhbGx5LWhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi52aXN1YWxseS1oaWRkZW4tLWlubGluZSB7XG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiAxZW07XG59XG5cbi5vdmVyZmxvdy1oaWRkZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2tpcC10by1jb250ZW50LWxpbms6Zm9jdXMge1xuICB6LWluZGV4OiA5OTk5O1xuICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIGNsaXA6IGF1dG87XG59XG5cblxuLnRlbXBsYXRlLWNhcHRjaGEge1xuXHRtYWluIHtcblx0XHRwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbGcpO1xuXHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1sZyk7XG5cdH1cbn0iLCJpbnB1dDppcyhbdHlwZT1cImVtYWlsXCJdLCBbdHlwZT1cInBhc3N3b3JkXCJdLCBbdHlwZT1cInRleHRcIl0sIFt0eXBlPVwidGVsXCJdKSwgc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHlwLWJvZHk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLy8gcGFkZGluZzogMDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UteHMpIDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci10ZXh0KTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSB0eXAtYm9keTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQxKTtcbiAgfVxufVxuXG4uaW5wdXQtc3VibWl0LWFycm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBpbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtbGcpO1xuICB9XG4gIC5idXR0b24tLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtaW4td2lkdGg6IHZhcigtLXNwYWNlLWxnKTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblxuICBzZWxlY3Qge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLXNtKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgLmljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjZS1zbSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogLTk5OTk5cHg7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICArIGxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAuODg5cmVtO1xuICAgICAgaGVpZ2h0OiAuODg5cmVtO1xuICAgICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLXhzKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbiAgJjpjaGVja2VkIHtcbiAgICArIGxhYmVsIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIyYVdWM1FtOTRQU0l3SURBZ01UQWdNVEFpSUhabGNuTnBiMjQ5SWpFdU1TSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklpQjRiV3h1Y3pwNGJHbHVhejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRiR2x1YXlJK0NpQWdJQ0E4ZEdsMGJHVStRMmhsWTJzOEwzUnBkR3hsUGdvZ0lDQWdQR2NnYVdROUluTjBlV3hsTFhOb1pXVjBjeUlnYzNSeWIydGxQU0p1YjI1bElpQnpkSEp2YTJVdGQybGtkR2c5SWpFaUlHWnBiR3c5SW01dmJtVWlJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0krQ2lBZ0lDQWdJQ0FnUEdjZ2FXUTlJbk56TFdadmNtMXpJaUIwY21GdWMyWnZjbTA5SW5SeVlXNXpiR0YwWlNndE16QTNMakF3TURBd01Dd2dMVFl4TVM0d01EQXdNREFwSWlCbWFXeHNQU0lqTURBd01EQXdJajRLSUNBZ0lDQWdJQ0FnSUNBZ1BHY2dhV1E5SW1keVlXUWlJSFJ5WVc1elptOXliVDBpZEhKaGJuTnNZWFJsS0RJNE9DNHdNREF3TURBc0lERTJPQzR3TURBd01EQXBJajRLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHhuSUdsa1BTSmphR1ZqYTJKdmVDSWdkSEpoYm5ObWIzSnRQU0owY21GdWMyeGhkR1VvTVRZdU1EQXdNREF3TENBME1EUXVNREF3TURBd0tTSStDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEdjZ2FXUTlJbU5vWldOclpXUWlJSFJ5WVc1elptOXliVDBpZEhKaGJuTnNZWFJsS0RBdU1EQXdNREF3TENBek1pNHdNREF3TURBcElqNEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1BHY2dhV1E5SW1sakwyTm9aV05ySWlCMGNtRnVjMlp2Y20wOUluUnlZVzV6YkdGMFpTZ3lMakF3TURBd01Dd2dOaTR3TURBd01EQXBJajRLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUR4bklHbGtQU0pqYUdWamF5MXphVzVuYkdVaUlIUnlZVzV6Wm05eWJUMGlkSEpoYm5Oc1lYUmxLREV1TVRJMU1EQXdMQ0F4TGpFeU5UQXdNQ2tpUGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHh3WVhSb0lHUTlJazB6TGpZMU56ZzNNVFUzTERrdU56VWdRek11TkRrMk5USTNPVEVzT1M0M05EazVOak15TXlBekxqTTBNVGd3TlRBMUxEa3VOamd4TlRRMU5UTWdNeTR5TWpjM016VXdPQ3c1TGpVMU9UYzVOVGN6SUV3d0xqRTROVGMxTVRReU55dzJMak14TXprNE9UQTRJRU13TGpBeU56VTVORFk1TURrc05pNHhOVEV3TURFeU5TQXRNQzR3TXpVNE16UXpNalkxTERVdU9UQTVOalF3T0RRZ01DNHdNVGs0TkRNek5qZzFMRFV1TmpneU5qYzBPVFFnUXpBdU1EYzFOVEl4TURZek5DdzFMalExTlRjd09UQXpJREF1TWpReE5qUXdOekkxTERVdU1qYzRORFU0T0NBd0xqUTFORE0xTkRFeU9DdzFMakl4T1RBMU1EVXlJRU13TGpZMk56QTJOelV6TVN3MUxqRTFPVFkwTWpJeklEQXVPRGt6TWpjeE5URTRMRFV1TWpJM016SXhNaUF4TGpBME5qQXlORFFzTlM0ek9UWXdOelE1TmlCTU15NDFOekkyT1RZd015dzRMakE1TVRNNU1qZ2dURGd1TmpNek16UXdNRFFzTUM0eU9USXpOamcxT1RRZ1F6Z3VOelUwTmpnMU5UWXNNQzR3T1RVMU56RTJOelU0SURndU9UWTJOREkxTlRNc0xUQXVNREUxTmpNNU5UVTNOQ0E1TGpFNE5qVTVOemMxTERBdU1EQXhOemd6TlRJM05Ea2dRemt1TkRBMk56WTVPVGNzTUM0d01Ua3lNRFkyTVRJMElEa3VOakF3T0RFM09UUXNNQzR4TmpJMU1qazBNalFnT1M0Mk9UTTJNamM0TkN3d0xqTTNOakkzTXpJNU5TQkRPUzQzT0RZME16YzNOU3d3TGpVNU1EQXhOekUyTlNBNUxqYzJNelEwTWpnM0xEQXVPRFF3TmpNME5USTRJRGt1TmpNek5UUTBNallzTVM0d016RXhNVFF4T1NCTU5DNHhOVGM1TnpNMk9DdzVMalEzTURJeE1UUTNJRU0wTGpBMU5UZzNNRFkxTERrdU5qSTVORFU0TXpJZ015NDRPVEkyTmpneU15dzVMamN6TVRrNU1ERXhJRE11TnpFeU5qSTNNamdzT1M0M05TQkRNeTQyT1RRek56VXpPQ3c1TGpjMUlETXVOamMyTVRJek5EY3NPUzQzTlNBekxqWTFOemczTVRVM0xEa3VOelVnV2lJZ2FXUTlJbEJoZEdnaUlHWnBiR3d0Y25Wc1pUMGlibTl1ZW1WeWJ5SStQQzl3WVhSb1Bnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQQzluUGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4TDJjK0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQQzluUGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEM5blBnb2dJQ0FnSUNBZ0lDQWdJQ0E4TDJjK0NpQWdJQ0FnSUNBZ1BDOW5QZ29nSUNBZ1BDOW5QZ284TDNOMlp6ND0pO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IC41NTZyZW0gLjU1NnJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gS2xhdml5byBGb3Jtc1xuW2NsYXNzKj1cImtsYXZpeW8tZm9ybS1cIl0ge1xuICAmOm5vdCg6ZW1wdHkpIHtcbiAgICArIC5rbGF2aXlvLWxvYWRpbmctbWVzc2FnZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uc2VjdGlvbl9fY29udGFpbmVyIHtcbiAgLmtsYXZpeW8tZm9ybSB7XG4gICAgZm9ybSB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICA+IC5uZWVkc2NsaWNrIHtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAqIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBbcm9sZT1cImFsZXJ0XCJdIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kMikgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnFsLWVkaXRvciB7XG4gICAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gICAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbiAgICAgIHAge1xuICAgICAgICBAaW5jbHVkZSB0eXAtYm9keSgkaW1wb3J0YW50OiAnICFpbXBvcnRhbnQnKTtcbiAgICAgICAgLy8gc3Ryb25nIHtcbiAgICAgICAgLy8gICBAaW5jbHVkZSB0eXAtaGVhZGluZzIoJGltcG9ydGFudDogJyAhaW1wb3J0YW50Jyk7XG4gICAgICAgIC8vIH1cbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIC5mb3JtLXJvdyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICBcbiAgICBbZGF0YS10ZXN0aWQ9XCJmb3JtLWNvbXBvbmVudFwiXSB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgfVxuICBcbiAgICA6aXMoaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QpIHtcbiAgICAgIEBpbmNsdWRlIHR5cC1ib2R5KCRpbXBvcnRhbnQ6ICcgIWltcG9ydGFudCcpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIEBpbmNsdWRlIHR5cC1ib2R5KCRpbXBvcnRhbnQ6ICcgIWltcG9ydGFudCcpO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXQ6aXMoW3R5cGU9XCJlbWFpbFwiXSwgW3R5cGU9XCJ0ZXh0XCJdKSB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiB2YXIoLS1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICBcbiAgICBkaXZbZGF0YS10ZXN0aWQ9Zm9ybS1yb3ddIGRpdltkYXRhLXRlc3RpZD1mb3JtLWNvbXBvbmVudF06bnRoLW9mLXR5cGUoMikge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlIWltcG9ydGFudDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICBcbiAgICBidXR0b24ge1xuICAgICAgJlt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgICAgQGluY2x1ZGUgdHlwLWJvZHktYm9sZCgkaW1wb3J0YW50OiAnICFpbXBvcnRhbnQnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC8vIHdpZHRoOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBcbiAgICAgICAgLy8gJjo6YWZ0ZXIge1xuICAgICAgICAvLyAgIGNvbnRlbnQ6ICfin7YnO1xuICAgICAgICAvLyAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgLy8gICB2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudDtcbiAgICAgICAgLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC8vICAgdG9wOiAwO1xuICAgICAgICAvLyAgIGxlZnQ6IDA7XG4gICAgICAgIC8vICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAvLyAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIC8vICAgcGxhY2UtaXRlbXM6IGNlbnRlciBlbmQ7XG4gICAgICAgIC8vIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIubGlzdC0taW5saW5lIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbjppcygubGlzdC0tbm9saXN0LCAubGlzdC11bnN0eWxlZCkge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG59IiwiaW1nLCBwaWN0dXJlLCB2aWRlbyB7XG5cdG1heC13aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvO1xuXHRvYmplY3QtZml0OiBjb250YWluO1xuXG5cdCYub2JqLWNvdmVyIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHR9XG5cdCYub2JqLWNvbnRhaW4ge1xuXHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdH1cbn1cbnN2ZyB7XG5cdG1heC13aWR0aDogMTAwJTtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbmZpZ3VyZSB7XG5cdG1hcmdpbjogMDtcbn1cblxuLmJhY2tncm91bmQtaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICA6aXMoaW1nLCBzb3VyY2UpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0Jjpub3QoLm9iai1jb250YWluKSB7XG5cdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHR9XG4gIH1cbn1cblxuaHIsIC5zZWN0aW9uX19kaXZpZGVyIHtcblx0aGVpZ2h0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0Ym9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1jb2xvci10ZXh0KTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufSIsImEge1xuXHRjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuLy8gXHR0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMXJlbTtcbi8vIFxuLy8gXHRAaW5jbHVkZSB0YWJsZXQge1xuLy8gXHRcdHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC40cmVtO1xuLy8gXHR9XG59XG5cbi5saW5rIHtcblx0Ji0tdGV4dCB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cdCYtLW5vbGluayB7XG5cdFx0Y29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHQvLyB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuM3JlbTtcblx0XHR9XG5cdH1cbn0iLCJ0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxudGQge1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItdGV4dCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLXhzKTtcbn0iLCIkZ2FwczogKHhzLCBzbSwgbWQsIGxnLCB4bCwgeHhsKTtcblxuQGVhY2ggJHNpemUgaW4gJGdhcHMge1xuICAuZ2FwLSN7JHNpemV9IHtcbiAgICBnYXA6IHZhcigtLXNwYWNlLSN7JHNpemV9KTtcbiAgfVxuICAucm93LWdhcC0jeyRzaXplfSB7XG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2UtI3skc2l6ZX0pO1xuICB9XG4gIC5jb2x1bW4tZ2FwLSN7JHNpemV9IHtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjZS0jeyRzaXplfSk7XG4gIH1cbn1cbkBlYWNoICRzaXplIGluICRnYXBzIHtcbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAuZ2FwLSN7JHNpemV9LS10YWJsZXQge1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjZS0jeyRzaXplfSk7XG4gICAgfVxuICAgIC5yb3ctZ2FwLSN7JHNpemV9LS10YWJsZXQge1xuICAgICAgcm93LWdhcDogdmFyKC0tc3BhY2UtI3skc2l6ZX0pO1xuICAgIH1cbiAgICAuY29sdW1uLWdhcC0jeyRzaXplfS0tdGFibGV0IHtcbiAgICAgIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNlLSN7JHNpemV9KTtcbiAgICB9XG4gIH1cbn1cbkBlYWNoICRzaXplIGluICRnYXBzIHtcbiAgQGluY2x1ZGUgc21hbGxkZXNrdG9wIHtcbiAgICAuZ2FwLSN7JHNpemV9LS1zbWFsbGRlc2t0b3Age1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjZS0jeyRzaXplfSk7XG4gICAgfVxuICAgIC5yb3ctZ2FwLSN7JHNpemV9LS1zbWFsbGRlc2t0b3Age1xuICAgICAgcm93LWdhcDogdmFyKC0tc3BhY2UtI3skc2l6ZX0pO1xuICAgIH1cbiAgICAuY29sdW1uLWdhcC0jeyRzaXplfS0tc21hbGxkZXNrdG9wIHtcbiAgICAgIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNlLSN7JHNpemV9KTtcbiAgICB9XG4gIH1cbn1cbkBlYWNoICRzaXplIGluICRnYXBzIHtcbiAgQGluY2x1ZGUgYmlnZGVza3RvcCB7XG4gICAgLmdhcC0jeyRzaXplfS0tYmlnZGVza3RvcCB7XG4gICAgICBnYXA6IHZhcigtLXNwYWNlLSN7JHNpemV9KTtcbiAgICB9XG4gICAgLnJvdy1nYXAtI3skc2l6ZX0tLWJpZ2Rlc2t0b3Age1xuICAgICAgcm93LWdhcDogdmFyKC0tc3BhY2UtI3skc2l6ZX0pO1xuICAgIH1cbiAgICAuY29sdW1uLWdhcC0jeyRzaXplfS0tYmlnZGVza3RvcCB7XG4gICAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjZS0jeyRzaXplfSk7XG4gICAgfVxuICB9XG59XG5cblxuLmZsZXgge1xuICBkaXNwbGF5OiBmbGV4OyAgXG59XG5cbi5mbGV4LXdyYXAge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gICYtLXRhYmxldCB7XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gIH1cbn1cbi5mbGV4LW5vd3JhcCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuXG4uZmxleC0tY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5mbGV4LS1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuQGluY2x1ZGUgbW9iaWxlb25seSB7XG4gIC5mbGV4LS1jb2x1bW4tLW1vYmlsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAuZmxleC0tcm93LS1tb2JpbGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbkBpbmNsdWRlIHRhYmxldCB7XG4gIC5mbGV4LS1jb2x1bW4tLXRhYmxldCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAuZmxleC0tcm93LS10YWJsZXQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuJHBvc2l0aW9uczogKHN0YXJ0LCBjZW50ZXIsIGVuZCwgYmFzZWxpbmUsIHN0cmV0Y2gpO1xuLy8gJHBvc2l0aW9uX3ZhbHVlczogKGZsZXgtc3RhcnQsIGNlbnRlciwgZmxleC1lbmQpO1xuJHBvc2l0aW9uX3ZhbHVlczogKHN0YXJ0LCBjZW50ZXIsIGVuZCwgYmFzZWxpbmUsIHN0cmV0Y2gpO1xuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkcG9zaXRpb25zKSB7XG4gICRwb3NpdGlvbjogbnRoKCRwb3NpdGlvbnMsICRpKTtcbiAgJHBvc2l0aW9uX3ZhbHVlOiBudGgoJHBvc2l0aW9uX3ZhbHVlcywgJGkpO1xuICAuYWxpZ24tI3skcG9zaXRpb259IHtcbiAgICBhbGlnbi1pdGVtczogI3skcG9zaXRpb25fdmFsdWV9O1xuICB9XG4gIC5qdXN0aWZ5LSN7JHBvc2l0aW9ufSB7XG4gICAganVzdGlmeS1jb250ZW50OiAjeyRwb3NpdGlvbl92YWx1ZX07XG4gIH1cbn1cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRwb3NpdGlvbnMpIHtcbiAgJHBvc2l0aW9uOiBudGgoJHBvc2l0aW9ucywgJGkpO1xuICAkcG9zaXRpb25fdmFsdWU6IG50aCgkcG9zaXRpb25fdmFsdWVzLCAkaSk7XG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgLmFsaWduLSN7JHBvc2l0aW9ufS0tdGFibGV0IHtcbiAgICAgIGFsaWduLWl0ZW1zOiAjeyRwb3NpdGlvbl92YWx1ZX07XG4gICAgfVxuICAgIC5qdXN0aWZ5LSN7JHBvc2l0aW9ufS0tdGFibGV0IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogI3skcG9zaXRpb25fdmFsdWV9O1xuICAgIH1cbiAgfVxufVxuLmNvbnRlbnQtc3RhcnQge1xuICBhbGlnbi1jb250ZW50OiBzdGFydDtcbn1cbi5qdXN0aWZ5LXNwYWNlLWJldHdlZW4ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cblxuLmdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xufVxuQGluY2x1ZGUgdGFibGV0IHtcbiAgLmdyaWQtLXRhYmxldCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgfVxufVxuQGluY2x1ZGUgc21hbGxkZXNrdG9wIHtcbiAgLmdyaWQtLXNtYWxsZGVza3RvcCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgfVxufVxuQGluY2x1ZGUgYmlnZGVza3RvcCB7XG4gIC5ncmlkLS1iaWdkZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICB9XG59XG5cbiRtYXhncmlkOiA4O1xuXG5AZm9yICRpIGZyb20gMSB0byAkbWF4Z3JpZCB7XG4gIC5ncmlkLS0jeyRpfSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoI3skaX0sIDFmcik7XG4gIH1cbn1cbkBmb3IgJGkgZnJvbSAxIHRvICRtYXhncmlkIHtcbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAuZ3JpZC0tI3skaX0tLXRhYmxldCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgjeyRpfSwgMWZyKTtcbiAgICB9XG4gIH1cbn1cbkBmb3IgJGkgZnJvbSAxIHRvICRtYXhncmlkIHtcbiAgQGluY2x1ZGUgc21hbGxkZXNrdG9wIHtcbiAgICAuZ3JpZC0tI3skaX0tLXNtYWxsZGVza3RvcCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgjeyRpfSwgMWZyKTtcbiAgICB9XG4gIH1cbn1cbkBmb3IgJGkgZnJvbSAxIHRvICRtYXhncmlkIHtcbiAgQGluY2x1ZGUgYmlnZGVza3RvcCB7XG4gICAgLmdyaWQtLSN7JGl9LS1iaWdkZXNrdG9wIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCN7JGl9LCAxZnIpO1xuICAgIH1cbiAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0byAkbWF4Z3JpZCB7XG4gIC5jb2xzcGFuLSN7JGl9IHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAjeyRpfTtcbiAgfVxufVxuQGZvciAkaSBmcm9tIDEgdG8gJG1heGdyaWQge1xuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIC5jb2xzcGFuLSN7JGl9LS10YWJsZXQge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gI3skaX07XG4gICAgfVxuICB9XG59XG5AZm9yICRpIGZyb20gMSB0byAkbWF4Z3JpZCB7XG4gIEBpbmNsdWRlIHNtYWxsZGVza3RvcCB7XG4gICAgLmNvbHNwYW4tI3skaX0tLXNtYWxsZGVza3RvcCB7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiAjeyRpfTtcbiAgICB9XG4gIH1cbn1cbkBmb3IgJGkgZnJvbSAxIHRvICRtYXhncmlkIHtcbiAgQGluY2x1ZGUgYmlnZGVza3RvcCB7XG4gICAgLmNvbHNwYW4tI3skaX0tLWJpZ2Rlc2t0b3Age1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gI3skaX07XG4gICAgfVxuICB9XG59XG5cbi5ncmlkLWNlbnRlciB7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG59IiwiQGltcG9ydCBcInZhcmlhYmxlcy9zdHJ1Y3R1cmVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbWl4aW5zLW1hc3RlclwiO1xuXG4jc2hvcGlmeS1zZWN0aW9uLWhlYWRlciB7XG4gIHotaW5kZXg6IDk5OTk7XG4gIC8vIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbn1cblxuLmhlYWRlciAqW3RhYmluZGV4PSctMSddOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5oZWFkZXIge1xuICAtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcblx0LS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJhY2tncm91bmQpO1xuXHRjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgdGFibGV0bWVudSB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMDtcbiAgfVxuXG4gICZfX2lubmVyY250ciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiAnaGFtYnVyZ2VyIC4gbG9nbyAuIGNhcnQnO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNS40Mzc1cmVtIDFmciAxMjVweCAxZnIgNS40Mzc1cmVtO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1zaXplLWZ1bGx3aWR0aCk7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXRtZW51IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdsZWZ0bWVudSAuIGxvZ28gcmlnaHRtZW51IGNhcnQnO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNjZweCAxNjVweCAxZnIgNjZweDtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlciB7XG4gIGdyaWQtYXJlYTogaGFtYnVyZ2VyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uaGFtYnVyZ2VyLWljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLXhzKTtcbn1cblxuLmhlYWRlcl9fYnJhbmRpbmcge1xuICBncmlkLWFyZWE6IGxvZ287XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uaGVhZGVyX19jYXJ0IHtcbiAgZ3JpZC1hcmVhOiBjYXJ0O1xufVxuLmhlYWRlcl9fYmFza2V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGVhZGVyX19tZW51LS1sZWZ0IHtcbiAgZ3JpZC1hcmVhOiBsZWZ0bWVudTtcbn1cbi5oZWFkZXJfX21lbnUtLXJpZ2h0IHtcbiAgZ3JpZC1hcmVhOiByaWdodG1lbnU7XG4gIC5saXN0LW1lbnUge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cblxuLmhlYWRlcl9faWNvbi0tY2FydCB7XG59XG5cblxuLmhlYWRlcl9fbWVudSB7XG4gICYtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbiAgfVxuICAmLWxpbmsge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC8vIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgLy8gdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQ0KTtcbiAgICB9XG4gIH1cbn1cblxuXG4ubWVudS1kcmF3ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tcmVndWxhcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBtb2JpbGVvbmx5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICZfX21lbnUge1xuICB9XG4gICZfX21lbnUtaXRlbSB7XG4gIH1cbiAgJl9fbWVudS1saW5rIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLXJlZ3VsYXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXJlZ3VsYXIpO1xuICAgIEBpbmNsdWRlIHRhYmxldG1lbnUge1xuICAgICAgbWluLXdpZHRoOiAyMGNoO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgfVxuICB9XG59XG4ubWVudS1vcGVuaW5nIC5tZW51LWRyYXdlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn0iLCI6aXMoLmJ1dHRvbiwgLnNob3BpZnktcGF5bWVudC1idXR0b25fX2J1dHRvbi0tdW5icmFuZGVkLCAuc2hvcGlmeS1jaGFsbGVuZ2VfX2J1dHRvbiwgLmp1bmlwLXByb2R1Y3QtcmV2aWV3LWNvbnRhaW5lciAuanVuaXAtd3JpdGUtcmV2aWV3LWN0YS1jb250YWluZXIgLmp1bmlwLWJ0bikge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kKSAhaW1wb3J0YW50O1xuXHRjb2xvcjogdmFyKC0tY29sb3ItdGV4dCkgIWltcG9ydGFudDtcblx0Ym9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXJlZ3VsYXIpLCBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tcmVndWxhciksIGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXJlZ3VsYXIpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0QGluY2x1ZGUgdHlwLWJ1dHRvbjtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhsKTtcblx0Ly8gcGFkZGluZzogMTFweCA3MnB4O1xuXHRwYWRkaW5nOiAxcmVtIDNlbTtcblx0Ly8gQGluY2x1ZGUgbW9iaWxlb25seSB7XG5cdC8vIFx0d2lkdGg6IDEwMCU7XG5cdC8vIH1cblx0LS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3Itb2Zmd2hpdGUpO1xuXHQtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3ItYmxhY2spO1xuXHRcblx0Jjpob3Zlcjpub3QoW2Rpc2FibGVkXSkge1xuXHRcdC0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tY29sb3Itb2Zmd2hpdGUpO1xuXHRcdC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xuXHRcdC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdH1cblxuXHQmW2Rpc2FibGVkXSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXHR9XG59XG5cbi5ub2J1dHRvbiB7XG5cdEBpbmNsdWRlIG5vYnV0dG9uO1xufVxuLy8gI3Nob3BpZnktcHJpdmFjeS1iYW5uZXIgYnV0dG9uLmRlY2xpbmUge1xuLy8gXHRAaW5jbHVkZSBub2J1dHRvbigkaW1wb3J0YW50OiAnICFpbXBvcnRhbnQnKTtcbi8vIH1cbi5ja3ktYnRuIHtcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCkgIWltcG9ydGFudDtcblx0Y29sb3I6IHZhcigtLWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteGwpICFpbXBvcnRhbnQ7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXJlZ3VsYXIpLCBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tcmVndWxhciksIGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXJlZ3VsYXIpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0QGluY2x1ZGUgdHlwLWJ1dHRvbigkaW1wb3J0YW50OiAnICFpbXBvcnRhbnQnKTtcblxuXHQtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9mZndoaXRlKTtcblx0LS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1ibGFjayk7XG59XG4uY2t5LWJ0bi1jdXN0b21pemUge1xuXHQmOjphZnRlciB7XG5cdFx0dG9wOiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHR9XG59XG4uY2t5LWNvbnNlbnQtY29udGFpbmVyLmNreS1jb25zZW50LWJhci1leHBhbmQgLmNreS1idG4tY3VzdG9taXplOjphZnRlciB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTE4MGRlZykgIWltcG9ydGFudDtcbn1cbjppcyguY2t5LWJ0bi1hY2NlcHQsIC5ja3ktYnRuLXByZWZlcmVuY2VzKSB7XG5cdC0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmxhY2spO1xuXHQtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLW9mZndoaXRlKTtcblx0LS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWJsYWNrKTtcbn1cbi8vIC5ja3ktbm90aWNlLWJ0bi13cmFwcGVyIHtcbi8vIFx0YnV0dG9uIHtcbi8vIFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcbi8vIFx0fVxuLy8gfVxuXG4uc2hvcGlmeS1jaGFsbGVuZ2VfX2NvbnRhaW5lciB7XG5cdC5zaG9waWZ5LWNoYWxsZW5nZV9fYnV0dG9uIHtcblx0XHRtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1tZCk7XG5cdH1cbn1cblxuLnNob3BpZnktcGF5bWVudC1idXR0b25fX2J1dHRvbi0tdW5icmFuZGVkIHtcblx0JiwgJjpub3QoW2Rpc2FibGVkXSkge1xuXHRcdC0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmxhY2spO1xuXHRcdC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3Itb2Zmd2hpdGUpO1xuXHRcdC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdFx0XG5cdFx0Jjpob3Zlcjpub3QoW2Rpc2FibGVkXSkge1xuXHRcdFx0LS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1vZmZ3aGl0ZSk7XG5cdFx0XHQtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcblx0XHRcdC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdFx0fVxuXHR9XG59XG4uc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS1icmFuZGVkIFtyb2xlPVwiYnV0dG9uXCJdIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhsKTtcblx0cGFkZGluZzogMXJlbSAzZW07XG59XG5cbi5idXR0b24ge1xuXHQmLS10YWJsZXQge1xuXHRcdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0XHQtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcblx0XHRcdC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3Itb2Zmd2hpdGUpO1xuXHRcdFx0LS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWJsYWNrKTtcblx0XHRcdCY6aG92ZXI6bm90KFtkaXNhYmxlZF0pIHtcblx0XHRcdFx0LS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1vZmZ3aGl0ZSk7XG5cdFx0XHRcdC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xuXHRcdFx0XHQtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3ItYmxhY2spO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG46aXMoLmJ1dHRvbi0tc2Vjb25kYXJ5LCAuanVuaXAtcHJvZHVjdC1yZXZpZXctY29udGFpbmVyIC5qdW5pcC13cml0ZS1yZXZpZXctY3RhLWNvbnRhaW5lciAuanVuaXAtd3JpdGUtcmV2aWV3LWN0YSkge1xuXHQtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9mZndoaXRlKTtcblx0LS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdCY6aG92ZXI6bm90KFtkaXNhYmxlZF0pIHtcblx0XHQtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcblx0XHQtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLW9mZndoaXRlKTtcblx0XHQtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3ItYmxhY2spO1xuXHR9XG59XG4uYnV0dG9uLS1zZWNvbmRhcnkge1xuXHQmLS10YWJsZXQge1xuXHRcdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0XHQtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9mZndoaXRlKTtcblx0XHRcdC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xuXHRcdFx0LS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWJsYWNrKTtcdFxuXHRcdFx0Jjpob3Zlcjpub3QoW2Rpc2FibGVkXSkge1xuXHRcdFx0XHQtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcblx0XHRcdFx0LS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1vZmZ3aGl0ZSk7XG5cdFx0XHRcdC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5idXR0b24tLXRlcnRpYXJ5IHtcblx0LS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cdC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xuXHQtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuXHQmOmhvdmVyOm5vdChbZGlzYWJsZWRdKSB7XG5cdFx0LS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cdFx0LS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cdFx0LS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcblx0fVxuXHRcblx0Ji0tdGFibGV0IHtcblx0XHRAaW5jbHVkZSB0YWJsZXQge1xuXHRcdFx0LS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cdFx0XHQtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcblx0XHRcdC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cdFx0XHQmOmhvdmVyOm5vdChbZGlzYWJsZWRdKSB7XG5cdFx0XHRcdC0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmxhY2spO1xuXHRcdFx0XHQtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0LS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCI6aXMoLnByb2R1Y3QtdGFnLCAuYXJ0aWNsZS10YWcpIHtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLXRleHQpO1xuICBib3JkZXItcmFkaXVzOiA0cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgdHlwLWJvZHktc21hbGw7XG59XG5cbi5wcm9kdWN0LXRhZyB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjJyZW07XG4gIEBpbmNsdWRlIGxhcmdlcGhvbmUge1xuICAgIHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XG4gIH1cbn1cblxuLmFydGljbGUtdGFnIHtcbiAgcGFkZGluZzogMC4xcmVtIDAuNHJlbTtcbiAgQGluY2x1ZGUgbGFyZ2VwaG9uZSB7XG4gICAgcGFkZGluZzogMC4xcmVtIDAuNnJlbTtcbiAgfVxufSIsIi5jYXJ0LWRyYXdlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTA5OTk5O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2Utc20pO1xuICAgIEBpbmNsdWRlIHByZWZlcnNtb3Rpb24ge1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWxvbmcpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHdpZHRoOiAyNy4xMTFyZW07XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW1kKTtcbiAgICB9XG5cbiAgICAkcm9vdFBhcmVudDogJjtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG5cdFx0XHQuaWNvbi1jbG9zZSB7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0d2lkdGg6IDFyZW07XG5cdFx0XHR9XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIC8vIHBhZGRpbmc6IHZhcigtLXNwYWNlLXhzKSB2YXIoLS1zcGFjZS14cyk7XG5cdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxnKTtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNlLXhzKTtcbiAgICB9XG5cbiAgICAmX19tZXNzYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUtdHdlbnR5Zml2ZSk7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXhzKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2UteHMpO1xuICAgIH1cblxuICAgIC5jYXJ0LWl0ZW0ge1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNlLXhzKTtcbiAgICB9XG4gICAgLnF1YW50aXR5LXNwaW5uZXJfX2J1dHRvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC1zbSk7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXNtKTtcbiAgICB9XG4gICAgLnF1YW50aXR5LXNwaW5uZXJfX2lucHV0IHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UteHMpIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC1zbSk7XG4gICAgICAgIHdpZHRoOiA1Ljg5cmVtO1xuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICAgIC8vIGJvcmRlci10b3A6IHZhcigtLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAvLyBwYWRkaW5nOiB2YXIoLS1zcGFjZS14cykgdmFyKC0tc3BhY2UteHMpO1xuICAgIH1cblxuICAgICZfX3RvdGFsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyAmX19hY2NlcHRlZC1tZXRob2RzIHtcbiAgICAvLyAgICAgZGlzcGxheTogZmxleDtcbiAgICAvLyAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgLy8gICAgIGdhcDogMS4zNzVyZW07XG4gICAgLy8gICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxnKTtcblxuICAgIC8vICAgICBzdmcge1xuICAgIC8vICAgICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAvLyAgICAgICAgIGhlaWdodDogMi4yMjJyZW07XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG5cbiAgICAmLS1lbXB0eSB7XG5cbiAgICAgICAgI3skcm9vdFBhcmVudH1fX2hlYWRlciB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAjeyRyb290UGFyZW50fV9fdGl0bGUge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICN7JHJvb3RQYXJlbnR9X19tYWluIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAjeyRyb290UGFyZW50fV9fZm9vdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19lbXB0eSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMC42MjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtaW1hZ2Uge1xuXHRcdFx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0XHRcdFx0d2lkdGg6IDExMCU7XG5cdFx0XHRcdFx0ZmxleDogMCAwIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLWFjdGlvbiB7XG5cdFx0XHRcdFx0bWFyZ2luOiBhdXRvIGF1dG8gdmFyKC0tc2FmZWJvdHRvbSkgYXV0bztcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRidXR0b24ge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0fVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcnQtZHJhd2VyX19idXR0b24ge1xuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmICsgLmNhcnQtZHJhd2VyX19idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2Utc20pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FydC1kcmF3ZXJfX3NpbmdsZS1wYXltZW50LWljb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMi40cmVtO1xuICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xufSIsIi5jYXJ0LWl0ZW0ge1xuICAtLWNvbG9yLWl0ZW0tdGl0bGU6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1pdGVtLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAvLyArIC5jYXJ0LWl0ZW0ge1xuICAvLyAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWQpO1xuICAvLyB9XG5cbiAgJl9faW1hZ2Uge1xuICAgIHdpZHRoOiA3LjExMXJlbTtcbiAgICBoZWlnaHQ6IDcuMTExcmVtO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWl0ZW0tYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgd2lkdGg6IDkuMzMzcmVtO1xuICAgICAgaGVpZ2h0OiA5LjMzM3JlbTtcbiAgICB9XG4gIH1cblxuICAmX19kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBcbiAgJl9fdGl0bGUge1xuICAgIC8vIG1hcmdpbi10b3A6IGF1dG87XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWl0ZW0tdGl0bGUpO1xuXG4gICAgKyBxdWFudGl0eS1zcGlubmVyIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJl9fdmFyaWFudCB7XG4gICAgLy8gbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UteHMpO1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG87XG4gIH1cblxuICAmX19xdWFudGl0eSB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLy8gLmNhcnQtZHJhd2VyX19tYWluIHtcbi8vICAgLmNhcnQtaXRlbSB7XG4vLyAgICAgJl9faW1hZ2Uge1xuLy8gICAgICAgd2lkdGg6IDYuNzVyZW07XG4vLyAgICAgICBoZWlnaHQ6IDYuNzVyZW07XG4vLyAgICAgICBAaW5jbHVkZSB0YWJsZXQge1xuLy8gICAgICAgICB3aWR0aDogN3JlbTtcbi8vICAgICAgICAgaGVpZ2h0OiA3cmVtO1xuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgfVxuLy8gfVxuIiwiLmNhcnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW46IDMwcHggYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgd2lkdGg6IDMwcmVtO1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgLy8gLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgLy8gYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG4gIH1cblxuICAkcm9vdFBhcmVudDogJjtcblxuICAmX19oZWFkZXIge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW1kKTtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgLy8gYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgfVxuXG4gICAgJi0tZW1wdHkge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAmX19tYWluIHtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLW1kKSB2YXIoLS1zcGFjZS1tZCk7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG5cbiAgICAmLS1lbXB0eSB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZCkgMCAwIDA7XG4gICAgfVxuICB9XG5cbiAgJl9fbWVzc2FnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUtdHdlbnR5Zml2ZSk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2Utc20pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNlLXNtKTtcbiAgfVxuXG4gICZfX2Zvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW1kKTtcblxuICAgICYtLWVtcHR5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICZfX2Zvb3Rlci1ub3RlcyB7XG4gICAgdGV4dGFyZWEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiBjbGFtcCg0LjVyZW0sNHZoLDZyZW0pO1xuICAgICAgcmVzaXplOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICArIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgJi5jYXJ0X19mb290ZXItbm90ZXMtbGFiZWwge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLXhzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXHRcdFx0fiAuZ2lmdG5vdGVfdGV4dGFyZWEtY250ciB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHQmOmNoZWNrZWQgfiAuZ2lmdG5vdGVfdGV4dGFyZWEtY250ciB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuICAgIH1cbiAgICAuZ2lmdG5vdGVfdGV4dGFyZWEtY250ciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIC5naWZ0bm90ZV9jaGFyYWN0ZXJjb3VudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IGNhbGMoKHZhcigtLXRleHQteHMpICogLTEuMikgLSB2YXIoLS1zcGFjZS14cykpO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICAvLyBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1icmFuZDEpO1xuICAgICAgLy8gcGFkZGluZzogMCA2cHggMCA5cHg7XG4gICAgICAvLyBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICAgICYtLXdhcm5pbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQyKTtcbiAgICAgIH1cbiAgICAgICYtLWVycm9yIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kMik7XG4gICAgICB9XG4gICAgICAmW2RhdGEtY291bnQ9XCIwXCJdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi1kcmF3ZXIge1xuICAgIC5jYXJ0X19mb290ZXItbm90ZXMge1xuICAgICAgdGV4dGFyZWEge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS14cykgdmFyKC0tc3BhY2UteHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3RvdGFsIHtcbiAgICAvLyBmb250LXNpemU6IDIuMjVyZW07XG4gICAgLy8gbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLXNtKTtcbiAgfVxuXG4gICZfX2FjY2VwdGVkLW1ldGhvZHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxLjM3NXJlbTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1sZyk7XG5cbiAgICBzdmcge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGhlaWdodDogMi4yMjJyZW07XG4gICAgfVxuICB9XG5cbiAgJl9fZW1wdHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYtdGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgLy8gbGVmdDogMDtcbiAgICAgIC8vIHJpZ2h0OiAwO1xuICAgICAgLy8gcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgICB9XG5cbiAgICAmLWltYWdlIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgICYtYWN0aW9uIHtcbiAgICAgIC8vIG1hcmdpbjogdmFyKC0tc3BhY2UtbWQpIGF1dG87XG4gICAgfVxuICB9XG5cbiAgLmNhcnRfX2J1dHRvbiB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmICsgLmNhcnRfX2J1dHRvbiB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1zbSk7XG4gICAgfVxuICB9XG59XG5cbi5jYXJ0LWNvdW50LWJ1YmJsZSB7XG4gIHdpZHRoOiAxLjg3NXJlbTtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG59XG5cbi5jYXJ0X19mcmVlc2hpcHBpbmctYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNnB4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibGFjay10ZW4pO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXNtKTtcbiAgXG4gICYtZmlsbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAtLXdpZHRoOiAwO1xuICAgIHdpZHRoOiB2YXIoLS13aWR0aCk7XG4gIH1cbn1cbi8vIC5jYXJ0LWRyYXdlcl9fZnJlZXNoaXBwaW5nLW1lc3NhZ2Uge1xuLy8gICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS1sZyk7XG4vLyB9XG5cbm1haW4tY2FydCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLm92ZXJsYXkge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMgZWFzZTtcblxuICAmLnZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjay1maWZ0eSk7XG4gICAgICB6LWluZGV4OiAxMDk5OTA7XG4gIH1cbn0iLCIucXVhbnRpdHktc3Bpbm5lciB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xuXG4gICAgJi0tc2Vjb25kYXJ5IHtcbiAgICAgICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1icmFuZDQpO1xuICAgIH1cblxuXHQmX19pbnB1dCB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCk7XG5cdFx0Y29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuXHRcdC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuXHRcdGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci10ZXh0KTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tcmVndWxhciksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1yZWd1bGFyKTtcblx0XHQvLyBcblx0XHQvLyBvdXRsaW5lOiBub25lOyAvLyBuZWVkIHRvIGluc3RhbGwgc29tZXRoaW5nIGxpa2UgZm9jdXMtdmlzaWJsZSBpbnN0ZWFkIG9mIHJlbW92aW5nIHRoZSBvdXRsaW5lcyAtIGFjY2Vzc2liaWxpdHlcblx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhsKTtcblx0XHRwYWRkaW5nOiAxMnB4IDA7XG5cdFx0Ly8gZm9udC1zaXplOiB2YXIoLS10ZXh0LWxnKTtcblx0XHR3aWR0aDogNy41cmVtO1xuXHRcdC8vIFxuXHRcdC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0XHRcblx0XHRAaW5jbHVkZSBsYXJnZXBob25lIHtcblx0XHRcdHdpZHRoOiA4Ljg4OXJlbTtcblx0XHR9XG5cblx0XHQmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuXHRcdCY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuXHRcdFx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0fVxuXG5cdCZfX2J1dHRvbiB7XG5cdFx0Y29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS10ZXh0LWxnKTtcblx0XHRwYWRkaW5nOiAxcmVtO1xuXHRcdHRvcDogMDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRAaW5jbHVkZSBsYXJnZXBob25lIHtcblx0XHRcdHBhZGRpbmc6IDEuMTI1cmVtO1xuXHRcdH1cblxuXHRcdCY6bnRoLW9mLXR5cGUoMSkge1xuXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cblx0XHQmOm50aC1vZi10eXBlKDIpIHtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdH1cblx0fVxufSIsIi5zcGFjZXIge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtbW9iKTtcbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtdGFibGV0KTtcbiAgfVxufSIsInN1bW1hcnk6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICBkaXNwbGF5OiBub25lO1xufSIsIlxuXG46aXMoLmNreS1jb25zZW50LWNvbnRhaW5lcikge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCk7XG4gIGJvdHRvbTogdmFyKC0tc2FmZWJvdHRvbSkgIWltcG9ydGFudDtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLXRleHQpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS14cyk7XG4gIC0tZ2FwOiB2YXIoLS1zcGFjZS14cyk7XG4gIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47XG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgYm90dG9tOiBtYXgoMXJlbSwgdmFyKC0tc2FmZWJvdHRvbSkpICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbWluKDEwMCUgLSAycmVtLCA1NWNoKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbSk7XG4gICAgLS1nYXA6IHZhcigtLXNwYWNlLXNtKTtcbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAqOm5vdCg6aXMoLmNreS1hY2NvcmRpb24tY2hldnJvbiwgLmNreS1hY2NvcmRpb24taGVhZGVyLWRlcykpIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuICAqOm5vdChidXR0b24pIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmNreS1jb25zZW50LWJhciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uY2t5LW5vdGljZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tZ2FwKTtcbn1cblxuLmNreS1ub3RpY2UtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tZ2FwKTtcbn1cblxuLmNreS1ub3RpY2UtYnRuLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHZhcigtLWdhcCk7XG59XG5cbi5ja3ktcHJlZmVyZW5jZS1oZWFkZXIge1xuICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XG4gIHRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2Utc20pICFpbXBvcnRhbnQ7XG4gIC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyKSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKSAhaW1wb3J0YW50O1xuICB6LWluZGV4OiA5O1xufVxuXG4uY2t5LXByZWZlcmVuY2Uge1xuICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xufVxuLmNreS1wcmVmZXJlbmNlLWJvZHktd3JhcHBlciB7XG4gIG1heC1oZWlnaHQ6IDYwdmg7XG59XG4uY2t5LXByZWZlcmVuY2Utd3JhcHBlcltkYXRhLWNreS10YWc9XCJkZXRhaWxcIl0ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCkgIWltcG9ydGFudDtcbiAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbiAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXIpICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2Utc20pICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmNreS1hY2NvcmRpb24ge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14cykgIWltcG9ydGFudDtcbiAgXG4gIC5ja3ktYWNjb3JkaW9uLWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXhzKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ja3ktc3dpdGNoIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgbGVmdDogdW5zZXQ7XG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQzKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ja3ktZm9vdGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMDtcbiAgLmNreS1mb290ZXItc2hhZG93IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmNreS1wcmVmcmVuY2UtYnRuLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXhzKSAwICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tZ2FwKTtcbiAgfVxuICBbZGF0YS1ja3ktdGFnPVwiZGV0YWlsLXBvd2VyZWQtYnlcIl0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gcmV2aXNpdCBjb29raWUgcHJlZmVyZW5jZXNcbi5ja3ktYnRuLXJldmlzaXQtd3JhcHBlciB7XG4gIHdpZHRoOiBmaXQtY29udGVudCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJhY2tncm91bmQpICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci10ZXh0KTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UteHMpO1xuICAtLWdhcDogdmFyKC0tc3BhY2UteHMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cbiAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uY2t5LWJ0bi1yZXZpc2l0IHtcbiAgQGluY2x1ZGUgbW9iaWxlb25seSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnQ29va2llIHByZWZlcmVuY2VzJztcbiAgfVxuICBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn0iLCIuc2VjdGlvbl9fY29udGFpbmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCk7XG5cdGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcblxuXHRtYXJnaW46IDAgYXV0bztcblx0d2lkdGg6IDEwMCU7XG5cdG1heC13aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdC0tcGFkZHRvcDogdmFyKC0tc3BhY2UtbGcpO1xuXHQtLXBhZGRib3R0b206IHZhcigtLXNwYWNlLWxnKTtcblx0cGFkZGluZy10b3A6IHZhcigtLXBhZGR0b3ApO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGJvdHRvbSk7XG59XG5cbi5zZWN0aW9uX19pbm5lcmNudHIge1xuXHQmLS1jb250YWluZWQtbGcge1xuXHRcdG1heC13aWR0aDogdmFyKC0tc2l6ZS1sZy1tYXh3aWR0aCk7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblx0Ji0tY29udGFpbmVkLW1kIHtcblx0XHRtYXgtd2lkdGg6IHZhcigtLXNpemUtbWQtbWF4d2lkdGgpO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHR9XG5cdCYtLWNvbnRhaW5lZC1zbSB7XG5cdFx0bWF4LXdpZHRoOiB2YXIoLS1zaXplLXNtLW1heHdpZHRoKTtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0fVxuXHQmLS1jb250YWluZWQteHMge1xuXHRcdG1heC13aWR0aDogdmFyKC0tc2l6ZS14cy1tYXh3aWR0aCk7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblx0Ji0tY29udGFpbmVkLXh4cyB7XG5cdFx0bWF4LXdpZHRoOiB2YXIoLS1zaXplLXh4cy1tYXh3aWR0aCk7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblx0Ji0tY29udGFpbmVkLWZ1bGx3aWR0aCB7XG5cdFx0bWF4LXdpZHRoOiB2YXIoLS1zaXplLWZ1bGx3aWR0aCk7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblxuXHQ6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufVxuXG4uc2VjdGlvbl9faGVhZGVyIHtcblx0JjplbXB0eSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuLnNlY3Rpb25fX21haW4ge1xuXHQmOmVtcHR5IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG4uc2VjdGlvbl9fZm9vdGVyIHtcblx0JjplbXB0eSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cbi5zZWN0aW9uX19jb250YWluZXIge1xuXHRpbWcge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cblxuLy8gcG9saWNpZXNcbi50ZW1wbGF0ZS1wb2xpY3kge1xuXHRtYWluIHtcblx0XHRwYWRkaW5nOiB2YXIoLS1zcGFjZS14bCkgMDtcblx0fVxufVxuLnNob3BpZnktcG9saWN5X19jb250YWluZXIge1xuXHRtYXgtd2lkdGg6IHZhcigtLXNpemUteHMtbWF4d2lkdGgpO1xuXHRtYXJnaW46IDAgYXV0bztcbn1cbi5zaG9waWZ5LXBvbGljeV9fdGl0bGUge1xuXHRoMSB7XG5cdFx0QGluY2x1ZGUgdHlwLWhlYWRpbmcyO1xuXHRcdG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLWxnKTtcblx0fVxufVxuLnNob3BpZnktcG9saWN5X19ib2R5IHtcblx0aDEge1xuXHRcdEBpbmNsdWRlIHR5cC1oZWFkaW5nMztcblx0XHRtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1sZyk7XG5cdH1cbn0iLCIubW9iLW9ubHkge1xuXHRAaW5jbHVkZSB0YWJsZXQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cbi50YWJsZXR1cC1vbmx5IHtcblx0QGluY2x1ZGUgbW9iaWxlb25seSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuLnNtYWxsZGVza3RvcHVwLW9ubHkge1xuXHRkaXNwbGF5OiBub25lO1xuXHRAaW5jbHVkZSBzbWFsbGRlc2t0b3Age1xuXHRcdGRpc3BsYXk6IHVuc2V0O1xuXHR9XG59XG5cbi5tb2JtZW4tb25seSB7XG4gIEBpbmNsdWRlIHRhYmxldG1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi50YWJsZXRtZW51LW9ubHkge1xuICBAaW5jbHVkZSBtb2JpbGVtZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wYWQtdG9wLXplcm8ge1xuXHRwYWRkaW5nLXRvcDogMDtcbn1cblxuLnBhZC1ib3R0b20temVybyB7XG5cdHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4ubWctemVybyB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1nLXRvcC1zbSB7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXNtKTtcbn1cbi5tZy1ib3R0b20tc20ge1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbltjbGFzcyo9J3R4dC0nXSB7XG5cdGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cbltjbGFzcyo9J2JnLSddIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbiRjb2xvcnM6ICgndHJhbnNwYXJlbnQnLCAnd2hpdGUnLCAnd2hpdGUtdGhpcnR5JywgJ3doaXRlLWZpZnR5JywgJ29mZndoaXRlJywgJ2JsYWNrJywgJ2JyYW5kMScsICdicmFuZDInLCAnYnJhbmQzJywgJ2JyYW5kNCcpO1xuXG5AZWFjaCAkY29sb3IgaW4gJGNvbG9ycyB7XG5cdC5iZy0jeyRjb2xvcn0ge1xuXHRcdC0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tY29sb3ItI3skY29sb3J9KTtcblx0fVxuXHQudHh0LSN7JGNvbG9yfSB7XG5cdFx0LS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci0jeyRjb2xvcn0pO1xuXHRcdC8vIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcblx0XHQmLS10YWJsZXQge1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0IHtcblx0XHRcdFx0LS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci0jeyRjb2xvcn0pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuYm9yZGVyLSN7JGNvbG9yfSB7XG5cdFx0LS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLSN7JGNvbG9yfSk7XG5cdH1cbn1cbi50eHQtaW5oZXJpdCB7XG5cdC0tY29sb3ItdGV4dDogY3VycmVudENvbG9yO1xuXHQmLS10YWJsZXQge1xuXHRcdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0XHQtLWNvbG9yLXRleHQ6IGN1cnJlbnRDb2xvcjtcblx0XHR9XG5cdH1cbn1cblxuXG4udy0xMDAge1xuXHR3aWR0aDogMTAwJTtcblx0Ji0tdGFibGV0IHtcblx0XHRAaW5jbHVkZSB0YWJsZXQge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG5cdCYtLXNtYWxsZGVza3RvcCB7XG5cdFx0QGluY2x1ZGUgc21hbGxkZXNrdG9wIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0fVxufVxuLmgtMTAwIHtcblx0aGVpZ2h0OiAxMDAlO1xuXHQmLS10YWJsZXQge1xuXHRcdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0fVxuXHR9XG5cdCYtLXNtYWxsZGVza3RvcCB7XG5cdFx0QGluY2x1ZGUgc21hbGxkZXNrdG9wIHtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cdH1cbn0iXX0= */

@media (min-width: 1600px) {

    .template-blog .section__innercntr--contained-fullwidth,
    .template-article .section__innercntr--contained-fullwidth {
        max-width: 1440px !important;
        margin: 0 auto;
    }
}

.cart-upsell .typ-heading6 {
    display: none !important;
}

.drawer__product-item {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

button.add-to_cart.btn.product-form__submit {
    width: 100%;
    max-width: 105px;
}

/* new css */
.template-product button.thumbnail.nobutton {
    width: 112px;
    height: 112px;
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    background: var(--color-prod-background);
}

.template-product button.thumbnail.nobutton img {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    object-fit: cover;
    object-position: center;
    top: 0;
    background: transparent;
}

.product__thumbnail-list button.thumbnail.nobutton[aria-current=true] {
    border: 1px solid #000;
}

.product__thumbnail-list button.thumbnail.nobutton[aria-current=true] img {
    border-color: transparent;
}

@media(max-width:800px) {
    .template-product .product__media-item {
        width: 296px;
        height: 370px;
        position: relative;
        overflow: hidden;
        border-radius: 15px;
        background: var(--color-prod-background);
    }

    .template-product .product__media-item img {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        right: 0;
        object-fit: cover;
        object-position: bottom;
        top: 0;
        background: transparent;
    }

    .product-form__submission .product-form__quickbuy_price {
        font-size: inherit !important;
    }
}

.product-form__quickbuy_price.strike-through {
    opacity: 0.5;
    text-decoration-line: line-through;
}

/* mega menu css */
.js .header__inline-menu details>.header__submenu,
.header__menu-list details-disclosure details>.header__submenu {
    --submenu-animation-speed: .42s;
    --submenu-animation-easing: cubic-bezier(.22, 1, .36, 1);

    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    padding: 0px 48px 24px;
    margin: 0;
    list-style: none;
    background: #fff;

    opacity: 0;
    visibility: hidden;

    /* KEY CHANGE */
    transform: translateY(0);
    clip-path: inset(0 0 100% 0);
    /* hidden from bottom → reveals from top */

    pointer-events: none;

    will-change: opacity, clip-path;
    transition:
        opacity var(--submenu-animation-speed) var(--submenu-animation-easing),
        clip-path var(--submenu-animation-speed) var(--submenu-animation-easing),
        visibility 0s linear var(--submenu-animation-speed);
        height: auto !important;
}

.header__inline-menu details[open]>.header__submenu,
.header__menu-list details-disclosure details[open]>.header__submenu {
    opacity: 1;
    visibility: visible;

    /* fully revealed */
    clip-path: inset(0 0 0 0);

    pointer-events: auto;

    transition:
        opacity var(--submenu-animation-speed) var(--submenu-animation-easing),
        clip-path var(--submenu-animation-speed) var(--submenu-animation-easing),
        visibility 0s linear 0s;
}

/* closing */
.header__inline-menu details.is-closing>.header__submenu,
.header__menu-list details-disclosure details.is-closing>.header__submenu {
    opacity: 0;
    visibility: visible;

    /* hide downward again */
    clip-path: inset(0 0 100% 0);

    pointer-events: none;
}


.header__inline-menu details[open]>.header__submenu li a {

    font-size: 14px;
    line-height: 17px;

}

.header__inline-menu details[open]>.header__submenu {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.header__menu-list details-disclosure details .header__menu-item {
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 500ms;
    cursor: pointer;
    font-family: var(--font-tertiary);
}

.header__menu-list details-disclosure details .header__menu-item:hover {
    color: var(--color-brand4);
}

@media (min-width:767px) {
  .header__menu-list details-disclosure details .header__menu-item:hover {
    opacity: 1;
  }
}

.header.has-megamenu .header__menu-list details-disclosure details {
    padding: 0;
}

.header__menu-list details-disclosure details .header__menu-item svg {
    transform: rotate(180deg);
    transition: all 100ms;
}

.header__menu-list details-disclosure details[open] .header__menu-item svg{
    transform: rotate(0deg);
}

.header__menu-list details-disclosure details[open] summary svg path {
    fill: var(--color-brand4);
}

.header__menu-list details-disclosure details[open] .header__menu-link span {
    color: var(--color-brand4);
}

.header__menu-list details-disclosure details summary:hover svg path {
    fill: var(--color-brand4);
}

.menu-drawer details .menu-drawer__inner-submenu ul.menu-drawer__menu {
    padding: 8px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.menu-drawer details summary {
    list-style: none;
    /* padding: 0; */
}

.menu-drawer details summary * {
    width: auto !important;
}

/* .menu-drawer details summary span {
    padding-inline: 16px;
}

.menu-drawer details summary svg {
    padding-inline: 16px;
} */

.menu-drawer details summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.menu-drawer details summary svg {
    width: 15px;
}

.menu-drawer details[open] summary svg {
    transform: rotate(0deg);
}

.menu-drawer details summary svg {
    transform: rotate(180deg);
}

/* .header--has-menu .header__menu,.header--has-menu .header__menu ul,.header--has-menu .header__menu ul li,.header--has-menu .header__menu ul li details-disclosure,.header--has-menu .header__menu ul li details-disclosure details {
    height: 100%;
} */

/* .header--has-menu .header__menu ul li,.header--has-menu .header__menu ul li a span {
    display: flex;
    align-items: center;
    height: 100%;
} */

/* .header--has-menu .header__menu ul li,.header--has-menu .header__menu ul li a {
    display: block;
    height: 100%;
} */

/* .header--has-menu .header__menu ul li details-disclosure details summary {
    height: stretch;
} */


.product__info-wrapper .rating-star::before {
  background: linear-gradient(90deg, rgb(37 30 33) var(--percent), rgb(26 26 26 / 15%) var(--percent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.product__info-wrapper .rating {
        font-size: 14px;
}