/** Shopify CDN: Minification failed

Line 5358:0 Unexpected "}"

**/
@charset "UTF-8";
/*!
  Impulse, by Archetype Themes
  http://archetypethemes.co
*/
@media only screen and (min-width:769px) {
    :root {
        --grid-gutter: 22px;
        --drawer-gutter: 30px;
    }
}
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
@keyframes preloading {
    0% {
        opacity: 0;
        transform: scaleX(0);
        transform-origin: 0% 50%;
    }
    40% {
        opacity: 1;
        transform: scaleX(1);
        transform-origin: 0% 50%;
    }
    41% {
        opacity: 1;
        transform: scaleX(1);
        transform-origin: 100% 50%;
    }
    to {
        opacity: 1;
        transform: scaleX(0);
        transform-origin: 100% 50%;
    }
}
@keyframes slideshowBars {
    0% {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(0);
    }
}
@keyframes grid-product__loading {
    0% {
        opacity: 1;
    }
    60% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes shine {
    to {
        left: -200%;
    }
}
@keyframes overlay-on {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0.6;
    }
}
@keyframes overlay-off {
    0% {
        opacity: 0.6;
    }
    to {
        opacity: 0;
    }
}
@keyframes full-overlay-on {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes full-overlay-off {
    0% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
@keyframes modal-open {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes modal-closing {
    0% {
        opacity: 1;
        transform: scale(1);
    }
    to {
        opacity: 0;
        transform: scale(0.9);
    }
}
@keyframes rise-up {
    0% {
        opacity: 1;
        transform: translateY(120%);
    }
    to {
        opacity: 1;
        transform: translateY(0%);
    }
}
@keyframes rise-up-out {
    0% {
        opacity: 1;
        transform: translateY(0%);
    }
    to {
        opacity: 1;
        transform: translateY(-120%);
    }
}
@keyframes fade-in {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes fade-out {
    0% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
@keyframes zoom-fade {
    0% {
        opacity: 0;
        transform: scale(1.3);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}
@keyframes placeholder-shimmer {
    0% {
        background-position: -150% 0;
    }
    to {
        background-position: 150% 0;
    }
}
.flickity-enabled {
    position: relative;
}
.flickity-enabled:focus {
    outline: none;
}
.flickity-viewport {
    height: 100%;
    overflow: hidden;
    position: relative;
    transition: height 0.35s;
}
.flickity-slider {
    height: 100%;
    position: absolute;
    width: 100%;
}
.flickity-enabled.is-draggable {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}
.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move;
    cursor: grab;
}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: grabbing;
}
.flickity-button {
    background: var(--colorBtnPrimary);
    border: none;
    border-radius: 50%;
    color: var(--colorBtnPrimaryText);
    position: absolute;
}
.hero .flickity-button {
    background-color: var(--colorBody);
    box-shadow: 0 5px 5px rgba(0, 0, 0, .1);
    color: var(--colorTextBody);
}
.flickity-button:hover {
    cursor: pointer;
    opacity: 1;
}
.flickity-button:disabled {
    cursor: auto;
    display: none;
    pointer-events: none;
}
.flickity-prev-next-button {
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
}
@media only screen and (max-width:768px) {
    .flickity-prev-next-button {
        height: 33px;
        width: 33px;
    }
}
.flickity-prev-next-button:hover {
    transform: translateY(-50%) scale(1.12);
}
.flickity-prev-next-button:active {
    transform: translateY(-50%) scale(1);
    transition: transform 0.05s ease-out;
}
.flickity-previous {
    left: 10px;
}
.flickity-next {
    right: 10px;
}
.flickity-rtl .flickity-previous {
    left: auto;
    right: 10px;
}
.flickity-rtl .flickity-next {
    left: 10px;
    right: auto;
}
.flickity-button-icon {
    fill: currentColor;
    height: 30%;
    left: 35%;
    position: absolute;
    top: 35%;
    width: 30%;
}
.flickity-page-dots {
    bottom: -25px;
    color: currentColor;
    line-height: 1;
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    text-align: center;
    width: 100%;
}
.hero .flickity-page-dots {
    bottom: 20px;
    color: #fff;
}
.flickity-rtl .flickity-page-dots {
    direction: rtl;
}
.flickity-page-dots .dot {
    background-color: currentColor;
    border-radius: 100%;
    cursor: pointer;
    display: inline-block;
    height: 6px;
    margin: 0 5px;
    opacity: 0.4;
    vertical-align: middle;
    width: 6px;
}
.flickity-page-dots .dot:hover {
    opacity: 0.6;
}
.flickity-page-dots .dot.is-selected {
    background-color: currentColor;
    height: 9px;
    opacity: 1;
    width: 9px;
}
.flickity-enabled.is-fade .flickity-slider>* {
    pointer-events: none;
    z-index: 0;
}
.flickity-enabled.is-fade .flickity-slider>.is-selected {
    pointer-events: auto;
    z-index: 1;
}
.hero[data-arrows=true] {
    overflow: visible;
    z-index: 5;
}
.hero[data-arrows=true] .flickity-prev-next-button {
    bottom: -20px;
    top: auto;
    transform: none;
}
.hero[data-arrows=true] .flickity-prev-next-button:hover {
    transform: scale(1.12);
}
.hero[data-arrows=true] .flickity-prev-next-button:active {
    transform: scale(1);
}
.hero[data-arrows=true] .flickity-previous {
    left: auto;
    right: 90px;
}
.hero[data-arrows=true] .flickity-next {
    right: 40px;
}
.hero.flickity-rtl[data-arrows=true] .flickity-previous {
    left: 90px;
    right: auto;
}
.hero.flickity-rtl[data-arrows=true] .flickity-next {
    left: 40px;
    right: auto;
}
@media only screen and (max-width:768px) {
    .hero[data-arrows=true] .flickity-prev-next-button {
        bottom: -16px;
    }
    .hero[data-arrows=true] .flickity-previous {
        right: 60px;
    }
    .hero[data-arrows=true] .flickity-next {
        right: 20px;
    }
    .hero.flickity-rtl[data-arrows=true] .flickity-previous {
        left: 60px;
    }
    .hero.flickity-rtl[data-arrows=true] .flickity-next {
        left: 20px;
    }
}
.hero[data-bars=true] .flickity-page-dots {
    bottom: 0;
    height: 6px;
    line-height: 6px;
    z-index: 6;
}
[data-bars=true] .flickity-page-dots .dot {
    background: none;
    border: 0;
    border-radius: 0;
    height: 6px;
    opacity: 1;
    overflow: hidden;
    position: relative;
    vertical-align: top;
    width: 120px;
}
@media only screen and (max-width:768px) {
    [data-bars=true] .flickity-page-dots .dot {
        width: 45px;
    }
}
[data-bars=true] .flickity-page-dots .dot:after, [data-bars=true] .flickity-page-dots .dot:before {
    background-color: currentColor;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    width: 100%;
}
[data-bars=true] .flickity-page-dots .dot:before {
    opacity: 0.4;
}
[data-bars=true] .flickity-page-dots .dot:hover:before {
    opacity: 0.6;
}
[data-bars=true] .flickity-page-dots .dot:after {
    transform: translateX(-100%);
    transition: none;
}
[data-bars=true] .flickity-page-dots .dot.is-selected:after {
    animation: slideshowBars 0s linear forwards;
}
.noUi-target, .noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    box-sizing: border-box;
    touch-action: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}
.noUi-target {
    position: relative;
}
.noUi-base, .noUi-connects {
    height: 100%;
    position: relative;
    width: 100%;
    z-index: 1;
}
.noUi-connects {
    overflow: hidden;
    z-index: 0;
}
.noUi-connect, .noUi-origin {
    position: absolute;
    right: 0;
    top: 0;
    transform-origin: 0 0;
    transform-style: flat;
    will-change: transform;
    z-index: 1;
}
.noUi-connect {
    height: 100%;
    width: 100%;
}
.noUi-origin {
    height: 10%;
    width: 10%;
}
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
    left: 0;
    right: auto;
}
.noUi-vertical .noUi-origin {
    width: 0;
}
.noUi-horizontal .noUi-origin {
    height: 0;
}
.noUi-handle {
    backface-visibility: hidden;
    position: absolute;
}
.noUi-touch-area {
    height: 100%;
    width: 100%;
}
.noUi-state-tap .noUi-connect, .noUi-state-tap .noUi-origin {
    transition: transform 0.3s;
}
.noUi-state-drag * {
    cursor: inherit !important;
}
.noUi-horizontal {
    height: 18px;
}
.noUi-horizontal .noUi-handle {
    height: 28px;
    right: -17px;
    top: -6px;
    width: 34px;
}
.noUi-vertical {
    width: 18px;
}
.noUi-vertical .noUi-handle {
    height: 34px;
    right: -6px;
    top: -17px;
    width: 28px;
}
.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
    left: -17px;
    right: auto;
}
.noUi-target {
    background: #fafafa;
    border: 1px solid #d3d3d3;
    border-radius: 4px;
    box-shadow: inset 0 1px 1px #f0f0f0, 0 3px 6px -5px #bbb;
}
.noUi-connects {
    border-radius: 3px;
}
.noUi-connect {
    background: #3fb8af;
}
.noUi-draggable {
    cursor: ew-resize;
}
.noUi-vertical .noUi-draggable {
    cursor: ns-resize;
}
.noUi-handle {
    background: #fff;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb;
    cursor: default;
}
.noUi-active {
    box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ddd, 0 3px 6px -3px #bbb;
}
.noUi-handle:after, .noUi-handle:before {
    background: #e8e7e6;
    content: "";
    display: block;
    height: 14px;
    left: 14px;
    position: absolute;
    top: 6px;
    width: 1px;
}
.noUi-handle:after {
    left: 17px;
}
.noUi-vertical .noUi-handle:after, .noUi-vertical .noUi-handle:before {
    height: 1px;
    left: 6px;
    top: 14px;
    width: 14px;
}
.noUi-vertical .noUi-handle:after {
    top: 17px;
}
[disabled] .noUi-connect {
    background: #b8b8b8;
}
[disabled] .noUi-handle, [disabled].noUi-handle, [disabled].noUi-target {
    cursor: not-allowed;
}
.noUi-pips, .noUi-pips * {
    box-sizing: border-box;
}
.noUi-pips {
    color: #999;
    position: absolute;
}
.noUi-value {
    position: absolute;
    text-align: center;
    white-space: nowrap;
}
.noUi-value-sub {
    color: #ccc;
    font-size: 10px;
}
.noUi-marker {
    background: #ccc;
    position: absolute;
}
.noUi-marker-sub {
    background: #aaa;
}
.noUi-marker-large {
    background: #aaa;
}
.noUi-pips-horizontal {
    height: 80px;
    left: 0;
    padding: 10px 0;
    top: 100%;
    width: 100%;
}
.noUi-value-horizontal {
    transform: translate(-50%, 50%);
}
.noUi-rtl .noUi-value-horizontal {
    transform: translate(50%, 50%);
}
.noUi-marker-horizontal.noUi-marker {
    height: 5px;
    margin-left: -1px;
    width: 2px;
}
.noUi-marker-horizontal.noUi-marker-sub {
    height: 10px;
}
.noUi-marker-horizontal.noUi-marker-large {
    height: 15px;
}
.noUi-pips-vertical {
    height: 100%;
    left: 100%;
    padding: 0 10px;
    top: 0;
}
.noUi-value-vertical {
    padding-left: 25px;
    transform: translateY(-50%);
}
.noUi-rtl .noUi-value-vertical {
    transform: translateY(50%);
}
.noUi-marker-vertical.noUi-marker {
    height: 2px;
    margin-top: -1px;
    width: 5px;
}
.noUi-marker-vertical.noUi-marker-sub {
    width: 10px;
}
.noUi-marker-vertical.noUi-marker-large {
    width: 15px;
}
.noUi-tooltip {
    background: #fff;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    color: #000;
    display: block;
    padding: 5px;
    position: absolute;
    text-align: center;
    white-space: nowrap;
}
.noUi-horizontal .noUi-tooltip {
    bottom: 120%;
    left: 50%;
    transform: translate(-50%);
}
.noUi-vertical .noUi-tooltip {
    right: 120%;
    top: 50%;
    transform: translateY(-50%);
}
.noUi-horizontal .noUi-origin>.noUi-tooltip {
    bottom: 10px;
    left: auto;
    transform: translate(50%);
}
.noUi-vertical .noUi-origin>.noUi-tooltip {
    right: 28px;
    top: auto;
    transform: translateY(-18px);
}
tool-tip {
    display: none;
}
tool-tip[data-tool-tip-open=true] {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10001;
}
tool-tip[data-tool-tip-open=true]:before {
    animation: overlay-on 0.3s forwards;
    background-color: #e0e0e0;
    background-color: var(--colorModalBg);
    content: "";
    cursor: pointer;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}
.tool-tip__inner {
    animation: modal-close 0.3s forwards;
    opacity: 0;
}
tool-tip[data-tool-tip-open=true] .tool-tip__inner {
    animation: modal-open 0.3s forwards;
    background: var(--colorBody);
    box-shadow: 0 10px 20px #00000017;
    display: block;
    max-width: 720px;
    min-height: 250px;
    min-width: 250px;
    padding: 30px;
    position: fixed;
}
@media only screen and (max-width:768px) {
    tool-tip[data-tool-tip-open=true] .tool-tip__inner {
        max-width: 93%;
        width: 100%;
    }
}
.tool-tip__content {
    max-height: 80vh;
    overflow: auto;
}
@media only screen and (max-width:768px) {
    .tool-tip__content {
        font-size: 0.85em;
    }
}
.tool-tip__close {
    position: absolute;
    right: 0;
    top: 0;
}
.tool-tip__close .icon {
    height: 28px;
    width: 28px;
}
.tool-tip-trigger {
    background: none;
    border: 0;
    cursor: pointer;
}
.tool-tip-trigger .icon {
    height: 28px;
    width: 28px;
}
.tool-tip-trigger__title {
    display: inline-block;
}
.tool-tip-trigger__title:focus, .tool-tip-trigger__title:hover {
    -webkit-text-decoration: underline;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.tool-tip-trigger__content {
    display: none !important;
}
.size-chart__standalone {
    margin: var(--sizeChartMargin);
}
.size-chart__standalone svg {
    margin-left: var(--sizeChartIconMargin);
}
.text-with-icons__blocks {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-left: -30px;
    margin-right: -30px;
}
@media only screen and (max-width:768px) {
    .text-with-icons__blocks {
        flex-direction: column;
        margin: 0;
    }
}
.has-1-per-row .text-with-icons__block {
    width: 100%;
}
.has-2-per-row .text-with-icons__block {
    width: 50%;
}
.has-3-per-row .text-with-icons__block {
    width: 33.333%;
}
.has-4-per-row .text-with-icons__block {
    width: 25%;
}
.has-5-per-row .text-with-icons__block {
    width: 20%;
}
.text-with-icons__blocks .text-with-icons__block {
    display: flex;
    flex: none;
    flex-direction: column;
    padding: 30px;
}
@media only screen and (max-width:768px) {
    .text-with-icons__blocks .text-with-icons__block {
        padding: 0 0 60px;
        width: 100%;
    }
}
.text-with-icons__block-icon {
    display: block;
    margin-bottom: 10px;
}
.text-with-icons__block-icon .icon {
    height: 70px;
    width: 70px;
}
@media only screen and (max-width:768px) {
    .text-with-icons__block-icon .icon {
        height: 60px;
        width: 60px;
    }
}
.text-with-icons__button {
    display: flex;
    justify-content: center;
}
newsletter-reminder {
    bottom: 20px;
    box-shadow: 0 12px 25px rgba(0, 0, 0, .15);
    left: 20px;
    max-width: 240px;
    position: fixed;
    transition: opacity 0.3s ease-in-out;
    z-index: 10;
}
@media only screen and (max-width:768px) {
    newsletter-reminder {
        max-width: calc(100% - 40px);
    }
}
newsletter-reminder[data-enabled=false] {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
}
newsletter-reminder[class*=color-scheme-]:not(.color-scheme-none) {
    position: fixed;
}
newsletter-reminder .color-scheme-none {
    background-color: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
}
.newsletter-reminder__message.h3 {
    cursor: pointer;
    margin: 0;
    padding: var(--newsletterReminderPadding);
}
.parallax-image {
    height: 100%;
    overflow: hidden;
    transition: transform 0.05s linear;
}
.countdown-wrapper {
    position: relative;
}
.countdown__background-image-wrapper {
    height: 100%;
    position: absolute;
    width: 100%;
}
.countdown__background-image {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
}
.countdown__mobile-image-wrapper {
    height: 100%;
    position: absolute;
    width: 100%;
}
.countdown__mobile-image {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.countdown-layout--banner .countdown__content {
    padding: 2rem;
}
@media only screen and (min-width:769px) {
    .countdown-layout--banner .countdown__content {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 1rem;
        justify-content: space-around;
        padding: 1.6rem 2rem;
    }
}
.countdown-layout--banner.countdown-blocks--2.page-width .countdown__content {
    justify-content: space-around;
}
.countdown-layout--banner.countdown-blocks--2 .countdown__content {
    justify-content: center;
}
@media only screen and (min-width:769px) {
    .countdown-layout--banner .countdown__block {
        width: 33%;
    }
}
.countdown__content {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: auto;
    justify-content: center;
    max-height: 650px;
    padding: 5rem 2rem;
    text-align: center;
    width: 100%;
}
.page-width .countdown__content {
    position: relative;
}
@media only screen and (min-width:769px) {
    .countdown-layout--hero .countdown__content {
        height: 100vh;
    }
}
.countdown__block {
    margin: 1rem auto;
    width: 100%;
    z-index: 3;
}
.countdown__block--content {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.countdown__block--content .countdown__block--button {
    margin: 0;
    width: 100%;
}
@media only screen and (min-width:769px) {
    .countdown-blocks--2.countdown-layout--banner .countdown__block--content, .countdown-blocks--2.countdown-layout--banner .countdown__block--timer {
        width: 50%;
    }
}
@media only screen and (min-width:769px) {
    .countdown-blocks--2.countdown-layout--banner .countdown__block--button.button-block-active {
        width: 50%;
    }
}
.countdown__text-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
@media only screen and (min-width:769px) {
    .countdown-layout--hero .countdown__text-wrapper {
        width: 50%;
    }
}
.countdown__text-wrapper--content-alignment-left {
    text-align: left;
}
.countdown__text-wrapper--content-alignment-right {
    text-align: right;
}
.countdown__display {
    display: flex;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
}
.countdown__display--loaded {
    opacity: 1;
    transition: opacity 0.3s ease-in;
    visibility: visible;
}
.countdown__display--visible+.countdown__timer-message--visible {
    margin-top: 1.5rem;
}
.countdown__display--hidden {
    height: 0;
    margin: 0;
    opacity: 0;
    transition: opacity 3s ease-out;
    visibility: hidden;
    width: 0;
}
.countdown__display-block {
    align-content: center;
    border-right: 1px solid;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    padding: 0 1rem;
}
.countdown__display-block h2 {
    margin-bottom: 16px;
}
@media only screen and (min-width:769px) {
    .countdown__display-block h2 {
        margin-bottom: 4px;
    }
}
.countdown__display-block span {
    font-size: 0.6rem;
    letter-spacing: 1.7px;
}
@media only screen and (min-width:769px) {
    .countdown__display-block span {
        font-size: 0.75rem;
    }
}
.countdown__display-block:last-child {
    border-right: none;
}
[dir=rtl] .countdown__display-block:last-child {
    border-right: 1px solid;
}
[dir=rtl] .countdown__display-block:first-child {
    border-right: none;
}
.countdown__timer-message {
    height: 0;
    margin: 0;
    opacity: 0;
    visibility: hidden;
}
.countdown__timer-message--visible {
    height: auto;
    opacity: 1;
    transition: opacity 1s ease-in;
    visibility: visible;
}
.countdown__block--hidden {
    width: 0 !important;
}
.countdown__block--hidden {
    margin: 0;
    opacity: 0;
    transition: opacity 1s ease-out;
    visibility: hidden;
}
.countdown__overlay:after {
    background-color: var(--countdown-overlay-rgba);
    bottom: 0;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 2;
}
@media only screen and (max-width:768px) {
    .hotspots-section .index-section {
        margin-bottom: 10px;
    }
}
.hotspots-section .hotspots-wrapper {
    display: flex;
    flex-wrap: wrap;
}
.hotspots-section .hotspots-wrapper.is-reverse {
    flex-direction: row-reverse;
}
.hotspots__title {
    padding-top: 1.5rem;
    width: 100%;
}
.hotspots {
    position: relative;
    width: 70%;
}
@media only screen and (max-width:768px) {
    .hotspots {
        width: 100%;
    }
}
.hotspots .grid__image-ratio img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 1;
    position: absolute;
    top: 0;
    width: 100%;
}
[data-animate_images=true] .hotspots .grid__image-ratio img {
    opacity: 1;
}
.hotspots__buttons {
    background-color: transparent;
    border: 0;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.hotspot__button {
    border-radius: 50%;
    line-height: 0;
    padding: 10px;
    position: absolute;
    transform: translate(-50%, -50%);
}
@media only screen and (max-width:768px) {
    .hotspot__button {
        padding: 6px;
    }
}
.hotspot__button:hover .hotspot__button-content {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
}
.hotspot__button-content {
    background-color: var(--colorBody);
    border-radius: 5px;
    box-shadow: 3px 3px 10px 3px rgba(0, 0, 0, .2);
    color: var(--colorTextBody);
    left: 50%;
    min-width: 5rem;
    opacity: 0;
    padding: 1rem;
    pointer-events: none;
    position: absolute;
    top: calc(100% + 1rem);
    transform: translateX(-50%);
    transition: opacity 0.3s ease-in-out;
    visibility: hidden;
}
.hotspot__button-content p, .hotspot__button-content span {
    margin-bottom: 0;
    white-space: nowrap
}
.hotspot__button-content:before {
    border-color: transparent transparent var(--colorBody) transparent;
    border-style: solid;
    border-width: 0 5px 10px 5px;
    content: "";
    height: 0;
    left: 50%;
    position: absolute;
    top: -10px;
    transform: translateX(-50%);
    width: 0;
}
.hotspot__button-content .content__prices {
    display: flex;
    flex-wrap: nowrap;
}
.hotspots__content {
    align-items: center;
    display: flex;
    padding: 24px;
    width: 30%;
}
.page-width .hotspots__content {
    padding-left: 40px;
    padding-right: 0;
}
@media only screen and (max-width:768px) {
    .page-width .hotspots__content {
        padding-left: 0;
    }
}
.page-width.is-reverse .hotspots__content {
    padding-left: 0;
    padding-right: 40px;
}
@media only screen and (max-width:768px) {
    .page-width.is-reverse .hotspots__content {
        padding-right: 20px;
    }
}
@media only screen and (max-width:768px) {
    .hotspots__content {
        padding: 1rem 20px 0;
        width: 100%;
    }
}
.hotspot-content__block {
    animation: fade-in .5s ease 0s forwards;
    display: none;
    max-height: 0;
    position: sticky;
    top: 0;
    width: 100%;
}
.modal-closing .hotspot-content__block, .modal-open .hotspot-content__block {
    animation: none;
    position: static;
}
@media only screen and (max-width:768px) {
    .hotspot-content__block {
        align-items: center;
        padding-top: 0;
        position: relative;
    }
}
.hotspot-content__block.is-active {
    display: block;
    max-height: none;
}
.hotspot-content__block .grid-product__image-wrap {
    margin: 0;
}
.hotspot-content__block .grid__item {
    display: block;
    float: none;
    padding: 0;
}
.hotspot-content__block .grid-product__tags {
    margin-left: 0;
}
@media only screen and (max-width:768px) {
    .hotspot-content__block .grid-product__tag {
        left: 0;
        right: auto;
    }
}
.hotspot-content__block .grid-item__meta, .hotspot-content__block .grid-product__meta {
    padding-top: 10px;
}
@media only screen and (max-width:768px) {
    .hotspot-content__block .grid-item__meta, .hotspot-content__block .grid-product__meta {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: center;
        padding-left: 10px;
        padding-top: 0;
        text-align: left;
    }
    .hotspot-content__block .grid-item__meta .grid-item__meta-main, .hotspot-content__block .grid-item__meta .grid-item__meta-secondary, .hotspot-content__block .grid-product__meta .grid-item__meta-main, .hotspot-content__block .grid-product__meta .grid-item__meta-secondary {
        flex: none;
        width: 100%;
    }
}
@media only screen and (max-width:768px) {
    .hotspot-content__block .grid-product {
        padding-left: 0;
        padding-right: 0;
    }
    .hotspot-content__block .quick-add-btn {
        display: none;
    }
    .hotspot-content__block .grid__item-image-wrapper {
        display: flex;
    }
    .hotspot-content__block .grid__item-image-wrapper .grid-product__image-mask {
        flex: 0 0 30%;
    }
    .hotspot-content__block .grid-item__link, .hotspot-content__block .grid-product__link {
        display: flex;
        flex-wrap: nowrap;
    }
    [data-grid-style=grey-round] .hotspot-content__block .grid-item__link {
        border-radius: 10px 0 0 10px;
    }
    [data-grid-style=white-round] .hotspot-content__block .grid-item__link {
        border-radius: 10px 0 0 10px;
    }
    .hotspot-content__block .grid-product__image-mask, .hotspot-content__block .grid-product__image-wrap, .hotspot-content__block .product-slider {
        width: 30%;
    }
    .hotspot-content__block .grid-product__actions {
        left: 10px;
        right: auto;
        top: 10px;
    }
}
.hotspot-content__block .modal .grid__item {
    float: left;
}
image-compare {
    background: #222;
    display: block;
    overflow: hidden;
    position: relative;
    width: 100%;
}
.comparison__draggable {
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 50%;
    z-index: 2;
}
.comparison__image {
    animation: none;
    display: block;
    height: 100%;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%;
}
.comparison__image-wrapper {
    height: 100%;
    width: 100%;
}
.comparison__button {
    align-items: center;
    border: 0;
    border: 3px solid #fff;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    flex-wrap: nowrap;
    height: 64px;
    justify-content: center;
    left: 50%;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translate(-32px, -50%);
    width: 64px;
    z-index: 3;
}
.comparison--style-minimal .comparison__button {
    background: transparent;
    border: 0;
    transform: translate(-56px, -50%);
    width: 112px;
}
.comparison--style-minimal .comparison__button svg {
    margin: 0 20px;
}
@supports (-webkit-touch-callout:none) {
    .comparison--style-minimal .comparison__button svg {
        position: absolute;
    }
    .comparison--style-minimal .comparison__button svg.icon-chevron-left {
        left: 2px;
        width: 9px;
    }
    .comparison--style-minimal .comparison__button svg.icon-chevron-right {
        right: 2px;
        width: 9px;
    }
}
@media only screen and (max-width:768px) {
    .comparison--style-classic .comparison__button {
        height: 48px;
        transform: translate(-24px, -50%);
        width: 48px;
    }
}
.comparison__button svg {
    height: auto;
    margin: 0 5px;
    pointer-events: none;
    width: 12px;
}
.comparison__button:before {
    background-color: #fff !important;
}
.comparison__button:before {
    content: "";
    position: absolute;
    width: 2px;
}
.comparison__button:after {
    background-color: #fff !important;
}
.comparison__button:after {
    bottom: 0;
    content: "";
    height: 50%;
    left: 50%;
    position: absolute;
    transform: translate(-50%);
    width: 2px;
}
.age-verification-popup .rte {
    margin-bottom: 20px;
    margin-top: 20px;
}
@media only screen and (min-width:769px) {
    .age-verification-popup .rte {
        margin-bottom: 30px;
    }
}
.age-verification-popup .age-verification-popup__btns-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}
.age-verification-popup__background-image-wrapper {
    height: 100%;
    overflow: hidden;
    position: absolute;
    width: 100%;
}
.age-verification-popup__background-image {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.age-verification-popup__content--active {
    opacity: 1;
    transition: opacity 1.5s ease-in;
}
.age-verification-popup__content--inactive, .age-verification-popup__content--inactive *, .age-verification-popup__content--inactive .btn {
    border: 0;
    font-size: 0;
    height: 0;
    line-height: 0;
    margin: 0;
    opacity: 0;
    padding: 0;
    position: absolute;
    visibility: hidden;
    width: 0;
}
.age-verification-popup__decline-content--inactive, .age-verification-popup__decline-content--inactive *, .age-verification-popup__decline-content--inactive .btn {
    border: 0;
    font-size: 0;
    height: 0;
    line-height: 0;
    margin: 0;
    opacity: 0;
    padding: 0;
    position: absolute;
    visibility: hidden;
    width: 0;
}
.age-verification-popup__decline-content--active {
    opacity: 1;
    transition: opacity 1.5s ease-in;
}
.age-verification-popup__content-wrapper {
    margin: 0 auto;
    max-width: 520px;
    text-align: center;
}
product-recommendations[data-intent=complementary] {
    display: block;
    overflow: hidden;
}
product-recommendations[data-intent=complementary] .product-recommendations__title {
    margin-bottom: 20px;
    margin-top: 40px;
    max-width: 72%;
    text-align: left;
    width: 100%;
}
product-recommendations[data-intent=complementary] .grid {
    margin-left: 0;
}
product-recommendations[data-intent=complementary] .grid-item, product-recommendations[data-intent=complementary] .grid__item {
    margin-bottom: 1rem;
    padding-bottom: 8px;
    padding-left: 0;
}
@media only screen and (max-width:768px) {
    product-recommendations[data-intent=complementary] .grid-item, product-recommendations[data-intent=complementary] .grid__item {
        margin-left: 0 !important;
    }
    product-recommendations[data-intent=complementary] .grid-item, product-recommendations[data-intent=complementary] .grid__item {
        flex: 0 0 100%;
    }
}
product-recommendations[data-intent=complementary] .grid-product__image-wrap {
    min-width: 90px;
}
product-recommendations[data-intent=complementary] .grid__image-ratio {
    background-color: transparent;
}
product-recommendations[data-intent=complementary] img.image-style--circle {
    border-radius: 50%;
    bottom: 0;
    height: 85%;
    left: 0;
    margin: auto;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    right: 0;
    top: 0;
    width: 85%;
}
product-recommendations[data-intent=complementary] .grid__item-image-wrapper .grid-product__link {
    display: block;
    width: 100%;
}
product-recommendations[data-intent=complementary] .grid-item__link, product-recommendations[data-intent=complementary] .grid-product__link, product-recommendations[data-intent=complementary] .grid__item-image-wrapper {
    align-items: center;
    display: flex;
}
product-recommendations[data-intent=complementary] .grid-item__link .grid-product__image-mask, product-recommendations[data-intent=complementary] .grid-item__link .grid-product__image-wrap, product-recommendations[data-intent=complementary] .grid-item__link .image-wrap, product-recommendations[data-intent=complementary] .grid-product__link .grid-product__image-mask, product-recommendations[data-intent=complementary] .grid-product__link .grid-product__image-wrap, product-recommendations[data-intent=complementary] .grid-product__link .image-wrap, product-recommendations[data-intent=complementary] .grid__item-image-wrapper .grid-product__image-mask, product-recommendations[data-intent=complementary] .grid__item-image-wrapper .grid-product__image-wrap, product-recommendations[data-intent=complementary] .grid__item-image-wrapper .image-wrap {
    margin: 0;
    width: 112px;
}
product-recommendations[data-intent=complementary] .grid-item__link .grid-product__meta, product-recommendations[data-intent=complementary] .grid-product__link .grid-product__meta, product-recommendations[data-intent=complementary] .grid__item-image-wrapper .grid-product__meta {
    margin-left: 48px;
    text-align: left;
    width: calc(100% - 112px);
}
product-recommendations[data-intent=complementary] .grid-product__actions {
    right: 0;
    top: 0;
}
product-recommendations[data-intent=complementary] .grid-product__tag {
    bottom: 0;
    left: 0;
    right: auto;
    top: auto;
}
product-recommendations[data-intent=complementary] .flickity-viewport {
    width: 100%;
}
product-recommendations[data-intent=complementary] .flickity-previous {
    left: auto;
    right: 50px;
    top: -32px;
}
@media only screen and (max-width:768px) {
    product-recommendations[data-intent=complementary] .flickity-previous {
        right: 45px;
    }
}
product-recommendations[data-intent=complementary] .flickity-next {
    right: 0;
    top: -32px;
}
product-recommendations[data-intent=complementary] .flickity-page-dots {
    bottom: auto;
    right: 0;
    top: -41px;
    width: auto;
}
product-recommendations[data-intent=complementary] .flickity-button:disabled {
    display: block;
    opacity: 0.35;
}
.product-recommendations__slide {
    display: block;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%;
}
@media only screen and (max-width:768px) {
    .product-recommendations__slide {
        display: flex;
        flex-wrap: wrap;
    }
}
.product-recommendations__slide .grid__item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
}
.product-recommendations--title-missing {
    margin-top: 80px;
}
.countdown__background-image-wrapper image-element, .fading-images__item-wrapper image-element, .grid__image-ratio image-element, .image-wrap:not(.image-wrap__thumbnail) image-element, .social-section__image-wrapper image-element, .svg-mask image-element {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
img {
    border: 0 none;
    display: block;
    height: auto;
    max-width: 100%;
}
.image-element {
    opacity: 0;
}
.image-element[loading=eager] {
    opacity: 1;
}
.template-giftcard .image-element {
    opacity: 1;
}
[data-animate_images=false] .image-element {
    opacity: 1;
}
[data-media-gallery-layout=stacked] .image-element {
    opacity: 1;
}
.aos-animate[data-aos=image-fade-in] .image-element {
    animation: fade-in 0.5s cubic-bezier(0.29, 0.65, 0.58, 1) forwards;
}
.aos-animate[data-aos=image-fade-in] .image-element.loader-logo__img {
    animation: pulse-fade 0.4s linear infinite;
}
[data-animate_images=false] .aos-animate[data-aos=image-fade-in] .image-element {
    animation: none;
}
[data-media-gallery-layout=stacked] .aos-animate[data-aos=image-fade-in] .image-element {
    animation: none;
}
.aos-animate[data-aos=image-fade-in] .image-element.scheme-image {
    animation: none;
}
.aos-animate[data-aos=image-fade-in] .image-element.hero__image {
    animation: none;
}
.no-js .image-element {
    opacity: 1;
}
.image-wrap img {
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.rte div[style*="text-align: center"] img, .rte p[style*="text-align: center"] img {
    margin-left: auto;
    margin-right: auto;
}
.svg-mask {
    background: transparent !important;
    background-color: transparent !important;
    padding-bottom: 100% !important;
    position: relative !important;
}
.svg-mask .grid__image-ratio {
    background: transparent !important;
    background-color: transparent !important;
}
.svg-mask img, .svg-mask svg:not(.icon), .svg-mask video {
    height: 100% !important;
    -o-object-fit: cover !important;
    object-fit: cover !important;
    position: absolute !important;
}
.svg-mask img, .svg-mask svg:not(.icon), .svg-mask video {
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}
.svg-mask--landscape {
    padding-bottom: 56.25% !important;
}
.svg-mask--portrait {
    padding-bottom: 150% !important;
}
.svg-mask--square {
    padding-bottom: 100% !important;
}
.svg-mask--rounded-top img, .svg-mask--rounded-top svg:not(.icon), .svg-mask--rounded-top video {
    border-top-left-radius: 50%;
    border-top-right-radius: 50%;
}
.svg-mask--rounded img, .svg-mask--rounded svg:not(.icon), .svg-mask--rounded video {
    border-radius: 50%;
}
.svg-mask--star img, .svg-mask--star svg:not(.icon), .svg-mask--star video {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjg0IiBoZWlnaHQ9IjEyNTEiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGQ9Im02NDIgMCAxNzcuMDA3IDI5MC40NDEgMzM3LjQ0My00Mi42OTctMTE2LjcyIDMxOS40NzYgMjQzLjc3IDIzNy4xOTktMzIyLjU0NCAxMDcuOTQtMzMuNDYxIDMzOC40ODFMNjQyIDEwNjUuOTZsLTI4NS40OTYgMTg0Ljg4LTMzLjQ2LTMzOC40ODFMLjQ5NyA4MDQuNDE5IDI0NC4yNjggNTY3LjIyIDEyNy41NTUgMjQ3Ljc0NGwzMzcuNDM4IDQyLjY5N0w2NDIgMFoiLz48L3N2Zz4=");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjg0IiBoZWlnaHQ9IjEyNTEiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGQ9Im02NDIgMCAxNzcuMDA3IDI5MC40NDEgMzM3LjQ0My00Mi42OTctMTE2LjcyIDMxOS40NzYgMjQzLjc3IDIzNy4xOTktMzIyLjU0NCAxMDcuOTQtMzMuNDYxIDMzOC40ODFMNjQyIDEwNjUuOTZsLTI4NS40OTYgMTg0Ljg4LTMzLjQ2LTMzOC40ODFMLjQ5NyA4MDQuNDE5IDI0NC4yNjggNTY3LjIyIDEyNy41NTUgMjQ3Ljc0NGwzMzcuNDM4IDQyLjY5N0w2NDIgMFoiLz48L3N2Zz4=");
}
.svg-mask--rounded-wave img, .svg-mask--rounded-wave svg:not(.icon), .svg-mask--rounded-wave video {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDY2IiBoZWlnaHQ9IjEwNjYiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGQ9Ik00OTIuNTA5IDMxLjgzYzEwLjU0NS00Mi4xNDUgNzAuNDM3LTQyLjE0NSA4MC45ODIgMCA4LjkzMyAzNS43MDEgNTYuMzQyIDQzLjIxIDc1Ljg3IDEyLjAxNkM2NzIuNDEzIDcuMDIzIDcyOS4zNzQgMjUuNTMgNzI2LjM4IDY4Ljg3Yy0yLjUzNyAzNi43MTUgNDAuMjMxIDU4LjUwNiA2OC40NDMgMzQuODczIDMzLjMwMi0yNy44OTcgODEuNzU3IDcuMzA3IDY1LjUxNiA0Ny42LTEzLjc1OCAzNC4xMzQgMjAuMTgzIDY4LjA3NSA1NC4zMTcgNTQuMzE3IDQwLjI5My0xNi4yNDEgNzUuNDk3IDMyLjIxNCA0Ny42IDY1LjUxNi0yMy42MzMgMjguMjEyLTEuODQyIDcwLjk4IDM0Ljg3MyA2OC40NDMgNDMuMzQxLTIuOTk0IDYxLjg1MSA1My45NjcgMjUuMDIxIDc3LjAxOS0zMS4xOSAxOS41MjgtMjMuNjgxIDY2LjkzNyAxMi4wMiA3NS44NyA0Mi4xNCAxMC41NDUgNDIuMTQgNzAuNDM3IDAgODAuOTgyLTM1LjcwMSA4LjkzMy00My4yMSA1Ni4zNDItMTIuMDIgNzUuODcgMzYuODMgMjMuMDUyIDE4LjMyIDgwLjAxMy0yNS4wMjEgNzcuMDE5LTM2LjcxNS0yLjUzNy01OC41MDYgNDAuMjMxLTM0Ljg3MyA2OC40NDMgMjcuODk3IDMzLjMwMi03LjMwNyA4MS43NTctNDcuNiA2NS41MTYtMzQuMTM0LTEzLjc1OC02OC4wNzUgMjAuMTgzLTU0LjMxNyA1NC4zMTcgMTYuMjQxIDQwLjI5My0zMi4yMTQgNzUuNDk3LTY1LjUxNiA0Ny42LTI4LjIxMi0yMy42MzMtNzAuOTgtMS44NDItNjguNDQzIDM0Ljg3MyAyLjk5NCA0My4zNDEtNTMuOTY3IDYxLjg1MS03Ny4wMTkgMjUuMDIxLTE5LjUyOC0zMS4xOS02Ni45MzctMjMuNjgxLTc1Ljg3IDEyLjAyLTEwLjU0NSA0Mi4xNC03MC40MzcgNDIuMTQtODAuOTgyIDAtOC45MzMtMzUuNzAxLTU2LjM0Mi00My4yMS03NS44Ny0xMi4wMi0yMy4wNTIgMzYuODMtODAuMDEzIDE4LjMyLTc3LjAxOS0yNS4wMjEgMi41MzctMzYuNzE1LTQwLjIzMS01OC41MDYtNjguNDQzLTM0Ljg3My0zMy4zMDIgMjcuODk3LTgxLjc1Ny03LjMwNy02NS41MTYtNDcuNiAxMy43NTgtMzQuMTM0LTIwLjE4My02OC4wNzUtNTQuMzE3LTU0LjMxNy00MC4yOTMgMTYuMjQxLTc1LjQ5Ny0zMi4yMTQtNDcuNi02NS41MTYgMjMuNjMzLTI4LjIxMiAxLjg0Mi03MC45OC0zNC44NzMtNjguNDQzLTQzLjM0IDIuOTk0LTYxLjg0OC01My45NjctMjUuMDI1LTc3LjAxOSAzMS4xOTQtMTkuNTI4IDIzLjY4NS02Ni45MzctMTIuMDE3LTc1Ljg3LTQyLjE0NC0xMC41NDUtNDIuMTQ0LTcwLjQzNyAwLTgwLjk4MiAzNS43MDItOC45MzMgNDMuMjEtNTYuMzQyIDEyLjAxNy03NS44N0M3LjAyMyAzOTMuNTg3IDI1LjUzIDMzNi42MjYgNjguODcgMzM5LjYyYzM2LjcxNSAyLjUzNyA1OC41MDYtNDAuMjMxIDM0Ljg3My02OC40NDMtMjcuODk3LTMzLjMwMiA3LjMwNy04MS43NTcgNDcuNi02NS41MTYgMzQuMTM0IDEzLjc1OCA2OC4wNzUtMjAuMTgzIDU0LjMxNy01NC4zMTctMTYuMjQxLTQwLjI5MyAzMi4yMTQtNzUuNDk3IDY1LjUxNi00Ny42IDI4LjIxMiAyMy42MzMgNzAuOTggMS44NDIgNjguNDQzLTM0Ljg3My0yLjk5NC00My4zNCA1My45NjctNjEuODQ4IDc3LjAxOS0yNS4wMjUgMTkuNTI4IDMxLjE5NCA2Ni45MzcgMjMuNjg1IDc1Ljg3LTEyLjAxN1oiLz48L3N2Zz4=");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDY2IiBoZWlnaHQ9IjEwNjYiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGQ9Ik00OTIuNTA5IDMxLjgzYzEwLjU0NS00Mi4xNDUgNzAuNDM3LTQyLjE0NSA4MC45ODIgMCA4LjkzMyAzNS43MDEgNTYuMzQyIDQzLjIxIDc1Ljg3IDEyLjAxNkM2NzIuNDEzIDcuMDIzIDcyOS4zNzQgMjUuNTMgNzI2LjM4IDY4Ljg3Yy0yLjUzNyAzNi43MTUgNDAuMjMxIDU4LjUwNiA2OC40NDMgMzQuODczIDMzLjMwMi0yNy44OTcgODEuNzU3IDcuMzA3IDY1LjUxNiA0Ny42LTEzLjc1OCAzNC4xMzQgMjAuMTgzIDY4LjA3NSA1NC4zMTcgNTQuMzE3IDQwLjI5My0xNi4yNDEgNzUuNDk3IDMyLjIxNCA0Ny42IDY1LjUxNi0yMy42MzMgMjguMjEyLTEuODQyIDcwLjk4IDM0Ljg3MyA2OC40NDMgNDMuMzQxLTIuOTk0IDYxLjg1MSA1My45NjcgMjUuMDIxIDc3LjAxOS0zMS4xOSAxOS41MjgtMjMuNjgxIDY2LjkzNyAxMi4wMiA3NS44NyA0Mi4xNCAxMC41NDUgNDIuMTQgNzAuNDM3IDAgODAuOTgyLTM1LjcwMSA4LjkzMy00My4yMSA1Ni4zNDItMTIuMDIgNzUuODcgMzYuODMgMjMuMDUyIDE4LjMyIDgwLjAxMy0yNS4wMjEgNzcuMDE5LTM2LjcxNS0yLjUzNy01OC41MDYgNDAuMjMxLTM0Ljg3MyA2OC40NDMgMjcuODk3IDMzLjMwMi03LjMwNyA4MS43NTctNDcuNiA2NS41MTYtMzQuMTM0LTEzLjc1OC02OC4wNzUgMjAuMTgzLTU0LjMxNyA1NC4zMTcgMTYuMjQxIDQwLjI5My0zMi4yMTQgNzUuNDk3LTY1LjUxNiA0Ny42LTI4LjIxMi0yMy42MzMtNzAuOTgtMS44NDItNjguNDQzIDM0Ljg3MyAyLjk5NCA0My4zNDEtNTMuOTY3IDYxLjg1MS03Ny4wMTkgMjUuMDIxLTE5LjUyOC0zMS4xOS02Ni45MzctMjMuNjgxLTc1Ljg3IDEyLjAyLTEwLjU0NSA0Mi4xNC03MC40MzcgNDIuMTQtODAuOTgyIDAtOC45MzMtMzUuNzAxLTU2LjM0Mi00My4yMS03NS44Ny0xMi4wMi0yMy4wNTIgMzYuODMtODAuMDEzIDE4LjMyLTc3LjAxOS0yNS4wMjEgMi41MzctMzYuNzE1LTQwLjIzMS01OC41MDYtNjguNDQzLTM0Ljg3My0zMy4zMDIgMjcuODk3LTgxLjc1Ny03LjMwNy02NS41MTYtNDcuNiAxMy43NTgtMzQuMTM0LTIwLjE4My02OC4wNzUtNTQuMzE3LTU0LjMxNy00MC4yOTMgMTYuMjQxLTc1LjQ5Ny0zMi4yMTQtNDcuNi02NS41MTYgMjMuNjMzLTI4LjIxMiAxLjg0Mi03MC45OC0zNC44NzMtNjguNDQzLTQzLjM0IDIuOTk0LTYxLjg0OC01My45NjctMjUuMDI1LTc3LjAxOSAzMS4xOTQtMTkuNTI4IDIzLjY4NS02Ni45MzctMTIuMDE3LTc1Ljg3LTQyLjE0NC0xMC41NDUtNDIuMTQ0LTcwLjQzNyAwLTgwLjk4MiAzNS43MDItOC45MzMgNDMuMjEtNTYuMzQyIDEyLjAxNy03NS44N0M3LjAyMyAzOTMuNTg3IDI1LjUzIDMzNi42MjYgNjguODcgMzM5LjYyYzM2LjcxNSAyLjUzNyA1OC41MDYtNDAuMjMxIDM0Ljg3My02OC40NDMtMjcuODk3LTMzLjMwMiA3LjMwNy04MS43NTcgNDcuNi02NS41MTYgMzQuMTM0IDEzLjc1OCA2OC4wNzUtMjAuMTgzIDU0LjMxNy01NC4zMTctMTYuMjQxLTQwLjI5MyAzMi4yMTQtNzUuNDk3IDY1LjUxNi00Ny42IDI4LjIxMiAyMy42MzMgNzAuOTggMS44NDIgNjguNDQzLTM0Ljg3My0yLjk5NC00My4zNCA1My45NjctNjEuODQ4IDc3LjAxOS0yNS4wMjUgMTkuNTI4IDMxLjE5NCA2Ni45MzcgMjMuNjg1IDc1Ljg3LTEyLjAxN1oiLz48L3N2Zz4=");
}
.svg-mask--splat-1 img, .svg-mask--splat-1 svg:not(.icon), .svg-mask--splat-1 video {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDQ4IiBoZWlnaHQ9IjEwNTIiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTU3MC45MDUgMTUyLjM0OEM2ODguNDQxIDE0MC4zMyA3NzEuMTg3LTI3LjkxNSA4ODQuOTQxIDQuMDI2IDk4Ny45OTcgMzIuOTYyIDEwMDYuMjMgMTc4LjE4OCAxMDMyLjYgMjgxLjk4NWMyMy4xNiA5MS4xNjkgMTkuNjUgMTg2LjE0OS02Ljg0IDI3Ni40MDMtMjQuMDYgODEuOTQ4LTg1LjQ2MiAxNDIuMTUxLTEzNi4yMDggMjEwLjgzMS01NS41MyA3NS4xNTYtOTQuMjUyIDE2NS4yNDEtMTc1LjYwMiAyMTEuMTc4LTkxLjYzMiA1MS43NDMtMjAzLjg0MiA5My4xMDMtMzAzLjUxNCA1OS4zNzMtOTkuMjUtMzMuNTktMTM0LjUwOS0xNTIuMzY1LTIwMy43NTktMjMxLjAzMy02OS45NzQtNzkuNDg5LTE5Mi4wMjMtMTI4Ljc1OS0yMDUuNDUzLTIzMy44My0xMy40MzktMTA1LjE0NCA4Ny4wNjYtMTg2LjQ3NCAxMzkuOTk3LTI3OC4yOTUgNDcuMzk1LTgyLjIxOCA2NC40MjItMjAyLjEzIDE1NC4zNTQtMjMyLjMyNCA5My4yMzQtMzEuMzAzIDE3Ny40OTYgOTguMDYzIDI3NS4zMyA4OC4wNloiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDQ4IiBoZWlnaHQ9IjEwNTIiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTU3MC45MDUgMTUyLjM0OEM2ODguNDQxIDE0MC4zMyA3NzEuMTg3LTI3LjkxNSA4ODQuOTQxIDQuMDI2IDk4Ny45OTcgMzIuOTYyIDEwMDYuMjMgMTc4LjE4OCAxMDMyLjYgMjgxLjk4NWMyMy4xNiA5MS4xNjkgMTkuNjUgMTg2LjE0OS02Ljg0IDI3Ni40MDMtMjQuMDYgODEuOTQ4LTg1LjQ2MiAxNDIuMTUxLTEzNi4yMDggMjEwLjgzMS01NS41MyA3NS4xNTYtOTQuMjUyIDE2NS4yNDEtMTc1LjYwMiAyMTEuMTc4LTkxLjYzMiA1MS43NDMtMjAzLjg0MiA5My4xMDMtMzAzLjUxNCA1OS4zNzMtOTkuMjUtMzMuNTktMTM0LjUwOS0xNTIuMzY1LTIwMy43NTktMjMxLjAzMy02OS45NzQtNzkuNDg5LTE5Mi4wMjMtMTI4Ljc1OS0yMDUuNDUzLTIzMy44My0xMy40MzktMTA1LjE0NCA4Ny4wNjYtMTg2LjQ3NCAxMzkuOTk3LTI3OC4yOTUgNDcuMzk1LTgyLjIxOCA2NC40MjItMjAyLjEzIDE1NC4zNTQtMjMyLjMyNCA5My4yMzQtMzEuMzAzIDE3Ny40OTYgOTguMDYzIDI3NS4zMyA4OC4wNloiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==");
}
.svg-mask--splat-2 img, .svg-mask--splat-2 svg:not(.icon), .svg-mask--splat-2 video {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5NzciIGhlaWdodD0iODk2IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjYTQ5NWZiIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05NzUuNjg0IDM4MS44MzJjMTcuMjYzIDk1LjAzMy0xNDAuMjE0IDEyOS4yMzEtMTg3LjE3NyAyMTMuNjY2LTUyLjEzOCA5My43MzcgOC41MTUgMjg4LjA5NS05OC4yNTMgMjk5LjUwMy0xMjcuMTc1IDEzLjU4Ny0xMzguMDQ5LTExNS4zNjItMjYzLTE0Mi42My0xMDkuNTg1LTIzLjkxNC0yMjQuNTM1IDkxLjg5NC0zMDguNzE1IDE3Ljg2NC04NC41NDMtNzQuMzQ4IDExOC42ODgtMjA3LjM3MyA5My44MjktMzE3LjA5NEMxOTAuMjE5IDM1NS4zODEgOC4xNzEgMzQ4LjI2My4yOTcgMjQ4LjM0MS02LjU3IDE2MS4yMjMgMTA3LjMxOCAxMTIuMTY0IDE4MS44OTMgNjYuNDRjNjYuMTYzLTQwLjU2NyAxNDIuNTMxLTc2LjcwNSAyMTkuMDgyLTYzLjc3IDcxLjM4MyAxMi4wNjIgMTQwLjQ4NiA2Mi43NzMgMTY4Ljg1MiAxMjkuMzIgOS45MjkgMjMuMjkzIDI1LjgzOSA1NC41MjggNjkuOTIgNzguNTE3IDkxLjg1OSA0OS45OSAzMDQuODE2IDAgMzM1LjkzNyAxNzEuMzI1eiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5NzciIGhlaWdodD0iODk2IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjYTQ5NWZiIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05NzUuNjg0IDM4MS44MzJjMTcuMjYzIDk1LjAzMy0xNDAuMjE0IDEyOS4yMzEtMTg3LjE3NyAyMTMuNjY2LTUyLjEzOCA5My43MzcgOC41MTUgMjg4LjA5NS05OC4yNTMgMjk5LjUwMy0xMjcuMTc1IDEzLjU4Ny0xMzguMDQ5LTExNS4zNjItMjYzLTE0Mi42My0xMDkuNTg1LTIzLjkxNC0yMjQuNTM1IDkxLjg5NC0zMDguNzE1IDE3Ljg2NC04NC41NDMtNzQuMzQ4IDExOC42ODgtMjA3LjM3MyA5My44MjktMzE3LjA5NEMxOTAuMjE5IDM1NS4zODEgOC4xNzEgMzQ4LjI2My4yOTcgMjQ4LjM0MS02LjU3IDE2MS4yMjMgMTA3LjMxOCAxMTIuMTY0IDE4MS44OTMgNjYuNDRjNjYuMTYzLTQwLjU2NyAxNDIuNTMxLTc2LjcwNSAyMTkuMDgyLTYzLjc3IDcxLjM4MyAxMi4wNjIgMTQwLjQ4NiA2Mi43NzMgMTY4Ljg1MiAxMjkuMzIgOS45MjkgMjMuMjkzIDI1LjgzOSA1NC41MjggNjkuOTIgNzguNTE3IDkxLjg1OSA0OS45OSAzMDQuODE2IDAgMzM1LjkzNyAxNzEuMzI1eiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+");
}
.svg-mask--splat-3 img, .svg-mask--splat-3 svg:not(.icon), .svg-mask--splat-3 video {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDcyIiBoZWlnaHQ9IjEwNTEiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTYxOC45MTMgMjE1LjM4M0M3NDUuNzc1IDIyNS42NTcgODQxLjc1IDE4LjAwNSA5NjAuNjc4IDYzLjMyM2MxMDkuMTcyIDQxLjYwMSAxMDkuNzUyIDIwNy45MzkgMTExLjMxMiAzMjQuNzA1IDEuMjYgOTQuMjYtOTkuOTY0IDE2Mi44MjctMTAzLjU0MSAyNTcuMDI3LTQuMzAyIDExMy4yNzYgMTM1LjI0MSAyMjMuMjQzIDgxLjUxMSAzMjMuMDcxLTQ5LjcyIDkyLjM3NC0xOTMuNDkyIDcwLjY5NC0yOTguMDg0IDc5LjI4NC04Ny41NiA3LjE5LTE3OC4yMTIgNy4wMy0yNTYuMDA2LTMzLjc3LTcxLjEzOS0zNy4zMDktODYuMDM2LTEzNC45NTEtMTUyLjI4OC0xODAuMzY4QzI0MS4zNDkgNzYzLjE5IDY2LjQgNzkzLjQxNiAxMi4xMTkgNjgyLjAyM2MtNDkuNjkzLTEwMS45NzkgNjcuMTU3LTIwOS40ODUgMTAzLjI4My0zMTcuMDE1IDQxLjI3LTEyMi44NDQtLjA4Mi0zMjMuMTUyIDEyNC4xOTYtMzYwLjA4MiAxNDEuNDgzLTQyLjA0NCAyMzIuMTkzIDE5OC41NDIgMzc5LjMxNSAyMTAuNDU3WiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDcyIiBoZWlnaHQ9IjEwNTEiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTYxOC45MTMgMjE1LjM4M0M3NDUuNzc1IDIyNS42NTcgODQxLjc1IDE4LjAwNSA5NjAuNjc4IDYzLjMyM2MxMDkuMTcyIDQxLjYwMSAxMDkuNzUyIDIwNy45MzkgMTExLjMxMiAzMjQuNzA1IDEuMjYgOTQuMjYtOTkuOTY0IDE2Mi44MjctMTAzLjU0MSAyNTcuMDI3LTQuMzAyIDExMy4yNzYgMTM1LjI0MSAyMjMuMjQzIDgxLjUxMSAzMjMuMDcxLTQ5LjcyIDkyLjM3NC0xOTMuNDkyIDcwLjY5NC0yOTguMDg0IDc5LjI4NC04Ny41NiA3LjE5LTE3OC4yMTIgNy4wMy0yNTYuMDA2LTMzLjc3LTcxLjEzOS0zNy4zMDktODYuMDM2LTEzNC45NTEtMTUyLjI4OC0xODAuMzY4QzI0MS4zNDkgNzYzLjE5IDY2LjQgNzkzLjQxNiAxMi4xMTkgNjgyLjAyM2MtNDkuNjkzLTEwMS45NzkgNjcuMTU3LTIwOS40ODUgMTAzLjI4My0zMTcuMDE1IDQxLjI3LTEyMi44NDQtLjA4Mi0zMjMuMTUyIDEyNC4xOTYtMzYwLjA4MiAxNDEuNDgzLTQyLjA0NCAyMzIuMTkzIDE5OC41NDIgMzc5LjMxNSAyMTAuNDU3WiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+");
}
.svg-mask--splat-4 img, .svg-mask--splat-4 svg:not(.icon), .svg-mask--splat-4 video {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTgiIGhlaWdodD0iNTA0IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjQTQ5NUZCIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zMDMuNzkzIDg0LjY3M2MxNi4xNDkgMjMuODQ4IDMxLjczNyA0My41OCA1Ni40OTYgNDguNzI0IDQzLjM1NCA5LjAwNyA5NC4xMzItMzUuNjY1IDEzMC4xOS05Ljk0IDI5LjgzMiAyMS4yODIgMzMuMzIxIDg3LjE4OSAyMCAxMTIuNTQyLTE1LjUgMjkuNS01Mi4yMDEgNDQuMDQxLTY3LjUgNzQtMTguMzUgMzUuOTMyIDEwLjc2MSA3NC45NjgtMzIuNSAxMDMuNS0zMi45MDEgMjEuNjk5LTY4LjY2My0xNS42MjctMTA2LjY4Ni01LjMwMS01OS45MDcgMTYuMjY4LTk0LjU5MyA5Ni4zNDMtMTU2LjY0NSA5NC44MDEtNTcuODA3LTEuNDM2LTExNS42MzgtNDguMTYzLTEzNi42NjktMTAyLjA5MS0yMS4yMjctNTQuNDMxLTguMDQ0LTEyNS44NTIgMzAuNzM2LTE2OS41NDJDNjkuNSAxOTkuNSAxMDUgMTg5IDEyMi40OCAxMzljOS40NTUtMjcuMDQ3LTMtMTAzIDUxLjg5Ny0xMzIuMDUgNDUuMjQtMjMuOTQgOTIuMDY1IDE3LjA3MiAxMjkuNDE2IDc3LjcyM1oiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTgiIGhlaWdodD0iNTA0IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjQTQ5NUZCIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zMDMuNzkzIDg0LjY3M2MxNi4xNDkgMjMuODQ4IDMxLjczNyA0My41OCA1Ni40OTYgNDguNzI0IDQzLjM1NCA5LjAwNyA5NC4xMzItMzUuNjY1IDEzMC4xOS05Ljk0IDI5LjgzMiAyMS4yODIgMzMuMzIxIDg3LjE4OSAyMCAxMTIuNTQyLTE1LjUgMjkuNS01Mi4yMDEgNDQuMDQxLTY3LjUgNzQtMTguMzUgMzUuOTMyIDEwLjc2MSA3NC45NjgtMzIuNSAxMDMuNS0zMi45MDEgMjEuNjk5LTY4LjY2My0xNS42MjctMTA2LjY4Ni01LjMwMS01OS45MDcgMTYuMjY4LTk0LjU5MyA5Ni4zNDMtMTU2LjY0NSA5NC44MDEtNTcuODA3LTEuNDM2LTExNS42MzgtNDguMTYzLTEzNi42NjktMTAyLjA5MS0yMS4yMjctNTQuNDMxLTguMDQ0LTEyNS44NTIgMzAuNzM2LTE2OS41NDJDNjkuNSAxOTkuNSAxMDUgMTg5IDEyMi40OCAxMzljOS40NTUtMjcuMDQ3LTMtMTAzIDUxLjg5Ny0xMzIuMDUgNDUuMjQtMjMuOTQgOTIuMDY1IDE3LjA3MiAxMjkuNDE2IDc3LjcyM1oiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==");
}
.feature-row__item--overlap-images .feature-row__first-image {
    width: 55%;
}
.feature-row__item--overlap-images .feature-row__second-image {
    width: 60%;
}
.feature-row__item--placeholder-images .placeholder-image-wrap {
    width: 50%;
}
.feature-row-wrapper .feature-row__images {
    min-width: 0;
    width: 100%;
}
@media only screen and (max-width:959px) {
    .feature-row-wrapper .feature-row__images {
        padding-top: 30px;
    }
}
.feature-row-wrapper .feature-row__text {
    min-width: 0;
    width: 100%;
}
@media only screen and (min-width:769px) {
    .feature-row-wrapper .feature-row__text {
        flex: 0 1 43%;
        min-width: 43%;
    }
}
.feature-row--33 .feature-row__images {
    max-width: 50%;
}
@media only screen and (min-width:769px) {
    .feature-row--33 .feature-row__images {
        flex: 0 1 33.333%;
        max-width: none;
    }
}
.feature-row--50 .feature-row__images {
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
}
@media only screen and (min-width:769px) {
    .feature-row--50 .feature-row__images {
        flex: 0 1 50%;
        max-width: none;
        padding-left: 0;
        padding-right: 0;
    }
}
.feature-row--66 .feature-row__images {
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
}
@media only screen and (min-width:769px) {
    .feature-row--66 .feature-row__images {
        flex: 0 1 66.666%;
        max-width: none;
        padding-left: 0;
        padding-right: 0;
    }
}
.scrolling-text {
    direction: ltr;
    overflow: hidden;
}
.scrolling-text__inner {
    animation: scrolling-text var(--move-speed) linear infinite;
    animation-play-state: running;
    display: inline-flex;
    margin: 0.15em 0;
    visibility: visible;
    white-space: nowrap;
}
.scrolling-text__inner--right {
    animation: scrolling-text-right var(--move-speed) linear infinite;
}
.scrolling-text span {
    white-space: nowrap;
}
.scrolling-text:focus .scrolling-text__inner, .scrolling-text:hover .scrolling-text__inner {
    animation-play-state: paused;
}
@keyframes scrolling-text {
    0% {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}
@keyframes scrolling-text-right {
    0% {
        transform: translateX(-50%);
    }
    to {
        transform: translateX(0);
    }
}
.newsletter-container {
    margin: 0 auto !important;
    padding: 0 !important;
}
.newsletter-section {
    align-items: center;
    display: flex;
    gap: 40px;
    padding: 60px 0;
}
@media only screen and (max-width:768px) {
    .newsletter-section {
        flex-direction: column;
        padding: 30px 0;
    }
}
.newsletter-section--image-left {
    flex-direction: row-reverse;
}
@media only screen and (max-width:768px) {
    .newsletter-section--image-left {
        flex-direction: column-reverse;
    }
}
.newsletter-section__content {
    flex: 100%;
    margin: 0 auto;
    max-width: 800px;
}
.newsletter-section--no-image .newsletter-section__content {
    flex: 100%;
}
.newsletter-section__content form {
    display: flex;
    width: 100%;
}
.text-left .newsletter-section__content form {
    justify-content: flex-start;
}
.text-center .newsletter-section__content form {
    justify-content: center;
}
.text-right .newsletter-section__content form {
    justify-content: flex-end;
}
.newsletter-section__content .newsletter__input-group {
    margin: 0;
}
.newsletter-section__image {
    width: 100%;
}
.newsletter-section__image img {
    display: block;
    height: auto;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
}
.newsletter-section__image--33 {
    flex: 33.333% 0 0;
}
.newsletter-section__image--50 {
    flex: 50% 0 0;
}
@media only screen and (max-width:768px) {
    .newsletter-section__image--50 {
        max-width: 100%;
    }
}
.newsletter-section__image--66 {
    flex: 66.666% 0 0;
}
@media only screen and (max-width:768px) {
    .newsletter-section__image--66 {
        max-width: 100%;
    }
}
.text-left .newsletter-form-group {
    margin: 0;
}
.text-right .newsletter-form-group {
    margin: 0;
}
.predictive-overflow-hidden {
    overflow: hidden;
}
@media only screen and (max-width:768px) {
    .predictive-overflow-hidden {
        overflow: auto;
    }
}
predictive-search {
    align-items: center;
    display: flex;
    margin: 0 auto;
    max-width: 960px;
    position: relative;
    width: 100%;
}
predictive-search.is-active {
    flex: 99;
}
predictive-search.is-active .predictive__screen {
    display: block;
    z-index: 3;
}
predictive-search.is-active .btn--close-search {
    align-items: center;
    display: flex;
    justify-content: center;
}
[data-dark=true] input {
    color: #fff !important;
}
[data-dark=true] .btn--search path {
    stroke: #fff !important;
}
[data-dark=false] input {
    color: #000 !important;
}
[data-dark=false] .btn--search path {
    stroke: #000 !important;
}
.predictive__screen {
    background: var(--colorModalBg);
    display: none;
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    width: 100vw;
}
predictive-search form {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    width: 100%;
    z-index: 4;
}
.search__input-wrap {
    flex: 5;
    position: relative;
    transition: flex 0.3s ease-in-out;
}
.search__input {
    background: var(--colorNavSearch, #fff);
    border-radius: calc(var(--roundness, 0)*2);
    color: var(--color-body-text);
    flex: 1;
    padding-left: 16px;
    padding-right: 16px;
    width: 100%;
}
.btn--search {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}
.btn--search .icon {
    height: 25px;
    width: 25px;
}
@media only screen and (min-width:769px) {
    .btn--search {
        right: 10px;
    }
}
[dir=rtl] .btn--search {
    left: 15px;
    right: auto;
}
@media only screen and (min-width:769px) {
    [dir=rtl] .btn--search {
        left: 10px;
    }
}
.btn--close-search {
    display: none;
    flex: 30px 0 0;
    margin-left: 10px;
}
.btn--close-search .icon {
    height: 25px;
    width: 25px;
}
.btn--close-search .icon path {
    stroke: var(--colorNavText) !important;
}
.search__results {
    background: var(--color-body);
    color: var(--color-body-text);
    container-type: inline-size;
    display: none;
    margin-top: 10px;
    max-height: 80vh;
    overflow-y: auto;
    padding: 0;
    position: absolute;
    top: 100%;
    width: 100%;
}
@media only screen and (max-width:768px) {
    .search__results {
        margin-left: calc(var(--pageWidthPadding, 17px)*-1);
        margin-right: calc(var(--pageWidthPadding, 17px)*-1);
        max-height: 75vh;
        width: calc(100% + var(--pageWidthPadding, 17px)*2);
    }
    .template-search .page-content .search__results {
        max-height: 50vh;
    }
}
.results {
    display: block;
    padding: 0 20px 20px;
    width: 100%;
}
.results ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.results li {
    margin-bottom: 0;
    padding: 10px;
    transition: background 0.2s ease;
}
.results li:hover {
    background: rgba(0, 0, 0, .05);
}
.results li a {
    align-items: center;
    display: flex;
}
.results--queries span {
    font-weight: bolder;
}
.results--queries mark {
    background-color: transparent;
    font-weight: 400;
}
.results--products span {
    margin-left: 10px;
}
.results--products #predictive-search-products {
    margin-bottom: 20px;
}
.results-products__image {
    height: 80px;
    max-width: 80px;
    min-width: 80px;
    width: 100%;
}
.results-products__info {
    display: flex;
    flex-direction: column;
}
.predictive-search-results {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    overflow-y: auto;
    padding: 40px 0 0;
}
.predictive-search-results h3 {
    border-bottom: 1px solid;
    border-color: var(--colorBorder);
    margin-bottom: 10px;
    padding-bottom: 10px;
}
.predictive-search-results--none {
    padding-top: 20px;
}
.predictive-search__no-results {
    display: block;
    width: 100%;
}
.predictive-search__no-results:hover {
    opacity: 0.5;
}
.results__group-1 {
    flex: 100% 0 0;
}
.results__group-1>div:not(.results--queries) {
    display: none;
}
.results__group-2 {
    flex: 100% 0 0;
}
.results__search-btn {
    border: 1px solid;
    border-color: var(--colorBorder);
    padding: 10px;
    transition: background-color 0.2s ease;
    width: 100%;
}
.results__search-btn:hover {
    background-color: rgba(0, 0, 0, .05);
}
@container (min-width: 800px) {
    .predictive-search-results {
        flex-direction: row;
        flex-wrap: nowrap;
    }
    .results {
        padding: 0 40px 20px;
    }
    .results__group-1 {
        flex: 1 0 0;
    }
    .results__group-1 div:not(.results--queries) {
        display: block;
    }
    .results__group-2 {
        flex: 2 0 0;
    }
    .results__group-2>div:not(.results--products) {
        display: none;
    }
    .results__search-btn {
        padding: 10px 0 10px 40px;
        text-align: left;
    }
}
.recipient-form {
    display: block;
    margin: 2em auto;
    position: relative;
}
.recipient-form .field {
    position: relative;
}
.recipient-form .field__label {
    color: inherit;
    left: 0;
    margin: 0;
    padding: 8px 10px;
    pointer-events: none;
    position: absolute;
    top: 0;
    transform-origin: 0 0;
    transition: opacity .1s ease-in-out, transform .1s ease-in-out;
}
@media only screen and (max-width:959px) {
    .recipient-form .field__label {
        padding: 10px;
    }
}
.recipient-form .field__label:not(.variant__button-label):not(.text-label), .recipient-form label:not(.variant__button-label):not(.text-label) {
    font-weight: 400;
}
.recipient-form .field__input {
    margin-bottom: 1.5em;
}
@media only screen and (max-width:959px) {
    .recipient-form .field__input {
        margin-bottom: 0.6em;
    }
}
.recipient-form .field__input.text-area {
    height: 150px;
    margin-bottom: 0;
}
.recipient-form .field__input::-webkit-input-placeholder {
    color: transparent;
}
.recipient-form .field__input::-moz-placeholder {
    color: transparent;
}
.recipient-form .field__input:not(:-moz-placeholder-shown)~label {
    font-size: 0.8em;
    opacity: 0.65;
    transform: scale(0.85) translateY(-0.4em) translateX(0.15em);
}
.recipient-form .field__input:focus~label, .recipient-form .field__input:not(:placeholder-shown)~label {
    font-size: 0.8em;
    opacity: 0.65;
    transform: scale(0.85) translateY(-0.4em) translateX(0.15em);
}
.recipient-form .field__input:not(:-moz-placeholder-shown) {
    padding: 16px 10px 0;
}
.recipient-form .field__input:focus, .recipient-form .field__input:not(:placeholder-shown) {
    padding: 16px 10px 0;
}
.recipient-form .field__input--error {
    background-color: #fff6f6;
    border-color: #d02e2e;
    color: #d02e2e;
}
.recipient-form .field__input--error~label {
    color: #d02e2e;
}
.recipient-form .recipient-form__checkbox-wrapper {
    align-items: center;
    display: flex;
    margin-bottom: 2em;
}
@media only screen and (max-width:959px) {
    .recipient-form .recipient-form__checkbox-wrapper {
        margin-bottom: 1.5em;
    }
}
.recipient-form input[type=checkbox] {
    background-color: inherit;
    border: 1px solid;
    border-color: var(--colorBorder);
    border-radius: 0;
    height: 16px;
    width: 16px;
}
.recipient-form .checkbox-label {
    cursor: pointer;
    display: block;
    margin-bottom: 0;
}
.recipient-form .recipient-form-field-label--space-between>span {
    font-size: 0.8em;
}
.recipient-form .recipient-fields {
    display: none;
}
*, :after, :before, input {
    box-sizing: border-box;
}
body, html {
    margin: 0;
    padding: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
    display: block;
}
audio, canvas, progress, video {
    display: inline-block;
    vertical-align: baseline;
}
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
    height: auto;
}
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}
.grid {
    list-style: none;
    margin: 0;
    margin-left: -22px;
    padding: 0;
}
.grid:after {
    clear: both;
    content: "";
    display: table;
}
@media only screen and (max-width:768px) {
    .grid {
        margin-left: 0px;
    }
    html[dir=rtl] .grid {
        margin-left: 0;
        margin-right: -17px;
    }
}
html[dir=rtl] .grid {
    margin-left: 0;
    margin-right: -22px;
}
.grid--small {
    margin-left: -10px;
}
.grid__item {
    float: left;
    min-height: 1px;
    width: 100%;
    padding: 0px;
    margin: 0px;
}
@media only screen and (max-width:768px) {
    .grid__item {
        padding-left: 0;
    }
    html[dir=rtl] .grid__item {
        padding-left: 0;
        padding-right: 17px;
    }
}
html[dir=rtl] .grid__item {
    float: right;
    padding-left: 0;
    padding-right: 22px;
}
.grid--no-gutters {
    margin-left: 0;
}
.grid--no-gutters .grid__item {
    padding-left: 0;
}
.grid--flush-bottom {
    margin-bottom: -22px;
    overflow: auto;
}
.grid--flush-bottom>.grid__item {
    margin-bottom: 22px;
}
.grid--center {
    text-align: center;
}
.grid--center .grid__item {
    display: inline-block;
    float: none;
    text-align: left;
    vertical-align: top;
}
html[dir=rtl] .grid--center .grid__item {
    text-align: right;
}
.grid--full {
    margin-left: 0;
}
.grid--full>.grid__item {
    padding-left: 0;
}
@media only screen and (min-width:769px) {
    .grid--table-large {
        display: table;
        table-layout: fixed;
        width: 100%;
    }
    .grid--table-large>.grid__item {
        display: table-cell;
        float: none;
        vertical-align: middle;
    }
}
@media only screen and (max-width:768px) {
    .small--grid--flush {
        margin-left: -2px;
    }
    .page-width .small--grid--flush {
        margin-left: -17px;
        margin-right: -15px;
    }
    .small--grid--flush>.grid__item {
        padding-left: 2px;
    }
}
.text-column__grid {
    display: grid;
    gap: 22px;
    grid-template-columns: 1fr;
}
@media (min-width:769px) {
    .text-column__grid {
        display: grid;
        grid-template-columns: repeat(6, 1fr);
    }
    .text-column__grid>* {
        grid-column: span 3;
    }
    .text-column__grid:has(>:nth-child(3):last-child)>* {
        grid-column: span 2;
    }
    .text-column__grid:has(>:nth-child(odd):last-child:not(:nth-child(3)))>:nth-last-child(-n+3) {
        grid-column: span 2;
    }
}
.one-whole {
    width: 100%;
}
.one-half {
    width: 50%;
}
.one-third {
    width: 33.33333%;
}
.two-thirds {
    width: 66.66667%;
}
.one-quarter {
    width: 25%;
}
.two-quarters {
    width: 50%;
}
.three-quarters {
    width: 75%;
}
.one-fifth {
    width: 20%;
}
.two-fifths {
    width: 40%;
}
.three-fifths {
    width: 60%;
}
.four-fifths {
    width: 80%;
}
.one-sixth {
    width: 16.66667%;
}
.two-sixths {
    width: 33.33333%;
}
.three-sixths {
    width: 50%;
}
.four-sixths {
    width: 66.66667%;
}
.five-sixths {
    width: 83.33333%;
}
@media only screen and (max-width:768px) {
    .small--one-whole {
        width: 100%;
    }
    .small--one-half {
        width: 50%;
    }
    .small--one-third {
        width: 33.33333%;
    }
    .small--two-thirds {
        width: 66.66667%;
    }
    .grid--uniform .small--one-half:nth-of-type(odd), .grid--uniform .small--one-third:nth-of-type(3n+1) {
        clear: both;
    }
    .small--one-quarter {
        width: 25%;
    }
    .small--two-quarters {
        width: 50%;
    }
    .small--three-quarters {
        width: 75%;
    }
    .grid--uniform .small--one-quarter:nth-of-type(4n+1) {
        clear: both;
    }
    .small--one-fifth {
        width: 20%;
    }
    .small--two-fifths {
        width: 40%;
    }
    .small--three-fifths {
        width: 60%;
    }
    .small--four-fifths {
        width: 80%;
    }
    .grid--uniform .small--one-fifth:nth-of-type(5n+1) {
        clear: both;
    }
    .small--one-sixth {
        width: 16.66667%;
    }
    .small--two-sixths {
        width: 33.33333%;
    }
    .small--three-sixths {
        width: 50%;
    }
    .small--four-sixths {
        width: 66.66667%;
    }
    .small--five-sixths {
        width: 83.33333%;
    }
    .grid--uniform .small--one-sixth:nth-of-type(6n+1), .grid--uniform .small--three-sixths:nth-of-type(odd), .grid--uniform .small--two-sixths:nth-of-type(3n+1) {
        clear: both;
    }
}
@media only screen and (min-width:769px) {
    .medium-up--one-whole {
        width: 100%;
    }
    .medium-up--one-half {
        width: 50%;
    }
    .medium-up--one-third {
        width: 33.33333%;
    }
    .medium-up--two-thirds {
        width: 66.66667%;
    }
    .grid--uniform .medium-up--one-half:nth-of-type(odd), .grid--uniform .medium-up--one-third:nth-of-type(3n+1) {
        clear: both;
    }
    .medium-up--one-quarter {
        width: 25%;
    }
    .medium-up--two-quarters {
        width: 50%;
    }
    .medium-up--three-quarters {
        width: 75%;
    }
    .grid--uniform .medium-up--one-quarter:nth-of-type(4n+1) {
        clear: both;
    }
    .medium-up--one-fifth {
        width: 20%;
    }
    .medium-up--two-fifths {
        width: 40%;
    }
    .medium-up--three-fifths {
        width: 60%;
    }
    .medium-up--four-fifths {
        width: 80%;
    }
    .grid--uniform .medium-up--one-fifth:nth-of-type(5n+1) {
        clear: both;
    }
    .medium-up--one-sixth {
        width: 16.66667%;
    }
    .medium-up--two-sixths {
        width: 33.33333%;
    }
    .medium-up--three-sixths {
        width: 50%;
    }
    .medium-up--four-sixths {
        width: 66.66667%;
    }
    .medium-up--five-sixths {
        width: 83.33333%;
    }
    .grid--uniform .medium-up--one-sixth:nth-of-type(6n+1), .grid--uniform .medium-up--three-sixths:nth-of-type(odd), .grid--uniform .medium-up--two-sixths:nth-of-type(3n+1) {
        clear: both;
    }
}
.show {
    display: block !important;
}
.hide {
    display: none !important;
}
.text-left {
    text-align: left !important;
}
.text-right {
    text-align: right !important;
}
.text-center {
    text-align: center !important;
}
@media only screen and (max-width:768px) {
    .small--show {
        display: block !important;
    }
    .small--hide {
        display: none !important;
    }
    .small--text-left {
        text-align: left !important;
    }
    .small--text-right {
        text-align: right !important;
    }
    .small--text-center {
        text-align: center !important;
    }
}
@media only screen and (max-width:959px) {
    .medium-down--show {
        display: block !important;
    }
    .medium-down--hide {
        display: none !important;
    }
    .medium-down--text-left {
        text-align: left !important;
    }
    .medium-down--text-right {
        text-align: right !important;
    }
    .medium-down--text-center {
        text-align: center !important;
    }
}
@media only screen and (min-width:769px) {
    .medium-up--show {
        display: block !important;
    }
    .medium-up--hide {
        display: none !important;
    }
    .medium-up--text-left {
        text-align: left !important;
    }
    .medium-up--text-right {
        text-align: right !important;
    }
    .medium-up--text-center {
        text-align: center !important;
    }
}
.flex-grid {
    display: flex;
    flex: 1 1 100%;
    flex-wrap: wrap;
}
[data-center-text=center] .flex-grid {
    justify-content: center;
}
.flex-grid--center {
    align-items: center;
}
.flex-grid--gutters {
    margin-left: -15px;
    margin-top: -15px;
}
.flex-grid__item {
    align-items: stretch;
    display: flex;
    flex: 0 1 100%;
}
.flex-grid--gutters .flex-grid__item {
    padding-left: 15px;
    padding-top: 15px;
}
.flex-grid__item>* {
    flex: 1 1 100%;
}
.flex-grid__item--stretch {
    flex: 1 1 100%;
}
.flex-grid__item--stretch:first-child {
    min-width: 250px;
}
@media only screen and (min-width:769px) {
    .flex-grid__item--33 {
        flex-basis: 33.33%;
    }
    .flex-grid__item--50 {
        flex-basis: 50%;
    }
}
@media only screen and (max-width:768px) {
    .flex-grid__item--mobile-second {
        order: 2;
    }
}
.clearfix:after {
    clear: both;
    content: "";
    display: table;
}
html:not(.no-js):not(.tab-outline) :focus {
    outline: none;
}
.is-transitioning {
    display: block !important;
    visibility: visible !important;
}
.display-table {
    display: table;
    table-layout: fixed;
    width: 100%;
}
.display-table-cell {
    display: table-cell;
    float: none;
    vertical-align: middle;
}
@media only screen and (min-width:769px) {
    .medium-up--display-table {
        display: table;
        table-layout: fixed;
        width: 100%;
    }
    .medium-up--display-table-cell {
        display: table-cell;
        float: none;
        vertical-align: middle;
    }
}
.visually-hidden {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.visually-invisible {
    opacity: 0 !important;
}
.skip-link:focus {
    clip: auto;
    background-color: var(--colorBody);
    color: var(--colorTextBody);
    height: auto;
    margin: 0;
    opacity: 1;
    padding: 10px;
    transition: none;
    width: auto;
    z-index: 10000;
}
html {
    touch-action: manipulation;
}
html[dir=rtl] {
    direction: rtl;
}
body, html {
    background-color: var(--colorBody);
    color: var(--colorTextBody);
}
@media only screen and (max-width:768px) {
    .supports-touch.lock-scroll {
        overflow: hidden;
    }
    @supports (-webkit-touch-callout:none) {
        .supports-touch.lock-scroll {
            overflow: initial;
        }
    }
}
.page-width {
    margin: 0 auto;
    max-width: 1500px;
}
.page-full, .page-width {
    padding: 0 17px;
}
@media only screen and (min-width:769px) {
    .page-full, .page-width {
        padding: 0 40px;
    }
}
.page-width--narrow {
    max-width: 1260px;
}
.page-width--tiny {
    max-width: 450px;
}
@media only screen and (max-width:768px) {
    .page-width--flush-small {
        padding: 0;
    }
}
.page-content, .shopify-email-marketing-confirmation__container, .shopify-policy__container {
    padding-bottom: 40px;
    padding-top: 40px;
}
@media only screen and (min-width:769px) {
    .page-content, .shopify-email-marketing-confirmation__container, .shopify-policy__container {
        padding-bottom: 75px;
        padding-top: 75px;
    }
}
.shopify-email-marketing-confirmation__container {
    text-align: center;
}
.page-content--top, .page-content--with-blocks {
    padding-bottom: 0;
}
.page-content--bottom {
    padding-top: 0;
}
.main-content {
    display: block;
    min-height: 300px;
}
@media only screen and (min-width:769px) {
    .main-content {
        min-height: 700px;
    }
}
.template-challange .main-content {
    min-height: 0;
}
.hr--large, .hr--medium, .hr--small, hr {
    border: 0;
    border-top: 1px solid;
    border-top-color: var(--colorBorder);
    height: 1px;
}
.hr--small {
    margin: 15px auto;
}
.hr--medium {
    margin: 25px auto;
}
@media only screen and (min-width:769px) {
    .hr--medium {
        margin: 35px auto;
    }
}
.hr--large {
    margin: 30px auto;
}
@media only screen and (min-width:769px) {
    .hr--large {
        margin: 45px auto;
    }
}
.page-blocks+.hr--large, .page-blocks+[data-section-type=recently-viewed] .hr--large {
    margin-top: 0;
}
.hr--clear {
    border: 0;
}
@media only screen and (max-width:768px) {
    .table--responsive thead {
        display: none;
    }
    .table--responsive tr {
        display: block;
    }
    .table--responsive td, .table--responsive tr {
        clear: both;
        float: left;
        width: 100%;
    }
    .table--responsive td, .table--responsive th {
        display: block;
        padding: 15px;
        text-align: right;
    }
    .table--responsive td:before {
        content: attr(data-label);
        float: left;
        font-size: 12px;
        padding-right: 10px;
    }
}
@media only screen and (max-width:768px) {
    .table--small-hide {
        display: none !important;
    }
    .table__section+.table__section {
        margin-top: 10px;
        padding-top: 15px;
        position: relative;
    }
    .table__section+.table__section:after {
        border-bottom: 1px solid;
        border-bottom-color: var(--colorBorder);
        content: "";
        display: block;
        left: 15px;
        position: absolute;
        right: 15px;
        top: 0;
    }
}
details summary::-webkit-details-marker {
    display: none;
}
.faux-select, body, button, input, select, textarea {
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    font-family: var(--typeBasePrimary), var(--typeBaseFallback);
    font-size: calc(var(--typeBaseSize)*0.92);
    letter-spacing: var(--typeBaseSpacing);
    line-height: var(--typeBaseLineHeight);
    text-rendering: optimizeSpeed;
}
@media only screen and (min-width:769px) {
    .faux-select, body, button, input, select, textarea {
        font-size: var(--typeBaseSize);
    }
}
body {
    font-weight: var(--typeBaseWeight);
}
p {
    margin: 0 0 15px 0;
}
p img {
    margin: 0;
}
em {
    font-style: italic;
}
b, strong {
    font-weight: 700;
}
p[data-spam-detection-disclaimer], small {
    font-size: 0.85em;
}
sub, sup {
    font-size: 60%;
    position: relative;
    vertical-align: baseline;
}
sup {
    top: -0.5em;
}
sub {
    bottom: -0.5em;
}
.rte blockquote, blockquote {
    margin: 0;
    padding: 15px 30px 40px;
}
.rte blockquote p, blockquote p {
    margin-bottom: 0;
}
.rte blockquote p+cite, blockquote p+cite {
    margin-top: 15px;
}
.rte blockquote cite, blockquote cite {
    display: block;
}
code, pre {
    background-color: #faf7f5;
    border: 0 none;
    color: #51ab62;
    font-family: Consolas, monospace;
    font-size: 1em;
    padding: 0 2px;
}
pre {
    margin: 0 0 30px;
    overflow: auto;
    padding: 15px;
}
.label, label:not(.variant__button-label):not(.text-label) {
    font-size: 0.8em;
    letter-spacing: 0.3em;
    text-transform: uppercase;
}
label {
    display: block;
    margin-bottom: 10px;
}
.label-info {
    display: block;
    margin-bottom: 10px;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    display: block;
    margin: 0 0 10px;
}
@media only screen and (min-width:769px) {
    .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
        margin: 0 0 15px;
    }
}
.h1 a, .h2 a, .h3 a, .h4 a, .h5 a, .h6 a, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    font-weight: inherit;
    -webkit-text-decoration: none;
    text-decoration: none;
}
.h1, .h2, .h3, h1, h2, h3 {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight);
}
[data-type_header_capitalize=true] .h1, [data-type_header_capitalize=true] .h2, [data-type_header_capitalize=true] .h3, [data-type_header_capitalize=true] h1, [data-type_header_capitalize=true] h2, [data-type_header_capitalize=true] h3 {
    text-transform: uppercase;
}
.h1, h1 {
    font-size: calc(var(--typeHeaderSize)*0.85);
}
.h2, h2 {
    font-size: calc(var(--typeHeaderSize)*0.73);
}
.h3, h3 {
    font-size: calc(var(--typeHeaderSize)*0.62);
}
@media only screen and (min-width:769px) {
    .h1, h1 {
        font-size: var(--typeHeaderSize);
    }
    .h2, h2 {
        font-size: calc(var(--typeHeaderSize)*0.85);
    }
    .h3, h3 {
        font-size: calc(var(--typeHeaderSize)*0.65);
    }
}
.h4, h4 {
    font-size: 0.8em;
    letter-spacing: 0.3em;
    text-transform: uppercase;
}
.h5, .h6, h5, h6 {
    font-size: 0.8em;
    letter-spacing: 0.3em;
    margin-bottom: 10px;
    text-transform: uppercase;
}
@media only screen and (max-width:768px) {
    .h5, .h6, h5, h6 {
        margin-bottom: 5px;
    }
}
.subheading {
    letter-spacing: 0.3em;
    text-transform: uppercase;
}

@media only screen and (max-width:768px) {
    .rte table td, .rte table th {
        padding: 6px 8px;
    }
}
.collapsible-content .rte table td, .collapsible-content .rte table th {
    padding: 6px 8px;
}
.comment-author {
    margin-bottom: 0;
}
.comment-date {
    display: block;
    font-size: calc(var(--typeBaseSize)*0.85);
    margin-top: 3px;
}
@media only screen and (max-width:768px) {
    .comment-date {
        margin-bottom: 15px;
    }
}
.ajaxcart__subtotal {
    font-size: 0.8em;
    letter-spacing: 0.3em;
    text-transform: uppercase;
}
.rte .enlarge-text {
    font-size: 1.3em;
    margin: 0;
}
@media only screen and (min-width:769px) {
    .rte .enlarge-text--offset p {
        padding-right: 15%;
    }
    .text-center .rte .enlarge-text--offset p {
        padding: 0 5%;
    }
}
@media only screen and (min-width:769px) {
    .table--small-text {
        font-size: calc(var(--typeBaseSize)*0.85);
    }
}
.index-section--footer h3 {
    font-size: 1.5em;
}
html[dir=rtl] .text-left {
    text-align: right !important;
}
html[dir=rtl] .text-right {
    text-align: left !important;
}
.icon-and-text {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
}
.icon-and-text .icon {
    flex: 0 0 auto;
}
ol, ul {
    margin: 0 0 15px 30px;
    padding: 0;
    text-rendering: optimizeLegibility;
}
ol ol {
    list-style: lower-alpha;
}
ol {
    list-style: decimal;
}
ol ol, ol ul, ul ol, ul ul {
    margin: 4px 0 5px 20px;
}
li {
    margin-bottom: 0.25em;
}
ul.square {
    list-style: square outside;
}
ul.disc {
    list-style: disc outside;
}
ol.alpha {
    list-style: lower-alpha outside;
}
.no-bullets {
    list-style: none outside;
    margin-left: 0;
}
.inline-list {
    margin: 0;
    padding: 0;
}
.inline-list li {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
}
table {
    background: var(--colorBorder);
    border: 0 none;
    border-spacing: 1px;
    position: relative;
    width: 100%;
}
.table-wrapper {
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
    overflow: auto;
}
td, th {
    background: var(--colorBody);
    border: 0 none;
    padding: 10px 15px;
    text-align: left;
    font-size: 14px;
}
html[dir=rtl] td, html[dir=rtl] th {
    text-align: right;
}
th {
    font-weight: 700;
}
.table__title, th {
    font-weight: 700;
}
.text-link, a {
    background: transparent;
    color: var(--colorTextBody);
    -webkit-text-decoration: none;
    text-decoration: none;
}
.text-link:hover, a:hover {
    color: var(--colorTextBody);
}
.text-link {
    background: none;
    border: 0 none;
    display: inline;
    margin: 0;
    padding: 0;
}
.rte a, .shopify-email-marketing-confirmation__container a, .shopify-policy__container a {
    color: var(--colorLink);
}
button {
    color: currentColor;
    overflow: visible;
}
button[disabled], html input[disabled] {
    cursor: default;
}
.btn, .rte .btn, .shopify-payment-button .shopify-payment-button__button--unbranded {
    -webkit-appearance: none;
    -moz-appearance: none;
    background: var(--colorBtnPrimary);
    border: 1px solid transparent;
    border-radius: var(--buttonRadius);
    color: var(--colorBtnPrimaryText);
    cursor: pointer;
    display: inline-block;
    font-size: calc(var(--typeBaseSize) - 4px);
    font-size: max(calc(var(--typeBaseSize) - 4px), 13px);
    font-weight: 700;
    letter-spacing: 0.3em;
    line-height: 1.42;
    margin: 0;
    min-width: 90px;
    padding: 11px 20px;
    text-align: center;
    -webkit-text-decoration: none;
    text-decoration: none;
    text-transform: uppercase;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    vertical-align: middle;
    white-space: normal;
    width: auto;
}
@media only screen and (max-width:768px) {
    .btn, .rte .btn, .shopify-payment-button .shopify-payment-button__button--unbranded {
        font-size: calc(var(--typeBaseSize) - 5px);
        font-size: max(calc(var(--typeBaseSize) - 5px), 11px);
        padding: 9px 17px;
    }
}
.btn:hover, .rte .btn:hover, .shopify-payment-button .shopify-payment-button__button--unbranded:hover {
    background-color: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
}
.btn.disabled, .btn[disabled], .rte .btn.disabled, .rte .btn[disabled], .shopify-payment-button .shopify-payment-button__button--unbranded.disabled, .shopify-payment-button .shopify-payment-button__button--unbranded[disabled] {
    background-color: #f6f6f6;
    color: #b6b6b6;
    cursor: default;
}
.btn.disabled:hover, .btn[disabled]:hover, .rte .btn.disabled:hover, .rte .btn[disabled]:hover, .shopify-payment-button .shopify-payment-button__button--unbranded.disabled:hover, .shopify-payment-button .shopify-payment-button__button--unbranded[disabled]:hover {
    background-color: #f6f6f6;
    color: #b6b6b6;
}
[data-button_style=angled] .btn.disabled:after, [data-button_style=angled] .btn.disabled:before, [data-button_style=angled] .btn[disabled]:after, [data-button_style=angled] .btn[disabled]:before, [data-button_style=angled] .rte .btn.disabled:after, [data-button_style=angled] .rte .btn.disabled:before, [data-button_style=angled] .rte .btn[disabled]:after, [data-button_style=angled] .rte .btn[disabled]:before, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded.disabled:after, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded.disabled:before, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded[disabled]:after, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded[disabled]:before {
    background-color: #f6f6f6;
    border-bottom: 1px solid;
    border-bottom-color: #b6b6b6;
    border-top: 1px solid;
    border-top-color: #b6b6b6;
}
[data-button_style=angled] .btn, [data-button_style=angled] .rte .btn, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded {
    border: 0;
    margin-left: 10px;
    margin-right: 10px;
    position: relative;
}
[data-button_style=angled] .btn:after, [data-button_style=angled] .btn:before, [data-button_style=angled] .rte .btn:after, [data-button_style=angled] .rte .btn:before, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded:after, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded:before {
    background-color: inherit;
    bottom: 0;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    transform: skewX(-12deg);
    width: 20px;
}
[data-button_style=angled] .btn:before, [data-button_style=angled] .rte .btn:before, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded:before {
    left: -6px;
}
[data-button_style=angled] .btn:after, [data-button_style=angled] .rte .btn:after, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded:after {
    right: -6px;
}
[data-button_style=angled] .btn.btn--small:before, [data-button_style=angled] .rte .btn.btn--small:before, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded.btn--small:before {
    left: -5px;
}
[data-button_style=angled] .btn.btn--small:after, [data-button_style=angled] .rte .btn.btn--small:after, [data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded.btn--small:after {
    right: -5px;
}
[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static) {
    overflow: hidden;
    position: relative;
    transition: background 0.2s ease 0s;
}
[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after {
    background-image: linear-gradient(90deg, transparent, hsla(0, 0%, 100%, .25), transparent);
    content: "";
    height: 100%;
    left: 150%;
    position: absolute;
    top: 0;
    transform: skewX(-20deg);
    width: 200%;
}
[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after {
    animation: shine 0.75s cubic-bezier(0.01, 0.56, 1, 1);
}
[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover {
    background: var(--colorBtnPrimaryLight);
    transition-delay: 0.25s;
}
[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active {
    background: var(--colorBtnPrimary);
    transition-delay: 0s;
}
.shopify-payment-button .shopify-payment-button__button--unbranded:hover:not([disabled]) {
    background-color: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
}
.shopify-payment-button__more-options {
    color: inherit;
}
.btn--secondary, .rte .btn--secondary {
    background-color: transparent;
    border: 1px solid;
    border-color: var(--colorBorder);
    color: var(--colorTextBody);
}
[data-button_style=angled] .btn--secondary, [data-button_style=angled] .rte .btn--secondary {
    border-bottom: 1px solid;
    border-bottom-color: var(--colorBorder);
    border-left: 0;
    border-right: 0;
    border-top: 1px solid;
    border-top-color: var(--colorBorder);
}
[data-button_style=angled] .btn--secondary:after, [data-button_style=angled] .btn--secondary:before, [data-button_style=angled] .rte .btn--secondary:after, [data-button_style=angled] .rte .btn--secondary:before {
    background-color: transparent;
    bottom: -1px;
    top: -1px;
}
[data-button_style=angled] .btn--secondary:before, [data-button_style=angled] .rte .btn--secondary:before {
    border-bottom: 1px solid;
    border-bottom-color: var(--colorBorder);
    border-left: 1px solid;
    border-left-color: var(--colorBorder);
}
[data-button_style=angled] .btn--secondary:after, [data-button_style=angled] .rte .btn--secondary:after {
    border-right: 1px solid;
    border-right-color: var(--colorBorder);
    border-top: 1px solid;
    border-top-color: var(--colorBorder);
}
.btn--secondary:hover, .rte .btn--secondary:hover {
    background-color: transparent;
    border-color: var(--colorTextBody);
    color: var(--colorTextBody);
    transition: border 0.3s ease;
}
.btn--secondary:hover:before, .rte .btn--secondary:hover:before {
    border-color: var(--colorTextBody);
    transition: border 0.3s ease;
}
.btn--secondary:hover:after, .rte .btn--secondary:hover:after {
    border-color: var(--colorTextBody);
    transition: border 0.3s ease;
}
.btn--tertiary, .rte .btn--tertiary {
    background-color: transparent;
    border: 1px solid;
    border-color: var(--colorBorder);
    color: var(--colorTextBody);
    font-weight: 400;
    letter-spacing: normal;
    padding: 8px 10px;
    text-transform: none;
    white-space: nowrap;
}
.btn--tertiary:hover, .rte .btn--tertiary:hover {
    background-color: transparent;
    color: var(--colorTextBody);
}
.btn--tertiary.disabled, .btn--tertiary[disabled], .rte .btn--tertiary.disabled, .rte .btn--tertiary[disabled] {
    background-color: #f6f6f6;
    border-color: #b6b6b6;
    color: #b6b6b6;
    cursor: default;
}
[data-button_style=angled] .btn--tertiary, [data-button_style=angled] .rte .btn--tertiary {
    margin-left: 0;
    margin-right: 0;
}
[data-button_style=angled] .btn--tertiary:after, [data-button_style=angled] .btn--tertiary:before, [data-button_style=angled] .rte .btn--tertiary:after, [data-button_style=angled] .rte .btn--tertiary:before {
    content: none;
}
.btn--tertiary-active {
    background: var(--colorBtnPrimary);
    border-color: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
}
.btn--tertiary-active:hover {
    background: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
}
.btn--body {
    background-color: var(--colorBody);
    border: 1px solid;
    border-color: var(--colorBorder);
    color: var(--colorTextBody);
}
.btn--body:active, .btn--body:hover {
    background-color: var(--colorBody);
    border: 1px solid;
    border-color: var(--colorBorder);
    color: var(--colorTextBody);
}
.btn--circle {
    border-radius: 50%;
    line-height: 1;
    min-width: 0;
    padding: 10px;
}
.btn--circle .icon {
    height: 20px;
    width: 20px;
}
.btn--circle:after, .btn--circle:before {
    background: none;
    content: none;
    width: auto;
}
.btn--circle.btn--large .icon {
    height: 30px;
    width: 30px;
}
.btn--circle.btn--large {
    padding: 15px;
}
[data-button_style=angled] .btn--circle {
    border: 1px solid;
    border-color: var(--colorBorder);
}
[data-button_style=angled] .btn--circle:after, [data-button_style=angled] .btn--circle:before {
    display: none;
}
.btn--small {
    background-position: 150% 45%;
    font-size: calc(var(--typeBaseSize) - 6px);
    font-size: max(calc(var(--typeBaseSize) - 6px), 12px);
    min-width: 90px;
    padding: 8px 10px;
    margin: 0 10px;
}
[data-button_style=angled] .btn--small {
    margin-left: 10px;
    padding-left: 16px;
    padding-right: 16px;
}
.btn--secondary.btn--small {
    font-weight: 400;
}
.btn--large {
    padding: 15px 20px;
}
.btn--full {
    padding: 11px 20px;
    padding: 13px 20px;
    transition: none;
    width: 100%;
}
[data-button_style=angled] .btn--full {
    max-width: 94%;
}
[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded {
    max-width: 94%;
}
.btn--inverse {
    background-color: transparent;
    border: 2px solid #fff;
    color: #fff;
}
.btn--inverse:focus, .btn--inverse:hover {
    background-color: transparent;
}
[data-button_style=angled] .btn--inverse {
    border-bottom: 2px solid;
    border-left: 0;
    border-right: 0;
    border-top: 2px solid;
}
[data-button_style=angled] .btn--inverse:after, [data-button_style=angled] .btn--inverse:before {
    background-color: transparent;
    border-color: #fff;
    bottom: -2px;
    top: -2px;
}
[data-button_style=angled] .btn--inverse:before {
    border-bottom: 2px solid;
    border-left: 2px solid;
}
[data-button_style=angled] .btn--inverse:after {
    border-right: 2px solid;
    border-top: 2px solid;
}
.hero__link .btn--inverse {
    border-color: var(--colorHeroText);
    color: var(--colorHeroText);
}
[data-button_style=angled] .hero__link .btn--inverse:before {
    border-color: var(--colorHeroText);
}
[data-button_style=angled] .hero__link .btn--inverse:after {
    border-color: var(--colorHeroText);
}
.btn--loading {
    background-color: var(--colorBtnPrimaryDim);
    color: var(--colorBtnPrimaryDim);
    position: relative;
    text-indent: -9999px;
}
.btn--loading:active, .btn--loading:hover {
    background-color: var(--colorBtnPrimaryDim);
    color: var(--colorBtnPrimaryDim);
}
.btn--loading:before {
    animation: spin 1s linear infinite;
    border: 3px solid;
    border-color: var(--colorBtnPrimaryText);
    border-radius: 50%;
    border-top-color: transparent;
    content: "";
    display: block;
    height: 24px;
    left: 50%;
    margin-left: -12px;
    margin-top: -12px;
    position: absolute;
    top: 50%;
    width: 24px;
}
[data-button_style=angled] .btn--loading:before {
    border-color: var(--colorBtnPrimaryText) !important;
    border-top-color: transparent !important;
}
[data-button_style=angled] .btn--loading:before {
    border: 3px solid;
    height: 24px;
    left: 50%;
    top: 50%;
    transform: none;
    width: 24px;
}
[data-button_style=angled] .btn--loading:after {
    background-color: var(--colorBtnPrimaryDim);
}
[data-button_style=angled] .btn--loading.btn--secondary:after {
    bottom: 1px;
}
.btn--loading.btn--secondary {
    background: transparent;
    color: var(--colorTextBody);
}
.btn--loading.btn--secondary:before {
    border-color: var(--colorTextBody);
    border-top-color: transparent;
}
.return-link {
    margin-top: 50px;
    padding: 15px 25px;
    text-align: center;
}
@media only screen and (max-width:768px) {
    .return-link {
        padding: 22px 17px;
        width: 100%;
    }
    [data-button_style=angled] .return-link {
        width: 90%;
    }
}
.return-link .icon {
    margin-right: 8px;
    width: 20px;
}
.collapsible-trigger-btn {
    text-align: left;
}
[data-center-text=center] .collapsible-trigger-btn {
    text-align: center;
}
.collapsible-trigger-btn {
    display: block;
    font-size: 0.8em;
    letter-spacing: 0.3em;
    padding: 15px 10px 15px 0;
    text-transform: uppercase;
    width: 100%;
}
.collection-sidebar__group .collapsible-trigger-btn {
    text-align: left;
}
.collapsible-trigger-btn--borders {
    border: 1px solid;
    border-color: var(--colorBorder);
    border-bottom: 0;
    padding: 12px;
}
.collapsible-trigger-btn--borders .collapsible-trigger__icon {
    right: 12px;
}
@media only screen and (min-width:769px) {
    .collapsible-trigger-btn--borders {
        padding: 15px;
    }
    .collapsible-trigger-btn--borders .collapsible-trigger__icon {
        right: 15px;
    }
}
.collapsible-content+.collapsible-trigger-btn--borders {
    margin-top: -1px;
}
.collapsible-trigger-btn--borders+.collapsible-content .collapsible-content__inner {
    border: 1px solid;
    border-color: var(--colorBorder);
    border-top: 0;
    font-size: calc(var(--typeBaseSize)*0.92);
    padding: 0 20px 20px;
}
.collapsible-trigger-btn--borders+.collapsible-content--expanded {
    margin-bottom: 30px;
}
.collapsible-trigger-btn--borders+.collapsible-content--expanded:last-child {
    margin-bottom: -1px;
}
.collapsible-trigger-btn--borders-top {
    border-top: 1px solid;
    border-top-color: var(--colorBorder);
}
.shopify-payment-button {
    margin-top: 10px;
}
.shopify-payment-button .shopify-payment-button__button--unbranded {
    display: block;
    transition: none;
    width: 100%;
}
.payment-buttons .add-to-cart, .payment-buttons .shopify-payment-button, .payment-buttons .shopify-payment-button__button--unbranded {
    min-height: 50px;
}
.add-to-cart.btn--secondary {
    border: 1px solid;
    border-color: var(--colorTextBody);
}
[data-button_style=angled] .add-to-cart.btn--secondary {
    border-left: 0;
    border-right: 0;
}
[data-button_style=angled] .add-to-cart.btn--secondary:after, [data-button_style=angled] .add-to-cart.btn--secondary:before {
    border-color: var(--colorTextBody);
}
.add-to-cart.btn--secondary.disabled, .add-to-cart.btn--secondary[disabled] {
    border-color: #b6b6b6;
}
[data-button_style=angled] .add-to-cart.btn--secondary.disabled:after, [data-button_style=angled] .add-to-cart.btn--secondary.disabled:before, [data-button_style=angled] .add-to-cart.btn--secondary[disabled]:after, [data-button_style=angled] .add-to-cart.btn--secondary[disabled]:before {
    border-color: #b6b6b6;
}
.shopify-payment-button__button--hidden {
    display: none !important;
}
svg:not(:root) {
    overflow: hidden;
}
iframe {
    max-width: 100%;
}
.video-wrapper {
    height: 0;
    height: auto;
    max-width: 100%;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
}
.video-wrapper iframe, .video-wrapper video {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.video-wrapper--modal {
    width: 1000px;
}
.grid__image-ratio {
    background-color: var(--colorSmallImageBg);
    position: relative;
}
.grid__image-ratio img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
}
.grid__image-ratio img.grid__image-contain {
    -o-object-fit: contain;
    object-fit: contain;
}
.grid__image-ratio:before {
    content: "";
    display: block;
    height: 0;
    width: 100%;
}
.grid__image-ratio .placeholder-svg {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.grid__image-ratio--object {
    opacity: 1;
}
.grid__image-ratio--wide:before {
    padding-bottom: 56.25%;
}
.grid__image-ratio--landscape:before {
    padding-bottom: 75%;
}
.grid__image-ratio--square:before {
    padding-bottom: 100%;
}
.grid__image-ratio--portrait:before {
    padding-bottom: 150%;
}
.image-fit {
    font-family: "object-fit: cover";
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: relative;
    width: 100%;
    z-index: 1;
}
.parallax-container {
    height: 160%;
    left: 0;
    position: absolute;
    top: -30%;
    width: 100%;
}
.parallax-image {
    height: 110%;
    left: 0;
    position: absolute;
    top: -5%;
    width: 100%;
}
.parallax-image img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
form {
    margin: 0;
}
[data-center-text=center] .form-vertical {
    text-align: center;
}
.form-vertical {
    margin-bottom: 15px;
}
.form-vertical label {
    text-align: left;
}
.inline {
    display: inline;
}
@media only screen and (max-width:959px) {
    input, select, textarea {
        font-size: 16px !important;
    }
}
button, input, textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
}
button {
    background: none;
    border: none;
    cursor: pointer;
    display: inline-block;
}
fieldset {
    border: 1px solid;
    border-color: var(--colorBorder);
    padding: 15px;
}
legend {
    border: 0;
    padding: 0;
}
button, input[type=submit] {
    cursor: pointer;
}
input, select, textarea {
    border: 1px solid;
    border-color: var(--colorBorder);
    border-radius: 0;
    max-width: 100%;
    padding: 8px 10px;
}
input.disabled, input[disabled], select.disabled, select[disabled], textarea.disabled, textarea[disabled] {
    border-color: #b6b6b6;
    cursor: default;
}
input.input-full, select.input-full, textarea.input-full {
    width: 100%;
}
textarea {
    min-height: 100px;
}
input[type=checkbox], input[type=radio] {
    margin: 0 10px 0 0;
    padding: 0;
    width: auto;
}
input[type=checkbox] {
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
}
input[type=radio] {
    -webkit-appearance: radio;
    -moz-appearance: radio;
}
input[type=image] {
    padding-left: 0;
    padding-right: 0;
}
.faux-select, select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    color: inherit;
    cursor: pointer;
    padding-right: 28px;
    text-indent: 0.01px;
    text-overflow: "";
}
select {
    background-image: var(--urlIcoSelect);
    background-position: 100%;
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 11px;
}
.is-light select {
    background-image: var(--urlIcoSelectWhite);
}
.faux-select .icon {
    height: 11px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 11px;
}
optgroup {
    font-weight: 700;
}
option {
    background-color: #fff;
    color: #000;
}
option[disabled] {
    color: #ccc;
}
select::-ms-expand {
    display: none;
}
.hidden-label {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
label[for] {
    cursor: pointer;
}
.form-vertical input, .form-vertical select, .form-vertical textarea {
    display: block;
    margin-bottom: 30px;
}
.form-vertical .btn, .form-vertical input[type=checkbox], .form-vertical input[type=radio] {
    display: inline-block;
}
.form-vertical .btn:not(:last-child) {
    margin-bottom: 30px;
}
small {
    display: block;
}
input.error, textarea.error {
    background-color: #fff6f6;
    border-color: #d02e2e;
    color: #d02e2e;
}
label.error {
    color: #d02e2e;
}
.selector-wrapper label {
    margin-right: 10px;
}
.selector-wrapper+.selector-wrapper {
    margin-top: 15px;
}
.input-group {
    display: flex;
}
.input-group .input-group-btn:first-child .btn, .input-group .input-group-field:first-child, .input-group input[type=hidden]:first-child+.input-group-field {
    border-radius: 0 0 0 0;
}
.input-group .input-group-field:last-child {
    border-radius: 0 0 0 0;
}
.input-group .input-group-btn:first-child .btn, .input-group input[type=hidden]:first-child+.input-group-btn .btn {
    border-radius: var(--buttonRadius) 0 0 var(--buttonRadius);
}
.input-group .input-group-btn:last-child .btn {
    border-radius: 0 var(--buttonRadius) var(--buttonRadius) 0;
}
.input-group input::-moz-focus-inner {
    border: 0;
    margin-bottom: -1px;
    margin-top: -1px;
    padding: 0;
}
.input-group-field {
    flex: 1 1 auto;
    margin: 0;
    min-width: 0;
}
.input-group-btn {
    display: flex;
    flex: 0 1 auto;
    margin: 0;
}
.input-group-btn .icon {
    vertical-align: initial;
}
[data-button_style=angled] .input-group-btn {
    left: -8px;
    position: relative;
}
.icon {
    fill: currentColor;
    display: inline-block;
    height: 20px;
    vertical-align: middle;
    width: 20px;
}
.no-svg .icon {
    display: none;
}
svg.icon circle, svg.icon ellipse, svg.icon g, svg.icon line, svg.icon path, svg.icon polygon, svg.icon polyline, svg.icon rect, symbol.icon circle, symbol.icon ellipse, symbol.icon g, symbol.icon line, symbol.icon path, symbol.icon polygon, symbol.icon polyline, symbol.icon rect {
    fill: inherit;
    stroke: inherit;
}
svg.icon-bag circle, svg.icon-bag ellipse, svg.icon-bag g, svg.icon-bag line, svg.icon-bag path, svg.icon-bag polygon, svg.icon-bag polyline, svg.icon-bag rect, svg.icon-bag-minimal circle, svg.icon-bag-minimal ellipse, svg.icon-bag-minimal g, svg.icon-bag-minimal line, svg.icon-bag-minimal path, svg.icon-bag-minimal polygon, svg.icon-bag-minimal polyline, svg.icon-bag-minimal rect, svg.icon-cart circle, svg.icon-cart ellipse, svg.icon-cart g, svg.icon-cart line, svg.icon-cart path, svg.icon-cart polygon, svg.icon-cart polyline, svg.icon-cart rect, svg.icon-chevron-down circle, svg.icon-chevron-down ellipse, svg.icon-chevron-down g, svg.icon-chevron-down line, svg.icon-chevron-down path, svg.icon-chevron-down polygon, svg.icon-chevron-down polyline, svg.icon-chevron-down rect, svg.icon-circle-checkmark circle, svg.icon-circle-checkmark ellipse, svg.icon-circle-checkmark g, svg.icon-circle-checkmark line, svg.icon-circle-checkmark path, svg.icon-circle-checkmark polygon, svg.icon-circle-checkmark polyline, svg.icon-circle-checkmark rect, svg.icon-close circle, svg.icon-close ellipse, svg.icon-close g, svg.icon-close line, svg.icon-close path, svg.icon-close polygon, svg.icon-close polyline, svg.icon-close rect, svg.icon-email circle, svg.icon-email ellipse, svg.icon-email g, svg.icon-email line, svg.icon-email path, svg.icon-email polygon, svg.icon-email polyline, svg.icon-email rect, svg.icon-filter circle, svg.icon-filter ellipse, svg.icon-filter g, svg.icon-filter line, svg.icon-filter path, svg.icon-filter polygon, svg.icon-filter polyline, svg.icon-filter rect, svg.icon-gift circle, svg.icon-gift ellipse, svg.icon-gift g, svg.icon-gift line, svg.icon-gift path, svg.icon-gift polygon, svg.icon-gift polyline, svg.icon-gift rect, svg.icon-globe circle, svg.icon-globe ellipse, svg.icon-globe g, svg.icon-globe line, svg.icon-globe path, svg.icon-globe polygon, svg.icon-globe polyline, svg.icon-globe rect, svg.icon-hamburger circle, svg.icon-hamburger ellipse, svg.icon-hamburger g, svg.icon-hamburger line, svg.icon-hamburger path, svg.icon-hamburger polygon, svg.icon-hamburger polyline, svg.icon-hamburger rect, svg.icon-heart circle, svg.icon-heart ellipse, svg.icon-heart g, svg.icon-heart line, svg.icon-heart path, svg.icon-heart polygon, svg.icon-heart polyline, svg.icon-heart rect, svg.icon-leaf circle, svg.icon-leaf ellipse, svg.icon-leaf g, svg.icon-leaf line, svg.icon-leaf path, svg.icon-leaf polygon, svg.icon-leaf polyline, svg.icon-leaf rect, svg.icon-lock circle, svg.icon-lock ellipse, svg.icon-lock g, svg.icon-lock line, svg.icon-lock path, svg.icon-lock polygon, svg.icon-lock polyline, svg.icon-lock rect, svg.icon-package circle, svg.icon-package ellipse, svg.icon-package g, svg.icon-package line, svg.icon-package path, svg.icon-package polygon, svg.icon-package polyline, svg.icon-package rect, svg.icon-phone circle, svg.icon-phone ellipse, svg.icon-phone g, svg.icon-phone line, svg.icon-phone path, svg.icon-phone polygon, svg.icon-phone polyline, svg.icon-phone rect, svg.icon-ribbon circle, svg.icon-ribbon ellipse, svg.icon-ribbon g, svg.icon-ribbon line, svg.icon-ribbon path, svg.icon-ribbon polygon, svg.icon-ribbon polyline, svg.icon-ribbon rect, svg.icon-search circle, svg.icon-search ellipse, svg.icon-search g, svg.icon-search line, svg.icon-search path, svg.icon-search polygon, svg.icon-search polyline, svg.icon-search rect, svg.icon-shield circle, svg.icon-shield ellipse, svg.icon-shield g, svg.icon-shield line, svg.icon-shield path, svg.icon-shield polygon, svg.icon-shield polyline, svg.icon-shield rect, svg.icon-size-chart circle, svg.icon-size-chart ellipse, svg.icon-size-chart g, svg.icon-size-chart line, svg.icon-size-chart path, svg.icon-size-chart polygon, svg.icon-size-chart polyline, svg.icon-size-chart rect, svg.icon-tag circle, svg.icon-tag ellipse, svg.icon-tag g, svg.icon-tag line, svg.icon-tag path, svg.icon-tag polygon, svg.icon-tag polyline, svg.icon-tag rect, svg.icon-tcwi-bills circle, svg.icon-tcwi-bills ellipse, svg.icon-tcwi-bills g, svg.icon-tcwi-bills line, svg.icon-tcwi-bills path, svg.icon-tcwi-bills polygon, svg.icon-tcwi-bills polyline, svg.icon-tcwi-bills rect, svg.icon-tcwi-calendar circle, svg.icon-tcwi-calendar ellipse, svg.icon-tcwi-calendar g, svg.icon-tcwi-calendar line, svg.icon-tcwi-calendar path, svg.icon-tcwi-calendar polygon, svg.icon-tcwi-calendar polyline, svg.icon-tcwi-calendar rect, svg.icon-tcwi-cart circle, svg.icon-tcwi-cart ellipse, svg.icon-tcwi-cart g, svg.icon-tcwi-cart line, svg.icon-tcwi-cart path, svg.icon-tcwi-cart polygon, svg.icon-tcwi-cart polyline, svg.icon-tcwi-cart rect, svg.icon-tcwi-charity circle, svg.icon-tcwi-charity ellipse, svg.icon-tcwi-charity g, svg.icon-tcwi-charity line, svg.icon-tcwi-charity path, svg.icon-tcwi-charity polygon, svg.icon-tcwi-charity polyline, svg.icon-tcwi-charity rect, svg.icon-tcwi-chat circle, svg.icon-tcwi-chat ellipse, svg.icon-tcwi-chat g, svg.icon-tcwi-chat line, svg.icon-tcwi-chat path, svg.icon-tcwi-chat polygon, svg.icon-tcwi-chat polyline, svg.icon-tcwi-chat rect, svg.icon-tcwi-gears circle, svg.icon-tcwi-gears ellipse, svg.icon-tcwi-gears g, svg.icon-tcwi-gears line, svg.icon-tcwi-gears path, svg.icon-tcwi-gears polygon, svg.icon-tcwi-gears polyline, svg.icon-tcwi-gears rect, svg.icon-tcwi-gift circle, svg.icon-tcwi-gift ellipse, svg.icon-tcwi-gift g, svg.icon-tcwi-gift line, svg.icon-tcwi-gift path, svg.icon-tcwi-gift polygon, svg.icon-tcwi-gift polyline, svg.icon-tcwi-gift rect, svg.icon-tcwi-globe circle, svg.icon-tcwi-globe ellipse, svg.icon-tcwi-globe g, svg.icon-tcwi-globe line, svg.icon-tcwi-globe path, svg.icon-tcwi-globe polygon, svg.icon-tcwi-globe polyline, svg.icon-tcwi-globe rect, svg.icon-tcwi-open-envelope circle, svg.icon-tcwi-open-envelope ellipse, svg.icon-tcwi-open-envelope g, svg.icon-tcwi-open-envelope line, svg.icon-tcwi-open-envelope path, svg.icon-tcwi-open-envelope polygon, svg.icon-tcwi-open-envelope polyline, svg.icon-tcwi-open-envelope rect, svg.icon-tcwi-package circle, svg.icon-tcwi-package ellipse, svg.icon-tcwi-package g, svg.icon-tcwi-package line, svg.icon-tcwi-package path, svg.icon-tcwi-package polygon, svg.icon-tcwi-package polyline, svg.icon-tcwi-package rect, svg.icon-tcwi-phone circle, svg.icon-tcwi-phone ellipse, svg.icon-tcwi-phone g, svg.icon-tcwi-phone line, svg.icon-tcwi-phone path, svg.icon-tcwi-phone polygon, svg.icon-tcwi-phone polyline, svg.icon-tcwi-phone rect, svg.icon-tcwi-plant circle, svg.icon-tcwi-plant ellipse, svg.icon-tcwi-plant g, svg.icon-tcwi-plant line, svg.icon-tcwi-plant path, svg.icon-tcwi-plant polygon, svg.icon-tcwi-plant polyline, svg.icon-tcwi-plant rect, svg.icon-tcwi-recycle circle, svg.icon-tcwi-recycle ellipse, svg.icon-tcwi-recycle g, svg.icon-tcwi-recycle line, svg.icon-tcwi-recycle path, svg.icon-tcwi-recycle polygon, svg.icon-tcwi-recycle polyline, svg.icon-tcwi-recycle rect, svg.icon-tcwi-ribbon circle, svg.icon-tcwi-ribbon ellipse, svg.icon-tcwi-ribbon g, svg.icon-tcwi-ribbon line, svg.icon-tcwi-ribbon path, svg.icon-tcwi-ribbon polygon, svg.icon-tcwi-ribbon polyline, svg.icon-tcwi-ribbon rect, svg.icon-tcwi-sales-tag circle, svg.icon-tcwi-sales-tag ellipse, svg.icon-tcwi-sales-tag g, svg.icon-tcwi-sales-tag line, svg.icon-tcwi-sales-tag path, svg.icon-tcwi-sales-tag polygon, svg.icon-tcwi-sales-tag polyline, svg.icon-tcwi-sales-tag rect, svg.icon-tcwi-shield circle, svg.icon-tcwi-shield ellipse, svg.icon-tcwi-shield g, svg.icon-tcwi-shield line, svg.icon-tcwi-shield path, svg.icon-tcwi-shield polygon, svg.icon-tcwi-shield polyline, svg.icon-tcwi-shield rect, svg.icon-tcwi-stopwatch circle, svg.icon-tcwi-stopwatch ellipse, svg.icon-tcwi-stopwatch g, svg.icon-tcwi-stopwatch line, svg.icon-tcwi-stopwatch path, svg.icon-tcwi-stopwatch polygon, svg.icon-tcwi-stopwatch polyline, svg.icon-tcwi-stopwatch rect, svg.icon-tcwi-store circle, svg.icon-tcwi-store ellipse, svg.icon-tcwi-store g, svg.icon-tcwi-store line, svg.icon-tcwi-store path, svg.icon-tcwi-store polygon, svg.icon-tcwi-store polyline, svg.icon-tcwi-store rect, svg.icon-tcwi-thumbs-up circle, svg.icon-tcwi-thumbs-up ellipse, svg.icon-tcwi-thumbs-up g, svg.icon-tcwi-thumbs-up line, svg.icon-tcwi-thumbs-up path, svg.icon-tcwi-thumbs-up polygon, svg.icon-tcwi-thumbs-up polyline, svg.icon-tcwi-thumbs-up rect, svg.icon-tcwi-trophy circle, svg.icon-tcwi-trophy ellipse, svg.icon-tcwi-trophy g, svg.icon-tcwi-trophy line, svg.icon-tcwi-trophy path, svg.icon-tcwi-trophy polygon, svg.icon-tcwi-trophy polyline, svg.icon-tcwi-trophy rect, svg.icon-tcwi-truck circle, svg.icon-tcwi-truck ellipse, svg.icon-tcwi-truck g, svg.icon-tcwi-truck line, svg.icon-tcwi-truck path, svg.icon-tcwi-truck polygon, svg.icon-tcwi-truck polyline, svg.icon-tcwi-truck rect, svg.icon-tcwi-wallet circle, svg.icon-tcwi-wallet ellipse, svg.icon-tcwi-wallet g, svg.icon-tcwi-wallet line, svg.icon-tcwi-wallet path, svg.icon-tcwi-wallet polygon, svg.icon-tcwi-wallet polyline, svg.icon-tcwi-wallet rect, svg.icon-truck circle, svg.icon-truck ellipse, svg.icon-truck g, svg.icon-truck line, svg.icon-truck path, svg.icon-truck polygon, svg.icon-truck polyline, svg.icon-truck rect, svg.icon-user circle, svg.icon-user ellipse, svg.icon-user g, svg.icon-user line, svg.icon-user path, svg.icon-user polygon, svg.icon-user polyline, svg.icon-user rect {
    fill: none;
    stroke-width: var(--iconWeight);
    stroke: currentColor;
    stroke-linecap: var(--iconLinecaps);
    stroke-linejoin: var(--iconLinecaps);
}
svg.icon-cart circle {
    fill: currentColor;
}
.icon__fallback-text {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.js-drawer-open {
    overflow: hidden;
}
.drawer {
    -webkit-overflow-scrolling: touch;
    background-color: var(--colorDrawers);
    bottom: 0;
    box-shadow: 0 0 150px rgba(0, 0, 0, .1);
    color: var(--colorDrawerText);
    display: none;
    max-width: 95%;
    overflow: hidden;
    position: fixed;
    top: 0;
    transition: transform 0.25s cubic-bezier(0.165, 0.84, 0.44, 1);
    z-index: 30;
}
@media screen and (max-height:400px) {
    .drawer {
        overflow: scroll;
    }
    .drawer .drawer__contents {
        height: auto;
    }
}
.drawer a:not(.btn) {
    color: var(--colorDrawerText);
}
.drawer a:not(.btn):hover {
    color: var(--colorDrawerText);
}
.drawer input, .drawer textarea {
    border-color: var(--colorDrawerBorder);
}
.drawer .btn {
    background-color: var(--colorDrawerButton);
    color: var(--colorDrawerButtonText);
}
.drawer--left {
    left: -350px;
    width: 350px;
}
.drawer--left.drawer--is-open {
    display: block;
    transform: translateX(350px);
    transition-duration: 0.45s;
}
.drawer--right {
    right: -350px;
    width: 350px;
}
@media only screen and (min-width:769px) {
    .drawer--right {
        right: -450px;
        width: 450px;
    }
}
.drawer--right.drawer--is-open {
    display: block;
    transform: translateX(-350px);
    transition-duration: 0.45s;
}
@media only screen and (min-width:769px) {
    .drawer--right.drawer--is-open {
        transform: translateX(-450px);
    }
}
.js-drawer-closing .main-content:after, .js-drawer-open .main-content:after {
    background-color: var(--colorModalBg);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 26;
}
.js-drawer-open .main-content:after {
    animation: overlay-on 0.35s forwards;
}
.js-drawer-closing .main-content:after {
    animation: overlay-off 0.25s forwards;
}
.drawer__fixed-header, .drawer__footer, .drawer__header, .drawer__scrollable {
    padding-left: var(--drawer-gutter);
    padding-right: var(--drawer-gutter);
}
.drawer__header {
    border-bottom: 1px solid;
    border-bottom-color: var(--colorDrawerBorder);
    display: table;
    margin-bottom: 0;
    min-height: 70px;
    padding: 11.53846px 0;
    width: 100%;
}
.drawer__fixed-header {
    min-height: 70px;
    overflow: visible;
}
.drawer__fixed-header, .drawer__header {
    height: auto;
}
@media only screen and (min-width:769px) {
    .drawer__fixed-header, .drawer__header {
        min-height: 80px;
    }
}
.drawer__close, .drawer__title {
    display: table-cell;
    vertical-align: middle;
}
.drawer__title {
    width: 100%;
}
.drawer__close {
    text-align: center;
    width: 1%;
}
.drawer__close-button {
    color: inherit;
    height: 100%;
    padding: 0 var(--drawer-gutter);
    position: relative;
    right: calc(var(--drawer-gutter)*-1);
}
.drawer__close-button:active {
    background-color: var(--colorDrawersDim);
}
.drawer__close-button .icon {
    height: 28px;
    width: 28px;
}
.drawer__close--left {
    text-align: left;
}
.drawer__close--left .drawer__close-button {
    left: calc(var(--drawer-gutter)*-1);
    right: auto;
}
.drawer__contents {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.drawer__inner, .drawer__scrollable {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    overflow-y: hidden;
}
.drawer__scrollable {
    -webkit-overflow-scrolling: touch;
    overflow: hidden;
    overflow-y: auto;
    padding-top: var(--drawer-gutter);
}
.drawer__footer {
    border-top: 1px solid;
    border-top-color: var(--colorDrawerBorder);
    padding-bottom: var(--drawer-gutter);
    padding-top: 15px;
}
@media only screen and (min-width:769px) {
    .drawer__footer {
        padding-top: 22.22222px;
    }
}
.drawer__inner.is-loading .drawer__scrollable {
    opacity: 0.4;
    transition: opacity 0.3s ease 0.7s;
}
.cart-notes {
    height: 60px;
    margin-bottom: 10px;
    margin-top: 10px;
    min-height: 60px;
}
@media only screen and (min-width:769px) {
    .cart-notes {
        height: 80px;
        min-height: 80px;
    }
}
.placeholder-svg {
    fill: #999;
    background-color: #e1e1e1;
    display: block;
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    padding: 30px 0;
    width: 100%;
}
.placeholder-noblocks {
    padding: 40px;
    text-align: center;
}
.placeholder-content {
    animation: placeholder-shimmer 1.3s linear infinite;
    background-size: 400% 100%;
    border-radius: 4px;
    margin-bottom: 20px;
    overflow: hidden;
}
@media only screen and (max-width:768px) {
    .placeholder-content {
        margin-left: auto;
        margin-right: auto;
    }
}
.animation-delay-20 {
    animation-delay: 1.2s;
}
.animation-delay-19 {
    animation-delay: 1.14s;
}
.animation-delay-18 {
    animation-delay: 1.08s;
}
.animation-delay-17 {
    animation-delay: 1.02s;
}
.animation-delay-16 {
    animation-delay: 0.96s;
}
.animation-delay-15 {
    animation-delay: 0.9s;
}
.animation-delay-14 {
    animation-delay: 0.84s;
}
.animation-delay-13 {
    animation-delay: 0.78s;
}
.animation-delay-12 {
    animation-delay: 0.72s;
}
.animation-delay-11 {
    animation-delay: 0.66s;
}
.animation-delay-10 {
    animation-delay: 0.6s;
}
.animation-delay-9 {
    animation-delay: 0.54s;
}
.animation-delay-8 {
    animation-delay: 0.48s;
}
.animation-delay-7 {
    animation-delay: 0.42s;
}
.animation-delay-6 {
    animation-delay: 0.36s;
}
.animation-delay-5 {
    animation-delay: 0.3s;
}
.animation-delay-4 {
    animation-delay: 0.24s;
}
.animation-delay-3 {
    animation-delay: 0.18s;
}
.animation-delay-2 {
    animation-delay: 0.12s;
}
.appear-delay-20 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.3s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.4s;
}
.appear-delay-19 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.24s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.34s;
}
.appear-delay-18 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.18s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.28s;
}
.appear-delay-17 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.12s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.22s;
}
.appear-delay-16 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.06s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.16s;
}
.appear-delay-15 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.1s;
}
.appear-delay-14 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.94s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.04s;
}
.appear-delay-13 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.88s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.98s;
}
.appear-delay-12 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.82s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.92s;
}
.appear-delay-11 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.76s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.86s;
}
.appear-delay-10 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.7s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.appear-delay-9 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.64s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.74s;
}
.appear-delay-8 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.58s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.68s;
}
.appear-delay-7 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.52s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.62s;
}
.appear-delay-6 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.46s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.56s;
}
.appear-delay-5 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
}
.appear-delay-4 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.34s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.44s;
}
.appear-delay-3 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.28s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.38s;
}
.appear-delay-2 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.22s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.32s;
}
.appear-delay-1 {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
}
.animation-cropper {
    display: inline-flex;
    overflow: hidden;
}
.image-wrap {
    background: var(--colorSmallImageBg);
    overflow: hidden;
    position: relative;
}
.image-wrap .animate-me, .image-wrap svg {
    opacity: 0;
}
.no-js .image-wrap .animate-me, .no-js .image-wrap svg {
    opacity: 1;
}
.aos-animate .image-wrap .animate-me, .aos-animate .image-wrap svg {
    animation: fade-in 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}
.aos-animate[data-aos=row-of-3]:nth-child(3n+2) .image-wrap img {
    animation-delay: 150ms;
}
.aos-animate[data-aos=row-of-3]:nth-child(3n+3) .image-wrap img {
    animation-delay: 300ms;
}
.aos-animate[data-aos=row-of-4]:nth-child(4n+2) .image-wrap img {
    animation-delay: 120ms;
}
.aos-animate[data-aos=row-of-4]:nth-child(4n+3) .image-wrap img {
    animation-delay: 240ms;
}
.aos-animate[data-aos=row-of-4]:nth-child(4n+4) .image-wrap img {
    animation-delay: 360ms;
}
.aos-animate[data-aos=row-of-5]:nth-child(5n+2) .image-wrap img {
    animation-delay: 75ms;
}
.aos-animate[data-aos=row-of-5]:nth-child(5n+3) .image-wrap img {
    animation-delay: 150ms;
}
.aos-animate[data-aos=row-of-5]:nth-child(5n+4) .image-wrap img {
    animation-delay: 225ms;
}
.aos-animate[data-aos=row-of-5]:nth-child(5n+5) .image-wrap img {
    animation-delay: 300ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+2) .image-wrap img {
    animation-delay: 50ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+3) .image-wrap img {
    animation-delay: 100ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+4) .image-wrap img {
    animation-delay: 150ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+5) .image-wrap img {
    animation-delay: 200ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+6) .image-wrap img {
    animation-delay: 250ms;
}
.aos-animate[data-aos=row-of-3]:nth-child(3n+2) .collection-image {
    animation-delay: 150ms;
}
.aos-animate[data-aos=row-of-3]:nth-child(3n+3) .collection-image {
    animation-delay: 300ms;
}
.aos-animate[data-aos=row-of-4]:nth-child(4n+2) .collection-image {
    animation-delay: 120ms;
}
.aos-animate[data-aos=row-of-4]:nth-child(4n+3) .collection-image {
    animation-delay: 240ms;
}
.aos-animate[data-aos=row-of-4]:nth-child(4n+4) .collection-image {
    animation-delay: 360ms;
}
.aos-animate[data-aos=row-of-5]:nth-child(5n+2) .collection-image {
    animation-delay: 75ms;
}
.aos-animate[data-aos=row-of-5]:nth-child(5n+3) .collection-image {
    animation-delay: 150ms;
}
.aos-animate[data-aos=row-of-5]:nth-child(5n+4) .collection-image {
    animation-delay: 225ms;
}
.aos-animate[data-aos=row-of-5]:nth-child(5n+5) .collection-image {
    animation-delay: 300ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+2) .collection-image {
    animation-delay: 50ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+3) .collection-image {
    animation-delay: 100ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+4) .collection-image {
    animation-delay: 150ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+5) .collection-image {
    animation-delay: 200ms;
}
.aos-animate[data-aos=row-of-6]:nth-child(6n+6) .collection-image {
    animation-delay: 250ms;
}
.loading:after, .loading:before, .unload:after, .unload:before {
    background: var(--colorBody);
    content: "";
    height: 3px;
    left: 50%;
    margin: -1px 0 0 -50px;
    opacity: 0;
    position: absolute;
    top: 50%;
    width: 100px;
    z-index: 4;
}
.no-js .loading:after, .no-js .loading:before, .no-js .unload:after, .no-js .unload:before {
    display: none;
}
.loading:before, .unload:before {
    background: var(--colorTextBody);
    opacity: 1;
}
.loading:after, .unload:after {
    animation: preloading 0.5s ease 0.3s infinite;
    opacity: 0;
}
.loading--delayed:before {
    animation-delay: 0.8s !important;
    animation-duration: 1s !important;
}
.loading--delayed:after {
    animation-delay: 1.3s !important;
}
.appear-animation {
    opacity: 0;
    transform: translateY(60px);
}
[data-disable-animations=true] .appear-animation {
    opacity: 1;
    transform: none;
}
.js-drawer-open .appear-animation {
    opacity: 1;
    transform: translateY(0px);
}
.js-drawer-closing .appear-animation {
    transition-delay: 0.5s;
    transition-duration: 0s;
}
tool-tip[data-tool-tip-open=true] .tool-tip__inner {
    padding: 45px;
}
@media only screen and (max-width:768px) {
    tool-tip[data-tool-tip-open=true] .tool-tip__inner {
        padding: 45px 20px 20px;
    }
}
.tool-tip__close {
    padding: 10px;
}
[data-center-text=center] product-recommendations[data-intent=complementary] .grid-product__colors {
    justify-content: flex-start;
}
@media only screen and (max-width:768px) {
    predictive-search .search__results {
        margin-left: -20px;
        margin-right: -10px;
        width: calc(100% + 30px);
    }
    predictive-search form {
        margin: 0 10px 0 20px;
    }
}
[data-center-text=center] .footer-promotions {
    text-align: center;
}
@media only screen and (max-width:768px) {
    .footer-promotions .grid__item {
        margin-bottom: 32px;
    }
    .footer-promotions .grid__item:last-child {
        margin-bottom: 0;
    }
}
.site-footer {
    background-color: var(--colorFooter);
    color: var(--colorFooterText);
    padding-bottom: 30px;
}
@media only screen and (min-width:769px) {
    .site-footer {
        padding-bottom: 20px;
        padding-top: 20px;
    }
}
.site-footer .footer__collapsible {
    font-size: calc(var(--typeBaseSize)*0.85);
}
@media only screen and (min-width:769px) {
    .site-footer input, .site-footer select, .site-footer textarea {
        font-size: calc(var(--typeBaseSize)*0.85);
    }
}
@media only screen and (max-width:768px) {
    [data-center-text=center] .site-footer {
        text-align: center;
    }
    .site-footer {
        padding-bottom: 0;
    }
    .site-footer .grid__item:after {
        border-bottom: 1px solid;
        border-bottom-color: var(--colorFooterText);
        content: "";
        display: block;
        opacity: 0.12;
    }
    .site-footer .grid__item:last-child:after {
        display: none;
    }
    .site-footer button.footer__title {
        margin: 0;
    }
}
.site-footer a {
    color: var(--colorFooterText);
}
.footer__small-text {
    font-size: max(calc(var(--typeBaseSize)*0.7), 12px);
    margin: 0;
    padding: 7.5px 0;
    text-align: center;
}
ul+.footer__small-text {
    padding-top: 15px;
}
.footer__clear {
    clear: both;
    height: 30px;
}
.footer__section {
    margin-bottom: 15px;
}
@media only screen and (min-width:769px) {
    .footer__section {
        margin-bottom: 0;
        margin-top: 30px;
    }
    .footer__item-padding {
        padding: 0 10px;
    }
}
.footer__title {
    color: var(--colorFooterText);
}
@media only screen and (min-width:769px) {
    .footer__title {
        margin-bottom: 20px;
    }
}
@media only screen and (max-width:768px) {
    [data-center-text=center] .footer__title {
        text-align: center;
    }
}
.site-footer__linklist {
    margin: 0;
}
.site-footer__linklist a {
    color: currentColor;
    display: inline-block;
    padding: 4px 0;
}
.footer__newsletter {
    display: inline-block;
    max-width: 300px;
    position: relative;
    width: 100%;
}
.footer__newsletter-input {
    background-color: var(--colorFooter);
    border: 0;
    border-bottom: 2px solid;
    border-bottom-color: var(--colorFooterText);
    border-radius: 0;
    color: var(--colorFooterText);
    max-width: 300px;
    padding: 10px 45px 10px 0;
    width: 100%;
}
.footer__newsletter-input:focus {
    border: 0;
    border-bottom: 2px solid;
    border-bottom-color: var(--colorFooterText);
}
.footer__newsletter-input::-webkit-input-placeholder {
    color: var(--colorFooterText);
    opacity: 1;
}
.footer__newsletter-input:-moz-placeholder {
    color: var(--colorFooterText);
    opacity: 1;
}
.footer__newsletter-input::-moz-placeholder {
    color: var(--colorFooterText);
    opacity: 1;
}
.footer__newsletter-input:-ms-input-placeholder {
    color: var(--colorFooterText);
    opacity: 1;
}
.footer__newsletter-input::-ms-input-placeholder {
    color: var(--colorFooterText);
    opacity: 1;
}
.footer__newsletter-input--active {
    padding-right: 80px;
}
.footer__newsletter-btn {
    color: var(--colorFooterText);
    padding: 0;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.footer__newsletter-btn .icon {
    height: 24px;
    width: 26px;
}
.footer__newsletter-input--active+.footer__newsletter-btn .icon {
    display: none;
}
.footer__newsletter-input--active+.footer__newsletter-btn .footer__newsletter-btn-label {
    display: block;
}
.footer__newsletter-btn-label {
    display: none;
    font-size: calc(var(--typeBaseSize)*0.85);
}
.footer__logo {
    margin: 15px 0;
}
@media only screen and (min-width:769px) {
    .footer__logo {
        margin: 0 0 20px;
    }
}
.footer__logo a {
    display: block;
}
.footer__logo img {
    display: inline-block;
    max-height: 100%;
    transform: translateZ(0);
}
.footer__social {
    margin: 0;
}
form+.footer__social {
    margin-top: 30px;
}
.footer__social li {
    display: inline-block;
    margin: 0 15px 15px 0;
}
.footer__social a {
    display: block;
}
.footer__social .icon {
    height: 22px;
    width: 22px;
}
@media only screen and (min-width:769px) {
    .footer__social .icon {
        height: 24px;
        width: 24px;
    }
}
.footer__social .icon.icon--wide {
    width: 40px;
}
@media only screen and (max-width:768px) {
    .footer__collapsible {
        padding: 0 0 15px 0;
    }
}
@media only screen and (max-width:768px) {
    .footer_collapsible--disabled {
        padding-top: 15px;
    }
}
.collapsible-content__inner p a:after {
    border-bottom: 2px solid;
    border-bottom-color: var(--colorFooterText);
    bottom: -2px;
    content: "";
    left: 0;
    position: absolute;
    transition: width 0.5s ease;
    width: 0;
}
.collapsible-content__inner p a {
    border-bottom: 2px solid;
    border-color: var(--colorFooterTextAlpha01);
    position: relative;
    -webkit-text-decoration: none;
    text-decoration: none;
}
.collapsible-content__inner p a:focus:after, .collapsible-content__inner p a:hover:after {
    width: 100%;
}
.site-footer select {
    background-image: var(--urlIcoSelectFooter);
}
[data-center-text=center] .payment-icons {
    text-align: center;
}
.payment-icons {
    text-align: center;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}
.payment-icons li {
    cursor: default;
    margin: 0 4px 0;
}
@media only screen and (max-width:768px) {
    .footer__follow-on-shop {
        margin: 15px 0;
    }
}
.errors, .note {
    border: 1px solid transparent;
    border-radius: 0;
    margin-bottom: 15px;
    padding: 6px 12px;
    text-align: left;
}
.errors ol, .errors ul, .note ol, .note ul {
    margin-bottom: 0;
    margin-top: 0;
}
.errors li:last-child, .note li:last-child {
    margin-bottom: 0;
}
.errors p, .note p {
    margin-bottom: 0;
}
.note {
    border-color: var(--colorBorder);
}
.errors ul {
    list-style: disc outside;
    margin-left: 20px;
}
.note--success {
    background-color: #ecfef0;
    border-color: #56ad6a;
    color: #56ad6a;
}
.note--success a {
    color: #56ad6a;
    -webkit-text-decoration: underline;
    text-decoration: underline;
}
.note--success a:hover {
    -webkit-text-decoration: none;
    text-decoration: none;
}
.errors, .form-error {
    background-color: #fff6f6;
    border-color: #d02e2e;
    color: #d02e2e;
}
.errors a, .form-error a {
    color: #d02e2e;
    -webkit-text-decoration: underline;
    text-decoration: underline;
}
.errors a:hover, .form-error a:hover {
    -webkit-text-decoration: none;
    text-decoration: none;
}
.pagination {
    margin: 0;
    padding: 60px 0;
    text-align: center;
}
.pagination>span {
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
}
.pagination a {
    display: inline-block;
}
.pagination .page.current, .pagination a {
    padding: 8px 12px;
}
.pagination .page.current {
    opacity: 0.3;
}
.pagination .next, .pagination .prev {
    background: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
    margin: 0 10px;
    width: 43px;
}
@media only screen and (max-width:768px) {
    .pagination .next, .pagination .prev {
        width: 35px;
    }
}
.pagination .next a, .pagination .prev a {
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 15px;
}
.pagination .next .icon, .pagination .prev .icon {
    color: var(--colorBtnPrimaryText);
    height: 14px;
    width: 13px;
}
@media only screen and (max-width:768px) {
    .pagination .next .icon, .pagination .prev .icon {
        height: 12px;
        width: 12px;
    }
}
.rte {
    margin-bottom: 7.5px;
}
.rte:after {
    clear: both;
    content: "";
    display: table;
}
@media only screen and (min-width:769px) {
    .rte {
        margin-bottom: 15px;
    }
}
.rte:last-child {
    margin-bottom: 0;
}
.rte+.rte {
    margin-top: 30px;
}
.rte ol, .rte p, .rte table, .rte ul {
    margin-bottom: 15px;
}
@media only screen and (min-width:769px) {
    .rte ol, .rte p, .rte table, .rte ul {
        margin-bottom: 25px;
    }
}
.rte ol:last-child, .rte p:last-child, .rte table:last-child, .rte ul:last-child {
    margin-bottom: 0;
}
.rte ul ul {
    margin-bottom: 0;
}
.rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6 {
    margin-bottom: 25px;
    margin-top: 60px;
}
.rte h1:first-child, .rte h2:first-child, .rte h3:first-child, .rte h4:first-child, .rte h5:first-child, .rte h6:first-child {
    margin-top: 0;
}
.rte h1 a, .rte h2 a, .rte h3 a, .rte h4 a, .rte h5 a, .rte h6 a {
    -webkit-text-decoration: none;
    text-decoration: none;
}
.rte meta:first-child+h1, .rte meta:first-child+h2, .rte meta:first-child+h3, .rte meta:first-child+h4, .rte meta:first-child+h5, .rte meta:first-child+h6 {
    margin-top: 0;
}
.rte>div {
    margin-bottom: 15px;
}
.rte>div:last-child {
    margin-bottom: 0;
}
.rte li {
    margin-bottom: 0;
}
.rte table {
    table-layout: fixed;
}
.rte--block {
    margin-bottom: 8px;
}
@media only screen and (min-width:769px) {
    .rte--block {
        margin-bottom: 12px;
    }
}
.rte-setting>p:last-child {
    margin-bottom: 0;
}
.rte a, .rte-setting a {
    -webkit-text-decoration: none;
    text-decoration: none;
}
.rte img, .rte-setting img {
    height: auto;
}
.rte a:not(.rte__image):not(.btn), .rte-setting a:not(.rte__image):not(.btn) {
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0% 2px;
    -webkit-text-decoration: underline;
    text-decoration: underline;
    text-decoration-color: var(--colorTextBodyAlpha015);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: background-size 0.5s ease;
}
.rte a:not(.rte__image):not(.btn):hover, .rte-setting a:not(.rte__image):not(.btn):hover {
    background-size: 100% 2px;
}
.rte a:not(.btn):focus:after, .rte a:not(.btn):hover:after, .rte-setting a:not(.btn):focus:after, .rte-setting a:not(.btn):hover:after {
    width: 100%;
}
.rte a.rte__image:after, .rte-setting a.rte__image:after {
    content: none;
}
.text-center .rte ol, .text-center .rte ul, .text-center.rte ol, .text-center.rte ul {
    list-style-position: inside;
    margin-left: 0;
}
.rte--nomargin {
    margin-bottom: 0;
}
.rte b, .rte strong, .rte-setting b, .rte-setting strong {
    font-weight: 700;
}
.header-layout {
    display: flex;
    justify-content: space-between;
}
.header-layout--center {
    align-items: center;
}
.header-item {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
}
.header-item--logo {
    flex: 0 0 auto;
}
.header-item--icons {
    flex: 0 1 auto;
    justify-content: flex-end;
}
.header-layout--left-center .header-item--icons, .header-layout--left-center .header-item--logo {
    flex: 0 0 200px;
    max-width: 50%;
}
@media only screen and (min-width:769px) {
    .header-layout--left-center .header-item--icons, .header-layout--left-center .header-item--logo {
        min-width: 130px;
    }
}
@media only screen and (min-width:769px) {
    .header-layout[data-logo-align=center] .header-item--logo {
        margin: 0 30px;
    }
}
.header-layout[data-logo-align=center] .header-item--icons, .header-layout[data-logo-align=center] .header-item--navigation {
    flex: 1 1 130px;
}
.header-layout[data-logo-align=left] .site-header__logo {
    margin-right: 10px;
}
.header-item--logo-split {
    align-items: center;
    display: flex;
    flex: 1 1 100%;
    justify-content: center;
}
.header-item--logo-split .header-item:not(.header-item--logo) {
    flex: 1 1 20%;
    text-align: center;
}
.header-item--split-left {
    justify-content: flex-end;
}
.header-item--left .site-nav {
    margin-left: -12px;
}
@media only screen and (max-width:768px) {
    .header-item--left .site-nav {
        margin-left: -7.5px;
    }
}
.header-item--icons .site-nav {
    margin-right: -12px;
}
@media only screen and (max-width:768px) {
    .header-item--icons .site-nav {
        margin-right: -7.5px;
    }
}
.site-header {
    background: var(--colorNav);
    padding: 7px 0;
    position: relative;
}
@media only screen and (min-width:769px) {
    .site-header {
        padding: 15px 0;
    }
    .toolbar+.header-sticky-wrapper .site-header {
        border-top: 1px solid;
        border-top-color: var(--colorHeaderTextAlpha01);
    }
}
.site-header--stuck {
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    transform: translate3d(0, -100%, 0);
    transition: none;
    z-index: 20;
}
.js-drawer-open--search .site-header--stuck {
    z-index: 28;
}
@media only screen and (min-width:769px) {
    .site-header--stuck {
        padding: 10px 0;
    }
}
@media screen and (min-width:700px) and (max-height:550px) {
    .site-header--stuck {
        position: static;
    }
}
.site-header--opening {
    transform: translateZ(0);
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.site-header__logo {
    display: block;
    font-size: 30px;
    margin: 10px 0;
    position: relative;
    z-index: 6;
}
@media only screen and (min-width:769px) {
    .text-center .site-header__logo {
        margin: 10px auto;
        padding-right: 0;
    }
}
.header-layout[data-logo-align=center] .site-header__logo {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.site-header__logo a {
    max-width: 100%;
}
.site-header__logo a, .site-header__logo a:hover {
    -webkit-text-decoration: none;
    text-decoration: none;
}
.site-header__logo img {
    display: block;
}
.site-header .site-header__logo img {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}
.site-header__logo-link {
    align-items: center;
    color: var(--colorNavText);
    display: flex;
    position: relative;
}
.site-header__logo-link:hover {
    color: var(--colorNavText);
}
@media only screen and (max-width:768px) {
    .site-header__logo-link {
        margin: 0 auto;
    }
}
.header-sticky-wrapper {
    position: relative;
    z-index: 28;
}
.js-drawer-open:not(.js-drawer-open--search) .header-sticky-wrapper {
    z-index: 6;
}
.header-wrapper--sticky {
    background: none;
    background: linear-gradient(180deg, rgba(0, 0, 0, .3) 0%, transparent);
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 6;
}
.header-wrapper--sticky .site-header:not(.site-header--stuck) {
    background: none;
}
.js-drawer-open--search .header-wrapper--sticky {
    z-index: 28;
}
.site-header__search-container {
    bottom: 200%;
    display: none;
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    z-index: 28;
}
.site-header__search-container.is-active {
    bottom: 0;
    display: block;
    overflow: visible;
}
.site-header__search {
    background-color: var(--colorBody);
    bottom: 0;
    box-shadow: 0 15px 45px rgba(0, 0, 0, .1);
    color: var(--colorTextBody);
    display: flex;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translate3d(0, -110%, 0);
    z-index: 28;
}
.site-header__search .page-width {
    align-items: stretch;
    display: flex;
    flex: 1 1 100%;
}
@media only screen and (max-width:768px) {
    .site-header__search .page-width {
        padding: 0;
    }
}
.is-active .site-header__search {
    transform: translateZ(0);
}
.site-header__search .icon {
    height: 30px;
    width: 30px;
}
.site-header__search-input {
    border: 0;
    flex: 1 1 auto;
    width: 100px;
}
.site-header__search-input:focus {
    border: 0;
    outline: 0;
}
.site-header__search-btn {
    padding: 0 15px;
}
@media only screen and (min-width:769px) {
    .site-header__search-btn--submit {
        padding: 0 15px 0 0;
    }
    .site-header__search-btn--submit .icon {
        height: 28px;
        position: relative;
        top: -1px;
        width: 28px;
    }
}
.predictive-results {
    background-color: var(--colorBody);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .09);
    color: var(--colorTextBody);
    left: 0;
    max-height: 70vh;
    max-height: calc(90vh - 100%);
    overflow: auto;
    position: absolute;
    right: 0;
    top: 100%;
}
@media only screen and (min-width:769px) {
    .predictive-results {
        max-height: calc(100vh - 100% - 33px);
    }
}
.predictive__label {
    border-bottom: 1px solid;
    border-bottom-color: var(--colorBorder);
    margin-bottom: 20px;
    padding-bottom: 5px;
}
.predictive-result__layout {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    padding: 10px;
}
.predictive-result__layout>div {
    margin: 0 10px 30px;
}
.predictive-result__layout>div:last-child {
    margin-bottom: 0;
}
.predictive-result__layout [data-type-products] {
    flex: 1 1 60%;
    margin-bottom: 0;
}
@media only screen and (max-width:768px) {
    .predictive-result__layout [data-type-products] {
        margin-left: -17px;
    }
    html[dir=rtl] .predictive-result__layout [data-type-products] {
        margin-left: 0;
        margin-right: -17px;
    }
}
.predictive-result__layout [data-type-products] .grid-product__image {
    height: auto;
    opacity: 1;
}
.predictive-result__layout [data-type-collections], .predictive-result__layout [data-type-pages] {
    flex: 1 1 200px;
}
.predictive-result__layout [data-type-articles] {
    flex: 1 1 60%;
}
.predictive-result__layout [data-type-articles] .grid-product__link--inline {
    gap: 10px;
}
.predictive__image-wrap {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.predictive__image-wrap img {
    -o-object-position: 50% 0;
    object-position: 50% 0;
}
.predictive-results__footer {
    padding: 0 0 30px;
}
.search-bar {
    max-width: 100%;
}
.search-bar--page {
    margin-top: -15px;
    max-width: 300px;
}
[data-type_headers_align_text=center] .search-bar--page {
    margin: -15px auto 0;
}
.search-bar--drawer {
    border-bottom: 1px solid;
    border-bottom-color: var(--colorDrawerBorder);
    margin-bottom: 15px;
    padding-bottom: 15px;
}
.search-bar--drawer input {
    border: 0;
}
.search-bar .icon {
    height: 24px;
    vertical-align: middle;
    width: 24px;
}
.toolbar {
    background: var(--colorNav);
    color: var(--colorNavText);
    font-size: calc(var(--typeBaseSize)*0.85);
}
.toolbar a {
    color: var(--colorNavText);
}
.site-header--stuck .toolbar {
    display: none;
}
.toolbar--transparent {
    background-color: transparent;
    border-bottom: none;
    color: #fff;
}
.toolbar--transparent a {
    color: #fff;
}
.toolbar--transparent .toolbar__content {
    border-bottom: 1px solid hsla(0, 0%, 100%, .2);
}
.toolbar__content {
    align-items: center;
    display: flex;
    justify-content: flex-end;
}
.toolbar__item {
    flex: 0 1 auto;
    padding: 0 5px;
}
.toolbar__item:first-child {
    padding-left: 0;
}
.toolbar__item:last-child {
    padding-right: 0;
}
.toolbar__item .faux-select, .toolbar__item select {
    font-size: 14px;
    padding-bottom: 5px;
    padding-left: 5px;
    padding-top: 5px;
}
.toolbar__item--menu {
    flex: 1 1 auto;
}
.toolbar__menu {
    margin-left: -10px;
}
.toolbar__menu a {
    display: block;
    padding: 5px 10px;
}
.toolbar__social {
    text-align: right;
}
.toolbar__social a {
    display: block;
    padding: 5px;
}
.toolbar__social .icon {
    height: 16px;
    position: relative;
    top: -2px;
    width: 16px;
}
[data-type_headers_align_text=center] .section-header {
    text-align: center;
}
.section-header select {
    display: inline-block;
    vertical-align: middle;
}
.section-header--flush {
    margin-bottom: 0;
}
.section-header--with-link {
    align-items: center;
    display: flex;
}
.section-header--with-link select {
    flex: 0 1 auto;
}
.section-header--hero {
    color: var(--colorHeroText);
    flex: 1 1 100%;
    margin-bottom: 0;
    position: relative;
}
.section-header--hero a {
    color: var(--colorHeroText);
}
.section-header__shadow {
    display: inline-block;
    position: relative;
}
.section-header__shadow:before {
    background: radial-gradient(rgba(0, 0, 0, var(--colorImageOverlayTextShadow)) 0%, transparent 60%);
    bottom: 0;
    content: "";
    left: 0;
    margin: -100px -200px -100px -200px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: auto;
    z-index: -1;
}
.section-header__shadow .breadcrumb, .section-header__shadow .section-header__title {
    position: relative;
}
.section-header__title {
    margin-bottom: 0;
    font-family: math;
    font-weight: 700;
    font-size: 36px !important;
}
}
.section-header--with-link .section-header__title {
    flex: 1 1 auto;
}
.page-content--top {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 180px;
}
@media only screen and (min-width:769px) {
    .section-header--hero .section-header__title {
        font-size: 36px;
    }
}
.section-header__link {
    flex: 0 1 auto;
    margin-top: 25px;
}
.section-header--with-link .section-header__link {
    margin-top: 0;
}
.section-header--404 {
    padding-top: 80px;
}
.section-header select {
    margin: 10px 0;
}
.section-header p {
    margin: 10px 0;
}
.site-nav {
    margin: 0;
}
.text-center .site-navigation {
    margin: 0 auto;
}
.header-layout--left .site-navigation {
    padding-left: 10px;
}
.site-nav__icons {
    white-space: nowrap;
}
.site-nav__item {
    display: inline-block;
    margin: 0;
    position: relative;
}
.site-nav__item li {
    display: block;
}
.site-nav__item .icon-chevron-down {
    height: 10px;
    width: 10px;
}
.site-nav__link {
    color: var(--colorNavText);
    display: inline-block;
    padding: 7.5px 15px;
    -webkit-text-decoration: none;
    text-decoration: none;
    vertical-align: middle;
    white-space: nowrap;
}
.site-header--heading-style .site-nav__link {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight);
}
[data-type_header_capitalize=true] .site-header--heading-style .site-nav__link {
    text-transform: uppercase;
}
.site-nav__link:hover {
    color: var(--colorNavText);
}
.is-light .site-nav__link {
    color: #fff;
}
.is-light .site-nav__link:hover {
    color: #fff;
}
.site-nav--has-dropdown>.site-nav__link {
    position: relative;
    z-index: 6;
}
.site-nav__link .icon-chevron-down {
    margin-left: 5px;
}
@media only screen and (max-width:959px) {
    .site-nav__link {
        padding: 7.5px;
    }
    .header-layout--center .site-nav__link {
        padding-left: 2px;
        padding-right: 2px;
    }
}
.site-nav__link--underline {
    position: relative;
}
.site-nav__link--underline:after {
    border-bottom: 2px solid;
    border-bottom-color: var(--colorNavText);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    margin: 0 15px;
    position: absolute;
    right: 100%;
    transition: right 0.5s;
}
[data-disable-animations=true] .site-nav__link--underline:after {
    transition: none;
}
.is-light .site-nav__item:not(.site-nav--has-dropdown) .site-nav__link--underline:after {
    border-bottom-color: #fff;
}
.site-nav--has-dropdown .site-nav__link--underline:after {
    border-bottom-color: var(--colorNavText);
}
.is-light .site-nav--has-dropdown .site-nav__link--underline:after {
    border-bottom-color: #fff;
}
.site-nav__item:hover .site-nav__link--underline:after {
    right: 0;
}
.site-nav__details {
    cursor: pointer;
}
.site-nav--has-dropdown {
    z-index: 6;
}
.site-nav--has-dropdown.is-focused, .site-nav--has-dropdown:hover {
    z-index: 7;
}
.site-nav--has-dropdown.is-focused>a, .site-nav--has-dropdown:hover>a {
    color: var(--colorTextBody) !important;
}
.site-nav--has-dropdown.is-focused>a, .site-nav--has-dropdown:hover>a {
    background-color: var(--colorBody);
    opacity: 1;
    transition: none;
}
.site-nav__link--icon {
    padding-left: 12px;
    padding-right: 12px;
}
@media only screen and (max-width:768px) {
    .site-nav__link--icon {
        padding-left: 7.5px;
        padding-right: 7.5px;
    }
    .site-nav__link--icon+.site-nav__link--icon {
        margin-left: -4px;
    }
}
.site-nav__link--icon .icon {
    height: 30px;
    width: 30px;
}
.site-nav__dropdown {
    background-color: var(--colorBody);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .09);
    display: block;
    left: 0;
    margin: 0;
    min-width: 100%;
    padding: 10px 0 5px;
    position: absolute;
    transform: translate3d(0, -12px, 0);
    visibility: hidden;
    z-index: 5;
}
details[open]>.site-nav__dropdown {
    display: block;
    transform: translateZ(0);
    transition: all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95);
    visibility: visible;
}
.site-nav__dropdown li {
    margin: 0;
}
.site-nav__dropdown>li {
    position: relative;
}
.site-nav__dropdown>li>a {
    position: relative;
    z-index: 6;
}
.site-nav__dropdown a {
    background-color: var(--colorBody);
}
.site-nav__deep-dropdown {
    background-color: var(--colorBody);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .09);
    left: 100%;
    margin: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transform: translate3d(-12px, 0, 0);
    visibility: hidden;
    z-index: 5;
}
.is-focused+.site-nav__deep-dropdown, .site-nav__deep-dropdown-trigger:hover .site-nav__deep-dropdown {
    opacity: 1;
    transform: translateZ(0);
    transition: all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95);
    visibility: visible;
}
.site-nav__deep-dropdown:before {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .09), transparent);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 10px;
}
.site-nav__deep-dropdown-trigger:hover .site-nav__dropdown-link--has-children {
    background-color: var(--colorBodyDim);
}
.site-nav__dropdown-link--has-children:focus, .site-nav__dropdown-link--has-children:hover {
    background-color: var(--colorBodyDim);
}
.site-nav__deep-dropdown-trigger .icon-chevron-down {
    height: 10px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: rotate(-90deg) translateX(50%);
    width: 10px;
}
.site-nav__details[open] .site-nav__dropdown {
    z-index: 8;
}
.mobile-nav {
    margin: calc(var(--drawer-gutter)*-1) calc(var(--drawer-gutter)*-1) 0;
}
.mobile-nav li {
    list-style: none;
    margin-bottom: 0;
}
.mobile-nav__search {
    padding: 15px;
}
.mobile-nav__item {
    display: block;
    position: relative;
}
.mobile-nav>.mobile-nav__item {
    background-color: var(--colorDrawers);
}
.mobile-nav__item:after {
    border-bottom: 1px solid;
    border-bottom-color: var(--colorDrawerBorder);
    bottom: 0;
    content: "";
    left: var(--drawer-gutter);
    position: absolute;
    right: var(--drawer-gutter);
}
.mobile-nav__faux-link, .mobile-nav__link {
    display: block;
}
.mobile-nav__link--top-level {
    font-size: 1.4em;
}
.mobile-nav--heading-style .mobile-nav__link--top-level {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight);
}
[data-type_header_capitalize=true] .mobile-nav--heading-style .mobile-nav__link--top-level {
    text-transform: uppercase;
}
.mobile-nav__faux-link, .mobile-nav__link, .mobile-nav__toggle .faux-button, .mobile-nav__toggle button {
    color: var(--colorDrawerText);
    padding: 15px var(--drawer-gutter);
    -webkit-text-decoration: none;
    text-decoration: none;
}
.mobile-nav__faux-link:active, .mobile-nav__link:active, .mobile-nav__toggle .faux-button:active, .mobile-nav__toggle button:active {
    color: var(--colorDrawerTextDark);
}
.mobile-nav__faux-link:active, .mobile-nav__link:active, .mobile-nav__toggle .faux-button:active, .mobile-nav__toggle button:active {
    background-color: var(--colorDrawersDim);
}
.mobile-nav__child-item {
    display: flex;
}
.mobile-nav__child-item .mobile-nav__link, .mobile-nav__child-item a {
    flex: 1 1 auto;
}
.mobile-nav__child-item .collapsible-trigger:not(.mobile-nav__link--button) {
    flex: 0 0 43px;
}
.mobile-nav__child-item .collapsible-trigger__icon {
    margin-right: 15px;
    padding: 0;
}
[dir=rtl] .mobile-nav__child-item .collapsible-trigger__icon {
    margin-left: 15px;
    margin-right: 0;
}
.mobile-nav__item--secondary a {
    padding-bottom: 5px;
    padding-top: 10px;
}
.mobile-nav__item--secondary:after {
    display: none;
}
.mobile-nav__item:not(.mobile-nav__item--secondary)+.mobile-nav__item--secondary {
    margin-top: 10px;
}
.mobile-nav__has-sublist, .mobile-nav__link--button {
    display: flex;
}
.mobile-nav__has-sublist>*, .mobile-nav__link--button>* {
    flex: 1 1 auto;
    word-break: break-word;
}
.mobile-nav__link--button {
    padding: 0;
    text-align: left;
    width: 100%;
}
.mobile-nav__toggle {
    flex: 0 1 auto;
}
.mobile-nav__toggle .icon {
    height: 16px;
    width: 16px;
}
.mobile-nav__toggle .faux-button, .mobile-nav__toggle button {
    height: 60%;
    margin: 20% 0;
    padding: 0 30px;
}
.mobile-nav__toggle button {
    border-left: 1px solid;
    border-left-color: var(--colorDrawerBorder);
}
[dir=rtl] .mobile-nav__toggle button {
    border-left: none;
    border-right: 1px solid;
    border-right-color: var(--colorDrawerBorder);
}
.mobile-nav__sublist {
    margin: 0;
}
.mobile-nav__sublist .mobile-nav__item:after {
    border-bottom: none;
    bottom: auto;
    top: 0;
}
.mobile-nav__sublist .mobile-nav__item:last-child {
    padding-bottom: 15px;
}
.mobile-nav__sublist .mobile-nav__faux-link, .mobile-nav__sublist .mobile-nav__link {
    font-weight: 400;
    padding: 7.5px 25px 7.5px var(--drawer-gutter);
}
.mobile-nav__grandchildlist {
    margin: 0;
}
.mobile-nav__grandchildlist:before {
    background: #000;
    bottom: 10px;
    content: "";
    display: block;
    left: 17px;
    position: absolute;
    top: 10px;
    width: 1px;
}
[dir=rtl] .mobile-nav__grandchildlist:before {
    left: auto;
    right: 17px;
}
.mobile-nav__grandchildlist .mobile-nav__item:last-child {
    padding-bottom: 0;
}
.mobile-nav__grandchildlist .mobile-nav__link {
    padding-left: 35px;
}
.mobile-nav__social {
    display: flex;
    flex-wrap: wrap;
    justify-content: stretch;
    list-style: none outside;
    margin: 15px 0 20px 0;
}
@media only screen and (min-width:769px) {
    .mobile-nav__social {
        margin-left: calc(var(--drawer-gutter)*-1);
        margin-right: calc(var(--drawer-gutter)*-1);
    }
}
.mobile-nav__social a {
    display: block;
    padding: 12px 30px;
}
.mobile-nav__social a .icon {
    position: relative;
    top: -1px;
}
.mobile-nav__social-item {
    border: 1px solid;
    border-color: var(--colorDrawerBorder);
    flex: 0 1 33.33%;
    margin: 0 0 -1px;
    text-align: center;
}
.mobile-nav__social-item:nth-child(3n-1) {
    margin-left: -1px;
    margin-right: -1px;
}
@media only screen and (min-width:769px) {
    .site-nav__link--icon .icon {
        height: 28px;
        width: 28px;
    }
    .site-nav__link--icon .icon.icon-user {
        position: relative;
        top: 1px;
    }
}
.cart-link {
    display: block;
    position: relative;
}
.cart-link__bubble {
    display: none;
}
.cart-link__bubble--visible {
    background-color: var(--colorCartDot);
    border: 2px solid var(--colorBody);
    border-radius: 50%;
    display: block;
    height: 15px;
    position: absolute;
    right: 0;
    top: 50%;
    width: 15px;
}
[data-icon=cart] .cart-link__bubble--visible {
    right: -4px;
    top: 0;
}
[data-icon=bag-minimal] .cart-link__bubble--visible {
    right: 0;
    top: 50%;
}
[data-type_headers_align_text=center] .breadcrumb {
    text-align: center;
}
.breadcrumb {
    font-size: calc(var(--typeBaseSize)*0.85);
    margin: -25px 0 10px;
}
.template-product .breadcrumb {
    margin-top: 10px;
}
@media only screen and (min-width:769px) {
    .template-product .breadcrumb {
        text-align: left;
    }
}
@media only screen and (max-width:768px) {
    .breadcrumb {
        margin-bottom: 15px;
    }
}
.breadcrumb__divider {
    color: currentColor;
}
.megamenu {
    line-height: 1.8;
    opacity: 0;
    padding: 39px 0;
    transform: none;
    transition: all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95);
    transition-delay: 0.3s;
}
details[open]>.megamenu {
    opacity: 1;
    transition-delay: 0s;
}
details[open]>.megamenu .appear-animation {
    opacity: 1;
    transform: none;
}
.site-nav--is-megamenu.site-nav__item {
    position: static;
}
.megamenu__collection-image {
    display: block;
    height: 100%;
    margin-bottom: 20px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.text-center .megamenu .grid {
    text-align: center;
}
.text-center .megamenu .grid .grid__item {
    display: inline-block;
    float: none;
    text-align: left;
    vertical-align: top;
}
.megamenu .site-nav__dropdown-link:not(.site-nav__dropdown-link--top-level) {
    font-size: calc(var(--typeBaseSize) - 1px);
    line-height: 1.5;
}
.megamenu .h5, .megamenu h5 {
    font-weight: 700;
    margin-bottom: 5px;
}
.modal {
    align-items: center;
    bottom: 0;
    color: #fff;
    display: none;
    justify-content: center;
    left: 0;
    opacity: 1;
    overflow: hidden;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 30;
}
.modal.modal--quick-shop {
    align-items: flex-start;
}
.modal a, .modal a:hover {
    color: inherit;
}
.modal .btn:not([disabled]):not(.btn--secondary):not(.btn--body), .modal .btn:not([disabled]):not(.btn--secondary):not(.btn--body):hover {
    color: var(--colorBtnPrimaryText);
}
.modal-open .modal .modal__inner {
    animation: modal-open 0.5s forwards;
}
.modal-open .modal:before {
    animation: overlay-on 0.5s forwards;
    background-color: var(--colorModalBg);
    content: "";
    cursor: pointer;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}
.modal-closing .modal .modal__inner {
    animation: modal-closing 0.5s forwards;
}
.modal-closing .modal:before {
    animation: overlay-off 0.5s forwards;
    background-color: var(--colorModalBg);
    content: "";
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}
.modal-open--solid .modal:before {
    background-color: var(--colorModalBg);
}
.modal-open .modal--solid:before {
    animation: full-overlay-on 0.5s forwards;
    background-color: #000;
}
.modal-closing .modal--solid:before {
    animation: full-overlay-off 0.5s forwards;
    background-color: #000;
}
.modal--is-closing {
    display: flex !important;
}
.modal--is-closing {
    overflow: hidden;
}
.modal--is-active {
    display: flex !important;
}
.modal--is-active {
    overflow: hidden;
}
@media only screen and (min-width:769px) {
    .modal-open {
        overflow: hidden;
    }
}
.modal__inner {
    align-items: center;
    display: flex;
    flex: 0 1 auto;
    margin: 15px;
    max-width: calc(100% - 15px);
    transform-style: preserve-3d;
}
@media only screen and (min-width:769px) {
    .modal__inner {
        margin: 40px;
        max-width: calc(100% - 80px);
    }
}
.modal--square .modal__inner {
    background-color: var(--colorBody);
    box-shadow: 0 15px 45px rgba(0, 0, 0, .1);
    color: var(--colorTextBody);
}
.modal__inner img {
    display: block;
    max-height: 90vh;
}
.modal__inner .image-wrap img {
    max-height: none;
}
.modal__centered {
    flex: 0 1 auto;
    max-width: 100%;
    min-width: 1px;
    position: relative;
}
.modal--square .modal__centered-content {
    -webkit-overflow-scrolling: touch;
    max-height: 80vh;
    min-height: 200px;
    min-width: 200px;
    overflow: auto;
    padding: 22.5px;
}
@media only screen and (min-width:769px) {
    .modal--square .modal__centered-content {
        max-height: 90vh;
        max-width: 1200px;
        padding: 45px;
    }
}
.modal__close {
    border: 0;
    color: #fff;
    padding: 15px;
    position: fixed;
    right: 0;
    top: 0;
}
@media only screen and (min-width:769px) {
    .modal__close {
        padding: 30px;
    }
}
.modal__close .icon {
    height: 28px;
    width: 28px;
}
.modal__close:focus, .modal__close:hover {
    color: #fff;
}
.modal--square .modal__close {
    color: var(--colorTextBody);
    padding: 10px;
    position: absolute;
}
.modal--square .modal__close:focus, .modal--square .modal__close:hover {
    color: var(--colorTextBody);
}
.modal .page-content, .modal .page-width {
    padding: 0;
}
.popup-cta {
    margin-bottom: 15px;
}
@media only screen and (max-width:768px) {
    .modal--mobile-friendly {
        bottom: 0;
        overflow: auto;
        top: auto;
    }
    .modal--mobile-friendly.modal--square .modal__centered-content {
        padding: 40px 20px;
    }
    .modal--mobile-friendly.modal--is-active {
        overflow: auto;
    }
    .modal-open .modal--mobile-friendly:before {
        display: none;
    }
    .modal--mobile-friendly .modal__inner {
        margin: 0;
    }
    .modal--mobile-friendly .h1 {
        padding-right: 25px;
    }
    .modal--mobile-friendly input {
        font-size: 16px !important;
    }
    .modal--mobile-friendly .text-close {
        display: none;
    }
}
.js-qty__wrapper {
    background-color: var(--colorBody);
    color: var(--colorTextBody);
    display: inline-block;
    max-width: 80px;
    min-width: 60px;
    overflow: visible;
    position: relative;
}
.js-qty__wrapper.is-loading {
    opacity: 0.5;
    pointer-events: none;
}
.js-qty__num {
    background: none;
    display: block;
    margin: 0;
    padding: 5px 20px;
    text-align: center;
    width: 100%;
    z-index: 1;
}
.js-qty__adjust {
    fill: var(--colorTextBody);
    backface-visibility: hidden;
    background: none;
    border: 0 none;
    bottom: 0;
    cursor: pointer;
    display: block;
    line-height: 1;
    overflow: hidden;
    padding: 0 10px;
    position: absolute;
    text-align: center;
    top: 0;
    transition: background-color 0.1s ease-out;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    z-index: 2;
}
.js-qty__adjust .icon {
    fill: inherit;
    display: block;
    font-size: 8px;
    height: 10px;
    vertical-align: middle;
    width: 10px;
}
.js-qty__adjust:hover {
    background-color: var(--colorBodyDim);
    color: var(--colorTextBody);
}
.js-qty__num:active~.js-qty__adjust, .js-qty__num:focus~.js-qty__adjust {
    border-color: var(--colorTextBody);
}
.js-qty__adjust--plus {
    right: 0;
}
.js-qty__adjust--minus {
    left: 0;
}
.drawer .js-qty__wrapper {
    background-color: transparent;
    border-color: var(--colorDrawerBorder);
}
.drawer .js-qty__num {
    color: var(--colorDrawerText);
    padding-bottom: 2px;
    padding-top: 2px;
}
.drawer .js-qty__adjust {
    fill: var(--colorDrawerText);
    color: var(--colorDrawerText);
}
.drawer .js-qty__adjust:hover {
    fill: var(--colorDrawers);
    background-color: var(--colorDrawerText);
    color: var(--colorDrawers);
}
.currency-flag {
    margin: -0.55rem;
    transform: scale(0.55);
}
@media only screen and (max-width:768px) {
    [data-disclosure-currency] .disclosure-list {
        left: 50%;
        max-width: 95vw;
        transform: translateX(-50%);
    }
}
.collapsibles-wrapper--border-bottom {
    border-bottom: 1px solid;
    border-bottom-color: var(--colorBorder);
}
.collapsibles-wrapper--border-bottom+.collapsibles-wrapper--border-bottom .collapsible-trigger-btn--borders {
    border-top: 0;
}
.product-block--tab+.product-block--tab .collapsible-trigger-btn--borders {
    border-top: 0;
}
.collapsible-trigger {
    color: inherit;
    position: relative;
}
.collapsible-trigger__icon {
    display: block;
    height: 10px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
}
@media only screen and (min-width:769px) {
    .collapsible-trigger__icon {
        height: 12px;
        width: 12px;
    }
}
.mobile-nav__has-sublist .collapsible-trigger__icon {
    right: 25px;
}
.collapsible-trigger__icon .icon {
    display: block;
    height: 10px;
    transition: all 0.1s ease-in;
    width: 10px;
}
@media only screen and (min-width:769px) {
    .collapsible-trigger__icon .icon {
        height: 12px;
        width: 12px;
    }
}
.collapsible-trigger--inline {
    padding: 11px 0 11px 40px;
}
.collapsible-trigger--inline .collapsible-trigger__icon {
    left: 0;
    right: auto;
}
.collapsible-trigger__icon--circle {
    border: 1px solid;
    border-color: var(--colorBorder);
    border-radius: 28px;
    height: 28px;
    text-align: center;
    width: 28px;
}
.collapsible-trigger__icon--circle .icon {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}
.collapsible-trigger.is-open .collapsible-trigger__icon>.icon-chevron-down {
    transform: scaleY(-1);
}
.collapsible-trigger.is-open .collapsible-trigger__icon--circle>.icon-chevron-down {
    transform: translate(-50%, -50%) scaleY(-1);
}
.collapsible-content {
    transition: opacity 0.3s cubic-bezier(.25, .46, .45, .94), height 0.3s cubic-bezier(.25, .46, .45, .94);
}
.collapsible-content.is-open {
    opacity: 1;
    transition: opacity 1s cubic-bezier(.25, .46, .45, .94), height 0.35s cubic-bezier(.25, .46, .45, .94);
    visibility: visible;
}
.collapsible-content--all {
    backface-visibility: hidden;
    height: 0;
    opacity: 0;
    overflow: hidden;
    visibility: hidden;
}
.collapsible-content--all .collapsible-content__inner {
    transform: translateY(40px);
}
@media only screen and (max-width:768px) {
    .collapsible-content--small {
        backface-visibility: hidden;
        height: 0;
        opacity: 0;
        overflow: hidden;
        visibility: hidden;
    }
    .collapsible-content--small .collapsible-content__inner {
        transform: translateY(40px);
    }
}
.collapsible-content__inner {
    transition: transform 0.3s cubic-bezier(.25, .46, .45, .94);
}
.is-open .collapsible-content__inner {
    transform: translateY(0);
    transition: transform 0.5s cubic-bezier(.25, .46, .45, .94);
}
.faq-item .collapsible-trigger {
    width: 100%;
}
.rte.collapsible-content__inner--faq {
    padding-bottom: 30px;
}
.collapsible-trigger[aria-expanded=true] .collapsible-label__closed {
    display: none;
}
.collapsible-label__open {
    display: none;
}
.collapsible-trigger[aria-expanded=true] .collapsible-label__open {
    display: inline-block;
}
.collapsible-content--sidebar {
    backface-visibility: hidden;
    height: 0;
    opacity: 0;
    overflow: hidden;
    visibility: hidden;
}
@media only screen and (min-width:769px) {
    .collapsible-content--sidebar.is-open {
        height: auto;
        opacity: 1;
        overflow: initial;
        visibility: visible;
    }
}
.pswp {
    -webkit-text-size-adjust: 100%;
    -webkit-backface-visibility: hidden;
    display: none;
    height: 100%;
    left: 0;
    outline: none;
    overflow: hidden;
    position: absolute;
    top: 0;
    touch-action: none;
    width: 100%;
    z-index: 1500;
}
.pswp img {
    max-width: none;
}
.pswp--animate_opacity {
    opacity: 0.001;
    transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
    will-change: opacity;
}
.pswp--open {
    display: block;
}
.pswp--zoom-allowed .pswp__img {
    cursor: zoom-in;
}
.pswp--zoomed-in .pswp__img {
    cursor: grab;
}
.pswp--dragging .pswp__img {
    cursor: grabbing;
}
.pswp__bg {
    -webkit-backface-visibility: hidden;
    background: var(--colorBody);
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transform: translateZ(0);
    width: 100%;
}
.pswp__scroll-wrap {
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%;
}
.pswp__container, .pswp__zoom-wrap {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    touch-action: none;
}
.pswp__container, .pswp__img {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}
.pswp__zoom-wrap {
    position: absolute;
    transform-origin: left top;
    transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
    width: 100%;
}
.pswp__bg {
    transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
    will-change: opacity;
}
.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
    transition: none;
}
.pswp__container, .pswp__zoom-wrap {
    -webkit-backface-visibility: hidden;
}
.pswp__item {
    bottom: 0;
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
}
.pswp__img {
    height: auto;
    left: 0;
    position: absolute;
    top: 0;
    width: auto;
}
.pswp__img--placeholder {
    -webkit-backface-visibility: hidden;
}
.pswp--ie .pswp__img {
    height: auto !important;
    width: 100% !important;
}
.pswp--ie .pswp__img {
    left: 0;
    top: 0;
}
.pswp__error-msg {
    color: #ccc;
    left: 0;
    line-height: 16px;
    margin-top: -8px;
    position: absolute;
    text-align: center;
    top: 50%;
    width: 100%;
}
.pswp__error-msg a {
    color: #ccc;
    -webkit-text-decoration: underline;
    text-decoration: underline;
}
.pswp__button {
    position: relative;
}
.pswp__button:after {
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.pswp__button svg {
    pointer-events: none;
}
.pswp__button--arrow--left .icon, .pswp__button--arrow--right .icon {
    height: 13px;
    margin: 8px;
    width: 13px;
}
.pswp__button[disabled] {
    opacity: 0;
    pointer-events: none;
}
.pswp__button--arrow--left.pswp__element--disabled, .pswp__button--arrow--right.pswp__element--disabled {
    display: none;
    pointer-events: none;
}
.pswp__ui {
    align-items: center;
    bottom: 30px;
    display: flex;
    justify-content: center;
    left: 0;
    position: absolute;
    right: 0;
    transform: translateY(0);
    transition: transform 0.25s 0.6s;
}
.pswp__ui .btn {
    margin: 15px;
}
.pswp__ui--hidden {
    transform: translateY(150%);
    transition: transform 0.25s;
}
html.pswp-open-in-ios, html.pswp-open-in-ios body {
    background: #444;
    box-sizing: border-box;
    height: var(--window-inner-height);
    overflow: hidden;
}
.pswp-open-in-ios body>* {
    display: none;
}
.pswp-open-in-ios body .pswp.pswp--open {
    display: block;
}
.disclosure {
    position: relative;
}
.disclosure__toggle {
    white-space: nowrap;
}
.disclosure-list {
    background-color: var(--colorBody);
    border-radius: 0;
    bottom: 100%;
    box-shadow: 0 0 20px rgba(0, 0, 0, .09);
    color: var(--colorTextBody);
    display: none;
    margin: 0;
    max-height: 60vh;
    min-height: 92px;
    overflow-y: auto;
    padding: 10px 0;
    position: absolute;
    z-index: 10;
}
.disclosure-list a {
    color: currentColor;
}
.disclosure-list--down {
    bottom: auto;
    top: 100%;
    z-index: 30;
}
.disclosure-list--left {
    right: 0;
}
.disclosure-list--visible {
    display: block;
}
.disclosure-list__item {
    padding: 5px 15px 4px;
    text-align: left;
    white-space: nowrap;
}
.disclosure-list__option:focus .disclosure-list__label, .disclosure-list__option:hover .disclosure-list__label {
    -webkit-text-decoration: underline;
    text-decoration: underline;
}
.disclosure-list__item--current .disclosure-list__label {
    -webkit-text-decoration: underline;
    text-decoration: underline;
}
.disclosure-list__label {
    display: inline-block;
    text-underline-offset: 0.2rem;
    vertical-align: middle;
}
[data-disclosure-currency] .disclosure-list__label {
    padding-left: 10px;
}
.disclosure-list__label span {
    border-bottom: 2px solid transparent;
}
.is-active .disclosure-list__label span {
    border-bottom: 2px solid currentColor;
}
.multi-selectors {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.multi-selectors__item {
    margin: 0 20px 10px;
}
@media only screen and (max-width:768px) {
    .multi-selectors__item {
        margin: 10px 20px;
    }
}
.toolbar .multi-selectors__item {
    margin-bottom: 0;
    margin-right: 0;
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
    background: var(--colorBody);
    border-color: var(--colorTextBodyAlpha005);
    border-radius: 50px;
    opacity: 1;
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
    color: var(--colorTextBody);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
    color: var(--colorTextBody);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active {
    background-color: var(--colorTextBodyAlpha005);
    color: var(--colorTextBody);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
    border-color: var(--colorTextBodyAlpha005);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
    background-color: var(--colorTextBody);
    border: 1px solid;
    border-color: var(--colorBodyAlpha05);
    border-radius: 100%;
    color: var(--colorBody);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover {
    color: var(--colorBody);
}
.product-single__view-in-space {
    background-color: var(--colorTextBodyAlpha008);
    color: var(--colorTextBody);
    display: block;
    margin: 40px 10% 10px;
    padding: 5px 10px 10px;
    width: 80%;
    width: calc(80% - 4px);
}
.product-single__view-in-space[data-shopify-xr-hidden] {
    display: none;
}
.product-single__view-in-space-text {
    display: inline-block;
    font-size: calc(var(--typeBaseSize)*0.85);
    margin-left: 5px;
    vertical-align: middle;
}
.shopify-model-viewer-ui, .shopify-model-viewer-ui model-viewer {
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.shopify-model-viewer-ui__button[hidden] {
    display: none;
}
.product-single__close-media {
    position: absolute;
    right: 10px;
    top: 10px;
    z-index: 2;
}
.price-range__slider-wrapper {
    padding: 0 8px 8px;
}
@media only screen and (max-width:768px) {
    .price-range__slider-wrapper {
        padding: 0 10px 8px;
    }
}
.price-range__input {
    display: none;
}
.price-range__display-wrapper {
    display: flex;
    flex: 1 1 auto;
    justify-content: space-between;
    padding: 0;
    padding-bottom: 8px;
    width: 100%;
}
@media only screen and (max-width:768px) {
    .price-range__display-wrapper {
        padding: 0;
    }
}
.noUi-horizontal .noUi-handle {
    background: var(--colorTextBody);
    border: 0;
    border-radius: 50%;
    box-shadow: 0 0 1px 2px #fff;
    cursor: pointer;
    height: 12px;
    right: -6px;
    top: -3px;
    width: 12px;
}
.noUi-horizontal .noUi-handle:focus, .noUi-horizontal .noUi-handle:hover {
    height: 14px;
    right: -7px;
    top: -4px;
    width: 14px;
}
.noUi-horizontal .noUi-handle:after, .noUi-horizontal .noUi-handle:before {
    content: none;
}
.noUi-target {
    background: #f4f4f4;
    border: 0;
    box-shadow: none;
}
.noUi-connect {
    background: var(--colorTextBody);
}
.noUi-horizontal {
    height: 6px;
}
.countdown__content {
    background-color: var(--countdown-background-color);
    color: var(--countdown-text-color);
}
.countdown__block--button .btn.btn--secondary {
    color: var(--accent-color);
}
::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.5;
}
:-moz-placeholder {
    color: inherit;
    opacity: 0.5;
}
:-ms-input-placeholder {
    color: inherit;
    opacity: 0.5;
}
::-ms-input-placeholder {
    color: inherit;
    opacity: 1;
}
input, select, textarea {
    background-color: inherit;
    color: inherit;
}
input.disabled, input[disabled], select.disabled, select[disabled], textarea.disabled, textarea[disabled] {
    background-color: #f6f6f6;
    border-color: transparent;
}
input:active, input:focus, select:active, select:focus, textarea:active, textarea:focus {
    border: 1px solid;
    border-color: var(--colorTextBody);
}
input[type=image] {
    background-color: transparent;
}
[data-center-text=center] .social-sharing {
    text-align: center;
}
.social-sharing .icon {
    height: 18px;
    width: 18px;
}
.social-sharing__link {
    border-radius: 2px;
    color: var(--colorTextBody);
    display: inline-block;
    font-weight: 400;
    margin: 0 18px 0 0;
    -webkit-text-decoration: none;
    text-decoration: none;
}
.social-sharing__link:last-child {
    margin-right: 0;
}
html[dir=rtl] .social-sharing__link {
    margin: 0 0 0 18px;
}
html[dir=rtl] .social-sharing__link:last-child {
    margin-left: 0;
}
.social-sharing__title {
    display: inline-block;
    font-size: calc(var(--typeBaseSize)*0.85);
    padding-left: 3px;
    padding-right: 15px;
    vertical-align: middle;
}
html[dir=rtl] .social-sharing__title {
    padding-left: 15px;
    padding-right: 3px;
}
.grid-search {
    margin-bottom: 30px;
}
.grid-search__product {
    position: relative;
    text-align: center;
}
.grid-search__page-link {
    background-color: var(--colorBodyLightDim);
    color: var(--colorTextBody);
    display: block;
    overflow: hidden;
    padding: 20px;
    text-overflow: ellipsis;
}
.grid-search__page-link:focus, .grid-search__page-link:hover {
    background-color: var(--colorBodyMediumDim);
}
.grid-search__page-content {
    display: block;
    height: 100%;
    overflow: hidden;
}
.grid-search__page-content img {
    display: block;
    margin-bottom: 10px;
}
.grid-search__image {
    display: block;
    margin: 0 auto;
    max-height: 100%;
    max-width: 100%;
    padding: 20px;
}
@media only screen and (min-width:769px) {
    .grid-search__image {
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}
.index-section {
    margin: 40px 0;
}
.index-section--small {
    margin: 18px 0;
}
.index-section+.index-section, .index-section+.index-section--hidden, .main-content+.index-section {
    margin-top: 0;
}
.index-section--flush {
    margin: 0;
}
.section--divider {
    border-top: 1px solid;
    border-top-color: var(--colorBorder);
}
.index-section--faq {
    margin-bottom: 40px;
}
.newsletter-section {
    padding: 40px 0;
}
.newsletter-section--with-divider {
    border-top: 1px solid;
    border-top-color: var(--colorBorder);
}
.template-challange .index-section--footer {
    display: none;
}
.testimonials-section {
    padding: 25.5px 0;
}
.testimonials-section--with-divider {
    border-top: 1px solid;
    border-top-color: var(--colorBorder);
}
@media only screen and (min-width:769px) {
    .index-section {
        margin: 75px 0;
    }
    .index-section--small {
        margin: 30px 0;
    }
    .index-section--faq {
        margin: 75px 0 37.5px;
    }
    .newsletter-section {
        padding: 75px 0;
    }
    .testimonials-section {
        padding: 75px 0;
    }
}
.page-blocks--flush .page-width {
    padding: 0;
}
.page-blocks>div:first-child .index-section {
    margin-top: 0;
}
.feature-row-wrapper {
    direction: ltr;
    overflow: hidden;
}
.feature-row {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
}
@media only screen and (min-width:1050px) {
    .feature-row {
        margin: 0 6%;
    }
}
@media only screen and (max-width:768px) {
    .feature-row {
        flex-direction: column;
        margin: 0;
    }
}
@media only screen and (max-width:959px) {
    .feature-row--small-none {
        display: block;
    }
}
.feature-row__item {
    flex: 0 1 57%;
    margin: 0 auto;
}
@media only screen and (max-width:768px) {
    .feature-row__item {
        flex: 1 1 auto;
        max-width: 100%;
        min-width: 100%;
    }
}
.feature-row__item--overlap-images {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 0 0 -30px;
    padding: 0 0 15px;
}
@media only screen and (min-width:769px) {
    .feature-row__item--overlap-images {
        margin: 0 auto;
        padding: 50px 0;
    }
}
.feature-row__item--overlap-images>* {
    width: 50%;
}
.feature-row__item--overlap-images>:first-child {
    transform: translate(30px, 30px);
    z-index: 1;
}
@media only screen and (min-width:769px) {
    .feature-row__item--overlap-images>:first-child {
        transform: translate(50px, 50px);
    }
}
.feature-row__item--overlap-images svg {
    border: 2px solid;
    border-color: var(--colorBody);
}
.feature-row__image {
    display: block;
    margin: 0 auto;
    order: 1;
}
@media only screen and (min-width:769px) {
    .feature-row__image {
        order: 2;
    }
}
.feature-row__text {
    flex: 0 1 43%;
    min-width: 43%;
    padding: 0;
}
@media only screen and (max-width:768px) {
    .feature-row__text {
        margin-top: 0;
        order: 2;
        padding: 30px 20px 0;
        padding-bottom: 0;
    }
}
.feature-row__text .rte {
    margin: 0;
}
.feature-row__text .btn {
    margin-top: 15px;
}
@media only screen and (min-width:769px) {
    .feature-row__text--left {
        padding-left: 60px;
    }
    .feature-row__text--right {
        padding-right: 60px;
    }
}
.product-block {
    margin-bottom: 25px;
}
.product-block hr {
    margin: 0;
}
.product-block--tab+.product-block--tab {
    margin-top: -25px;
}
.product-block--sales-point+.product-block--sales-point {
    margin-top: -20px;
}
.product-block--header+.product-block--price {
    margin-top: -20px;
}
.size-chart__standalone .tool-tip-trigger__title {
    font-size: 0.8em;
    letter-spacing: 0.3em;
}
.slideshow-wrapper {
    position: relative;
}
.slideshow__pause:focus {
    clip: auto;
    background-color: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
    height: auto;
    margin: 0;
    padding: 10px;
    transition: none;
    width: auto;
    z-index: 10000;
}
.video-is-playing .slideshow__pause:focus {
    display: none;
}
.slideshow__pause-stop {
    display: block;
}
.is-paused .slideshow__pause-stop {
    display: none;
}
.slideshow__pause-play {
    display: none;
}
.is-paused .slideshow__pause-play {
    display: block;
}
.slideshow__slide {
    display: none;
    height: 100%;
    overflow: hidden;
    position: relative;
    width: 100%;
}
.slideshow__slide:first-child {
    display: block;
}
.flickity-slider .slideshow__slide {
    display: block;
}
.hero {
    background: var(--colorLargeImageBg);
    overflow: hidden;
    position: relative;
}
.hero__media-container {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.hero__image-wrapper, .hero__media {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.hero__image-wrapper:before, .hero__media:before {
    background-color: var(--colorImageOverlay);
    bottom: 0;
    content: "";
    left: 0;
    opacity: var(--colorImageOverlayOpacity);
    position: absolute;
    right: 0;
    top: 0;
    z-index: 3;
}
.video-interactable .hero__image-wrapper:before, .video-interactable .hero__media:before {
    pointer-events: none;
}
.hero__image {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: relative;
    width: 100%;
    z-index: 1;
}
.hero__media {
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 1;
}
.hero__image-wrapper--no-overlay:before {
    content: none;
}
.hero__media iframe, .hero__media video {
    height: 100%;
    pointer-events: none;
    width: 100%;
}
.video-interactable .hero__media iframe, .video-interactable .hero__media video {
    pointer-events: auto;
}
.video-parent-section.loading .hero__media iframe, .video-parent-section.loading .hero__media video {
    opacity: 0.01;
}
.video-parent-section.loaded .hero__media iframe, .video-parent-section.loaded .hero__media video {
    animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
    opacity: 1;
    transition: none;
}
.hero__media video {
    font-family: "object-fit: cover";
    -o-object-fit: cover;
    object-fit: cover;
    position: relative;
}
.hero__media iframe {
    left: 0;
    left: -100%;
    max-width: none;
    position: absolute;
    top: 0;
    width: 300%;
}
@media screen and (min-width:1140px) {
    .hero__media iframe {
        height: 300%;
        left: auto;
        top: -100%;
        width: 100%;
    }
}
.vimeo-mobile-trigger {
    display: block;
    margin-top: 90px;
    position: absolute;
    width: 100%;
    z-index: 2;
}
.hero__text-content .vimeo-mobile-trigger {
    bottom: 120%;
}
.vimeo-mobile-trigger .icon {
    background-color: #fff;
    border-radius: 50%;
    height: 40px;
    padding: 10px;
    width: 40px;
}
.hero__slide-link {
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 5;
}
.hero__slide-link:hover~.hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse) {
    background: var(--colorBtnPrimaryLight);
    transition-delay: 0.25s;
}
.hero__slide-link:hover~.hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after {
    animation: shine 0.75s cubic-bezier(0.01, 0.56, 1, 1);
}
[data-button_style=angled] .hero__slide-link:hover~.hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after {
    animation: none;
}
.hero__text-wrap {
    color: var(--colorHeroText);
    height: 100%;
    position: relative;
}
.video-interactable .hero__text-wrap {
    pointer-events: none;
}
.hero__text-wrap .page-width {
    display: table;
    height: 100%;
    width: 100%;
}
.hero__text-content {
    padding: 15px 0;
    position: relative;
    z-index: 4;
}
@media only screen and (min-width:769px) {
    .hero__text-content {
        padding: 45px 0;
    }
}
[data-dots=true] .hero__text-content {
    padding-bottom: 40px;
}
.hero__text-shadow {
    display: inline-block;
    position: relative;
}
.hero__text-shadow:before {
    background: radial-gradient(rgba(0, 0, 0, var(--colorImageOverlayTextShadow)) 0%, transparent 60%);
    bottom: 0;
    content: "";
    left: 0;
    margin: -100px -200px -100px -200px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: auto;
    z-index: -1;
}
.hero__top-subtitle {
    font-size: 1.1em;
    letter-spacing: 0.3em;
    margin-bottom: 5px;
    text-transform: uppercase;
}
.hero__title {
    display: block;
    margin-bottom: 0;
}
.hero__subtext {
    margin-top: 20px;
}
.hero__subtitle {
    display: block;
    font-size: 1.3em;
    margin-bottom: 30px;
    margin-top: 15px;
    vertical-align: middle;
}
.hero__link {
    display: block;
    position: relative;
}
.video-interactable .hero__link {
    pointer-events: auto;
}
.hero__link .btn {
    margin: 4px 3px 2px 0;
}
@media only screen and (min-width:769px) {
    .hero__link .btn {
        margin-right: 5px;
        margin-top: 0;
    }
}
[data-button_style=angled] .hero__link .btn {
    margin-left: 12px;
}
.hero__link .btn+.btn {
    margin-left: 2px;
}
@media only screen and (min-width:769px) {
    .hero__link .btn+.btn {
        margin-left: 10px;
    }
}
[data-button_style=angled] .hero__link .btn+.btn {
    margin-left: 12px;
}
.hero__link .btn .icon-play {
    margin-right: 5px;
    position: relative;
    top: -2px;
}
[data-button_style=angled] .hero__link .animation-cropper {
    padding-right: 10px;
}
.hero__text-content {
    display: table-cell;
}
.hero__text-content .hero__link {
    margin-top: 7.5px;
}
@media only screen and (min-width:769px) {
    .hero__text-content .hero__link {
        margin-top: 15px;
    }
}
.hero__text-content.horizontal-left {
    text-align: left;
}
.hero__text-content.horizontal-center {
    text-align: center;
}
.hero__text-content.horizontal-right {
    text-align: right;
}
.hero__text-content.vertical-center {
    vertical-align: middle;
}
.hero__text-content.vertical-bottom {
    vertical-align: bottom;
}
.overlaid-header .index-section--hero:first-child .hero__text-content.vertical-center {
    padding-top: 50px;
}
@media only screen and (min-width:769px) {
    .overlaid-header .index-section--hero:first-child .hero__text-content.vertical-center {
        padding-top: 90px;
    }
}
.hero--450px {
    height: 292.5px;
}
.hero--550px {
    height: 357.5px;
}
.hero--650px {
    height: 422.5px;
}
.hero--750px {
    height: 487.5px;
}
.hero--100vh {
    height: 100vh;
}
@media only screen and (min-width:769px) {
    .hero--natural[data-natural] {
        bottom: 0;
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
    }
    .hero--450px {
        height: 450px;
    }
    .hero--550px {
        height: 550px;
    }
    .hero--650px {
        height: 650px;
    }
    .hero--750px {
        height: 750px;
    }
}
@media only screen and (max-width:768px) {
    .hero--mobile--auto[data-mobile-natural=true] {
        bottom: 0;
        height: auto;
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
    }
    .hero--natural[data-mobile-natural=false] {
        height: 500px;
    }
    .hero--mobile--250px[data-mobile-natural=false] {
        height: 250px;
    }
    .hero--mobile--300px[data-mobile-natural=false] {
        height: 300px;
    }
    .hero--mobile--400px[data-mobile-natural=false] {
        height: 400px;
    }
    .hero--mobile--500px[data-mobile-natural=false] {
        height: 500px;
    }
    .hero--mobile--100vh[data-mobile-natural=false] {
        height: 90vh;
    }
}
.slideshow__slide .animation-cropper, [data-aos=hero__animation] .animation-cropper {
    opacity: 0;
}
.slideshow__slide .animation-contents, [data-aos=hero__animation] .animation-contents {
    opacity: 0;
    transform: translateY(15px);
    transition: none;
}
.slideshow__slide:not(.animate-out) .hero__image, [data-aos=hero__animation]:not(.animate-out) .hero__image {
    opacity: 0;
    transition: none;
}
.slideshow__slide .hero__link .btn, [data-aos=hero__animation] .hero__link .btn {
    opacity: 0;
    transition: none;
}
.slideshow__slide .hero__image-wrapper, [data-aos=hero__animation] .hero__image-wrapper {
    opacity: 0;
    transform: translateX(200px);
    transition: none;
}
.loaded .slideshow__slide.is-selected .animation-cropper, .loaded[data-aos=hero__animation] .animation-cropper {
    opacity: 1;
}
.loaded .slideshow__slide.is-selected .animation-contents, .loaded[data-aos=hero__animation] .animation-contents {
    transform: translateY(0px);
}
.loaded .slideshow__slide.is-selected .hero__title .animation-contents, .loaded[data-aos=hero__animation] .hero__title .animation-contents {
    animation: 0.8s cubic-bezier(0.26, 0.54, 0.32, 1) 0.3s forwards;
    animation-name: rise-up;
}
.loaded .slideshow__slide.is-selected .hero__subtitle .animation-contents, .loaded .slideshow__slide.is-selected .hero__top-subtitle .animation-contents, .loaded[data-aos=hero__animation] .hero__subtitle .animation-contents, .loaded[data-aos=hero__animation] .hero__top-subtitle .animation-contents {
    animation: 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0.7s forwards;
    animation-name: rise-up;
}
.loaded .slideshow__slide.is-selected .hero__link .animation-contents, .loaded[data-aos=hero__animation] .hero__link .animation-contents {
    opacity: 1;
}
.loaded .slideshow__slide.is-selected .hero__link .btn, .loaded[data-aos=hero__animation] .hero__link .btn {
    animation: fade-in 2s ease 1.3s forwards;
}
.loaded .slideshow__slide.is-selected .hero__link .btn:nth-child(2), .loaded[data-aos=hero__animation] .hero__link .btn:nth-child(2) {
    animation: fade-in 2s ease 1.6s forwards;
}
.loaded .slideshow__slide.is-selected .hero__image, .loaded .slideshow__slide.is-selected .hero__image--svg, .loaded .slideshow__slide.is-selected .hero__media, .loaded[data-aos=hero__animation] .hero__image, .loaded[data-aos=hero__animation] .hero__image--svg, .loaded[data-aos=hero__animation] .hero__media {
    opacity: 1;
    transition: none;
}
.loaded .slideshow__slide.is-selected .hero__image-wrapper, .loaded[data-aos=hero__animation] .hero__image-wrapper {
    opacity: 1;
    transform: translateX(0px);
    transition: transform 0.7s ease, opacity 0.7s ease;
}
.loaded[data-aos=hero__animation] .hero__image-wrapper {
    transition: opacity 0.7s ease !important;
}
.no-js .hero__image, .no-js .hero__image-wrapper {
    opacity: 1 !important;
}
.no-js .hero__image, .no-js .hero__image-wrapper {
    transform: none;
}
.slideshow__slide.animate-out .animation-cropper {
    opacity: 0;
    transition: none;
}
.slideshow__slide.animate-out .hero__image-wrapper {
    opacity: 0;
    transform: translateX(-200px);
    transition: transform 0.5s ease-in 0.05s, opacity 0.5s ease-in 0.05s;
}
.slideshow__slide.animate-out .hero__link {
    opacity: 0;
    transition: none;
}
.collection-content {
    padding-top: 22.5px;
}
@media only screen and (min-width:769px) {
    .collection-content {
        padding-top: 45px;
    }
}
.collection-filter {
    align-items: center;
    display: flex;
    justify-content: flex-end;
}
@media only screen and (max-width:768px) {
    .collection-filter {
        flex-wrap: wrap;
        justify-content: space-between;
        position: sticky;
        top: 17px;
        z-index: 5;
    }
    .sticky-header .collection-filter {
        top: 86px;
    }
}
.collection-filter .btn, .collection-filter select {
    font-size: 16px;
    height: 44px;
}
.collection-filter select {
    display: block;
    width: 100%;
}
.collection-filter .btn {
    border: 1px solid;
    border-color: var(--colorBorder);
    padding: 0 20px;
}
@media only screen and (max-width:768px) {
    .collection-filter .btn {
        text-align: left;
        width: 100%;
    }
}
.collection-filter .btn .icon {
    margin-right: 10px;
    position: relative;
    top: -2px;
}
.collection-filter__item {
    flex: 1 1 auto;
    margin-bottom: 15px;
}
.collection-filter .btn:not(.btn--tertiary-active), .collection-filter__sort-container {
    background: var(--colorBody);
}
.collection-filter__item--drawer {
    flex: 0 1 48%;
}
.collection-filter__item--count {
    flex: 1 1 170%;
    text-align: center;
}
.collection-filter__item--sort {
    flex: 0 1 48%;
}
@media only screen and (max-width:768px) {
    .collection-filter__item--count {
        flex: 1 1 100%;
        order: 3;
    }
}
.image-filter__wrapper ul {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, 1fr);
}
.image-filter__wrapper ul label {
    align-items: flex-start;
    border: 1px solid transparent;
    height: 100%;
}
.image-filter__wrapper ul label:active, .image-filter__wrapper ul label:focus-within, .image-filter__wrapper ul label:hover {
    border-color: var(--colorBorder);
}
.image-filter__wrapper ul .tag__text {
    margin-bottom: 4px;
    margin-left: 0;
    font-size: 16px;
}
.image-filter__wrapper .tag--active label {
    border-color: var(--colorTextBody);
}
.image-filter__image-wrapper {
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: center;
}
.rte.collection__description {
    margin-bottom: 45px;
}
.collection-hero {
    background: var(--colorLargeImageBg);
    box-sizing: initial;
    height: 250px;
    overflow: hidden;
    position: relative;
    width: 100%;
}
@media only screen and (min-width:769px) {
    .collection-hero {
        height: 420px;
    }
}
.collection-hero__content {
    align-items: flex-end;
    bottom: 0;
    display: flex;
    left: 0;
    padding: 15px 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}
@media only screen and (min-width:769px) {
    .collection-hero__content {
        padding: 30px 0;
    }
}
[data-type_headers_align_text=center] .collection-hero__content {
    align-items: center;
}
.overlaid-header .collection-hero__content {
    padding-top: 70px;
}
@media only screen and (min-width:769px) {
    .overlaid-header .collection-hero__content {
        padding-top: 100px;
    }
}
.collection-hero__content .page-width {
    width: 100%;
}
.collection-hero__content:before {
    background-color: var(--colorImageOverlay);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    opacity: var(--colorImageOverlayOpacity);
    position: absolute;
    right: 0;
    top: 0;
    z-index: auto;
    background: #8e9eab;  /* fallback for old browsers */
    background: -webkit-linear-gradient(to right, #eef2f3, #8e9eab);  /* Chrome 10-25, Safari 5.1-6 */
    background: linear-gradient(to right, #eef2f3, #8e9eab); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

#shopify-section-template--18259721715946__collection-header .collection-hero
#shopify-section-template--18259721715946__collection-header .collection-hero
#shopify-section-__collection-header .collection-hero {
    background: #8e9eab;
    background: -webkit-linear-gradient(to right, #eef2f3, #8e9eab);
    background: linear-gradient(to right, #eef2f3, #8e9eab);
}

.collection-hero__content .section-header {
    animation: fade-in 0.5s 1s forwards;
    opacity: 0;
}
[data-disable-animations=true] .collection-hero__content .section-header {
    animation: none;
    opacity: 1;
}
.collection-hero__image {
    animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
    transition: none;
}
[data-disable-animations=true] .collection-hero__image {
    animation: none;
    opacity: 1;
}
.collection-grid__wrapper.unload {
    min-height: 180px;
    opacity: 0.2;
    position: relative;
    transition: opacity 0.3s;
}
.collection-grid__wrapper.unload [data-section-type=collection-grid] {
    animation: grid-product__loading 1.5s ease 1.5s infinite;
}
.collection-sidebar {
    margin-bottom: 20px;
    padding-right: 10px;
}
@media only screen and (min-width:769px) {
    .grid__item--sidebar {
        max-height: 90vh;
        overflow-y: auto;
        position: sticky;
        top: 10px;
    }
}
.collection-sidebar__group {
    border-top: 1px solid;
    border-top-color: var(--colorDrawerBorder);
    margin-bottom: 5px;
    margin-top: 5px;
    overflow: hidden;
    padding-top: 5px;
}
.collection-sidebar__group:first-child {
    margin-top: 0;
}
.collection-sidebar__group .collapsible-content__inner {
    padding-bottom: 5px;
}
.filter-form div:first-of-type .collection-sidebar__group {
    border-top: 0;
    padding-top: 0;
}
.is-light .site-header__logo .logo--has-inverted {
    display: none;
}
.site-header__logo .logo--inverted {
    display: none;
}
.is-light .site-header__logo .logo--inverted {
    display: block;
}
@media only screen and (min-width:769px) {
    .site-header__logo {
        text-align: left;
    }
}
.header-logo a, .site-header__logo a {
    color: var(--colorNavText);
}
.is-light .header-logo a, .is-light .site-header__logo a {
    color: #fff;
}
.is-light .header-logo a:hover, .is-light .site-header__logo a:hover {
    color: #fff;
}
.is-light .site-header {
    box-shadow: none;
}
.site-header--password {
    color: var(--colorNavText);
}
.site-header--password a, .site-header--password a:hover {
    color: var(--colorNavText);
}
.is-light .site-header--password {
    color: #fff;
}
.is-light .site-header--password a, .is-light .site-header--password a:hover {
    color: #fff;
}
.site-nav__dropdown-link {
    display: block;
    padding: 8px 15px;
    white-space: nowrap;
}
.megamenu .site-nav__dropdown-link {
    padding: 4px 0;
    white-space: normal;
}
.tag-list__header {
    text-align: left;
}
.tag-list .tag-list {
    margin-left: 15px;
}
.tag-list a, .tag-list label {
    cursor: pointer;
    display: block;
    line-height: 1.4;
}
.tag-list label:hover, .tag:focus-within label {
    -webkit-text-decoration: underline;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.tag--active>a, .tag--active>label {
    font-weight: 900;
}
.tag-list--active-tags:empty {
    display: none;
}
.tag-list--checkboxes {
    padding-bottom: 6px;
}
.tag-list--checkboxes a {
    font-size: calc(var(--typeBaseSize) - 2px);
    font-size: max(calc(var(--typeBaseSize) - 2px), 14px);
    padding-left: 25px;
    position: relative;
}
.tag-list--checkboxes a:before {
    content: "";
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.tag-list--checkboxes a:before {
    border: 1px solid;
    border-color: var(--colorBorder);
    height: 16px;
    width: 16px;
}
.tag--active .tag__checkbox:after, .tag-list--checkboxes .tag--active a:after, input:checked~.tag__checkbox:after {
    background-color: var(--colorTextBody);
    border-color: var(--colorTextBody);
}
.tag--remove {
    position: relative;
}
.tag--remove a {
    text-align: left;
}
.tag--remove .icon {
    color: var(--colorBtnPrimaryText);
    pointer-events: none;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}
.tag-list--swatches {
    margin-left: -2px;
    margin-top: 2px;
}
.drawer .tag-list--swatches {
    margin-left: -2px;
}
.tag-list--swatches li {
    /*display:inline-block;*/
    display: ruby;
}
label.tag__checkbox-wrapper {
    display: flex;
}
.tag__checkbox {
    padding-left: 25px;
    position: relative;
}
.tag__checkbox:after, .tag__checkbox:before {
    content: "";
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.tag__checkbox:before {
    border: 1px solid;
    border-color: var(--colorBorder);
    height: 16px;
    width: 16px;
}
.tag__checkbox:after {
    height: 10px;
    left: 3px;
    width: 10px;
}
.tag__input {
    cursor: pointer;
    height: 0;
    opacity: 0;
    position: absolute;
    width: 0;
}
.variant-input-wrap {
    border: 0;
    margin: 0 0 -12px;
    padding: 0;
    position: relative;
}
.variant-input-wrap input {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.variant-input-wrap label {
    background-color: var(--colorBody);
    box-shadow: 0 0 0 1px var(--colorBorder);
    display: inline-block;
    font-family: var(--typeBasePrimary), var(--typeBaseFallback);
    font-size: calc(var(--typeBaseSize)*0.92);
    font-weight: 400;
    letter-spacing: var(--typeBaseSpacing);
    line-height: var(--typeBaseLineHeight);
    margin: 0 8px 12px 0;
    overflow: hidden;
    padding: 7px 15px 7px;
    position: relative;
}
@media only screen and (min-width:769px) {
    .variant-input-wrap label {
        font-size: var(--typeBaseSize);
    }
}
[data-center-text=center] .variant-input-wrap label {
    margin: 0 4px 12px;
}
.variant-input-wrap label.disabled {
    color: var(--colorBorder);
}
.variant-input-wrap label.disabled:after {
    border-left: 1px solid;
    border-color: var(--colorBorder);
    bottom: 0;
    content: "";
    left: 50%;
    position: absolute;
    top: 0;
    transform: rotate(45deg);
}
.variant-input-wrap input[type=radio]:focus+label {
    border-color: var(--colorTextBodyAlpha005);
    box-shadow: 0 0 0 1px var(--colorTextBody);
}
.variant-input-wrap input[type=radio]:checked+label {
    box-shadow: 0 0 0 2px var(--colorTextBody);
}
.variant-input {
    display: inline-block;
}
select .variant-input {
    display: block;
}
.variant-wrapper+.variant-wrapper {
    margin-top: 25px;
}
.no-js .variant-wrapper {
    display: none;
}
.variant-wrapper--dropdown {
    display: inline-block;
    margin-bottom: 0;
    margin-right: 15px;
    max-width: 100%;
}
.variant__label[for] {
    cursor: default;
    display: block;
    margin-bottom: 10px;
}
.variant__label-info {
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}
.grid-product {
    margin-bottom: 15px;
}
@media only screen and (min-width:769px) {
    .grid-product {
        margin-bottom: 30px;
    }
}
@media only screen and (max-width:768px) {
    .grid-overflow-wrapper .grid-product {
        margin-bottom: 0;
    }
}
.grid-product__content {
    position: relative;
    text-align: left;
    padding: 10px;
}
html[dir=rtl] .grid-product__content {
    text-align: right;
}
.grid__item-image-wrapper {
    position: relative;
}
.grid-product__title--heading {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight);
}
[data-type_header_capitalize=true] .grid-product__title--heading {
    text-transform: uppercase;
}
.grid-product__title--heading {
    font-size: calc(var(--typeBaseSize) + 2px);
    line-height: 1;
}
[data-type_product_capitalize=true] .grid-product__title {
    font-size: calc(var(--typeBaseSize) - 2px);
    letter-spacing: 0.2em;
    text-transform: uppercase;
}
@media only screen and (max-width:768px) {
    [data-type_product_capitalize=true] .grid-product__title {
        font-size: calc(var(--typeBaseSize) - 3px);
    }
}
.grid-product__title {
    -webkit-hyphens: auto;
    hyphens: auto;
    word-break: break-word;
}
.grid-product__link {
    display: block;
}
.grid-product__link:after {
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}
.grid-product__link--inline {
    display: flex;
}
.grid-product__link--inline .grid-product__image-mask {
    flex: 0 0 auto;
    margin-right: 10px;
}
.grid-product__link--inline .grid__image-ratio {
    width: 80px;
}
.grid-product__link--inline .grid-product__meta {
    text-align: left;
}
.grid-product__image-mask {
    overflow: hidden;
    position: relative;
}
.grid-product__image {
    display: block;
    height: 100%;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.grid-product__secondary-image {
    background-color: var(--colorBody);
    bottom: -1px;
    left: -1px;
    opacity: 0;
    position: absolute;
    right: -1px;
    top: -1px;
}
.grid-product__secondary-image img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.grid-product__content:hover .grid-product__secondary-image {
    animation: fade-in 0.2s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}
@media only screen and (max-width:768px) {
    .supports-touch .grid-product__secondary-image {
        display: none;
    }
}
.grid-product__color-image {
    background-color: var(--colorBody);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: 0;
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: opacity 0.4s ease;
}
.grid-product__color-image.is-active {
    animation: fade-in 0.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}
[data-center-text=center] .grid-product__meta {
    text-align: center;
}
.grid-product__meta {
    line-height: var(--typeBaselineHeightMinus01);
    padding: 10px 0 6px 0;
    position: relative;
}
@media only screen and (max-width:768px) {
    .small--grid--flush .grid-product__meta {
        padding-left: 10px;
        padding-right: 10px;
    }
}
.grid-product__vendor {
    font-size: 0.8em;
    letter-spacing: 0.3em;
    margin-top: 5px;
    opacity: 0.65;
    text-transform: uppercase;
}
.grid-product__price {
    color: var(--colorPrice);
    font-size: calc(var(--typeBaseSize)*0.85);
    margin-top: 0px;
}
.grid-product__price--original {
    margin-right: 5px;
    -webkit-text-decoration: line-through;
    text-decoration: line-through;
}
.grid-product__price--savings {
    color: var(--colorTextSavings);
    margin-left: 5px;
}
.grid-product__price-label {
    margin: 10px 0 0;
    font-size: 12px;
}
.grid-product__sku {
    background: #f8f8f8;
    padding: 5px;
    font-size: 12px !important;
    margin: 10px 0 !important;
}
.grid-product__tag {
    background-color: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
    font-size: calc(var(--typeBaseSize)*0.65);
    line-height: 1;
    padding: 6px 5px 6px 7px;
    position: absolute;
    right: 0;
    top: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}
.grid-product__tag.grid-product__tag--sold-out {
    background-color: var(--colorBody);
    color: var(--colorTextBody);
}
@media only screen and (min-width:769px) {
    .grid-product__tag {
        font-size: calc(var(--typeBaseSize)*0.85);
        padding: 7px 7px 7px 9px;
    }
}
.grid-product__tag--sale {
    background-color: var(--colorSaleTag);
    color: var(--colorSaleTagText);
}
.quick-product__btn {
    background-color: var(--colorBtnPrimary);
    bottom: 10px;
    color: var(--colorBtnPrimaryText);
    cursor: pointer;
    font-size: calc(var(--typeBaseSize)*0.85);
    left: 10px;
    opacity: 0;
    overflow: hidden;
    padding: 8px 5px;
    position: absolute;
    right: 10px;
    text-align: center;
    transform: translateY(5px);
    transition: opacity 0.25s ease, transform 0.25s ease-out, background 0.4s ease;
    width: calc(100% - 20px);
    z-index: 2;
}
.no-js .quick-product__btn {
    display: none;
}
.grid-product__content:hover .quick-product__btn {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.25s ease, transform 0.25s ease-out;
}
.supports-touch .quick-product__btn {
    display: none;
}
.grid-product:focus-within .quick-product__btn {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.25s ease, transform 0.25s ease-out;
}
.quick-product__btn.btn--not-ready {
    opacity: 0 !important;
}
@media only screen and (max-width:768px) {
    .grid-overflow-wrapper {
        -webkit-overflow-scrolling: touch;
        overflow: hidden;
        overflow-x: scroll;
    }
    .grid-overflow-wrapper .grid {
        display: flex;
        white-space: nowrap;
    }
    .grid-overflow-wrapper .grid__item {
        display: inline-block;
        flex: 0 0 39vw;
        float: none;
        white-space: normal;
        width: 39vw;
    }
    .grid-overflow-wrapper .grid__item:first-child {
        margin-left: 17px;
    }
    .grid-overflow-wrapper .grid__item:last-child:after {
        content: "";
        display: inline-block;
        margin-right: 17px;
        width: 100%;
    }
    .grid-overflow-wrapper .grid-product__price, .grid-overflow-wrapper .grid__item {
        font-size: 0.75rem;
    }
    [data-aos=overflow__animation] {
        transform: translateX(100vw);
        transition: all 0.8s cubic-bezier(.25, .46, .45, .94);
    }
    .aos-animate[data-aos=overflow__animation] {
        transform: translateX(0);
    }
    [data-disable-animations=true] [data-aos=overflow__animation] {
        transform: none;
        transition: none;
    }
}
[data-center-text=center] .grid-product__colors {
    text-align: center;
}
.grid-product__colors {
    display: flex;
    flex-wrap: wrap;
    line-height: 15px;
    margin-top: 3px;
}
@media only screen and (min-width:769px) {
    .grid-product__colors {
        line-height: 19px;
    }
}
[data-center-text=center] .grid-product__colors {
    align-items: center;
    justify-content: center;
}
.grid-product__colors+.grid-product__colors {
    margin-top: 4px;
}
.sales-points {
    list-style: none;
    margin: 25px 0;
    padding: 0;
}
.quick-add-modal .sales-points {
    display: none;
}
.sales-point {
    display: block;
    margin-bottom: 10px;
}
.sales-point:last-child {
    margin-bottom: 0;
}
.sales-point .icon {
    height: 25px;
    margin-right: 10px;
    position: relative;
    width: 25px;
}
[dir=rtl] .sales-point .icon {
    margin-left: 10px;
    margin-right: 0;
}
@media only screen and (max-width:768px) {
    .sales-point .icon-and-text {
        justify-content: center;
    }
}
@keyframes inventory-pulse {
    0% {
        opacity: 0.5;
    }
    to {
        opacity: 0;
        transform: scale(2.5);
    }
}
.icon--inventory:after, .icon--inventory:before {
    background: #54c63a;
    border-radius: 9px;
    content: "";
    height: 9px;
    left: 0;
    margin: 8px;
    position: absolute;
    top: 0;
    width: 9px;
}
.icon--inventory:before {
    animation: inventory-pulse 2s linear infinite;
}
.inventory--low .icon--inventory:after, .inventory--low .icon--inventory:before {
    background: #f4af29;
}
.color-swatch {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    box-shadow: 0 0 0 1px var(--colorBorder);
    display: block;
    height: 40px;
    margin: 0 2px 10px;
    overflow: hidden;
    position: relative;
    text-indent: -9999px;
    transition: box-shadow 0.2s ease;
    width: 40px;
}
[data-swatch_style=round] .color-swatch {
    border-radius: 100%;
}
.color-swatch:before {
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
}
.color-swatch:before {
    border: 3px solid;
    border-color: var(--colorBody);
}
[data-swatch_style=round] .color-swatch:before {
    border-radius: 100%;
    border-width: 4px;
    bottom: -1px;
    left: -1px;
    right: -1px;
    top: -1px;
}
.tag:focus-within .color-swatch, .tag:not(.tag--active) label:hover .color-swatch:hover, a.color-swatch:hover {
    box-shadow: 0 0 0 1px var(--colorTextBody);
}
.tag--active .color-swatch {
    box-shadow: 0 0 0 2px var(--colorTextBody);
}
.color-swatch--small {
    height: 15px;
    width: 15px;
}
@media only screen and (min-width:769px) {
    .color-swatch--small {
        height: 19px;
        width: 19px;
    }
}
.color-swatch--small:before {
    border: 2px solid;
    border-color: var(--colorBody);
}
[data-swatch_style=round] .color-swatch--small:before {
    border-width: 3px;
}
.tag--swatch {
    display: inline-block;
}
.tag--swatch>label {
    margin-bottom: 0;
}
.tag--show-label {
    width: 100%;
}
.tag--show-label label {
    align-items: center;
    display: flex;
}
.tag--show-label .tag__text {
    display: block !important;
}
.tag--show-label .tag__text {
    margin-left: 0.5rem;
}
.color-swatch--filter {
    height: 25px;
    width: 25px;
}
.tag--active .color-swatch--filter:hover:after {
    border-left: 1px solid;
    border-color: var(--colorBorder);
    bottom: 0;
    content: "";
    left: 50%;
    position: absolute;
    top: 0;
    transform: rotate(45deg);
}
.collection-item {
    display: block;
    margin-bottom: 17px;
    overflow: hidden;
    position: relative;
    margin-right: 5px;
}
.grid--no-gutters .collection-item {
    margin-bottom: 0;
}
.collection-item:hover .collection-image {
    transform: scale(1.03);
    transition: all 0.8s ease;
}
[data-disable-animations=true] .collection-item:hover .collection-image {
    transform: none;
    transition: none;
}
.collection-item:not(.collection-item--below):after {
    background-color: var(--colorGridOverlay);
    bottom: 0;
    content: "";
    left: 0;
    opacity: var(--colorGridOverlayOpacity);
    position: absolute;
    right: 0;
    top: 0;
    transition: opacity 0.8s ease;
    z-index: auto;
}
.collection-item:not(.collection-item--below):hover:after {
    opacity: calc(var(--colorGridOverlayOpacity) + 0.15);
}
.collection-image {
    position: relative;
    transition: transform 0.3s ease;
}
.collection-image img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
}
.collection-item--below img {
    -o-object-fit: contain;
    object-fit: contain;
}
.collection-image--placeholder {
    opacity: 1;
}
.collection-image--placeholder svg {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.collection-image--square {
    padding-bottom: 100%;
}
.collection-image--landscape {
    padding-top: 75%;
}
.collection-image--portrait {
    padding-top: 150%;
}
.collection-item__title {
    display: block;
    font-size: calc(var(--typeCollectionTitle)*0.8);
    line-height: 1em;
    z-index: 2;
}
@media only screen and (min-width:769px) {
    .collection-item__title {
        font-size: var(--typeCollectionTitle);
    }
    .medium-up--one-fifth .collection-item__title {
        font-size: 16px;
    }
}
[data-type_product_capitalize=true] .collection-item__title span {
    font-size: 0.8em;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}
.collection-item--below .collection-item__title {
    margin-top: 5px;
}
.collection-item__title--heading {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight);
}
[data-type_header_capitalize=true] .collection-item__title--heading {
    text-transform: uppercase;
}
.collection-item__title--overlaid, .collection-item__title--overlaid-box {
    display: block;
    left: 10px;
    position: absolute;
    right: 10px;
}
.collection-item__title--overlaid {
    color: #fff;
    text-shadow: 0 0 50px #000;
}
.collection-item__title--overlaid-box>span {
    background-color: var(--colorBody);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    color: var(--colorTextBody);
    display: inline-block;
    padding: 8px 15px;
}
.collection-item__title--bottom-center, .collection-item__title--center, .collection-item__title--top-center {
    text-align: center;
}
.collection-item__title--bottom-right, .collection-item__title--top-right .collection-item__title--right {
    text-align: right;
}
.collection-item__title--center[class*=collection-item__title--overlaid], .collection-item__title--left[class*=collection-item__title--overlaid], .collection-item__title--right[class*=collection-item__title--overlaid] {
    top: 50%;
    transform: translateY(-50%);
}
.collection-item__title--top-center[class*=collection-item__title--overlaid], .collection-item__title--top-left[class*=collection-item__title--overlaid], .collection-item__title--top-right[class*=collection-item__title--overlaid] {
    top: 10px;
}
@media only screen and (min-width:769px) {
    .collection-item__title--top-center[class*=collection-item__title--overlaid], .collection-item__title--top-left[class*=collection-item__title--overlaid], .collection-item__title--top-right[class*=collection-item__title--overlaid] {
        top: 18px;
    }
}
.collection-item__title--bottom-center[class*=collection-item__title--overlaid], .collection-item__title--bottom-left[class*=collection-item__title--overlaid], .collection-item__title--bottom-right[class*=collection-item__title--overlaid] {
    bottom: 10px;
}
@media only screen and (min-width:769px) {
    .collection-item__title--bottom-center[class*=collection-item__title--overlaid], .collection-item__title--bottom-left[class*=collection-item__title--overlaid], .collection-item__title--bottom-right[class*=collection-item__title--overlaid] {
        bottom: 18px;
    }
}
.custom-content {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -22px;
    margin-left: -22px;
    width: auto;
}
@media only screen and (max-width:768px) {
    .custom-content {
        margin-bottom: -17px;
        margin-left: -17px;
    }
}
.custom__item {
    flex: 0 0 auto;
    margin-bottom: 22px;
    max-width: 100%;
    padding-left: 22px;
}
@media only screen and (max-width:768px) {
    .custom__item {
        flex: 0 0 auto;
        margin-bottom: 17px;
        padding-left: 17px;
    }
    .custom__item.small--one-half {
        flex: 1 0 50%;
        margin-left: auto;
        margin-right: auto;
        max-width: 400px;
    }
}
.custom__item img {
    display: block;
}
.custom__item-inner {
    display: inline-block;
    max-width: 100%;
    position: relative;
    text-align: left;
    width: 100%;
}
.custom__item-inner--html, .custom__item-inner--video {
    display: block;
}
.custom__item-inner--image {
    width: 100%;
}
.custom__item-inner--html img {
    display: block;
    margin: 0 auto;
}
.custom__item-inner--placeholder-image {
    width: 100%;
}
.align--top-middle {
    text-align: center;
}
.align--top-right {
    text-align: right;
}
.align--middle-left {
    align-self: center;
}
.align--center {
    align-self: center;
    text-align: center;
}
.align--middle-right {
    align-self: center;
    text-align: right;
}
.align--bottom-left {
    align-self: flex-end;
}
.align--bottom-middle {
    align-self: flex-end;
    text-align: center;
}
.align--bottom-right {
    align-self: flex-end;
    text-align: right;
}
.article__grid-image {
    display: block;
    margin-bottom: 17px;
    text-align: center;
}
@media only screen and (min-width:769px) {
    .article__grid-image {
        margin-bottom: 20px;
    }
}
.article__grid-image img {
    display: block;
}
.article__title {
    font-size: calc(var(--typeBaseSize) + 2px);
}
.article__date {
    font-size: max(calc(var(--typeBaseSize)*0.7), 12px);
    margin-bottom: 3px;
}
.section-header .article__date {
    margin-bottom: 15px;
}
.article__author {
    font-size: max(calc(var(--typeBaseSize)*0.7), 12px);
    margin-top: 2px;
}
.article__grid-meta {
    margin-bottom: 30px;
}
@media only screen and (min-width:769px) {
    [data-center-text=center] .article__grid-meta {
        text-align: center;
    }
}
.article__excerpt {
    margin-top: 10px;
}
.logo-bar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: -30px;
    text-align: center;
}
.logo-bar__item {
    flex: 0 1 110px;
    margin: 0 15px 20px;
    vertical-align: middle;
}
@media only screen and (min-width:769px) {
    .logo-bar__item {
        flex: 0 1 160px;
        margin: 0 20px 30px;
    }
}
.logo-bar__image {
    display: block;
    height: 100%;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.logo-bar__link {
    display: block;
}
[data-aos=logo__animation] .logo-bar__item {
    opacity: 0;
}
[data-aos=logo__animation].aos-animate .logo-bar__item {
    animation: fade-in 0.5s ease 0s forwards;
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(2) {
    animation-delay: 0.2s;
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(3) {
    animation-delay: 0.4s;
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(4) {
    animation-delay: 0.6s;
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(5) {
    animation-delay: 0.8s;
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(6) {
    animation-delay: 1.0s;
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(7) {
    animation-delay: 1.2s
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(8) {
    animation-delay: 1.4s;
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(9) {
    animation-delay: 1.6s;
}
[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(10) {
    animation-delay: 1.8s;
}
.background-media-text {
    background: var(--colorLargeImageBg);
    background-size: cover;
    overflow: hidden;
    position: absolute;
    width: 100%;
}
.background-media-text__video {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: 0;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}
@media only screen and (max-width:768px) {
    .background-media-text__video {
        left: -150%;
        width: 400%;
    }
    html[dir=rtl] .background-media-text__video {
        left: auto;
        right: -150%;
    }
}
.background-media-text__video iframe, .background-media-text__video video {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
}
@media only screen and (min-width:769px) {
    .background-media-text__video iframe, .background-media-text__video video {
        height: 120%;
        height: 150%;
        left: -150%;
        max-width: none;
        width: 400%;
    }
}
@media screen and (min-width:1140px) {
    .background-media-text__video iframe, .background-media-text__video video {
        height: 300%;
        left: auto;
        top: -100%;
        width: 100%;
    }
}
.video-interactable .background-media-text__video iframe, .video-interactable .background-media-text__video video {
    pointer-events: auto;
}
.background-media-text__inner {
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 2;
}
.background-media-text__aligner {
    margin: 60px;
}
.background-media-text__text {
    background: var(--colorBody);
    font-size: 1.1em;
    padding: 30px;
    text-align: left;
    width: 380px;
}
.background-media-text--left .background-media-text__text {
    text-align: left;
}
.background-media-text--right .background-media-text__text {
    text-align: right;
}
@media only screen and (max-width:768px) {
    .background-media-text__text {
        text-align: center;
    }
}
.background-media-text__text--framed {
    border: 7px solid;
    border-color: var(--colorBody);
    box-shadow: inset 0 0 0 2px var(--colorTextBody);
}
@media only screen and (min-width:769px) {
    .background-media-text__text--framed {
        border-width: 10px;
    }
}
.background-media-text__text .btn {
    margin-top: 15px;
}
@media only screen and (min-width:769px) {
    .background-media-text--left .animation-cropper {
        float: left;
    }
    .background-media-text--right .animation-cropper {
        float: right;
    }
}
.background-media-text__container {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
@media only screen and (max-width:768px) {
    .background-media-text {
        position: relative;
    }
    .background-media-text__inner {
        position: relative;
    }
    .background-media-text__container, .background-media-text__video {
        height: 240px;
        position: relative;
    }
    .promo-video .background-media-text__container, .promo-video .background-media-text__video {
        height: 550px;
    }
    .background-media-text__aligner {
        margin: -6px 6px 6px;
    }
    .background-media-text__text {
        padding: 22.5px;
        width: auto;
    }
    .background-media-text.loading:after, .background-media-text.loading:before {
        top: 117px;
    }
}
@media only screen and (min-width:769px) {
    .background-media-text--450, .background-media-text--450 .background-media-text__video, .background-media-text__spacer.background-media-text--450 {
        min-height: 450px;
    }
    .background-media-text--550, .background-media-text--550 .background-media-text__video, .background-media-text__spacer.background-media-text--550 {
        min-height: 550px;
    }
    .background-media-text--650, .background-media-text--650 .background-media-text__video, .background-media-text__spacer.background-media-text--650 {
        min-height: 650px;
    }
    .background-media-text--750, .background-media-text--750 .background-media-text__video, .background-media-text__spacer.background-media-text--750 {
        min-height: 750px;
    }
}
[data-aos=background-media-text__animation] .background-media-text__image, [data-aos=background-media-text__animation] .background-media-text__image svg, [data-aos=background-media-text__animation] .background-media-text__video {
    animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
    transition: none;
}
[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image, [data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image svg, [data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__video {
    animation: none;
    opacity: 1;
}
[data-aos=background-media-text__animation].aos-animate .background-media-text__image, [data-aos=background-media-text__animation].aos-animate .background-media-text__image svg, [data-aos=background-media-text__animation].loaded.aos-animate .background-media-text__video {
    animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
    transition: none;
}
[data-disable-animations=true] .aos-animate[data-aos=background-media-text__animation] .background-media-text__image, [data-disable-animations=true] .aos-animate[data-aos=background-media-text__animation] .background-media-text__image svg, [data-disable-animations=true] .loaded.aos-animate[data-aos=background-media-text__animation] .background-media-text__video {
    animation: none;
}
@media only screen and (min-width:769px) {
    [data-aos=background-media-text__animation] .background-media-text__inner .animation-contents {
        opacity: 0;
    }
    .no-js [data-aos=background-media-text__animation] .background-media-text__inner .animation-contents {
        animation: none;
        opacity: 1;
    }
    [data-aos=background-media-text__animation].loaded.aos-animate .background-media-text__inner .animation-contents {
        animation: rise-up 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0.5s forwards;
    }
    [data-disable-animations=true] .loaded.aos-animate[data-aos=background-media-text__animation] .background-media-text__inner .animation-contents {
        animation: none;
        opacity: 1;
    }
}
.quote-icon {
    display: block;
    margin: 0 auto 20px;
}
.testimonial-stars {
    display: block;
    font-size: 16px;
    letter-spacing: 0.2em;
    margin-bottom: 10px;
}
@media only screen and (min-width:769px) {
    .testimonial-stars {
        font-size: 18px;
        margin-bottom: 15px;
    }
}
.testimonials-slide {
    display: none;
    opacity: 0;
    padding: 40px 0 55px;
    width: 33%;
}
.testimonials-slide:first-child {
    display: block;
}
.flickity-slider .testimonials-slide {
    display: block;
    opacity: 1;
}
.testimonials-slide .testimonials-slider__text {
    transform: scale(0.95);
    transition: transform 0.5s ease, box-shadow 0.5s ease;
}
.testimonials-slide.is-selected .testimonials-slider__text {
    box-shadow: 0 10px 25px rgba(0, 0, 0, .1);
    position: relative;
    transform: scale(1.1);
    z-index: 10;
}
@media only screen and (max-width:768px) {
    .testimonials-slide {
        width: 100%;
    }
    .testimonials-slide .testimonials-slider__text {
        transform: scale(0.86);
    }
    .testimonials-slide.is-selected .testimonials-slider__text {
        transform: scale(1);
    }
}
.testimonials-slider__text {
    background: var(--colorBody);
    color: var(--colorTextBody);
    margin: 0 30px;
    margin-bottom: 15px;
    padding: 30px 15px;
}
@media only screen and (min-width:769px) {
    .testimonials-slider__text {
        margin: 0;
        margin-bottom: 0;
        padding: 30px;
    }
}
.testimonials-slider__text cite {
    font-style: normal;
    font-weight: 700;
}
@media only screen and (min-width:769px) {
    .testimonials-slider__text cite {
        font-size: calc(var(--typeBaseSize) + 1px);
    }
}
.testimonials-slider__text p {
    margin-bottom: 7.5px;
}
.testimonials-slider__text p+cite {
    margin-top: 0;
}
.testimonials__info {
    font-size: calc(var(--typeBaseSize) - 1px);
}
.testimonial-image {
    background-color: var(--colorBody);
    max-width: 142px;
}
.text-center .testimonial-image {
    margin-left: auto;
    margin-right: auto;
}
.testimonial-image .image-wrap {
    background: none;
    height: 100%;
    width: 100%;
}
.testimonial-image--round {
    border-radius: 65px;
    height: 65px;
    max-width: none;
    width: 65px;
}
.testimonial-image--round img {
    border-radius: 65px;
    height: 100%;
    overflow: hidden;
}
.testimonials-section .flickity-page-dots {
    bottom: 0;
}
.announcement-bar {
    background-color: var(--colorAnnouncement);
    border-bottom-color: var(--colorBorder);
    color: var(--colorAnnouncementText);
    font-size: calc(var(--typeBaseSize)*0.75);
    padding: 10px 0;
    position: relative;
    text-align: center;
}
.announcement-bar a, .announcement-bar a:visited {
    color: var(--colorAnnouncementText);
}
.announcement-bar a:active, .announcement-bar a:hover, .announcement-bar a:visited:active, .announcement-bar a:visited:hover {
    color: var(--colorAnnouncementText);
}
.announcement-slider__slide {
    overflow: hidden;
    padding: 0 5px;
    position: relative;
    width: 100%;
}
.announcement-link {
    color: var(--colorAnnouncementText);
    display: block;
}
.announcement-link:active, .announcement-link:hover {
    color: var(--colorAnnouncementText);
}
.announcement-text {
    display: block;
    font-size: 0.9em;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}
.announcement-link-text {
    display: block;
}
.announcement-link .announcement-link-text {
    -webkit-text-decoration: underline;
    text-decoration: underline;
}
.announcement-link-text a {
    color: inherit;
}
@media only screen and (min-width:769px) {
    .announcement-slider[data-compact=true] .announcement-slider__slide {
        display: none;
    }
    .announcement-slider[data-compact=true] .announcement-slider__slide:first-child {
        display: block;
    }
    .announcement-slider[data-compact=true] .announcement-link-text, .announcement-slider[data-compact=true] .announcement-text {
        display: inline;
    }
    .announcement-slider[data-compact=true] .announcement-text+.announcement-link-text {
        padding-left: 5px;
    }
    .announcement-slider.flickity-enabled[data-compact=true] .announcement-slider__slide {
        display: block;
    }
    .announcement-slider[data-compact=false] {
        display: flex;
    }
    .announcement-slider[data-compact=false] .announcement-slider__slide {
        flex: 1 1 33%;
    }
}
@media only screen and (max-width:768px) {
    .announcement-slider .announcement-slider__slide {
        display: none;
    }
    .announcement-slider .announcement-slider__slide:first-child {
        display: block;
    }
    .announcement-slider.flickity-enabled .announcement-slider__slide {
        display: block;
    }
}
.shopify-challenge__container {
    padding: 30px 22px;
}
@media only screen and (min-width:769px) {
    .shopify-challenge__container {
        padding: 120px 0;
    }
}
.newsletter {
    margin: 0 auto;
    max-width: 520px;
}
.newsletter-section .errors {
    margin-left: auto;
    margin-right: auto;
    max-width: 520px;
}
.modal .newsletter .h1 {
    margin-bottom: 15px;
}
@media only screen and (min-width:769px) {
    .modal .newsletter .h1 {
        margin-bottom: 30px;
    }
}
.modal .newsletter .image-wrap {
    margin-bottom: 7.5px;
}
@media only screen and (min-width:769px) {
    .modal .newsletter .image-wrap {
        margin-bottom: 15px;
    }
}
.modal .newsletter .text-close {
    -webkit-text-decoration: underline;
    text-decoration: underline;
}
.newsletter__input-group {
    margin: 0 auto 20px;
    max-width: 400px;
}
.newsletter__input-group:last-child {
    margin-bottom: 0;
}
.newsletter__input::-webkit-input-placeholder {
    color: var(--colorTextBody);
    opacity: 1;
}
.newsletter__input:-moz-placeholder {
    color: var(--colorTextBody);
    opacity: 1;
}
.newsletter__input::-moz-placeholder {
    color: var(--colorTextBody);
    opacity: 1;
}
.newsletter__input:-ms-input-placeholder {
    color: var(--colorTextBody);
}
.newsletter__input::-ms-input-placeholder {
    color: var(--colorTextBody);
    opacity: 1;
}
@media only screen and (max-width:768px) {
    .form__submit--large {
        display: none;
    }
    .form__submit--small {
        display: block;
    }
}
@media only screen and (min-width:769px) {
    .form__submit--large {
        display: block;
    }
    .form__submit--small {
        display: none;
    }
}
[data-has-image] .modal__close {
    background-color: var(--colorBody);
    border-radius: 50%;
    padding: 5px;
    right: 10px;
    top: 10px;
}
@media only screen and (max-width:768px) {
    [data-has-image] .modal__close {
        background-color: transparent;
        right: 0;
        top: 0;
    }
}
@media only screen and (max-width:768px) {
    [data-section-type=newsletter-popup] {
        bottom: 20px;
        text-align: center;
    }
    [data-section-type=newsletter-popup] .modal__inner {
        max-width: calc(100% - 40px);
    }
    .modal--square[data-section-type=newsletter-popup] .modal__close {
        padding: 5px;
    }
}
[data-section-type=newsletter-popup] .h2 {
    margin-bottom: 0;
}
@media only screen and (min-width:769px) {
    [data-section-type=newsletter-popup] .h2 {
        margin-bottom: 0;
    }
}
[data-section-type=newsletter-popup] .rte {
    margin-bottom: 0;
    margin-top: 20px;
}
@media only screen and (min-width:769px) {
    [data-section-type=newsletter-popup] .rte {
        margin-bottom: 0;
        margin-top: 20px;
    }
}
[data-section-type=newsletter-popup] .popup-cta {
    margin-bottom: 0;
}
[data-section-type=newsletter-popup] .note--success {
    margin-top: 15px;
    text-align: center;
}
[data-section-type=newsletter-popup] .newsletter__input-group {
    margin-bottom: 0;
    margin-top: 30px;
}
@media only screen and (max-width:768px) {
    [data-section-type=newsletter-popup] .newsletter__input-group {
        margin-bottom: 0;
        margin-top: 20px;
    }
}
[data-section-type=newsletter-popup] .newsletter-button {
    margin-top: 30px;
}
[data-section-type=newsletter-popup] .social-icons a {
    display: inline-block;
    margin-top: 30px;
    padding: 5px;
}
.modal__centered-content.newsletter--has-image {
    padding: 0;
}
@media only screen and (max-width:768px) {
    .modal__centered-content.newsletter--has-image {
        padding: 0;
    }
}
.modal__centered-content.newsletter--has-image .newsletter-popup {
    display: flex;
    max-width: 800px;
    min-width: 650px;
}
@media only screen and (max-width:768px) {
    .modal__centered-content.newsletter--has-image .newsletter-popup {
        max-width: none;
        min-width: 0;
    }
}
.modal__centered-content.newsletter--has-image .newsletter-popup.newsletter-popup--image-reversed {
    flex-direction: row-reverse;
}
.modal__centered-content.newsletter--has-image .form__submit--large {
    display: none;
}
.modal__centered-content.newsletter--has-image .form__submit--small {
    display: block;
}
.modal__centered-content.newsletter--has-image .newsletter-popup__image-wrapper {
    position: relative;
    width: 50%;
}
@media only screen and (max-width:768px) {
    .modal__centered-content.newsletter--has-image .newsletter-popup__image-wrapper {
        display: none;
    }
}
.modal__centered-content.newsletter--has-image .newsletter-popup__image {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    width: 100%;
}
.modal__centered-content.newsletter--has-image .newsletter-popup__content {
    padding: 40px;
    width: 50%;
}
@media only screen and (max-width:768px) {
    .modal__centered-content.newsletter--has-image .newsletter-popup__content {
        padding: 0 0 20px;
        width: 100%;
    }
}
newsletter-reminder {
    background-color: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText);
}
newsletter-reminder.modal--square .modal__close {
    color: var(--colorBtnPrimaryText);
}
newsletter-reminder.modal--square .modal__close:hover {
    color: var(--colorBtnPrimaryText);
    opacity: 0.5;
}
newsletter-reminder .newsletter-reminder__message {
    font-size: calc(var(--typeHeaderSize)*0.5);
}
.form__submit--small {
    line-height: 0;
}
.map-section {
    height: 650px;
    overflow: hidden;
    position: relative;
    width: 100%;
}
@media only screen and (min-width:769px) {
    .map-section {
        height: 500px;
    }
}
.map-section .page-width {
    height: 100%;
}
.map-section--load-error {
    height: auto;
}
.map-onboarding {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: 0;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}
.map-section__overlay-wrapper {
    height: 100%;
    position: relative;
}
.map-section__overlay {
    background-color: var(--colorBody);
    display: inline-block;
    margin: 30px;
    max-width: calc(100% - 60px);
    padding: 30px;
    position: relative;
    width: 100%;
    z-index: 3;
}
@media only screen and (min-width:769px) {
    .map-section__overlay {
        left: 30px;
        margin-top: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 30%;
    }
}
.map-section--load-error .map-section__overlay {
    position: static;
    transform: translateY(0);
}
.map-section__link {
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2;
}
.map-section__container {
    position: absolute !important;
}
.map-section__container {
    height: 150%;
    left: 0;
    margin-bottom: -50%;
    top: 0;
    width: 100%;
}
@media only screen and (min-width:769px) {
    .map-section__container {
        height: 100%;
        margin: 0 -30% 0 0;
        width: 130%;
    }
}
.display-map--false.bg-image--true .map-section__container {
    height: 100%;
    width: 100%;
}
.display-map--false.bg-image--true .map-section__container img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
[data-aos=map-section__animation] .map-section__container {
    animation: fade-out 0.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
    opacity: 0;
}
[data-aos=map-section__animation].aos-animate .map-section__container {
    animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}
.image-row:after {
    clear: both;
    content: "";
    display: table;
}
.image-row__placeholder {
    float: left;
    width: 33.33%;
}
.image-row--gutters .image-row__placeholder {
    margin: 0 1% 2%;
    width: 32%;
}
.image-row--gutters .image-row__placeholder:first-child {
    margin-left: 0;
}
.image-row--gutters .image-row__placeholder:last-child {
    margin-right: 0;
}
.image-row__image {
    float: left;
    min-height: 1px;
    position: relative;
}
.image-row__image:after {
    content: "";
    display: block;
    height: 0;
    width: 100%;
}
.image-row__image img {
    display: block;
    left: 0;
    position: absolute;
    top: 0;
}
[data-zoom=true] .image-row__image .js-photoswipe__zoom {
    cursor: zoom-in;
}
[data-zoom=true] .image-row__image a .js-photoswipe__zoom {
    cursor: pointer;
}
.promo-grid--space-top {
    padding-top: 40px;
}
@media only screen and (min-width:769px) {
    .promo-grid--space-top {
        padding-top: 75px;
    }
}
.promo-grid--space-bottom {
    padding-bottom: 40px;
}
@media only screen and (min-width:769px) {
    .promo-grid--space-bottom {
        padding-bottom: 75px;
    }
}
.promo-grid__container {
    align-items: flex-start;
    background-repeat: no-repeat;
    display: flex;
    overflow: hidden;
    position: relative;
}
.promo-grid__container .btn {
    margin-right: 10px;
}
@media only screen and (max-width:768px) {
    .promo-grid__container .btn {
        margin-right: 7px;
    }
}
.promo-grid__container.horizontal-center {
    justify-content: center;
    text-align: center;
}
.promo-grid__container.horizontal-center .btn {
    margin: 2px 5px;
}
.promo-grid__container.horizontal-right {
    justify-content: flex-end;
    text-align: right;
}
@media only screen and (max-width:768px) {
    .promo-grid__container--boxed .promo-grid__bg {
        height: 60%;
    }
    .promo-grid__container--boxed .promo-grid__content {
        box-shadow: 0 0 50px rgba(0, 0, 0, .1);
        margin-top: 55%;
        width: 100%;
    }
}
.promo-grid__container--framed:not(.promo-grid__container--boxed):after {
    border: 7px solid transparent;
    bottom: 0;
    box-shadow: inset 0 0 0 2px var(--colorHeroText);
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: auto;
    z-index: 3;
}
@media only screen and (min-width:769px) {
    .promo-grid__container--framed:not(.promo-grid__container--boxed):after {
        border-width: 10px;
    }
}
.type-banner .promo-grid__container--framed:not(.promo-grid__container--boxed):after, .type-product .promo-grid__container--framed:not(.promo-grid__container--boxed):after, .type-sale_collection .promo-grid__container--framed:not(.promo-grid__container--boxed):after {
    box-shadow: inset 0 0 0 2px var(--colorTextBody);
}
.video-interactable.promo-grid__container--framed:not(.promo-grid__container--boxed):after {
    pointer-events: none;
}
.promo-grid__container--tint:before {
    bottom: 0;
    content: "";
    left: 0;
    opacity: 1;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    z-index: auto;
    z-index: 2;
}
.promo-grid__slide-link {
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 5;
}
.promo-grid__slide-link:hover~.promo-grid__content .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse) {
    background: var(--colorBtnPrimaryLight);
    transition-delay: 0.25s;
}
[data-button_style=square] .promo-grid__slide-link:hover~.promo-grid__content .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after, [data-button_style^=round] .promo-grid__slide-link:hover~.promo-grid__content .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after {
    animation: shine 0.75s cubic-bezier(0.01, 0.56, 1, 1);
}
.promo-grid__content {
    flex: 0 1 auto;
    min-width: 200px;
    padding: 2em 2.5em;
    position: relative;
    z-index: 4;
}
.promo-grid__container--framed:not(.promo-grid__container--boxed) .promo-grid__content {
    margin: 1.5em;
}
.promo-grid__content p:last-child {
    margin-bottom: 0;
}
.vertical-top .promo-grid__content {
    align-self: flex-start;
}
.vertical-center .promo-grid__content {
    align-self: center;
}
.vertical-bottom .promo-grid__content {
    align-self: flex-end;
}
.video-interactable .promo-grid__content {
    pointer-events: none;
}
.promo-grid__content--boxed {
    background: var(--colorBody);
    color: var(--colorTextBody);
    margin: 15px;
}
@media only screen and (max-width:768px) {
    .promo-grid__content--boxed {
        margin: 10px;
    }
}
.promo-grid__content--framed.promo-grid__content--boxed {
    border: 7px solid;
    border-color: var(--colorBody);
    box-shadow: inset 0 0 0 2px var(--colorTextBody);
}
@media only screen and (min-width:769px) {
    .promo-grid__content--framed.promo-grid__content--boxed {
        border-width: 10px;
    }
}
.type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale), .type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) {
    color: var(--colorHeroText);
}
.type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a, .type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a {
    border-bottom: 2px solid;
    border-bottom-color: var(--colorHeroText);
    color: var(--colorHeroText);
}
[data-button_style=square] .type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a:not(.btn--inverse), [data-button_style=square] .type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a:not(.btn--inverse), [data-button_style^=round] .type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a:not(.btn--inverse), [data-button_style^=round] .type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a:not(.btn--inverse) {
    border-bottom: 0;
}
.type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) .btn--inverse, .type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) .btn--inverse {
    border-color: var(--colorHeroText);
}
.type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale):after, .type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale):after {
    background: radial-gradient(rgba(0, 0, 0, var(--colorImageOverlayTextShadow)) 0%, transparent 60%);
    bottom: 0;
    content: "";
    left: 0;
    margin: -100px -200px -100px -200px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: auto;
    z-index: 2;
}
.type-advanced .rte--strong, .type-product .rte--strong, .type-sale_collection .rte--strong {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight);
}
[data-type_header_capitalize=true] .type-advanced .rte--strong, [data-type_header_capitalize=true] .type-product .rte--strong, [data-type_header_capitalize=true] .type-sale_collection .rte--strong {
    text-transform: uppercase;
}
.type-advanced .rte--strong, .type-product .rte--strong, .type-sale_collection .rte--strong {
    line-height: 1.1;
}
.type-advanced .rte--em, .type-product .rte--em, .type-sale_collection .rte--em {
    font-size: 0.9375em;
    letter-spacing: 0.3em;
    line-height: 1.2;
    text-transform: uppercase;
}
.type-advanced .rte--strong, .type-product .rte--strong {
    font-size: 1.6em;
    line-height: 1.1;
}
@media only screen and (min-width:769px) {
    .type-advanced .rte--strong, .type-product .rte--strong {
        font-size: 2.125em;
    }
    .type-product.flex-grid__item--33 .rte--strong, .type-product.flex-grid__item--50 .rte--strong {
        font-size: 1.6em;
    }
}
.promo-grid__bg {
    height: 100%;
    left: 0;
    position: absolute;
    text-align: left;
    top: 0;
    width: 100%;
}
.promo-grid__container:not(.promo-grid__container--boxed) .promo-grid__bg:before {
    background-color: var(--colorImageOverlay);
    bottom: 0;
    content: "";
    left: 0;
    opacity: var(--colorImageOverlayOpacity);
    position: absolute;
    right: 0;
    top: 0;
    z-index: 3;
}
.promo-grid__bg .placeholder-svg {
    left: 50%;
    max-width: none;
    padding: 0;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: auto;
}
.type-simple .promo-grid__bg .placeholder-svg {
    height: auto;
    max-height: inherit;
    width: 100%;
}
.video-interactable .promo-grid__bg:before {
    pointer-events: none;
}
.promo-grid__bg-image {
    z-index: 1;
}
.aos-animate[data-aos=image-fade-in] .promo-grid__bg-image {
    animation: fade-in 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
    transition: none;
}
.promo-grid__text {
    position: relative;
    z-index: 3;
}
.promo-grid__text .btn {
    margin-bottom: 2px;
    margin-top: 2px;
}
.type-advanced .promo-grid__content {
    padding: 2em;
}
@media only screen and (max-width:768px) {
    .type-advanced .promo-grid__content {
        padding: 1.5em;
    }
}
.type-advanced .btn {
    margin-bottom: 10px;
}
@media only screen and (max-width:768px) {
    .type-advanced .btn {
        margin-bottom: 7px;
    }
}
.type-sale_collection {
    flex-grow: 1;
    max-height: 600px;
}
.type-sale_collection .promo-grid__container {
    align-items: center;
    background: var(--colorSmallImageBg);
}
.type-sale_collection .promo-grid__content {
    flex: 0 1 auto;
    min-width: 0;
    padding: 2em;
}
@media only screen and (max-width:768px) {
    .type-sale_collection .promo-grid__content {
        font-size: 0.9em;
        padding: 1em;
    }
}
@media only screen and (min-width:769px) {
    .type-sale_collection .promo-grid__content:not(.promo-grid__content--small-text) {
        font-size: 1.5em;
    }
}
.type-sale_collection .rte--block {
    margin-bottom: 7.5px;
}
.type-sale_collection .rte--block:last-child {
    margin-bottom: 0;
}
.type-sale_collection .rte--strong {
    display: block;
    font-size: 3.375em;
    line-height: 1;
    position: relative;
    white-space: nowrap;
}
.type-sale_collection small {
    display: inline;
    font-size: 0.25em;
    letter-spacing: 0;
    margin-left: -2.9em;
}
.type-sale-images {
    flex: 1 1 50%;
}
.type-sale-images svg {
    display: block;
    float: left;
    width: 50%;
}
.type-sale-images__crop {
    overflow: hidden;
    width: 100%;
}
.type-sale-images__image {
    float: left;
    width: 50%;
}
.type-simple .promo-grid__content {
    padding: 30px;
}
@media only screen and (max-width:768px) {
    .type-simple .promo-grid__content {
        padding: 15px;
    }
}
.promo-grid__title:last-child {
    margin-bottom: 0;
}
.type-image .promo-grid__container {
    background: none;
}
.type-image .image-wrap, .type-image a, .type-image img {
    width: 100%;
}
.type-banner {
    flex: 1 0 100%;
}
.type-banner .promo-grid__container {
    background: none;
}
.type-banner .promo-grid__container--framed:not(.promo-grid__container--boxed) {
    padding: 1em;
}
.type-banner p {
    display: inline-block;
    line-height: 1.2;
    margin: 5px 10px;
    vertical-align: middle;
}
.type-banner__link {
    display: block;
    flex: 1 1 100%;
}
.type-banner__content {
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 0 10px;
    width: 100%;
}
.type-banner__text {
    flex: 0 1 auto;
    padding: 10px 20px;
    position: relative;
    z-index: 3;
}
.type-banner__image {
    flex: 0 0 45%;
}
@media only screen and (min-width:769px) {
    .type-banner__image {
        flex: 0 0 200px;
    }
}
.type-product__wrapper {
    align-self: center;
    flex: 1 1 100%;
    padding: 2em 0;
    position: relative;
    z-index: 4;
}
.type-product__wrapper.promo-grid__container--tint {
    padding: 2em;
}
.promo-grid__container--framed .type-product__wrapper {
    padding: 2em;
}
@media only screen and (max-width:768px) {
    .type-product__content {
        margin-top: 15px;
    }
}
.type-product__images {
    margin: 10px 0 10px 10px;
    position: relative;
    width: 100%;
}
.type-product__image {
    position: relative;
}
.type-product__image:first-child {
    max-width: 75%;
    width: 100%;
}
.type-product__image:nth-child(2) {
    bottom: 40px;
    max-width: 30%;
    position: absolute;
    right: 0;
    width: 100%;
}
.type-product__labels {
    position: absolute;
    right: -10px;
    text-align: right;
    top: -10px;
    z-index: 3;
}
@media only screen and (min-width:769px) {
    .type-product__labels .flex-grid__item--33, .type-product__labels .flex-grid__item--50 {
        font-size: 0.9em;
    }
}
.type-product__label {
    background-color: var(--colorBtnPrimary);
    clear: both;
    color: var(--colorBtnPrimaryText);
    float: right;
    padding: 4px 12px;
}
.type-product__label--secondary {
    background-color: var(--colorBody);
    color: var(--colorTextBody);
}
.store-availability {
    display: flex;
    justify-content: space-around;
}
.store-availability .icon {
    height: 12px;
    margin: 6px 0 0;
    width: 12px;
}
.store-availability .icon-in-stock {
    fill: #56ad6a;
}
.store-availability .icon-out-of-stock {
    fill: #d02e2e;
}
.store-availability+.store-availability {
    margin-top: 20px;
}
.store-availability__info {
    flex: 0 1 90%;
    margin-left: 10px;
    text-align: left;
}
html[dir=rtl] .store-availability__info {
    margin-left: 0;
    margin-right: 10px;
    text-align: right;
}
.store-availability__info>div {
    margin-bottom: 5px;
}
.store-availability__info>div:last-child {
    margin-bottom: 0;
}
.store-availability__info a {
    -webkit-text-decoration: underline;
    text-decoration: underline;
}
.store-availability__small {
    font-size: 0.8em;
}
.store-availability__small a {
    display: block;
    margin-top: 10px;
}
.modal .store-availability__small--link {
    display: none;
}
.age-verification-popup {
    bottom: 0;
    top: 0;
}
.age-verification-popup.age-verification-popup--image-false {
    background-color: var(--colorBody);
}
.age-verification-popup.age-verification-popup--image-false.modal:before {
    animation: none;
    background-color: var(--colorBody);
}
.age-verification-popup.age-verification-popup--image-false .modal__inner {
    box-shadow: none;
}
.age-verification-popup.modal--mobile-friendly.modal--square .modal__centered-content {
    background-color: var(--colorDrawers);
}
@media only screen and (min-width:769px) {
    .cart__page {
        align-items: flex-start;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .cart__page-col:first-child {
        flex: 1 1 60%;
        padding-right: 100px;
    }
    .cart__page-col:last-child {
        flex: 0 1 35%;
        padding: 30px;
        position: sticky;
        top: 10%;
    }
    .cart__page-col:last-child:after {
        background-color: var(--colorTextBody);
        bottom: 0;
        content: "";
        left: 0;
        opacity: 0.03;
        position: absolute;
        right: 0;
        top: 0;
        z-index: -1;
    }
}
.cart__item {
    border-bottom: 1px solid;
    border-bottom-color: var(--colorBorder);
    display: flex;
    margin-bottom: 20px;
    padding-bottom: 20px;
}
.cart__item:first-child {
    padding-top: 10px;
}
.cart__item:last-child {
    border-bottom: 0;
    margin-bottom: 0;
}
.cart__image {
    flex: 0 0 150px;
    margin-right: var(--grid-gutter);
    position: relative;
}
.cart__image a {
    display: block;
    height: 100px;
    position: relative;
    width: 100%;
}
.cart__image img {
    display: block;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    position: absolute;
    width: 100%;
}
.drawer .cart__image {
    flex: 0 0 100px;
}
.cart__item-details {
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
}
.cart__item-title {
    flex: 1 1 100%;
}
.drawer .cart__item-title {
    font-size: calc(var(--typeBaseSize)*0.85);
}
.cart__item-sub {
    display: flex;
    flex: 1 1 100%;
    justify-content: space-between;
    line-height: 1;
}
.cart__item-sub>div:first-child {
    margin-right: 10px;
}
.cart__item-row {
    margin-bottom: 20px;
}
.cart__remove a {
    display: inline-block;
    margin-top: 10px;
}
.drawer .cart__remove {
    display: none;
}
.cart__checkout {
    width: 100%;
}
.cart__item-name {
    display: block;
    font-size: calc(var(--typeBaseSize) + 1px);
    margin-bottom: 8px;
}
.cart__item--variants {
    margin-bottom: 10px;
}
.cart__item--variants span {
    font-weight: 700;
}
.cart__price {
    display: block;
}
.cart__price--strikethrough {
    -webkit-text-decoration: line-through;
    text-decoration: line-through;
}
.cart__discount {
    color: var(--colorTextSavings);
}
.cart__terms {
    align-items: center;
    display: flex;
    justify-content: center;
}
.cart__terms label {
    letter-spacing: 0;
    margin-bottom: 0;
    text-transform: none;
}
.cart__checkout-wrapper {
    margin-top: 20px;
}
.cart__checkout-wrapper .additional-checkout-buttons {
    margin-top: 12px;
}
.drawer .additional-checkout-buttons {
    margin: 10px 0;
}
.drawer .additional-checkout-buttons [data-shopify-buttoncontainer] {
    justify-content: center;
}
.drawer .additional-checkout-buttons [data-shopify-buttoncontainer]>* {
    height: auto !important;
}
iframe.zoid-component-frame {
    z-index: 1 !important;
}
.drawer__cart-empty {
    display: none;
}
.drawer.is-empty .drawer__inner {
    display: none;
}
.drawer.is-empty .drawer__cart-empty {
    display: block;
}
.cart__item--properties {
    font-size: calc(var(--typeBaseSize) - 2px);
    line-height: 1.3;
    margin-bottom: 10px;
}
.cart__item--properties span {
    font-weight: 700;
}
@media only screen and (min-width:769px) {
    .product-single__sticky {
        position: sticky;
        top: 20px;
    }
    .sticky-header .product-single__sticky {
        top: 140px;
    }
    .modal--quick-shop .product-single__sticky {
        top: 0;
    }
}
.page-content--product {
    padding-top: 55px;
}
@media only screen and (max-width:768px) {
    .page-content--product {
        padding-top: 0;
    }
    .grid--product-images-right {
        display: flex;
        flex-wrap: wrap;
    }
    .grid--product-images-right .grid__item:first-child {
        order: 2;
    }
}
.modal .page-content--product {
    max-width: 100%;
    width: 1500px;
}
.product-single__meta {
    padding-left: 45px;
}
@media only screen and (max-width:768px) {
    .product-single__meta {
        margin-top: 15px;
        padding-left: 0;
        text-align: center;
    }
}
.grid--product-images-right .product-single__meta {
    padding-left: 0;
    padding-right: 45px;
}
@media only screen and (max-width:768px) {
    .grid--product-images-right .product-single__meta {
        padding-right: 0;
    }
}
.product-single__meta .social-sharing {
    margin-top: 30px;
}
.product-single__meta .rte {
    text-align: left;
}
html[dir=rtl] .product-single__meta .rte {
    text-align: right;
}
.product-single__vendor {
    font-size: 0.8em;
    letter-spacing: 0.3em;
    margin-bottom: 7.5px;
    text-transform: uppercase;
}
.product-single__title {
    word-wrap: break-word;
    margin-bottom: 10px;
}
.product-single__sku {
    margin-bottom: 5px;
}
.product-single__description-full {
    margin: 30px 0;
}
.product-single__description-full+.collapsibles-wrapper {
    margin: 0 0;
}
@media only screen and (min-width:769px) {
    .product-single__description-full {
        margin: 30px 95px;
    }
    .product-single__description-full+.collapsibles-wrapper {
        margin: 0 95px;
    }
}
.product-single__variants {
    display: none;
}
.no-js .product-single__variants {
    display: block;
    margin-bottom: 30px;
}
.product-image-main {
    position: relative;
}
[data-button_style=angled] .product-image-main .btn:not(.product__photo-zoom) {
    display: inline-block;
    position: absolute;
    top: 50%;
}
.product__video-wrapper {
    background-color: var(--colorSmallImageBg);
    height: auto;
    max-width: 100%;
    overflow: hidden;
    padding-bottom: 100%;
    position: relative;
}
.product__video-wrapper iframe {
    height: 100%;
    transition: opacity 0.5s ease-in;
    width: 100%;
}
.product__video-wrapper.loaded[data-video-style=muted]:before {
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}
.product__video-wrapper.video-interactable:before {
    display: none;
}
.product__video-wrapper.loaded:after {
    display: none;
}
.product__video-wrapper.loading iframe {
    opacity: 0.01;
}
.product__video-wrapper.loaded iframe {
    opacity: 1;
}
.product__video {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.product__video-overlay {
    bottom: 40px;
    left: 0;
    position: absolute;
    top: 32px;
    width: 40%;
    z-index: 3;
}
.product__video-overlay:before {
    content: "";
    display: block;
    height: 35%;
    left: 100%;
    position: absolute;
    top: 0;
    width: 60%;
}
.product__video-overlay+.product__video-overlay {
    left: auto;
    right: 0;
}
.product__video-overlay+.product__video-overlay:before {
    bottom: 0;
    left: auto;
    right: 100%;
    top: auto;
}
.product-video-trigger {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}
.product__photos--beside {
    display: flex;
    width: 100%;
}
.product__photos {
    direction: ltr;
}
.product__photos a {
    display: block;
    max-width: 100%;
}
.product__photos img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    width: 100%;
}
.product__main-photos {
    flex: 1 1 auto;
    position: relative;
}
.product__main-photos .flickity-page-dots {
    display: none;
}
@media only screen and (max-width:768px) {
    .product__main-photos {
        margin-bottom: 30px;
        margin-left: -17px;
        margin-right: -17px;
    }
    .product__main-photos .flickity-page-dots {
        display: block;
    }
}
.product-main-slide:not(.is-selected) button, .product-main-slide:not(.is-selected) iframe, .product-main-slide:not(.is-selected) model-viewer, .product-main-slide:not(.is-selected) video {
    display: none;
}
.product-main-slide {
    display: none;
    overflow: hidden;
    width: 100%;
}
.product-main-slide:first-child {
    display: block;
}
.flickity-slider .product-main-slide {
    display: block;
}
@media only screen and (max-width:768px) {
    .grid--product-images--partial .flickity-slider .product-main-slide {
        margin-right: 4px;
        width: 75%;
    }
}
.product__thumbs {
    position: relative;
}
.product__thumbs--below {
    margin-top: 8.5px;
}
@media only screen and (min-width:769px) {
    .product__thumbs--below {
        margin-top: 15px;
    }
}
.product__thumbs--beside {
    flex: 0 0 60px;
    margin-left: 8.5px;
    max-width: 60px;
}
@media only screen and (min-width:769px) {
    .product__thumbs--beside {
        flex: 0 0 80px;
        margin-left: 15px;
        max-width: 80px;
    }
    .product__thumbs--beside.product__thumbs-placement--left {
        margin-left: 0;
        margin-right: 15px;
        order: -1;
    }
}
.product__thumbs--scroller {
    -ms-overflow-style: -ms-autohiding-scrollbar;
    scroll-behavior: smooth;
    scrollbar-width: none;
}
.product__thumbs--scroller::-webkit-scrollbar {
    height: 0;
    width: 0;
}
.product__thumbs--below .product__thumbs--scroller {
    overflow-x: scroll;
    white-space: nowrap;
}
.product__thumbs--beside .product__thumbs--scroller {
    bottom: 0;
    left: 0;
    overflow-y: scroll;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}
.product__thumb-item {
    border: 2px solid transparent;
}
.product__thumb-item a.is-active, .product__thumb-item a:focus {
    outline: none;
}
.product__thumb-item a.is-active:before, .product__thumb-item a:focus:before {
    bottom: 0;
    box-shadow: inset 0 0 0 2px var(--colorTextBody);
    content: "";
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}
.product__thumb-item a:active:before {
    content: none;
}
.product__thumbs--beside .product__thumb-item {
    margin-bottom: 8.5px;
}
@media only screen and (min-width:769px) {
    .product__thumbs--beside .product__thumb-item {
        margin-bottom: 15px;
    }
}
.product__thumbs--beside .product__thumb-item:last-child {
    margin-bottom: 0;
}
.product__thumbs--below .product__thumb-item {
    display: inline-block;
    margin-right: 8.5px;
    max-width: 80px;
    vertical-align: middle;
}
@media only screen and (min-width:769px) {
    .product__thumbs--below .product__thumb-item {
        margin-right: 15px;
    }
}
.product__thumbs--below .product__thumb-item:last-child {
    margin-right: 0;
}
.product__price {
    color: var(--colorPrice);
    font-size: calc(var(--typeBaseSize) + 15px);
    font-weight: bold;
    margin-right: 5px;
}
.product__price.on-sale {
    padding-right: 5px;
}
.product__unit-price {
    font-size: 0.8em;
    opacity: 0.8;
}
.product__unit-price--spacing {
    margin-top: 10px;
}
.product__price--compare {
    display: inline-block;
    padding-right: 5px;
    -webkit-text-decoration: line-through;
    text-decoration: line-through;
}
.product__price-savings {
    color: var(--colorTextSavings);
    white-space: nowrap;
}
.product__quantity label {
    display: block;
    margin-bottom: 10px;
}
.product-form-holder--loaded {
    animation: fade-in 1s ease;
}
.add-to-cart[disabled]+.shopify-payment-button {
    display: none;
}
.product-slideshow.flickity-enabled .product-main-slide {
    display: none;
}
.product-slideshow.flickity-enabled .flickity-viewport .product-main-slide {
    display: block;
}
.product__photo-zoom {
    position: absolute !important;
}
.product__photo-zoom {
    bottom: 0;
    cursor: zoom-in;
    right: 0;
}
@media only screen and (max-width:768px) {
    .product__photo-zoom {
        padding: 6px;
    }
    .product__main-photos .product__photo-zoom {
        margin-bottom: 10px;
        margin-right: 10px;
    }
    .product-slideshow .product__photo-zoom {
        opacity: 0;
        transition: opacity 0.5s ease-out;
    }
    .product-slideshow .is-selected .product__photo-zoom {
        opacity: 1;
    }
}
@media only screen and (min-width:769px) {
    .product__photo-zoom {
        border-radius: 0;
        left: 0;
        margin: 0;
        opacity: 0;
        top: 0;
        width: 100%;
    }
    .product__photo-zoom span, .product__photo-zoom svg {
        display: none;
    }
}
.product__thumb-arrow {
    background: var(--colorBody);
    border-radius: 0;
    color: var(--colorTextBody);
    padding: 0;
    position: absolute;
    transform: none;
    z-index: 2;
}
.product__thumb-arrow .icon {
    display: inline-block;
    height: 10px;
    width: 6px;
}
.product__thumbs[data-position=below] .product__thumb-arrow {
    height: 100%;
    top: 0;
    width: 25px;
}
.product__thumbs[data-position=below] .product__thumb-arrow.product__thumb-arrow--prev {
    left: 0;
    text-align: left;
}
.product__thumbs[data-position=below] .product__thumb-arrow.product__thumb-arrow--next {
    right: 0;
    text-align: right;
}
.product__thumbs[data-position=beside] .product__thumb-arrow {
    width: 100%;
}
.product__thumbs[data-position=beside] .product__thumb-arrow .icon {
    margin: 0 auto;
    transform: rotate(90deg);
}
.product__thumbs[data-position=beside] .product__thumb-arrow.product__thumb-arrow--prev {
    left: auto;
    padding-bottom: 10px;
    top: 0;
}
.product__thumbs[data-position=beside] .product__thumb-arrow.product__thumb-arrow--next {
    bottom: 0;
    padding-top: 10px;
    right: auto;
    top: auto;
}
.product__thumb {
    cursor: pointer;
    display: block;
    position: relative;
}
.product__thumb>.image-wrap img {
    height: auto;
    position: static;
}
.product__thumb-icon {
    background-color: var(--colorTextBody);
    border-radius: 100px;
    font-size: 0;
    opacity: 0;
    padding: 6px;
    position: absolute;
    right: 5px;
    top: 5px;
    transition: opacity 0.5s ease;
    z-index: 1;
}
.aos-animate .product__thumb-icon {
    opacity: 1;
}
.product__thumb-icon .icon {
    fill: var(--colorBody);
    height: 10px;
    width: 10px;
}
@media only screen and (min-width:769px) {
    .product__thumb-icon .icon {
        height: 13px;
        width: 13px;
    }
}
.product__policies {
    font-size: 0.85em;
}
.shopify-payment-terms {
    margin: 12px 0;
}
.shopify-payment-terms:empty {
    display: none;
}
.modal .shopify-payment-terms {
    display: none;
}
.template-blog .article {
    margin-bottom: 45px;
}
@media only screen and (min-width:769px) {
    .template-blog .article {
        margin-bottom: 90px;
    }
}
.template-blog .article:last-child {
    margin-bottom: 0;
}
@media only screen and (min-width:769px) {
    .template-blog .article:last-child {
        margin-bottom: 45px;
    }
}
.article__body {
    margin-bottom: 15px;
}
@media only screen and (min-width:769px) {
    .article__body {
        margin-bottom: 30px;
    }
}
.article__comment {
    margin-bottom: 30px;
}
.article__comment:last-child {
    margin-bottom: 0;
}
.password-page__header__grid {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    justify-content: space-between;
}
.password-page__logo h1 {
    margin-bottom: 0;
}
.password-page__logo .logo {
    max-width: 100%;
}
.password-login {
    display: block;
    margin: 0 auto;
    padding: 7.5px 15px;
}
.password-form {
    margin-bottom: 1em;
}
.password__lock .icon {
    height: 24px;
    margin-right: 4px;
    position: relative;
    top: -2px;
    width: 24px;
}
.icon-shopify-logo {
    height: 20px;
    width: 60px;
}
@media only screen and (max-width:768px) {
    #LoginModal .modal__close {
        padding: 20px;
    }
}
#LoginModal .modal__inner {
    background: var(--colorBody);
    color: var(--colorTextBody);
    padding: 30px;
}
@media only screen and (max-width:768px) {
    #LoginModal .modal__inner {
        margin-bottom: 40vh;
    }
}
.password-admin-link {
    margin: 0;
}
.password-admin-link a {
    border-bottom: 2px solid !important;
    border-bottom-color: var(--colorBorder) !important;
}
.template-giftcard, .template-giftcard body {
    background: var(--colorBody);
}
.template-giftcard a, .template-giftcard body a {
    -webkit-text-decoration: none;
    text-decoration: none;
}
.template-giftcard .page-width {
    max-width: 588px;
}
.giftcard-header {
    font-size: 1em;
    padding: 60px 0;
    text-align: center;
}
.giftcard-header a {
    display: block;
    margin: 0 auto;
}
.template-giftcard .shop-url {
    display: none;
}
.giftcard__border {
    box-shadow: 0 10px 30px rgba(0, 0, 0, .3);
    padding: 1.5em;
}
.giftcard__content {
    background-color: var(--colorBody);
    color: var(--colorTextBody);
}
.giftcard__content:after {
    clear: both;
    content: "";
    display: table;
}
.giftcard__header {
    padding: 15px;
}
.giftcard__header:after {
    clear: both;
    content: "";
    display: table;
}
.giftcard__title {
    float: left;
    margin-bottom: 0;
}
.giftcard__tag {
    background-color: var(--colorTextBody);
    border: 1px solid transparent;
    border-radius: 4px;
    color: var(--colorBody);
    display: block;
    float: right;
    font-size: 0.75em;
    letter-spacing: .05em;
    line-height: 1;
    padding: 10px;
    text-transform: uppercase;
}
.giftcard__tag--active {
    background: transparent;
    border: 1px solid;
    border-color: var(--colorBorder);
    color: var(--colorTextBody);
}
.giftcard__wrap {
    margin: 15px 15px 30px;
    position: relative;
}
.giftcard__wrap img {
    border-radius: 10px;
    display: block;
    position: relative;
    z-index: 2;
}
.giftcard__code {
    bottom: 30px;
    position: absolute;
    text-align: center;
    width: 100%;
    z-index: 50;
}
.giftcard__code--medium {
    font-size: .875em;
}
.giftcard__code--small {
    font-size: .75em;
}
.giftcard__code__inner {
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .1);
    display: inline-block;
    max-width: 450px;
    padding: .5em;
    vertical-align: baseline;
}
.giftcard__code--small .giftcard__code__inner {
    overflow: auto;
}
.giftcard__code__text {
    border: 1px dashed;
    border-color: var(--colorBorder);
    border-radius: 2px;
    color: var(--colorTextBody);
    display: inline-block;
    font-size: 1.875em;
    font-weight: 400;
    line-height: 1;
    padding: .4em .5em;
    text-transform: uppercase;
    vertical-align: baseline;
}
.disabled .giftcard__code__text {
    color: #999;
    -webkit-text-decoration: line-through;
    text-decoration: line-through;
}
.giftcard__amount {
    color: #fff;
    font-size: 2.75em;
    line-height: 1.2;
    padding: 15px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 50;
}
.giftcard__amount strong {
    display: block;
    text-shadow: 3px 3px 0 rgba(0, 0, 0, .1);
}
.giftcard__amount--medium {
    font-size: 2em;
}
.tooltip {
    color: #fff;
    display: block;
    margin-top: 16px;
    position: absolute;
    right: 50%;
    text-align: center;
    top: -50%;
    white-space: nowrap;
    z-index: 3;
}
.tooltip:before {
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 5px solid #333;
    border-top: 5px solid rgba(51, 51, 51, .9);
    bottom: 0;
    content: "";
    display: block;
    height: 0;
    left: 100%;
    margin-bottom: -5px;
    margin-left: -5px;
    position: absolute;
    width: 0;
}
.tooltip__label {
    background: #333;
    background: rgba(51, 51, 51, .9);
    border: none;
    border-radius: 4px;
    display: block;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    margin-left: .25em;
    min-height: 14px;
    padding: .5em .75em;
    position: relative;
    right: -50%;
    -webkit-text-decoration: none;
    text-decoration: none;
    text-shadow: none;
}
.tooltip__label small {
    color: #b3b3b3;
    font-size: .875em;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.giftcard__instructions {
    margin: 0 15px 30px;
    text-align: center;
}
.giftcard__actions {
    overflow: hidden;
    padding-bottom: 1em;
    position: relative;
    text-align: center;
}
.template-giftcard .action-link {
    display: block;
    font-size: 0.875em;
    font-weight: 700;
    left: 15px;
    letter-spacing: .2em;
    margin-top: -10px;
    padding-top: 4px;
    position: absolute;
    text-transform: uppercase;
    top: 50%;
}
.template-giftcard .action-link:focus, .template-giftcard .action-link:hover {
    color: var(--colorTextBody);
}
.template-giftcard .action-link__print {
    background-image: url(/cdn/s/assets/gift-card/icon-print-164daa1ae32d10d1f9b83ac21b6f2c70.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    display: inline-block;
    height: 17px;
    margin-right: 10px;
    opacity: 1;
    vertical-align: baseline;
    vertical-align: middle;
    width: 17px;
}
.giftcard__footer {
    padding: 60px 0;
    text-align: center;
}
#QrCode img {
    border: 1px solid;
    border-color: var(--colorBorder);
    border-radius: 4px;
    margin: 0 auto 30px;
    padding: 30px;
}
@media only screen and (max-width:768px) {
    .giftcard {
        font-size: 12px;
    }
    .giftcard-header {
        padding: 30px 0;
    }
    .header-logo {
        font-size: 2em;
    }
    .giftcard__border {
        padding: 15px;
    }
    .giftcard__actions {
        padding: 15px;
    }
    .giftcard__actions .btn {
        padding-left: 0;
        padding-right: 0;
        width: 100%;
    }
    .template-giftcard .action-link {
        display: none;
    }
}
@media screen and (max-width:400px) {
    .giftcard__amount strong {
        text-shadow: 2px 2px 0 rgba(0, 0, 0, .1);
    }
    .giftcard__wrap:after, .giftcard__wrap:before {
        display: none;
    }
    .giftcard__code {
        font-size: .75em;
    }
    .giftcard__code--medium {
        font-size: .65em;
    }
    .giftcard__code--small {
        font-size: .55em;
    }
}
@media screen and (max-height:800px) {
    .header-logo img {
        max-height: 90px;
    }
}
@media print {
    @page {
        margin: 0.5cm;
    }
    h2, h3, p {
        orphans: 3;
        widows: 3;
    }
    h2, h3 {
        page-break-after: avoid;
    }
    body, html {
        background-color: #fff;
    }
    .giftcard-header {
        padding: 10px 0;
    }
    .giftcard__border, .giftcard__content {
        border: 0 none;
    }
    .add-to-apple-wallet, .giftcard__actions, .giftcard__wrap:after, .giftcard__wrap:before, .site-header__logo-link img:nth-child(2), .tooltip {
        display: none;
    }
    .giftcard__title {
        float: none;
        text-align: center;
    }
    .giftcard__code__text {
        color: #555;
    }
    .template-giftcard .shop-url {
        display: block;
    }
    .template-giftcard .logo {
        color: #58686f;
    }
}
.product__price-label {
    font-size: 12px;
    margin-bottom: 4px;
    color: #666;
}
/* セカンダリ画像コンテナを親に合わせる */
.grid-product__secondary-image {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}
/* image-elementのカスタム要素も合わせる */
.grid-product__secondary-image image-element {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}
/* img のheight属性をCSSで強制上書き */
.grid-product__secondary-image image-element img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
/* BLAND一覧の幅調整 */
#shopify-section-template--18259721814250__1774605794572f0224 {
    max-width: 1260px;
    margin: 0px auto;
}
div#shopify-section-template--18259721814250__1774605794572f0224 div {
    margin-bottom: 10px;
}
/* トップページタイトル */
.theme-block h2,
.section-header.text-center h2 {
    margin: 60px 0 30px;
    font-size: 50px;
    font-weight: bold;
    font-family: math;
}
@media only screen and (max-width: 767px) {
    .theme-block h2,
    .section-header.text-center h2 {
        font-size: 38px;
    }
}
/* トップスライド */
.animation-contents {
    color: #222;
    font-family: math;
    font-weight: bold;
    font-feature-settings: "palt";
}
.hero__link a.btn {
    color: #FFF !important;
}
@media screen and (max-width: 480px) {
    .hero__subtitle {
        font-size: 15px;
        margin-bottom: 0;
    }
}
/* トップのブランド */
#shopify-section-template--18259721814250__featured_collections_YRcwT4,
#shopify-section-template--18259721814250__featured_collections_3XDyxh {
    max-width: 1200px;
    margin: 0 auto;
}
#shopify-section-template--18259721814250__brand_list_Q8hVqg {
    width: 100%;
    margin-bottom: 75px;
}
#shopify-section-template--18259721814250__featured_collections_3XDyxh {
    margin-top: 5px;
}
.collection-image--landscape {
    padding-top: 50%;
}
#shopify-section-template--18259721814250__featured_collections_3XDyxh .collection-image.image-wrap {
    padding-bottom: 0 !important;
    height: 242px !important;
    overflow: hidden;
}
#shopify-section-template--18259721814250__featured_collections_3XDyxh .collection-image.image-wrap .image-element {
    position: relative !important;
    height: 260px !important;
    width: 100% !important;
    object-fit: cover;
}
@media screen and (max-width: 768px) {
    #shopify-section-template--18259721814250__featured_collections_3XDyxh .collection-image.image-wrap {
        padding-bottom: 0 !important;
        height: 160px !important;
    }
    #shopify-section-template--18259721814250__featured_collections_3XDyxh .collection-image.image-wrap .image-element {
        height: 160px !important;
    }
    .page-full {
        padding: 0 0 0 10px;
    }
    .collection-item {
        display: block;
        margin-bottom: 5px;
    }
    .grid__item.medium-up--one-half:first-child {
        margin-bottom: 5px;
    }
    #shopify-section-template--18259721814250__featured_collections_YRcwT4 .grid__item.medium-up--one-half,
    #shopify-section-template--18259721814250__featured_collections_YRcwT4 .collection-image,
    #shopify-section-template--18259721814250__featured_collections_YRcwT4 .grid__item.medium-up--one-half a {
        height: 242px !important;
    }
    #shopify-section-template--18259721814250__featured_collections_3XDyxh .grid__item.small--one-half {
        width: 100% !important;
    }
    #shopify-section-template--18259721814250__featured_collections_YRcwT4,
    #shopify-section-template--18259721814250__featured_collections_3XDyxh {
        float: left;
        width: 50%;
        box-sizing: border-box;
    }
    #shopify-section-template--18259721814250__featured_collections_YRcwT4 .page-width,
    #shopify-section-template--18259721814250__featured_collections_3XDyxh .page-width {
        padding: 0;
    }
    #shopify-section-template--18259721814250__featured_collections_YRcwT4 {
        padding-left: 5px;
    }
    #shopify-section-template--18259721814250__featured_collections_3XDyxh {
        margin-top: 0px;
    }
    /* floatの影響を次のセクションに与えないようにする */
    #shopify-section-template--18259721814250__featured_collections_3XDyxh+div {
        clear: both;
        width: 96%;
        margin: 0 auto;
    }
    #shopify-section-template--18259721814250__featured_collections_3XDyxh .collection-image.image-wrap {
        height: 160px !important;
        padding-bottom: 0 !important;
        /* padding-bottomでアスペクト比制御している場合に必要 */
    }
}
/* カテゴリーのブロックの枠 */
div#shopify-section-template--18259721814250__text_columns_yA6KUw div div div.text-center.aos-init.aos-animate {
    border: solid 1px #ddd !important;
    padding-bottom: 30px;
}
/* トップページコンテンツ下の余白 */
div#shopify-section-template--18259721814250__text_columns_VzgwQh,
div#shopify-section-template--18259721814250__text_columns_gJ4CNB,
div#shopify-section-template--18259721814250__advanced_content_ELKaDf,
div#shopify-section-template--18259721814250__advanced_content_hUVDXk {
    padding-bottom: 60px;
}
/* トップページコンテンツブロックの余白 */
.text-center.aos-init.aos-animate {
    border: solid 1px #ddd;
}
.text-center.aos-init.aos-animate h3 {
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  overflow: hidden;
  font-size: 18px;
}


/* ブログ */
/* ---- ブログセクション全体 ---- */
.hy-blog-section {
    background: #fff;
    text-align: center;
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
}
/* ---- セクションタイトル ---- */
.hy-blog-section__heading {
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #111;
    text-transform: uppercase;
    margin: 0 0 4px;
}
.hy-blog-section__subheading {
    font-size: 12px;
    letter-spacing: 0.2em;
    color: #999;
    text-transform: uppercase;
    margin: 0 0 40px;
}
/* ---- カードグリッド（PC：3列 / SP：1列） ---- */
.hy-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1100px;
    margin: 0 auto 40px;
}
@media (max-width: 768px) {
    .hy-blog-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}
/* ---- 個別カード ---- */
.hy-blog-card {
    text-align: left;
    text-decoration: none;
    color: inherit;
    display: block;
    transition: opacity 0.2s ease;
}
.hy-blog-card:hover {
    opacity: 0.8;
}
/* サムネイル */
.hy-blog-card__thumb-wrap {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f0f0f0;
    display: block;
}
.hy-blog-card__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
/* テキストエリア */
.hy-blog-card__body {
    padding: 14px 0 0;
}
.hy-blog-card__date {
    font-size: 11px;
    color: #999;
    letter-spacing: 0.05em;
    margin: 0 0 6px;
}
.hy-blog-card__title {
    font-size: 14px;
    font-weight: 600;
    color: #111;
    line-height: 1.6;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/* ---- 「もっと記事を読む」ボタン ---- */
.hy-blog-btn {
    display: inline-block;
    padding: 14px 48px;
    background: #ffffff;
    color: #c9a84c;
    border: solid 1px #c9a84c;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-decoration: none;
    text-transform: uppercase;
    transition: background 0.2s ease;
}
.hy-blog-btn:hover {
    background: #a8893a;
    color: #fff;
}
/* ---- ローディング・エラー表示 ---- */
.hy-blog-loading, .hy-blog-error {
    color: #999;
    font-size: 14px;
    padding: 40px 0;
    grid-column: 1 / -1;
}
/* 商品一覧の */
.product-condition, .product-type {
    font-size: 12px;
    border: solid 1px #ddd;
    padding: 2px 3px;
    margin-top: 15px;
    display: inline-flex;
}
.grid-product__title.grid-product__title--heading {
    font-size: 16px;
    text-align: left !important;
    line-height: 1.25;
}
.grid-product__price {
    font-weight: bold;
    font-size: 20px;
    color: #333;
}
/* スマホ: price-badge-rowを縦並びに */
@media screen and (max-width: 749px) {
    .product-block--price-badge-row {
        flex-direction: column;
        align-items: flex-start;
    }
    .product-block--price-badge-row .badge {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
    }
}
/* ヘッダー */
.header-item.small--hide {
    display: flex;
    align-items: center;
    padding: 0;
}
a.small--hide {
    font-size: 1.75em;
    font-weight: bold;
    letter-spacing: -0.1px;
    white-space: nowrap;
    text-decoration: none;
    color: inherit;
    display: inline-flex;
    align-items: center;
}
.header-item.small--hide a svg {
    width: 30px;
    height: 30px;
    stroke: currentColor;
    overflow: visible;
    vertical-align: middle;
    margin-top: 4px;
}
.header-item.small--hide span {
    font-size: 16px;
    display: inline-flex;
    align-items: center;
    padding-right: 10px;
}
.header__icon--phone {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 8px;
    color: inherit;
}
.header-item.header-item--icons svg {
    width: 32px;
    height: 32px;
}
/* ナビの後ろから右側全体を右寄せ */
.header-layout--left .header-item--navigation {
    margin-right: auto;
}
/* 電話番号のmargin-left:autoは削除 */
.header-layout--left .header-item.small--hide {
    margin-left: 0;
}
/* フッター */
@media only screen and (min-width: 769px) {
    .site-footer {
        padding-bottom: 20px;
        padding-top: 30px;
        margin-top: 0px;
    }
}
.footer__collapsible h1 {
    font-family: monospace;
    font-size: 3em;
    letter-spacing: -0.1px;
    padding: 15px 0;
}
.footer__collapsible svg {
    width: 38px;
    height: 38px;
    stroke: currentColor;
    overflow: visible;
    vertical-align: middle;
    margin-top: -30px;
}
.footer__collapsible a {
    font-size: 38px;
    line-height: 1;
}
.footer__collapsible a:hover {
    opacity: 0.8;
    transition: 0.3s;
}
.footer__collapsible.footer_collapsible--disabled li a {
    font-size: 16px;
}
.grid__item.footer__item--custom_YKiAnT {
    margin: 40px 0;
}
.footer__collapsible p {
    margin: 0;
    font-size: 16px;
}
@media screen and (max-width: 768px) {
    .footer__collapsible p {
        margin: 0;
        font-size: 14px;
    }
}
.ai-social-wrapper-aigenblockab35cbeynth3f,
.grid__item.footer__item--menu_qPVXMG {
    margin-bottom: 40px;
}
/* フッターナビゲーション横並び */
.footer__item--menu_qPVXMG .site-footer__linklist {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 8px 24px;
    justify-content: center;
    text-align: center;
}
.footer__item--menu-3 {
    margin-top: 30px !important;
}
.footer__item--menu-3 .footer__collapsible {
    height: auto !important;
    overflow: visible !important;
}
.footer__item--menu-3 .site-footer__linklist {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px 16px !important;
    margin-left: 10px;
}
.footer__item--menu-3 .site-footer__linklist li {
    margin-bottom: 0 !important;
}
.footer__item--menu_qPVXMG .site-footer__linklist li {
    display: inline-block;
}
.footer__item--menu_qPVXMG .site-footer__linklist a {
    font-size: 13px !important;
}
p.footer__small-text {
    border-top: solid 1px #ddd;
    margin-top: 20px;
    padding-top: 20px;
}
@media (max-width: 749px) {
    p.footer__small-text {
        border-top: none;
        margin-top: 0px;
        padding-top: 20px;
    }
}
/* バッジ */
.badge img {
    float: right;
    width: 80px;
}
span.product__price {
    float: left;
    width: 60% !important;
}
/* 価格を1行に収める */
.product__price {
    display: block;
    white-space: nowrap;
}
.payment-method {
    width: 100%;
    float: left;
    padding: 20px 0;
}
/* ショップ */
#shopify-section-template--18307760652522__advanced_content_Xnx3wJ {
    margin-top: 75px;
}
.shop h2 {
    line-height: 1.5em;
}
table.shop {
    margin-bottom: 40px !important;
}
td.photo {
    padding: 15px !important;
}
td.photo img {
    width: 33.33%;
    float: left;
}
.shop td.map iframe {
    display: block;
    padding: 0;
    width: 100%;
    height: 574px;
    border: none;
}
.shop td.map {
    padding: 0;
    width: 100%px;
}
.shop td {
    padding: 40px 60px;
}
@media (max-width: 749px) {
    table.shop,
    table.shop tbody,
    table.shop tr,
    table.shop td {
        display: block;
        width: 100%;
    }
    table.shop td.map iframe {
        width: 100%;
        height: 300px;
    }
    table.shop td.photo {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }
    table.shop td.photo img {
        width: calc(50% - 4px);
        height: auto;
    }
    table.shop {
        border: solid 1px #ddd;
    }
    table.shop td {
        padding: 20px 40px;
    }
}
/* h2 */
h2.model-list-heading,
h2.ai-banner-grid__title-abunlnez1dmtuse8zwaigenblock711710dafxaxx {
    font-family: math;
    font-size: 50px;
    font-weight: 700;
}
@media (max-width: 749px) {
    h2.model-list-heading,
    h2.ai-banner-grid__title-abunlnez1dmtuse8zwaigenblock711710dafxaxx {
        font-size: 26px;
    }
}
.collection-hero {
    height: 250px !important;
}
/* Service */
div#shopify-section-template--18259722174698__text_columns_qpWHDR {
    background: #faf8f2;
    padding-bottom: 100px;
}
/* ポップアップ */
.modal__centered-content.newsletter--has-image .newsletter-popup {
    display: flex;
    max-width: 300px;
    min-width: 300px;
    padding: 0px;
    background: #03c755;
    color: #FFF;
}
.modal__centered-content.newsletter--has-image .newsletter-popup__image-wrapper {
    width: 20%;
}
.modal__centered-content.newsletter--has-image .newsletter-popup__content {
    padding: 20px;
    width: 80%;
    color: #FFF;
    text-align: left;
}
.modal__centered-content.newsletter--has-image .newsletter-popup__image {
    width: 70px !important;
    height: 70px !important;
}
img.newsletter-popup__image.image-element {
    margin-left: 10px;
}
.modal--square .modal__centered-content {
    -webkit-overflow-scrolling: touch;
    max-height: 80vh;
    min-height: 88px;
}
button.modal__close.js-modal-close.text-link {
    display: none;
}
.modal__inner {
    position: fixed;
    right: 0;
    bottom: 0;
}
.newsletter-popup__content button.modal__close.js-modal-close.text-link {
    display: none;
}
@media only screen and (max-width: 768px) {
    .modal--mobile-friendly.modal--square .modal__centered-content {
        padding: 0;
    }
}
@media only screen and (min-width: 769px) {
    [data-section-type=newsletter-popup] .rte {
        margin-bottom: 0;
        margin-top: 0px;
    }
    .modal__inner {
        margin: 0px;
    }
}
/* ポリシー */
.shopify-policy__container h1 {
    background: #f8f8f8;
    padding: 15px;
    margin-bottom: 50px;
}
/* ガイド */
.rte.rte--nomargin h3 {
    background: #f8f8f8;
    padding: 40px 20px;
}
.rte.rte--nomargin p {
    padding: 10px 20px;
}
/* 来店予約 */
section#shopify-section-template--18259722010858__main header.section-header h1 {
    margin-bottom: 70px;
}
.reservation {
    border: solid 1px #ddd;
    padding: 60px 40px;
    display: flex;
    gap: 0 30px;
    flex-direction: row;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
}
.reservation img {
    max-width: 100%;
    padding: 0;
}
.reservation .txt {
    width: 330px;
    background: #f3f3f3;
    padding: 25px 30px;
    font-size: 16px;
    width: auto;
}
.reservation .txt p {
    font-size: 130%;
    font-weight: bold;
    line-height: 1.75;
    padding: 0 0 30px 0;
}
.reservation .qr img {
    width: 300px;
}
.reservation a:hover img {
    opacity: 0.8;
    transition: 0.3s;
}
/* ページ本文内の画像比率を保持 */
.rte img,
.reservation.page-width img {
    max-width: 100%;
    object-fit: contain;
}
@media (max-width: 768px) {
    .reservation {
        flex-direction: column;
        align-items: center;
        padding: 30px 20px;
    }
    .reservation .txt p {
        padding: 10px 0 20px 0;
    }
    .reservation .bana,
    .reservation .qr,
    .reservation .txt {
        width: 100%;
        text-align: left;
    }
}
.product-block--price-badge-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.product-block--price-badge-row .product-block--price {
    flex: 1;
}
.product-block--price-badge-row .badge {
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    /* ← column → row に変更 */
    gap: 8px;
    align-items: center;
}
/* SNS */
#shopify-section-template--18259721814250__advanced_content_ELKaDf {
    width: 1180px;
    margin: 0 auto;
}
.custom__item.small--one-whole.one-third.align--top-middle {
    margin: 0;
}
@media only screen and (max-width: 768px) {
    #shopify-section-template--18259721814250__advanced_content_ELKaDf {
        width: 98%;
        margin: 0 auto;
    }
}
@media only screen and (max-width: 767px) {
    .hy-blog-section {
        padding: 0px 20px;
    }
}
#shopify-section-template--18259721814250__rich_text_XBkYgq,
#shopify-section-template--18259721814250__rich_text_gU9ax6 {
    padding-top: 75px;
    padding-bottom: 30px;
    border-top: 1px solid;
    border-top-color: var(--colorBorder);
}
@media only screen and (max-width: 767px) {
    #shopify-section-template--18259721814250__rich_text_XBkYgq,
    #shopify-section-template--18259721814250__rich_text_gU9ax6 {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}
@media only screen and (max-width: 767px) {
    h2.h4.footer__title {
        letter-spacing: normal;
    }
}
@media screen and (min-width: 769px) {
    .tb_wt_post_media_wrapp {
        height: 470px;
    }
}
/* サービス */
div#shopify-section-template--18259721715946__text_columns_CdjtAW h3 {
    font-size: 16px;
}
div#shopify-section-template--18259721715946__text_columns_CdjtAW {
    margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
    div#shopify-section-template--18259721715946__text_columns_CdjtAW h3 {
        font-size: 13px;
    }
    div#shopify-section-template--18259721715946__text_columns_CdjtAW {
        margin-bottom: 40px;
    }
}


/* 商品絞り込みテキスト */
span.tag__text {
    font-size: 14px;
}
li.tag label {
    margin-bottom: 0px;
}


/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRoZW1lLmNzcyIsImdsb2JhbC92YXJpYWJsZXMtcm9vdC5jc3MubGlxdWlkIiwiZ2xvYmFsL2tleWZyYW1lcy5jc3MiLCJ2ZW5kb3IvZmxpY2tpdHkuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy92ZW5kb3Ivbm91aXNsaWRlci5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvdG9vbC10aXAuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Rvb2wtdGlwLXRyaWdnZXIuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtd2l0aC1pY29ucy5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1yZW1pbmRlci5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcGFyYWxsYXguY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2NvdW50ZG93bi5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaG90c3BvdHMuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2ltYWdlLWNvbXBhcmUuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2FnZS12ZXJpZmljYXRpb24tcG9wdXAuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Byb2R1Y3QtY29tcGxlbWVudGFyeS5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaW1hZ2VzLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zdmctbWFza3MuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtYW5kLWltYWdlLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zY3JvbGxpbmctdGV4dC5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1zZWN0aW9uLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcmVjaXBpZW50LWZvcm0uY3NzIiwicGFydGlhbHMvbm9ybWFsaXplLmNzcyIsInBhcnRpYWxzL2dyaWQuY3NzIiwiPG5vIHNvdXJjZT4iLCJwYXJ0aWFscy9ncmlkLW1peGlucy5jc3MiLCJwYXJ0aWFscy9mbGV4LWdyaWQuY3NzIiwicGFydGlhbHMvaGVscGVycy5jc3MiLCJnbG9iYWwvbWl4aW5zLmNzcyIsInBhcnRpYWxzL2Jhc2UuY3NzIiwicGFydGlhbHMvdHlwb2dyYXBoeS5jc3MiLCJwYXJ0aWFscy9saXN0cy5jc3MiLCJwYXJ0aWFscy90YWJsZXMuY3NzIiwicGFydGlhbHMvbGlua3MuY3NzIiwicGFydGlhbHMvYnV0dG9ucy5jc3MiLCJwYXJ0aWFscy9tZWRpYS5jc3MiLCJwYXJ0aWFscy9mb3Jtcy5jc3MiLCJwYXJ0aWFscy9pbnB1dC1ncm91cC5jc3MiLCJwYXJ0aWFscy9pY29ucy5jc3MiLCJwYXJ0aWFscy9kcmF3ZXJzLmNzcyIsInBhcnRpYWxzL2JsYW5rLXN0YXRlcy5jc3MiLCJwYXJ0aWFscy9hbmltYXRpb25zLmNzcyIsInBhcnRpYWxzL3Rvb2x0aXAuY3NzIiwicGFydGlhbHMvcHJvZHVjdC1jb21wbGVtZW50YXJ5LmNzcyIsInBhcnRpYWxzL3ByZWRpY3RpdmUtc2VhcmNoLmNzcyIsIm1vZHVsZXMvZm9vdGVyLmNzcyIsIm1vZHVsZXMvbm90ZXMuY3NzIiwibW9kdWxlcy9wYWdpbmF0aW9uLmNzcyIsIm1vZHVsZXMvcnRlLmNzcyIsIm1vZHVsZXMvc2l0ZS1oZWFkZXItc3RydWN0dXJlLmNzcyIsIm1vZHVsZXMvc2l0ZS1oZWFkZXIuY3NzIiwibW9kdWxlcy9zaXRlLWhlYWRlci1zZWFyY2guY3NzIiwibW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MiLCJtb2R1bGVzL3NlYXJjaC1iYXIuY3NzIiwibW9kdWxlcy90b29sYmFyLmNzcyIsIm1vZHVsZXMvc2VjdGlvbi1oZWFkZXIuY3NzIiwibW9kdWxlcy9zaXRlLW5hdi5jc3MiLCJtb2R1bGVzL21lZ2FtZW51LmNzcyIsIm1vZHVsZXMvbW9kYWxzLmNzcyIsIm1vZHVsZXMvanMtcXR5LmNzcyIsIm1vZHVsZXMvY3VycmVuY3ktcGlja2VyLmNzcyIsIm1vZHVsZXMvY29sbGFwc2libGUuY3NzIiwibW9kdWxlcy9waG90b3N3aXBlLmNzcyIsIm1vZHVsZXMvZGlzY2xvc3VyZS5jc3MiLCJtb2R1bGVzL211bHRpLXNlbGVjdG9ycy5jc3MiLCJtb2R1bGVzL21vZGVsLXZpZXdlci5jc3MiLCJtb2R1bGVzL3ByaWNlLXJhbmdlLmNzcyIsIm1vZHVsZXMvY291bnRkb3duLmNzcyIsInBhcnRpYWxzL3RoZW1lLWZvcm1zLmNzcyIsInBhcnRpYWxzL3NvY2lhbC1idXR0b25zLmNzcyIsInBhcnRpYWxzL3NlYXJjaC1ncmlkLmNzcyIsInBhcnRpYWxzL3NlY3Rpb25zLmNzcyIsInBhcnRpYWxzL3Byb2R1Y3QtYmxvY2tzLmNzcyIsIm1vZHVsZXMvc2xpZGVzaG93LmNzcyIsIm1vZHVsZXMvaGVyby5jc3MiLCJtb2R1bGVzL2NvbGxlY3Rpb24uY3NzIiwibW9kdWxlcy90aGVtZS1zaXRlLWhlYWRlci5jc3MiLCJtb2R1bGVzL3RoZW1lLXRhZ3MuY3NzIiwibW9kdWxlcy9wcm9kdWN0LXNpbmdsZS12YXJpYW50cy5jc3MiLCJtb2R1bGVzL3Byb2R1Y3QtZ3JpZC1pdGVtLmNzcyIsIm1vZHVsZXMvc2FsZXMtcG9pbnQuY3NzIiwibW9kdWxlcy9wcm9kdWN0LWludmVudG9yeS5jc3MiLCJtb2R1bGVzL2NvbG9yLXN3YXRjaC5jc3MiLCJtb2R1bGVzL2NvbGxlY3Rpb24tZ3JpZC1pdGVtLmNzcyIsIm1vZHVsZXMvc2VjdGlvbi1jdXN0b20tY29udGVudC5jc3MiLCJtb2R1bGVzL2Jsb2ctcG9zdHMuY3NzIiwibW9kdWxlcy9sb2dvLWxpc3QuY3NzIiwibW9kdWxlcy9iYWNrZ3JvdW5kLW1lZGlhLXRleHQuY3NzIiwibW9kdWxlcy90ZXN0aW1vbmlhbHMuY3NzIiwibW9kdWxlcy9hbm5vdW5jZW1lbnQtYmFyLmNzcyIsIm1vZHVsZXMvbmV3c2xldHRlci5jc3MiLCJtb2R1bGVzL21hcC5jc3MiLCJtb2R1bGVzL2ltYWdlLXJvdy5jc3MiLCJtb2R1bGVzL3Byb21vLXR5cGVzLmNzcyIsIm1vZHVsZXMvc3RvcmUtYXZhaWxhYmlsaXR5LmNzcyIsIm1vZHVsZXMvYWdlLXZlcmlmaWNhdGlvbi1wb3B1cC5jc3MiLCJ0ZW1wbGF0ZXMvY2FydC5jc3MiLCJ0ZW1wbGF0ZXMvcHJvZHVjdC5jc3MiLCJ0ZW1wbGF0ZXMvYmxvZy5jc3MiLCJ0ZW1wbGF0ZXMvcGFzc3dvcmQuY3NzIiwidGVtcGxhdGVzL2dpZnQtY2FyZC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCOztBQUVoQjs7O0NBR0M7O0FDTEQ7RUFDRTtJQUNFLGtCQUFtQjtJQUNuQixvQkFBcUI7RUFDdkI7QUFDRjs7QUNMQTtFQUNFO0lBQ0Usc0JBQXVCO0VBQ3pCOztFQUVBO0lBQ0Usd0JBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7RUFDRSxJQUE4RCxTQUFVLEVBQXZDLG1CQUEyQixJQUFyRCx1QkFBd0IsRUFBMkM7RUFDMUUsS0FBOEQsU0FBVSxFQUF2QyxtQkFBMkIsR0FBckQsdUJBQXdCLEVBQTJDO0VBQzFFLEtBQWdFLFNBQVUsRUFBdkMsbUJBQTJCLEdBQXZELHlCQUEwQixFQUEyQztFQUM1RSxJQUFnRSxTQUFVLEVBQXZDLG1CQUEyQixFQUF2RCx5QkFBMEIsRUFBMkM7QUFDOUU7O0FBRUE7RUFDRSxJQUFPLDJCQUE0QixFQUFFO0VBQ3JDLElBQUssdUJBQXdCLEVBQUU7QUFDakM7O0FBR0E7RUFDRSxJQUFLLFNBQVUsRUFBRTtFQUNqQixLQUFNLFNB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IjtcblxuLyohXG4gIEltcHVsc2UsIGJ5IEFyY2hldHlwZSBUaGVtZXNcbiAgaHR0cDovL2FyY2hldHlwZXRoZW1lcy5jb1xuKi9cblxuQGltcG9ydCB1cmwoJ2dsb2JhbC9taXhpbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgnZ2xvYmFsL3ZhcmlhYmxlcy1yb290LmNzcy5saXF1aWQnKTtcbkBpbXBvcnQgdXJsKCdnbG9iYWwvdmFyaWFibGVzLmNzcycpO1xuQGltcG9ydCB1cmwoJ2dsb2JhbC9rZXlmcmFtZXMuY3NzJyk7XG5cbkBpbXBvcnQgdXJsKCd2ZW5kb3IvZmxpY2tpdHkuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy92ZW5kb3Ivbm91aXNsaWRlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvdG9vbC10aXAuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Rvb2wtdGlwLXRyaWdnZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtd2l0aC1pY29ucy5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1yZW1pbmRlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcGFyYWxsYXguY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2NvdW50ZG93bi5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaG90c3BvdHMuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2ltYWdlLWNvbXBhcmUuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2FnZS12ZXJpZmljYXRpb24tcG9wdXAuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Byb2R1Y3QtY29tcGxlbWVudGFyeS5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaW1hZ2VzLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zdmctbWFza3MuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtYW5kLWltYWdlLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zY3JvbGxpbmctdGV4dC5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1zZWN0aW9uLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcmVjaXBpZW50LWZvcm0uY3NzJyk7XG5cbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9ub3JtYWxpemUuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvZ3JpZC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9ncmlkLW1peGlucy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9mbGV4LWdyaWQuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvaGVscGVycy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9iYXNlLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3R5cG9ncmFwaHkuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvbGlzdHMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvdGFibGVzLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2xpbmtzLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2J1dHRvbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvbWVkaWEuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvZm9ybXMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvaW5wdXQtZ3JvdXAuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvaWNvbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvZHJhd2Vycy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9ibGFuay1zdGF0ZXMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvYW5pbWF0aW9ucy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy90b29sdGlwLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3Byb2R1Y3QtY29tcGxlbWVudGFyeS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MnKTtcblxuQGltcG9ydCB1cmwoJ21vZHVsZXMvZm9vdGVyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbm90ZXMuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9wYWdpbmF0aW9uLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvcnRlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvc2l0ZS1oZWFkZXItc3RydWN0dXJlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvc2l0ZS1oZWFkZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zaXRlLWhlYWRlci1zZWFyY2guY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NlYXJjaC1iYXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy90b29sYmFyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvc2VjdGlvbi1oZWFkZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zaXRlLW5hdi5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL21lZ2FtZW51LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbW9kYWxzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvanMtcXR5LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY3VycmVuY3ktcGlja2VyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY29sbGFwc2libGUuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9waG90b3N3aXBlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvZGlzY2xvc3VyZS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL211bHRpLXNlbGVjdG9ycy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL21vZGVsLXZpZXdlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3ByaWNlLXJhbmdlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY291bnRkb3duLmNzcycpO1xuXG5AaW1wb3J0IHVybCgncGFydGlhbHMvdGhlbWUtZm9ybXMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvc29jaWFsLWJ1dHRvbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvc2VhcmNoLWdyaWQuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvc2VjdGlvbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvcHJvZHVjdC1ibG9ja3MuY3NzJyk7XG5cbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NsaWRlc2hvdy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL2hlcm8uY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jb2xsZWN0aW9uLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvdGhlbWUtc2l0ZS1oZWFkZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy90aGVtZS10YWdzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvcHJvZHVjdC1zaW5nbGUtdmFyaWFudHMuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9wcm9kdWN0LWdyaWQtaXRlbS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NhbGVzLXBvaW50LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvcHJvZHVjdC1pbnZlbnRvcnkuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jb2xvci1zd2F0Y2guY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jb2xsZWN0aW9uLWdyaWQtaXRlbS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NlY3Rpb24tY3VzdG9tLWNvbnRlbnQuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9ibG9nLXBvc3RzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbG9nby1saXN0LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvYmFja2dyb3VuZC1tZWRpYS10ZXh0LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvdGVzdGltb25pYWxzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvYW5ub3VuY2VtZW50LWJhci5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL25ld3NsZXR0ZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9tYXAuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9pbWFnZS1yb3cuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9wcm9tby10eXBlcy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3N0b3JlLWF2YWlsYWJpbGl0eS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL2FnZS12ZXJpZmljYXRpb24tcG9wdXAuY3NzJyk7XG5cbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvY2FydC5jc3MnKTtcbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvcHJvZHVjdC5jc3MnKTtcbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvYmxvZy5jc3MnKTtcbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvcGFzc3dvcmQuY3NzJyk7XG5AaW1wb3J0IHVybCgndGVtcGxhdGVzL2dpZnQtY2FyZC5jc3MnKTtcbiIsIkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgOnJvb3Qge1xuICAgIC0tZ3JpZC1ndXR0ZXI6IDIycHg7XG4gICAgLS1kcmF3ZXItZ3V0dGVyOiAzMHB4O1xuICB9XG59XG4iLCJAa2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHJlbG9hZGluZyB7XG4gIDAlIHsgICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7IHRyYW5zZm9ybTogc2NhbGUzZCgwLCAxLCAxKTsgb3BhY2l0eTogMDsgfVxuICA0MCUgeyAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlOyB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7IG9wYWNpdHk6IDE7IH1cbiAgNDElIHsgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOyB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOyB0cmFuc2Zvcm06IHNjYWxlM2QoMCwgMSwgMSk7IG9wYWNpdHk6IDE7IH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZXNob3dCYXJzIHtcbiAgZnJvbSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgdG8geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbn1cblxuLypBamF4IGxvYWQgcHJvZHVjdHMqL1xuQGtleWZyYW1lcyBncmlkLXByb2R1Y3RfX2xvYWRpbmcge1xuICAwJSB7IG9wYWNpdHk6IDE7IH1cbiAgNjAlIHsgb3BhY2l0eTogMDsgfVxuICAxMDAlIHsgb3BhY2l0eTogMTsgfVxufVxuXG4vKkJ1dHRvbiBhbmltYXRpb25zKi9cbkBrZXlmcmFtZXMgc2hpbmUge1xuICAxMDAlIHtcbiAgICBsZWZ0OiAtMjAwJTtcbiAgfVxufVxuXG4vKk92ZXJsYXkgYW5pbWF0aW9ucyAobW9kYWxzLCBwYW5lbHMpKi9cbkBrZXlmcmFtZXMgb3ZlcmxheS1vbiB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIHRvIHsgb3BhY2l0eTogMC42OyB9XG59XG5cbkBrZXlmcmFtZXMgb3ZlcmxheS1vZmYge1xuICBmcm9tIHsgb3BhY2l0eTogMC42OyB9XG4gIHRvIHsgb3BhY2l0eTogMDsgfVxufVxuXG5Aa2V5ZnJhbWVzIGZ1bGwtb3ZlcmxheS1vbiB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIHRvIHsgb3BhY2l0eTogMTsgfVxufVxuXG5Aa2V5ZnJhbWVzIGZ1bGwtb3ZlcmxheS1vZmYge1xuICBmcm9tIHsgb3BhY2l0eTogMTsgfVxuICB0byB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyBtb2RhbC1vcGVuIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbW9kYWwtY2xvc2luZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cbn1cblxuLypUZXh0IGFuaW1hdGlvbnMqL1xuQGtleWZyYW1lcyByaXNlLXVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTIwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJpc2UtdXAtb3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTIwJSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vKkJhY2tncm91bmQgaW1hZ2UgYW5pbWF0aW9ucyovXG5Aa2V5ZnJhbWVzIHpvb20tZmFkZSB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMsMS4zKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsMSk7XG4gIH1cbn1cblxuLypQcm9kdWN0IGZvcm0gcGxhY2Vob2xkZXIqL1xuQGtleWZyYW1lcyBwbGFjZWhvbGRlci1zaGltbWVyIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTAlIDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTUwJSAwO1xuICB9XG59XG4iLCIuZmxpY2tpdHktZW5hYmxlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZsaWNraXR5LWVuYWJsZWQ6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cbi5mbGlja2l0eS12aWV3cG9ydCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMzVzO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5mbGlja2l0eS1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IGdyYWI7XG59XG5cbi5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSAuZmxpY2tpdHktdmlld3BvcnQuaXMtcG9pbnRlci1kb3duIHtcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLmZsaWNraXR5LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJ0blByaW1hcnk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBAbmVzdCAuaGVybyAmIHtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgICBib3gtc2hhZG93OiAwIDVweCA1cHggcmdiYSgwLDAsMCwwLjEpO1xuICB9XG59XG5cbi5mbGlja2l0eS1idXR0b246aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mbGlja2l0eS1idXR0b246ZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lO1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgLypTbWFsbGVyIGFycm93cyBvbiBtb2JpbGUqL1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICB3aWR0aDogMzNweDtcbiAgICBoZWlnaHQ6IDMzcHg7XG4gIH1cbn1cblxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b246aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMS4xMik7XG59XG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbjphY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA1cyBlYXNlLW91dDtcbn1cblxuLmZsaWNraXR5LXByZXZpb3VzIHsgbGVmdDogMTBweDsgfVxuLmZsaWNraXR5LW5leHQgeyByaWdodDogMTBweDsgfVxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldmlvdXMge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTBweDtcbn1cbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LW5leHQge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTBweDtcbn1cblxuLmZsaWNraXR5LWJ1dHRvbi1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAzNSU7XG4gIHRvcDogMzUlO1xuICB3aWR0aDogMzAlO1xuICBoZWlnaHQ6IDMwJTtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4uZmxpY2tpdHktcGFnZS1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgYm90dG9tOiAtMjVweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuXG4gIEBuZXN0IC5oZXJvICYge1xuICAgIGJvdHRvbTogMjBweDtcbiAgICBjb2xvcjogJHNsaWRlc2hvdy10ZXh0LWxpZ2h0O1xuICB9XG59XG5cbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXBhZ2UtZG90cyB7IGRpcmVjdGlvbjogcnRsOyB9XG5cbi5mbGlja2l0eS1wYWdlLWRvdHMgLmRvdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDZweDtcbiAgaGVpZ2h0OiA2cHg7XG4gIG1hcmdpbjogMCA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICBvcGFjaXR5OiAwLjQ7XG5cbiAgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG59XG5cbi5mbGlja2l0eS1wYWdlLWRvdHMgLmRvdC5pcy1zZWxlY3RlZCB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgd2lkdGg6IDlweDtcbiAgaGVpZ2h0OiA5cHg7XG59XG5cbi5mbGlja2l0eS1lbmFibGVkLmlzLWZhZGUgLmZsaWNraXR5LXNsaWRlciA+ICoge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMDtcbn1cblxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZmFkZSAuZmxpY2tpdHktc2xpZGVyID4gLmlzLXNlbGVjdGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHotaW5kZXg6IDE7XG59XG5cbi8qXG4gIEhlcm8gc3BlY2lmaWMgc3R5bGVzIGZvciBmbGlja2l0eSBkb3RzL2Fycm93c1xuICovXG4uaGVyb1tkYXRhLWFycm93cz1cInRydWVcIl0ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgei1pbmRleDogNTtcblxuICAmIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAtMjBweDtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAmIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTIpO1xuICB9XG4gICYgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b246YWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktcHJldmlvdXMge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDkwcHg7XG4gIH1cbiAgJiAuZmxpY2tpdHktbmV4dCB7XG4gICAgcmlnaHQ6IDQwcHg7XG4gIH1cbiAgJi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXByZXZpb3VzIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA5MHB4O1xuICB9XG4gICYuZmxpY2tpdHktcnRsIC5mbGlja2l0eS1uZXh0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA0MHB4O1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgICBib3R0b206IC0xNnB4O1xuICAgIH1cbiAgICAmIC5mbGlja2l0eS1wcmV2aW91cyB7XG4gICAgICByaWdodDogNjBweDtcbiAgICB9XG4gICAgJiAuZmxpY2tpdHktbmV4dCB7XG4gICAgICByaWdodDogMjBweDtcbiAgICB9XG4gICAgJi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXByZXZpb3VzIHtcbiAgICAgIGxlZnQ6IDYwcHg7XG4gICAgfVxuICAgICYuZmxpY2tpdHktcnRsIC5mbGlja2l0eS1uZXh0IHtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgfVxuICB9XG59XG5cbi8qQ2hhbmdlIGRvdHMgdG8gYmFycyovXG5bZGF0YS1iYXJzPVwidHJ1ZVwiXSB7XG4gICYuaGVybyAuZmxpY2tpdHktcGFnZS1kb3RzIHtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDZweDtcbiAgICB6LWluZGV4OiA2O1xuICB9XG5cbiAgJiAuZmxpY2tpdHktcGFnZS1kb3RzIC5kb3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBib3JkZXI6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICB9XG5cbiAgICAmOmhvdmVyOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmLmlzLXNlbGVjdGVkOmFmdGVyIHtcbiAgICAgIGFuaW1hdGlvbjogc2xpZGVzaG93QmFycyAwcyBsaW5lYXIgZm9yd2FyZHM7XG4gICAgfVxuICB9XG59XG4iLCIvKiBGdW5jdGlvbmFsIHN0eWxpbmc7XG4gKiBUaGVzZSBzdHlsZXMgYXJlIHJlcXVpcmVkIGZvciBub1VpU2xpZGVyIHRvIGZ1bmN0aW9uLlxuICogWW91IGRvbid0IG5lZWQgdG8gY2hhbmdlIHRoZXNlIHJ1bGVzIHRvIGFwcGx5IHlvdXIgZGVzaWduLlxuICovXG4gLm5vVWktdGFyZ2V0LFxuIC5ub1VpLXRhcmdldCAqIHtcbiAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICAgdG91Y2gtYWN0aW9uOiBub25lO1xuICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiB9XG5cbiAubm9VaS10YXJnZXQge1xuICAgcG9zaXRpb246IHJlbGF0aXZlO1xuIH1cblxuIC5ub1VpLWJhc2UsXG4gLm5vVWktY29ubmVjdHMge1xuICAgd2lkdGg6IDEwMCU7XG4gICBoZWlnaHQ6IDEwMCU7XG4gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICB6LWluZGV4OiAxO1xuIH1cblxuIC8qIFdyYXBwZXIgZm9yIGFsbCBjb25uZWN0IGVsZW1lbnRzLlxuICAqL1xuIC5ub1VpLWNvbm5lY3RzIHtcbiAgIG92ZXJmbG93OiBoaWRkZW47XG4gICB6LWluZGV4OiAwO1xuIH1cblxuIC5ub1VpLWNvbm5lY3QsXG4gLm5vVWktb3JpZ2luIHtcbiAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICB6LWluZGV4OiAxO1xuICAgdG9wOiAwO1xuICAgcmlnaHQ6IDA7XG4gICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICB0cmFuc2Zvcm0tc3R5bGU6IGZsYXQ7XG4gfVxuXG4gLm5vVWktY29ubmVjdCB7XG4gICBoZWlnaHQ6IDEwMCU7XG4gICB3aWR0aDogMTAwJTtcbiB9XG5cbiAubm9VaS1vcmlnaW4ge1xuICAgaGVpZ2h0OiAxMCU7XG4gICB3aWR0aDogMTAlO1xuIH1cblxuIC8qIE9mZnNldCBkaXJlY3Rpb25cbiAgKi9cbiAubm9VaS10eHQtZGlyLXJ0bC5ub1VpLWhvcml6b250YWwgLm5vVWktb3JpZ2luIHtcbiAgIGxlZnQ6IDA7XG4gICByaWdodDogYXV0bztcbiB9XG5cbiAvKiBHaXZlIG9yaWdpbnMgMCBoZWlnaHQvd2lkdGggc28gdGhleSBkb24ndCBpbnRlcmZlcmUgd2l0aCBjbGlja2luZyB0aGVcbiAgKiBjb25uZWN0IGVsZW1lbnRzLlxuICAqL1xuIC5ub1VpLXZlcnRpY2FsIC5ub1VpLW9yaWdpbiB7XG4gICB3aWR0aDogMDtcbiB9XG4gLm5vVWktaG9yaXpvbnRhbCAubm9VaS1vcmlnaW4ge1xuICAgaGVpZ2h0OiAwO1xuIH1cbiAubm9VaS1oYW5kbGUge1xuICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gfVxuIC5ub1VpLXRvdWNoLWFyZWEge1xuICAgaGVpZ2h0OiAxMDAlO1xuICAgd2lkdGg6IDEwMCU7XG4gfVxuIC5ub1VpLXN0YXRlLXRhcCAubm9VaS1jb25uZWN0LFxuIC5ub1VpLXN0YXRlLXRhcCAubm9VaS1vcmlnaW4ge1xuICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuIH1cbiAubm9VaS1zdGF0ZS1kcmFnICoge1xuICAgY3Vyc29yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gfVxuXG4gLyogU2xpZGVyIHNpemUgYW5kIGhhbmRsZSBwbGFjZW1lbnQ7XG4gICovXG4gLm5vVWktaG9yaXpvbnRhbCB7XG4gICBoZWlnaHQ6IDE4cHg7XG4gfVxuIC5ub1VpLWhvcml6b250YWwgLm5vVWktaGFuZGxlIHtcbiAgIHdpZHRoOiAzNHB4O1xuICAgaGVpZ2h0OiAyOHB4O1xuICAgcmlnaHQ6IC0xN3B4O1xuICAgdG9wOiAtNnB4O1xuIH1cbiAubm9VaS12ZXJ0aWNhbCB7XG4gICB3aWR0aDogMThweDtcbiB9XG4gLm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlIHtcbiAgIHdpZHRoOiAyOHB4O1xuICAgaGVpZ2h0OiAzNHB4O1xuICAgcmlnaHQ6IC02cHg7XG4gICB0b3A6IC0xN3B4O1xuIH1cbiAubm9VaS10eHQtZGlyLXJ0bC5ub1VpLWhvcml6b250YWwgLm5vVWktaGFuZGxlIHtcbiAgIGxlZnQ6IC0xN3B4O1xuICAgcmlnaHQ6IGF1dG87XG4gfVxuXG4gLyogU3R5bGluZztcbiAgKiBHaXZpbmcgdGhlIGNvbm5lY3QgZWxlbWVudCBhIGJvcmRlciByYWRpdXMgY2F1c2VzIGlzc3VlcyB3aXRoIHVzaW5nIHRyYW5zZm9ybTogc2NhbGVcbiAgKi9cbiAubm9VaS10YXJnZXQge1xuICAgYmFja2dyb3VuZDogI0ZBRkFGQTtcbiAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgIGJvcmRlcjogMXB4IHNvbGlkICNEM0QzRDM7XG4gICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggI0YwRjBGMCwgMCAzcHggNnB4IC01cHggI0JCQjtcbiB9XG4gLm5vVWktY29ubmVjdHMge1xuICAgYm9yZGVyLXJhZGl1czogM3B4O1xuIH1cbiAubm9VaS1jb25uZWN0IHtcbiAgIGJhY2tncm91bmQ6ICMzRkI4QUY7XG4gfVxuIC8qIEhhbmRsZXMgYW5kIGN1cnNvcnM7XG4gICovXG4gLm5vVWktZHJhZ2dhYmxlIHtcbiAgIGN1cnNvcjogZXctcmVzaXplO1xuIH1cbiAubm9VaS12ZXJ0aWNhbCAubm9VaS1kcmFnZ2FibGUge1xuICAgY3Vyc29yOiBucy1yZXNpemU7XG4gfVxuIC5ub1VpLWhhbmRsZSB7XG4gICBib3JkZXI6IDFweCBzb2xpZCAjRDlEOUQ5O1xuICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgIGN1cnNvcjogZGVmYXVsdDtcbiAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggI0ZGRiwgaW5zZXQgMCAxcHggN3B4ICNFQkVCRUIsIDAgM3B4IDZweCAtM3B4ICNCQkI7XG4gfVxuIC5ub1VpLWFjdGl2ZSB7XG4gICBib3gtc2hhZG93OiBpbnNldCAwIDAgMXB4ICNGRkYsIGluc2V0IDAgMXB4IDdweCAjRERELCAwIDNweCA2cHggLTNweCAjQkJCO1xuIH1cbiAvKiBIYW5kbGUgc3RyaXBlcztcbiAgKi9cbiAubm9VaS1oYW5kbGU6YmVmb3JlLFxuIC5ub1VpLWhhbmRsZTphZnRlciB7XG4gICBjb250ZW50OiBcIlwiO1xuICAgZGlzcGxheTogYmxvY2s7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICBoZWlnaHQ6IDE0cHg7XG4gICB3aWR0aDogMXB4O1xuICAgYmFja2dyb3VuZDogI0U4RTdFNjtcbiAgIGxlZnQ6IDE0cHg7XG4gICB0b3A6IDZweDtcbiB9XG4gLm5vVWktaGFuZGxlOmFmdGVyIHtcbiAgIGxlZnQ6IDE3cHg7XG4gfVxuIC5ub1VpLXZlcnRpY2FsIC5ub1VpLWhhbmRsZTpiZWZvcmUsXG4gLm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlOmFmdGVyIHtcbiAgIHdpZHRoOiAxNHB4O1xuICAgaGVpZ2h0OiAxcHg7XG4gICBsZWZ0OiA2cHg7XG4gICB0b3A6IDE0cHg7XG4gfVxuIC5ub1VpLXZlcnRpY2FsIC5ub1VpLWhhbmRsZTphZnRlciB7XG4gICB0b3A6IDE3cHg7XG4gfVxuIC8qIERpc2FibGVkIHN0YXRlO1xuICAqL1xuIFtkaXNhYmxlZF0gLm5vVWktY29ubmVjdCB7XG4gICBiYWNrZ3JvdW5kOiAjQjhCOEI4O1xuIH1cbiBbZGlzYWJsZWRdLm5vVWktdGFyZ2V0LFxuIFtkaXNhYmxlZF0ubm9VaS1oYW5kbGUsXG4gW2Rpc2FibGVkXSAubm9VaS1oYW5kbGUge1xuICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiB9XG4gLyogQmFzZTtcbiAgKlxuICAqL1xuIC5ub1VpLXBpcHMsXG4gLm5vVWktcGlwcyAqIHtcbiAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gfVxuIC5ub1VpLXBpcHMge1xuICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgY29sb3I6ICM5OTk7XG4gfVxuIC8qIFZhbHVlcztcbiAgKlxuICAqL1xuIC5ub1VpLXZhbHVlIHtcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gfVxuIC5ub1VpLXZhbHVlLXN1YiB7XG4gICBjb2xvcjogI2NjYztcbiAgIGZvbnQtc2l6ZTogMTBweDtcbiB9XG4gLyogTWFya2luZ3M7XG4gICpcbiAgKi9cbiAubm9VaS1tYXJrZXIge1xuICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgYmFja2dyb3VuZDogI0NDQztcbiB9XG4gLm5vVWktbWFya2VyLXN1YiB7XG4gICBiYWNrZ3JvdW5kOiAjQUFBO1xuIH1cbiAubm9VaS1tYXJrZXItbGFyZ2Uge1xuICAgYmFja2dyb3VuZDogI0FBQTtcbiB9XG4gLyogSG9yaXpvbnRhbCBsYXlvdXQ7XG4gICpcbiAgKi9cbiAubm9VaS1waXBzLWhvcml6b250YWwge1xuICAgcGFkZGluZzogMTBweCAwO1xuICAgaGVpZ2h0OiA4MHB4O1xuICAgdG9wOiAxMDAlO1xuICAgbGVmdDogMDtcbiAgIHdpZHRoOiAxMDAlO1xuIH1cbiAubm9VaS12YWx1ZS1ob3Jpem9udGFsIHtcbiAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKTtcbiAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSk7XG4gfVxuIC5ub1VpLXJ0bCAubm9VaS12YWx1ZS1ob3Jpem9udGFsIHtcbiAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCA1MCUpO1xuICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCA1MCUpO1xuIH1cbiAubm9VaS1tYXJrZXItaG9yaXpvbnRhbC5ub1VpLW1hcmtlciB7XG4gICBtYXJnaW4tbGVmdDogLTFweDtcbiAgIHdpZHRoOiAycHg7XG4gICBoZWlnaHQ6IDVweDtcbiB9XG4gLm5vVWktbWFya2VyLWhvcml6b250YWwubm9VaS1tYXJrZXItc3ViIHtcbiAgIGhlaWdodDogMTBweDtcbiB9XG4gLm5vVWktbWFya2VyLWhvcml6b250YWwubm9VaS1tYXJrZXItbGFyZ2Uge1xuICAgaGVpZ2h0OiAxNXB4O1xuIH1cbiAvKiBWZXJ0aWNhbCBsYXlvdXQ7XG4gICpcbiAgKi9cbiAubm9VaS1waXBzLXZlcnRpY2FsIHtcbiAgIHBhZGRpbmc6IDAgMTBweDtcbiAgIGhlaWdodDogMTAwJTtcbiAgIHRvcDogMDtcbiAgIGxlZnQ6IDEwMCU7XG4gfVxuIC5ub1VpLXZhbHVlLXZlcnRpY2FsIHtcbiAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgIHBhZGRpbmctbGVmdDogMjVweDtcbiB9XG4gLm5vVWktcnRsIC5ub1VpLXZhbHVlLXZlcnRpY2FsIHtcbiAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgNTAlKTtcbiAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDUwJSk7XG4gfVxuIC5ub1VpLW1hcmtlci12ZXJ0aWNhbC5ub1VpLW1hcmtlciB7XG4gICB3aWR0aDogNXB4O1xuICAgaGVpZ2h0OiAycHg7XG4gICBtYXJnaW4tdG9wOiAtMXB4O1xuIH1cbiAubm9VaS1tYXJrZXItdmVydGljYWwubm9VaS1tYXJrZXItc3ViIHtcbiAgIHdpZHRoOiAxMHB4O1xuIH1cbiAubm9VaS1tYXJrZXItdmVydGljYWwubm9VaS1tYXJrZXItbGFyZ2Uge1xuICAgd2lkdGg6IDE1cHg7XG4gfVxuIC5ub1VpLXRvb2x0aXAge1xuICAgZGlzcGxheTogYmxvY2s7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICBib3JkZXI6IDFweCBzb2xpZCAjRDlEOUQ5O1xuICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgIGNvbG9yOiAjMDAwO1xuICAgcGFkZGluZzogNXB4O1xuICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiB9XG4gLm5vVWktaG9yaXpvbnRhbCAubm9VaS10b29sdGlwIHtcbiAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgIGxlZnQ6IDUwJTtcbiAgIGJvdHRvbTogMTIwJTtcbiB9XG4gLm5vVWktdmVydGljYWwgLm5vVWktdG9vbHRpcCB7XG4gICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICB0b3A6IDUwJTtcbiAgIHJpZ2h0OiAxMjAlO1xuIH1cbiAubm9VaS1ob3Jpem9udGFsIC5ub1VpLW9yaWdpbiA+IC5ub1VpLXRvb2x0aXAge1xuICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDApO1xuICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwKTtcbiAgIGxlZnQ6IGF1dG87XG4gICBib3R0b206IDEwcHg7XG4gfVxuIC5ub1VpLXZlcnRpY2FsIC5ub1VpLW9yaWdpbiA+IC5ub1VpLXRvb2x0aXAge1xuICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMThweCk7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMThweCk7XG4gICB0b3A6IGF1dG87XG4gICByaWdodDogMjhweDtcbiB9XG4iLCJ0b29sLXRpcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbnRvb2wtdGlwW2RhdGEtdG9vbC10aXAtb3Blbj1cInRydWVcIl0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgei1pbmRleDogMTAwMDE7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMGUwZTA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JNb2RhbEJnKTtcbiAgICBhbmltYXRpb246IG92ZXJsYXktb24gMC4zcyBmb3J3YXJkcztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLnRvb2wtdGlwX19pbm5lciB7XG4gIGFuaW1hdGlvbjogbW9kYWwtY2xvc2UgMC4zcyBmb3J3YXJkcztcbiAgb3BhY2l0eTogMDtcblxuICBAbmVzdCB0b29sLXRpcFtkYXRhLXRvb2wtdGlwLW9wZW49XCJ0cnVlXCJdICYge1xuICAgIGFuaW1hdGlvbjogbW9kYWwtb3BlbiAwLjNzIGZvcndhcmRzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvckJvZHkpO1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4ICMwMDAwMDAxNztcbiAgICBwYWRkaW5nOiAzMHB4O1xuICAgIG1heC13aWR0aDogNzIwcHg7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcbiAgICBtaW4taGVpZ2h0OiAyNTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDkzJTtcbiAgICB9XG4gIH1cbn1cblxuLnRvb2wtdGlwX19jb250ZW50IHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDgwdmg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgZm9udC1zaXplOiAwLjg1ZW07XG4gIH1cbn1cblxuLnRvb2wtdGlwX19jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbn1cblxuLnRvb2wtdGlwX19jbG9zZSAuaWNvbiB7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG59XG4iLCIudG9vbC10aXAtdHJpZ2dlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udG9vbC10aXAtdHJpZ2dlciAuaWNvbiB7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG59XG5cbi50b29sLXRpcC10cmlnZ2VyX190aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnRvb2wtdGlwLXRyaWdnZXJfX3RpdGxlOmhvdmVyLFxuLnRvb2wtdGlwLXRyaWdnZXJfX3RpdGxlOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMnB4O1xufVxuXG4udG9vbC10aXAtdHJpZ2dlcl9fY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgLyogRW5zdXJlIG91ciBjb250ZW50IGlzIGFsd2F5cyBoaWRkZW4gKi9cbn1cblxuLyogU2l6ZSBjaGFydCB0cmlnZ2VyICovXG5cbi5zaXplLWNoYXJ0X19zdGFuZGFsb25lIHtcbiAgbWFyZ2luOiB2YXIoLS1zaXplQ2hhcnRNYXJnaW4pO1xuXG4gICYgc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZUNoYXJ0SWNvbk1hcmdpbik7XG4gIH1cbn1cbiIsIi50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uaGFzLTEtcGVyLXJvdyAudGV4dC13aXRoLWljb25zX19ibG9jayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaGFzLTItcGVyLXJvdyAudGV4dC13aXRoLWljb25zX19ibG9jayB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5oYXMtMy1wZXItcm93IC50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrIHtcbiAgd2lkdGg6IDMzLjMzMyU7XG59XG5cbi5oYXMtNC1wZXItcm93IC50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLmhhcy01LXBlci1yb3cgLnRleHQtd2l0aC1pY29uc19fYmxvY2sge1xuICB3aWR0aDogMjAlO1xufVxuXG4udGV4dC13aXRoLWljb25zX19ibG9ja3MgLnRleHQtd2l0aC1pY29uc19fYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4OiBub25lO1xuICBwYWRkaW5nOiAzMHB4O1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMCA2MHB4O1xuICB9XG59XG5cbi50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgIH1cbiAgfVxufVxuXG4udGV4dC13aXRoLWljb25zX19idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiIsIi8qIE5ld3NsZXR0ZXIgcmVtaW5kZXIgKi9cblxubmV3c2xldHRlci1yZW1pbmRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMjBweDtcbiAgYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBlYXNlLWluLW91dCAwLjNzIG9wYWNpdHk7XG4gIGJveC1zaGFkb3c6IDAgMTJweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIG1heC13aWR0aDogMjQwcHg7XG4gIHotaW5kZXg6IDEwO1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICB9XG5cbiAgJltkYXRhLWVuYWJsZWQ9XCJmYWxzZVwiXSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAmW2NsYXNzKj1cImNvbG9yLXNjaGVtZS1cIl06bm90KC5jb2xvci1zY2hlbWUtbm9uZSkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuXG4gICYgLmNvbG9yLXNjaGVtZS1ub25lIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3JCdG5QcmltYXJ5VGV4dCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCdG5QcmltYXJ5KTtcbiAgfVxufVxuXG4ubmV3c2xldHRlci1yZW1pbmRlcl9fbWVzc2FnZS5oMyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tbmV3c2xldHRlclJlbWluZGVyUGFkZGluZyk7XG4gIG1hcmdpbjogMDtcbn1cbiIsIi5wYXJhbGxheC1pbWFnZSBpbWcge1xuICB3aWR0aDogIDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5wYXJhbGxheC1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6ICAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA1cyBsaW5lYXI7XG59XG4iLCIvKiBDb3VudGRvd24gKi9cbi5jb3VudGRvd24td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvdW50ZG93bl9fYmFja2dyb3VuZC1pbWFnZS13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uY291bnRkb3duX19iYWNrZ3JvdW5kLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4uY291bnRkb3duX19tb2JpbGUtaW1hZ2Utd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmNvdW50ZG93bl9fbW9iaWxlLWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jb3VudGRvd24tbGF5b3V0LS1iYW5uZXIge1xuICAmIC5jb3VudGRvd25fX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDJyZW07XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICBnYXA6IDFyZW07XG4gICAgICBwYWRkaW5nOiAxLjZyZW0gMnJlbTtcbiAgICB9XG4gIH1cblxuICAmLmNvdW50ZG93bi1ibG9ja3MtLTIucGFnZS13aWR0aCB7XG4gICAgJiAuY291bnRkb3duX19jb250ZW50IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIH1cbiAgfVxuXG4gICYuY291bnRkb3duLWJsb2Nrcy0tMiB7XG4gICAgJiAuY291bnRkb3duX19jb250ZW50IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICYgLmNvdW50ZG93bl9fYmxvY2sge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHdpZHRoOiAzMyU7XG4gICAgfVxuICB9XG59XG5cbi5jb3VudGRvd25fX2NvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiA2NTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDVyZW0gMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIEBuZXN0IC5wYWdlLXdpZHRoICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIEBuZXN0IC5jb3VudGRvd24tbGF5b3V0LS1oZXJvICYge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgfVxuICB9XG59XG5cbi5jb3VudGRvd25fX2Jsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMXJlbSBhdXRvO1xuICB6LWluZGV4OiAzO1xufVxuXG4uY291bnRkb3duX19ibG9jay0tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICYgLmNvdW50ZG93bl9fYmxvY2stLWJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwOyAvKiBOZXN0ZWQgYnV0dG9uIHdpbGwgZ2V0IHNwYWNpbmcgZnJvbSB0ZXh0IGFib3ZlIGl0ICovXG4gIH1cbn1cblxuLmNvdW50ZG93bl9fYmxvY2stLXRpbWVyLFxuLmNvdW50ZG93bl9fYmxvY2stLWNvbnRlbnQge1xuICBAbmVzdCAuY291bnRkb3duLWJsb2Nrcy0tMi5jb3VudGRvd24tbGF5b3V0LS1iYW5uZXIgJiB7XG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgd2lkdGg6IDUwJVxuICAgIH1cbiAgfVxufVxuXG4uY291bnRkb3duX19ibG9jay0tYnV0dG9uLmJ1dHRvbi1ibG9jay1hY3RpdmUge1xuICBAbmVzdCAuY291bnRkb3duLWJsb2Nrcy0tMi5jb3VudGRvd24tbGF5b3V0LS1iYW5uZXIgJiB7XG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgd2lkdGg6IDUwJVxuICAgIH1cbiAgfVxufVxuXG4uY291bnRkb3duX190ZXh0LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBAbmVzdCAuY291bnRkb3duLWxheW91dC0taGVybyAmIHtcbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxufVxuXG4uY291bnRkb3duX190ZXh0LXdyYXBwZXItLWNvbnRlbnQtYWxpZ25tZW50LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uY291bnRkb3duX190ZXh0LXdyYXBwZXItLWNvbnRlbnQtYWxpZ25tZW50LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb3VudGRvd25fX2Rpc3BsYXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uY291bnRkb3duX19kaXNwbGF5LS1sb2FkZWQge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2UtaW4gMC4zcztcbn1cblxuLmNvdW50ZG93bl9fZGlzcGxheS0tdmlzaWJsZSArIC5jb3VudGRvd25fX3RpbWVyLW1lc3NhZ2UtLXZpc2libGUge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG5cbi5jb3VudGRvd25fX2Rpc3BsYXktLWhpZGRlbiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2Utb3V0IDNzO1xufVxuXG4uY291bnRkb3duX19kaXNwbGF5LWJsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xuICBwYWRkaW5nOiAwIDFyZW07XG5cbiAgJiBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICB9XG4gIH1cblxuICAmIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjdweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICB9XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgfVxuXG4gIEBuZXN0IFtkaXI9XCJydGxcIl0gJiB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uY291bnRkb3duX190aW1lci1tZXNzYWdlIHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMDtcbn1cblxuLmNvdW50ZG93bl9fdGltZXItbWVzc2FnZS0tdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1pbiAxcztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uY291bnRkb3duX19ibG9jay0taGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1vdXQgMXM7XG4gIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jb3VudGRvd25fX292ZXJsYXkge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb3VudGRvd24tb3ZlcmxheS1yZ2JhKTtcbiAgfVxufVxuIiwiLmhvdHNwb3RzLXNlY3Rpb24gLmluZGV4LXNlY3Rpb24ge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5ob3RzcG90cy1zZWN0aW9uIC5ob3RzcG90cy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gICYuaXMtcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG5cbi5ob3RzcG90c19fdGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDEuNXJlbTtcbn1cblxuLmhvdHNwb3RzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNzAlO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiAuZ3JpZF9faW1hZ2UtcmF0aW8gaW1nIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICBAbmVzdCBbZGF0YS1hbmltYXRlX2ltYWdlcz1cInRydWVcIl0gJiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4uaG90c3BvdHNfX2J1dHRvbnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmhvdHNwb3RfX2J1dHRvbiB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogNnB4O1xuICB9XG5cblxuICAmOmhvdmVyIC5ob3RzcG90X19idXR0b24tY29udGVudCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG59XG5cbi5ob3RzcG90X19idXR0b24tY29udGVudCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDFyZW0pO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICBtaW4td2lkdGg6IDVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogM3B4IDNweCAxMHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cbiAgJiBwLFxuICAmIHNwYW4ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogMFxuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAgNXB4IDEwcHggNXB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWNvbG9yQm9keSkgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmIC5jb250ZW50X19wcmljZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLmhvdHNwb3RzX19jb250ZW50IHtcbiAgd2lkdGg6IDMwJTtcbiAgcGFkZGluZzogMjRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBAbmVzdCAucGFnZS13aWR0aCAmIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5wYWdlLXdpZHRoLmlzLXJldmVyc2UgJiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbSAyMHB4IDA7XG4gIH1cbn1cblxuLmhvdHNwb3QtY29udGVudF9fYmxvY2sge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtaGVpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYW5pbWF0aW9uOiBmYWRlLWluIC41cyBlYXNlIDBzIGZvcndhcmRzO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG5cbiAgLyogYW5pbWF0aW9uIGFuZCBwb3NpdGlvbjpzdGlja3kgY2F1c2VzIGlzc3VlcyBpbiB0aGVtZXMgd2hlcmUgcXVpY2tzaG9wIG1vZGFsIGlzIG5lc3RlZCAqL1xuICBAbmVzdCAubW9kYWwtb3BlbiAmLFxuICAubW9kYWwtY2xvc2luZyAmIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX2ltYWdlLXdyYXAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX3RhZ3Mge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X190YWcge1xuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLmdyaWQtaXRlbV9fbWV0YSxcbiAgJiAuZ3JpZC1wcm9kdWN0X19tZXRhIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgJiAuZ3JpZC1pdGVtX19tZXRhLW1haW4sXG4gICAgICAmIC5ncmlkLWl0ZW1fX21ldGEtc2Vjb25kYXJ5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG5cbiAgICAmIC5ncmlkLXByb2R1Y3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAmIC5xdWljay1hZGQtYnRuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLyogQ2xhc3MgaXMgdW5pcXVlIHRvIEltcHVsc2UgKi9cbiAgICAmIC5ncmlkX19pdGVtLWltYWdlLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS1tYXNrIHtcbiAgICAgICAgZmxleDogMCAwIDMwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5ncmlkLWl0ZW1fX2xpbmssXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19saW5rIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAvKiBUT0RPOiBBZGp1c3QgZ2xvYmFsIHN0eWxpbmdzIGluIGdyaWQuY3NzIHNvIHdlIGRvbid0IGhhdmUgdG8gYWRkIGV4Y2VwdGlvbnMgbGlrZSB0aGlzICovXG4gICAgJiAuZ3JpZC1pdGVtX19saW5rIHtcbiAgICAgIEBuZXN0IFtkYXRhLWdyaWQtc3R5bGU9XCJncmV5LXJvdW5kXCJdICYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4O1xuICAgICAgfVxuXG4gICAgICBAbmVzdCBbZGF0YS1ncmlkLXN0eWxlPVwid2hpdGUtcm91bmRcIl0gJiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS1tYXNrLFxuICAgICYgLmdyaWQtcHJvZHVjdF9faW1hZ2Utd3JhcCxcbiAgICAmIC5wcm9kdWN0LXNsaWRlciB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgIH1cblxuICAgICYgLmdyaWQtcHJvZHVjdF9fYWN0aW9ucyB7XG4gICAgICByaWdodDogaW5pdGlhbDtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgfVxuICB9XG5cbn1cblxuLmhvdHNwb3QtY29udGVudF9fYmxvY2sgLm1vZGFsIC5ncmlkX19pdGVtIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4iLCJpbWFnZS1jb21wYXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMyMjI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb21wYXJpc29uX19kcmFnZ2FibGUge1xuICB3aWR0aDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNTAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAyO1xufVxuXG4uY29tcGFyaXNvbl9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIGFuaW1hdGlvbjogbm9uZTtcbn1cblxuLmNvbXBhcmlzb25fX2ltYWdlLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY29tcGFyaXNvbl9fYnV0dG9uIHtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zMnB4LCAtNTAlKTtcbiAgYm9yZGVyOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAzcHggc29saWQgI2ZmZjtcbiAgcGFkZGluZzogMDtcblxuICBAbmVzdCAuY29tcGFyaXNvbi0tc3R5bGUtbWluaW1hbCAmIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IDExMnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01NnB4LCAtNTAlKTtcblxuICAgICYgc3ZnIHtcbiAgICAgIG1hcmdpbjogMCAyMHB4O1xuXG4gICAgICBAc3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgJi5pY29uLWNoZXZyb24tbGVmdCB7XG4gICAgICAgICAgbGVmdDogMnB4O1xuICAgICAgICAgIHdpZHRoOiA5cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmljb24tY2hldnJvbi1yaWdodCB7XG4gICAgICAgICAgcmlnaHQ6IDJweDtcbiAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLmNvbXBhcmlzb24tLXN0eWxlLWNsYXNzaWMgJiB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogNDhweDtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yNHB4LCAtNTAlKTtcbiAgICB9XG4gIH1cblxuXG4gICYgc3ZnIHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8qIEFnZSB2ZXJpZmljYXRpb24gcG9wdXAgKi9cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwIHtcbiAgJiAucnRlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2J0bnMtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xuICB9XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19iYWNrZ3JvdW5kLWltYWdlLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19iYWNrZ3JvdW5kLWltYWdlIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19jb250ZW50LS1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEuNXMgZWFzZS1pbjtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQtLWluYWN0aXZlLFxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQtLWluYWN0aXZlICosXG4uYWdlLXZlcmlmaWNhdGlvbi1wb3B1cF9fY29udGVudC0taW5hY3RpdmUgLmJ0biB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0taW5hY3RpdmUsXG4uYWdlLXZlcmlmaWNhdGlvbi1wb3B1cF9fZGVjbGluZS1jb250ZW50LS1pbmFjdGl2ZSAqLFxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0taW5hY3RpdmUgLmJ0biB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0tYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxLjVzIGVhc2UtaW47XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19jb250ZW50LXdyYXBwZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogNTIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuIiwicHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNbZGF0YS1pbnRlbnQ9XCJjb21wbGVtZW50YXJ5XCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJiAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNzIlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gICYgLmdyaWQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgJiAuZ3JpZF9faXRlbSxcbiAgJiAuZ3JpZC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS13cmFwIHtcbiAgICBtaW4td2lkdGg6IDkwcHg7XG4gIH1cblxuICAmIC5ncmlkX19pbWFnZS1yYXRpbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmIGltZy5pbWFnZS1zdHlsZS0tY2lyY2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IDg1JTtcbiAgICBoZWlnaHQ6IDg1JTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0taW1hZ2Utd3JhcHBlciAuZ3JpZC1wcm9kdWN0X19saW5rIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0taW1hZ2Utd3JhcHBlcixcbiAgJiAuZ3JpZC1wcm9kdWN0X19saW5rLFxuICAmIC5ncmlkLWl0ZW1fX2xpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICYgLmdyaWQtcHJvZHVjdF9faW1hZ2UtbWFzayxcbiAgICAmIC5ncmlkLXByb2R1Y3RfX2ltYWdlLXdyYXAsXG4gICAgJiAuaW1hZ2Utd3JhcCB7XG4gICAgICB3aWR0aDogMTEycHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19tZXRhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0OHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDExMnB4KTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19hY3Rpb25zIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX3RhZyB7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktdmlld3BvcnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktcHJldmlvdXMge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAtMzJweDtcbiAgICByaWdodDogNTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcmlnaHQ6IDQ1cHg7XG4gICAgfVxuICB9XG5cbiAgJiAuZmxpY2tpdHktbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAtMzJweDtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgdG9wOiAtNDFweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cblxuICAmIC5mbGlja2l0eS1idXR0b246ZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gIH1cbn1cblxuLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zX19zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgJiAuZ3JpZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbi5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucy0tdGl0bGUtbWlzc2luZyB7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG59XG4iLCIvKlxuICBTaGFyZWQgc3R5bGluZyBmb3IgYWxsIGltYWdlcyBpbiBvdXIgdGhlbWVzXG5cbiAgSXQncyBhIHdvcmsgaW4gcHJvZ3Jlc3MgYW5kIHdlJ3JlIHRyeWluZyB0byBtb3ZlIGF3YXkgZnJvbSBoYXZpbmcgdG8gYWRkIHNwZWNpZmljIHN0eWxpbmcgZm9yIGltYWdlcyBpbiB0aGVtZXNcblxuICBBbGwgaW1hZ2VzIG5vdyBoYXZlIGEgYmFzZSBmYWRlLWluIGFuaW1hdGlvbiB3aGVuIHRoZXkncmUgbG9hZGVkXG5cbiAgTW90aW9uICYgU3RyZWFtbGluZSBoYXZlIHNldHRpbmdzIHRvIGVuYWJsZS9kaXNhYmxlIGFuaW1hdGlvbnMgZm9yIGltYWdlc1xuKi9cblxuaW1hZ2UtZWxlbWVudCB7XG4gIC5zdmctbWFzayAmLFxuICAuaW1hZ2Utd3JhcDpub3QoLmltYWdlLXdyYXBfX3RodW1ibmFpbCkgJixcbiAgLmdyaWRfX2ltYWdlLXJhdGlvICYsXG4gIC5jb3VudGRvd25fX2JhY2tncm91bmQtaW1hZ2Utd3JhcHBlciAmLFxuICAuc29jaWFsLXNlY3Rpb25fX2ltYWdlLXdyYXBwZXIgJixcbiAgLmZhZGluZy1pbWFnZXNfX2l0ZW0td3JhcHBlciAmIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbmltZyB7XG4gIGJvcmRlcjogMCBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbWFnZS1lbGVtZW50IHtcbiAgb3BhY2l0eTogMDtcblxuICAmW2xvYWRpbmc9XCJlYWdlclwiXSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBuZXN0IC50ZW1wbGF0ZS1naWZ0Y2FyZCAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW5pbWF0ZV9pbWFnZXM9XCJmYWxzZVwiXSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtbWVkaWEtZ2FsbGVyeS1sYXlvdXQ9XCJzdGFja2VkXCJdICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJpbWFnZS1mYWRlLWluXCJdLmFvcy1hbmltYXRlICYge1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAwLjVzIGN1YmljLWJlemllcigwLjI5LCAwLjY1LCAwLjU4LCAxKSBmb3J3YXJkcztcblxuICAgICYubG9hZGVyLWxvZ29fX2ltZyB7XG4gICAgICBhbmltYXRpb246IHB1bHNlLWZhZGUgMC40cyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgfVxuXG4gICAgLy8gVGhpcyBzaG91bGQgZW5zdXJlIHRoYXQgaW1hZ2VzIGFyZW4ndCBhbmltYXRlZCBpbiBNb3Rpb24gJiBTdHJlYW1saW5lXG4gICAgLy8gV2hlbiB0aGUgdXNlciBoYXMgZGlzYWJsZWQgYW5pbWF0aW9uc1xuICAgIEBuZXN0IFtkYXRhLWFuaW1hdGVfaW1hZ2VzPVwiZmFsc2VcIl0gJiB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gR2VtJ3MgbmV3IHN0YWNrZWQgaW1hZ2VzIHdpbGwgaGF2ZSB0aGUgZmFkZS1pbiBhbmltYXRpb24gZGlzYWJsZWRcbiAgICBAbmVzdCBbZGF0YS1tZWRpYS1nYWxsZXJ5LWxheW91dD1cInN0YWNrZWRcIl0gJiB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGFuaW1hdGlvbiBmcm9tIGNvbG9yIHNjaGVtZSBpbWFnZXNcbiAgICAmLnNjaGVtZS1pbWFnZSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJi5oZXJvX19pbWFnZSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyBzaG91bGQgZW5zdXJlIHRoYXQgaW1hZ2VzIHNob3cgdXAgaWYgSlMgaXMgZGlzYWJsZWRcbiAgQG5lc3QgLm5vLWpzICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmltYWdlLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pbWFnZS13cmFwIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucnRlIHBbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyXCJdLFxuLnJ0ZSBkaXZbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyXCJdIHtcbiAgJiBpbWcge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuIiwiLnN2Zy1tYXNrIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDEwMCUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG5cbiAgJiAuZ3JpZF9faW1hZ2UtcmF0aW8ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxuXG4gICYgaW1nLFxuICAmIHN2Zzpub3QoLmljb24pLFxuICAmIHZpZGVvIHtcbiAgICBtYXNrLXNpemU6IDEwMCUgMTAwJTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zdmctbWFzay0tbGFuZHNjYXBlIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JSAhaW1wb3J0YW50O1xufVxuXG4uc3ZnLW1hc2stLXBvcnRyYWl0IHtcbiAgcGFkZGluZy1ib3R0b206IDE1MCUgIWltcG9ydGFudDtcbn1cblxuLnN2Zy1tYXNrLS1zcXVhcmUge1xuICBwYWRkaW5nLWJvdHRvbTogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uc3ZnLW1hc2stLXJvdW5kZWQtdG9wIGltZyxcbi5zdmctbWFzay0tcm91bmRlZC10b3Agc3ZnOm5vdCguaWNvbiksXG4uc3ZnLW1hc2stLXJvdW5kZWQtdG9wIHZpZGVvIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNTAlO1xufVxuXG4uc3ZnLW1hc2stLXJvdW5kZWQgaW1nLFxuLnN2Zy1tYXNrLS1yb3VuZGVkIHN2Zzpub3QoLmljb24pLFxuLnN2Zy1tYXNrLS1yb3VuZGVkIHZpZGVvIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uc3ZnLW1hc2stLXN0YXIgaW1nLFxuLnN2Zy1tYXNrLS1zdGFyIHN2Zzpub3QoLmljb24pLFxuLnN2Zy1tYXNrLS1zdGFyIHZpZGVvIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBuTVRJNE5DY2dhR1ZwWjJoMFBTY3hNalV4SnlCMmFXVjNRbTk0UFNjd0lEQWdNVEk0TkNBeE1qVXhKeUJtYVd4c1BTZHViMjVsSnlCNGJXeHVjejBuYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNuUGp4d1lYUm9JR1E5SjAwMk5ESWdNRXc0TVRrdU1EQTNJREk1TUM0ME5ERk1NVEUxTmk0ME5TQXlORGN1TnpRMFRERXdNemt1TnpNZ05UWTNMakl5VERFeU9ETXVOU0E0TURRdU5ERTVURGsyTUM0NU5UWWdPVEV5TGpNMU9VdzVNamN1TkRrMUlERXlOVEF1T0RSTU5qUXlJREV3TmpVdU9UWk1NelUyTGpVd05DQXhNalV3TGpnMFRETXlNeTR3TkRRZ09URXlMak0xT1V3d0xqUTVOelF6TnlBNE1EUXVOREU1VERJME5DNHlOamdnTlRZM0xqSXlUREV5Tnk0MU5UVWdNalEzTGpjME5FdzBOalF1T1RreklESTVNQzQwTkRGTU5qUXlJREJhSnlCbWFXeHNQU2NqUVRRNU5VWkNKeTgrUEM5emRtYytDZz09XCIpO1xufVxuXG4uc3ZnLW1hc2stLXJvdW5kZWQtd2F2ZSBpbWcsXG4uc3ZnLW1hc2stLXJvdW5kZWQtd2F2ZSBzdmc6bm90KC5pY29uKSxcbi5zdmctbWFzay0tcm91bmRlZC13YXZlIHZpZGVvIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBuTVRBMk5pY2dhR1ZwWjJoMFBTY3hNRFkySnlCMmFXVjNRbTk0UFNjd0lEQWdNVEEyTmlBeE1EWTJKeUJtYVd4c1BTZHViMjVsSnlCNGJXeHVjejBuYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNuUGp4d1lYUm9JR1E5SjAwME9USXVOVEE1SURNeExqZ3lPVEpETlRBekxqQTFOQ0F0TVRBdU16RTBPU0ExTmpJdU9UUTJJQzB4TUM0ek1UUTVJRFUzTXk0ME9URWdNekV1T0RJNU1sWXpNUzQ0TWpreVF6VTRNaTQwTWpRZ05qY3VOVE14SURZeU9TNDRNek1nTnpVdU1ETTVPQ0EyTkRrdU16WXhJRFF6TGpnME5UaFdORE11T0RRMU9FTTJOekl1TkRFeklEY3VNREl5T0RrZ056STVMak0zTkNBeU5TNDFNekEzSURjeU5pNHpPQ0EyT0M0NE56QTNWalk0TGpnM01EZEROekl6TGpnME15QXhNRFV1TlRnMklEYzJOaTQyTVRFZ01USTNMak0zTnlBM09UUXVPREl6SURFd015NDNORFJXTVRBekxqYzBORU00TWpndU1USTFJRGMxTGpnME55QTROell1TlRnZ01URXhMakExTVNBNE5qQXVNek01SURFMU1TNHpORFJXTVRVeExqTTBORU00TkRZdU5UZ3hJREU0TlM0ME56Z2dPRGd3TGpVeU1pQXlNVGt1TkRFNUlEa3hOQzQyTlRZZ01qQTFMalkyTVZZeU1EVXVOall4UXprMU5DNDVORGtnTVRnNUxqUXlJRGs1TUM0eE5UTWdNak0zTGpnM05TQTVOakl1TWpVMklESTNNUzR4TnpkV01qY3hMakUzTjBNNU16Z3VOakl6SURJNU9TNHpPRGtnT1RZd0xqUXhOQ0F6TkRJdU1UVTNJRGs1Tnk0eE1qa2dNek01TGpZeVZqTXpPUzQyTWtNeE1EUXdMalEzSURNek5pNDJNallnTVRBMU9DNDVPQ0F6T1RNdU5UZzNJREV3TWpJdU1UVWdOREUyTGpZek9WWTBNVFl1TmpNNVF6azVNQzQ1TmlBME16WXVNVFkzSURrNU9DNDBOamtnTkRnekxqVTNOaUF4TURNMExqRTNJRFE1TWk0MU1EbFdORGt5TGpVd09VTXhNRGMyTGpNeElEVXdNeTR3TlRRZ01UQTNOaTR6TVNBMU5qSXVPVFEySURFd016UXVNVGNnTlRjekxqUTVNVlkxTnpNdU5Ea3hRems1T0M0ME5qa2dOVGd5TGpReU5DQTVPVEF1T1RZZ05qSTVMamd6TXlBeE1ESXlMakUxSURZME9TNHpOakZXTmpRNUxqTTJNVU14TURVNExqazRJRFkzTWk0ME1UTWdNVEEwTUM0ME55QTNNamt1TXpjMElEazVOeTR4TWprZ056STJMak00VmpjeU5pNHpPRU01TmpBdU5ERTBJRGN5TXk0NE5ETWdPVE00TGpZeU15QTNOall1TmpFeElEazJNaTR5TlRZZ056azBMamd5TTFZM09UUXVPREl6UXprNU1DNHhOVE1nT0RJNExqRXlOU0E1TlRRdU9UUTVJRGczTmk0MU9DQTVNVFF1TmpVMklEZzJNQzR6TXpsV09EWXdMak16T1VNNE9EQXVOVEl5SURnME5pNDFPREVnT0RRMkxqVTRNU0E0T0RBdU5USXlJRGcyTUM0ek16a2dPVEUwTGpZMU5sWTVNVFF1TmpVMlF6ZzNOaTQxT0NBNU5UUXVPVFE1SURneU9DNHhNalVnT1Rrd0xqRTFNeUEzT1RRdU9ESXpJRGsyTWk0eU5UWldPVFl5TGpJMU5rTTNOall1TmpFeElEa3pPQzQyTWpNZ056SXpMamcwTXlBNU5qQXVOREUwSURjeU5pNHpPQ0E1T1RjdU1USTVWams1Tnk0eE1qbEROekk1TGpNM05DQXhNRFF3TGpRM0lEWTNNaTQwTVRNZ01UQTFPQzQ1T0NBMk5Ea3VNell4SURFd01qSXVNVFZXTVRBeU1pNHhOVU0yTWprdU9ETXpJRGs1TUM0NU5pQTFPREl1TkRJMElEazVPQzQwTmprZ05UY3pMalE1TVNBeE1ETTBMakUzVmpFd016UXVNVGRETlRZeUxqazBOaUF4TURjMkxqTXhJRFV3TXk0d05UUWdNVEEzTmk0ek1TQTBPVEl1TlRBNUlERXdNelF1TVRkV01UQXpOQzR4TjBNME9ETXVOVGMySURrNU9DNDBOamtnTkRNMkxqRTJOeUE1T1RBdU9UWWdOREUyTGpZek9TQXhNREl5TGpFMVZqRXdNakl1TVRWRE16a3pMalU0TnlBeE1EVTRMams0SURNek5pNDJNallnTVRBME1DNDBOeUF6TXprdU5qSWdPVGszTGpFeU9WWTVPVGN1TVRJNVF6TTBNaTR4TlRjZ09UWXdMalF4TkNBeU9Ua3VNemc1SURrek9DNDJNak1nTWpjeExqRTNOeUE1TmpJdU1qVTJWamsyTWk0eU5UWkRNak0zTGpnM05TQTVPVEF1TVRVeklERTRPUzQwTWlBNU5UUXVPVFE1SURJd05TNDJOakVnT1RFMExqWTFObFk1TVRRdU5qVTJRekl4T1M0ME1Ua2dPRGd3TGpVeU1pQXhPRFV1TkRjNElEZzBOaTQxT0RFZ01UVXhMak0wTkNBNE5qQXVNek01VmpnMk1DNHpNemxETVRFeExqQTFNU0E0TnpZdU5UZ2dOelV1T0RRM0lEZ3lPQzR4TWpVZ01UQXpMamMwTkNBM09UUXVPREl6VmpjNU5DNDRNak5ETVRJM0xqTTNOeUEzTmpZdU5qRXhJREV3TlM0MU9EWWdOekl6TGpnME15QTJPQzQ0TnpBM0lEY3lOaTR6T0ZZM01qWXVNemhETWpVdU5UTXdOeUEzTWprdU16YzBJRGN1TURJeU9EY2dOamN5TGpReE15QTBNeTQ0TkRVNElEWTBPUzR6TmpGV05qUTVMak0yTVVNM05TNHdNems0SURZeU9TNDRNek1nTmpjdU5UTXhJRFU0TWk0ME1qUWdNekV1T0RJNU1pQTFOek11TkRreFZqVTNNeTQwT1RGRExURXdMak14TkRrZ05UWXlMamswTmlBdE1UQXVNekUwT1NBMU1ETXVNRFUwSURNeExqZ3lPVElnTkRreUxqVXdPVlkwT1RJdU5UQTVRelkzTGpVek1TQTBPRE11TlRjMklEYzFMakF6T1RnZ05ETTJMakUyTnlBME15NDRORFU0SURReE5pNDJNemxXTkRFMkxqWXpPVU0zTGpBeU1qZzJJRE01TXk0MU9EY2dNalV1TlRNd055QXpNell1TmpJMklEWTRMamczTURjZ016TTVMall5VmpNek9TNDJNa014TURVdU5UZzJJRE0wTWk0eE5UY2dNVEkzTGpNM055QXlPVGt1TXpnNUlERXdNeTQzTkRRZ01qY3hMakUzTjFZeU56RXVNVGMzUXpjMUxqZzBOeUF5TXpjdU9EYzFJREV4TVM0d05URWdNVGc1TGpReUlERTFNUzR6TkRRZ01qQTFMalkyTVZZeU1EVXVOall4UXpFNE5TNDBOemdnTWpFNUxqUXhPU0F5TVRrdU5ERTVJREU0TlM0ME56Z2dNakExTGpZMk1TQXhOVEV1TXpRMFZqRTFNUzR6TkRSRE1UZzVMalF5SURFeE1TNHdOVEVnTWpNM0xqZzNOU0EzTlM0NE5EY2dNamN4TGpFM055QXhNRE11TnpRMFZqRXdNeTQzTkRSRE1qazVMak00T1NBeE1qY3VNemMzSURNME1pNHhOVGNnTVRBMUxqVTROaUF6TXprdU5qSWdOamd1T0Rjd04xWTJPQzQ0TnpBM1F6TXpOaTQyTWpZZ01qVXVOVE13TnlBek9UTXVOVGczSURjdU1ESXlPRGNnTkRFMkxqWXpPU0EwTXk0NE5EVTRWalF6TGpnME5UaERORE0yTGpFMk55QTNOUzR3TXprNElEUTRNeTQxTnpZZ05qY3VOVE14SURRNU1pNDFNRGtnTXpFdU9ESTVNbFl6TVM0NE1qa3lXaWNnWm1sc2JEMG5JMEUwT1RWR1FpY3ZQand2YzNablBnbz1cIik7XG59XG5cbi5zdmctbWFzay0tc3BsYXQtMSBpbWcsXG4uc3ZnLW1hc2stLXNwbGF0LTEgc3ZnOm5vdCguaWNvbiksXG4uc3ZnLW1hc2stLXNwbGF0LTEgdmlkZW8ge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMG5NVEEwT0NjZ2FHVnBaMmgwUFNjeE1EVXlKeUIyYVdWM1FtOTRQU2N3SURBZ01UQTBPQ0F4TURVeUp5Qm1hV3hzUFNkdWIyNWxKeUI0Yld4dWN6MG5hSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY25Qanh3WVhSb0lHWnBiR3d0Y25Wc1pUMG5aWFpsYm05a1pDY2dZMnhwY0MxeWRXeGxQU2RsZG1WdWIyUmtKeUJrUFNkTk5UY3dMamt3TlNBeE5USXVNelE0UXpZNE9DNDBOREVnTVRRd0xqTXpJRGMzTVM0eE9EY2dMVEkzTGpreE5EZ2dPRGcwTGprME1TQTBMakF5TlRjMVF6azROeTQ1T1RjZ016SXVPVFl5TXlBeE1EQTJMakl6SURFM09DNHhPRGdnTVRBek1pNDJJREk0TVM0NU9EVkRNVEExTlM0M05pQXpOek11TVRVMElERXdOVEl1TWpVZ05EWTRMakV6TkNBeE1ESTFMamMySURVMU9DNHpPRGhETVRBd01TNDNJRFkwTUM0ek16WWdPVFF3TGpJNU9DQTNNREF1TlRNNUlEZzRPUzQxTlRJZ056WTVMakl4T1VNNE16UXVNREl5SURnME5DNHpOelVnTnprMUxqTWdPVE0wTGpRMklEY3hNeTQ1TlNBNU9EQXVNemszUXpZeU1pNHpNVGdnTVRBek1pNHhOQ0ExTVRBdU1UQTRJREV3TnpNdU5TQTBNVEF1TkRNMklERXdNemt1TnpkRE16RXhMakU0TmlBeE1EQTJMakU0SURJM05TNDVNamNnT0RnM0xqUXdOU0F5TURZdU5qYzNJRGd3T0M0M016ZERNVE0yTGpjd015QTNNamt1TWpRNElERTBMalkxTXpZZ05qYzVMamszT0NBeExqSXlOREUwSURVM05DNDVNRGRETFRFeUxqSXhORFlnTkRZNUxqYzJNeUE0T0M0eU9EazJJRE00T0M0ME16TWdNVFF4TGpJeU1TQXlPVFl1TmpFeVF6RTRPQzQyTVRZZ01qRTBMak01TkNBeU1EVXVOalF6SURrMExqUTRNakVnTWprMUxqVTNOU0EyTkM0eU9EaERNemc0TGpnd09TQXpNaTQ1T0RVeElEUTNNeTR3TnpFZ01UWXlMak0xTVNBMU56QXVPVEExSURFMU1pNHpORGhhSnlCbWFXeHNQU2NqUVRRNU5VWkNKeTgrUEM5emRtYytDZz09XCIpO1xufVxuXG4uc3ZnLW1hc2stLXNwbGF0LTIgaW1nLFxuLnN2Zy1tYXNrLS1zcGxhdC0yIHN2Zzpub3QoLmljb24pLFxuLnN2Zy1tYXNrLS1zcGxhdC0yIHZpZGVvIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCbWFXeHNQU2R1YjI1bEp5Qm9aV2xuYUhROUp6ZzVOaWNnZG1sbGQwSnZlRDBuTUNBd0lEazNOeUE0T1RZbklIZHBaSFJvUFNjNU56Y25JSGh0Ykc1elBTZG9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5YytQSEJoZEdnZ1kyeHBjQzF5ZFd4bFBTZGxkbVZ1YjJSa0p5QmtQU2R0T1RjMUxqWTROQ0F6T0RFdU9ETXlZekUzTGpJMk15QTVOUzR3TXpNdE1UUXdMakl4TkNBeE1qa3VNak14TFRFNE55NHhOemNnTWpFekxqWTJOaTAxTWk0eE16Z2dPVE11TnpNM0lEZ3VOVEUxSURJNE9DNHdPVFV0T1RndU1qVXpJREk1T1M0MU1ETXRNVEkzTGpFM05TQXhNeTQxT0RjdE1UTTRMakEwT1MweE1UVXVNell5TFRJMk15MHhOREl1TmpNdE1UQTVMalU0TlMweU15NDVNVFF0TWpJMExqVXpOU0E1TVM0NE9UUXRNekE0TGpjeE5TQXhOeTQ0TmpRdE9EUXVOVFF6TXkwM05DNHpORGdnTVRFNExqWTRPQzB5TURjdU16Y3pJRGt6TGpneU9TMHpNVGN1TURrMExUSXlMakUwT1MwNU55NDNOaTB5TURRdU1UazJOekl0TVRBMExqZzNPQzB5TVRJdU1EY3hOREF4TFRJd05DNDRMVFl1T0RZMU5UYzVMVGczTGpFeE9DQXhNRGN1TURJeE5EQXhMVEV6Tmk0eE56Y2dNVGd4TGpVNU5qUXdNUzB4T0RFdU9UQXhNeUEyTmk0eE5qTXROREF1TlRZMk9DQXhOREl1TlRNeExUYzJMamN3TkRrZ01qRTVMakE0TWkwMk15NDNOams1TmlBM01TNHpPRE1nTVRJdU1EWXhOellnTVRRd0xqUTROaUEyTWk0M056TTFOaUF4TmpndU9EVXlJREV5T1M0ek1qQXlOaUE1TGpreU9TQXlNeTR5T1RNZ01qVXVPRE01SURVMExqVXlPQ0EyT1M0NU1pQTNPQzQxTVRjZ09URXVPRFU1SURRNUxqazVJRE13TkM0NE1UWWdNQ0F6TXpVdU9UTTNJREUzTVM0ek1qVjZKeUJtYVd4c1BTY2pZVFE1TldaaUp5Qm1hV3hzTFhKMWJHVTlKMlYyWlc1dlpHUW5MejQ4TDNOMlp6ND1cIik7XG59XG5cbi5zdmctbWFzay0tc3BsYXQtMyBpbWcsXG4uc3ZnLW1hc2stLXNwbGF0LTMgc3ZnOm5vdCguaWNvbiksXG4uc3ZnLW1hc2stLXNwbGF0LTMgdmlkZW8ge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMG5NVEEzTWljZ2FHVnBaMmgwUFNjeE1EVXhKeUIyYVdWM1FtOTRQU2N3SURBZ01UQTNNaUF4TURVeEp5Qm1hV3hzUFNkdWIyNWxKeUI0Yld4dWN6MG5hSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY25Qanh3WVhSb0lHWnBiR3d0Y25Wc1pUMG5aWFpsYm05a1pDY2dZMnhwY0MxeWRXeGxQU2RsZG1WdWIyUmtKeUJrUFNkTk5qRTRMamt4TXlBeU1UVXVNemd6UXpjME5TNDNOelVnTWpJMUxqWTFOeUE0TkRFdU56VWdNVGd1TURBME9TQTVOakF1TmpjNElEWXpMak15TWpSRE1UQTJPUzQ0TlNBeE1EUXVPVEkwSURFd056QXVORE1nTWpjeExqSTJNaUF4TURjeExqazVJRE00T0M0d01qaERNVEEzTXk0eU5TQTBPREl1TWpnNElEazNNaTR3TWpZZ05UVXdMamcxTlNBNU5qZ3VORFE1SURZME5TNHdOVFZET1RZMExqRTBOeUEzTlRndU16TXhJREV4TURNdU5qa2dPRFk0TGpJNU9DQXhNRFE1TGprMklEazJPQzR4TWpaRE1UQXdNQzR5TkNBeE1EWXdMalVnT0RVMkxqUTJPQ0F4TURNNExqZ3lJRGMxTVM0NE56WWdNVEEwTnk0ME1VTTJOalF1TXpFMklERXdOVFF1TmlBMU56TXVOalkwSURFd05UUXVORFFnTkRrMUxqZzNJREV3TVRNdU5qUkROREkwTGpjek1TQTVOell1TXpNeElEUXdPUzQ0TXpRZ09EYzRMalk0T1NBek5ETXVOVGd5SURnek15NHlOekpETWpReExqTTBPU0EzTmpNdU1Ua2dOall1TXprNU55QTNPVE11TkRFMklERXlMakV4T1RRZ05qZ3lMakF5TTBNdE16Y3VOVGN6T0NBMU9EQXVNRFEwSURjNUxqSTNOVFlnTkRjeUxqVXpPQ0F4TVRVdU5EQXlJRE0yTlM0d01EaERNVFUyTGpZM01pQXlOREl1TVRZMElERXhOUzR6TWlBME1TNDROVFl6SURJek9TNDFPVGdnTkM0NU1qVTNNME16T0RFdU1EZ3hJQzB6Tnk0eE1UYzJJRFEzTVM0M09URWdNakF6TGpRMk9DQTJNVGd1T1RFeklESXhOUzR6T0ROYUp5Qm1hV3hzUFNjalFUUTVOVVpDSnk4K1BDOXpkbWMrQ2c9PVwiKTtcbn1cblxuLnN2Zy1tYXNrLS1zcGxhdC00IGltZyxcbi5zdmctbWFzay0tc3BsYXQtNCBzdmc6bm90KC5pY29uKSxcbi5zdmctbWFzay0tc3BsYXQtNCB2aWRlbyB7XG4gIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwbk5URTRKeUJvWldsbmFIUTlKelV3TkNjZ2RtbGxkMEp2ZUQwbk1DQXdJRFV4T0NBMU1EUW5JR1pwYkd3OUoyNXZibVVuSUhodGJHNXpQU2RvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeWMrUEhCaGRHZ2dabWxzYkMxeWRXeGxQU2RsZG1WdWIyUmtKeUJqYkdsd0xYSjFiR1U5SjJWMlpXNXZaR1FuSUdROUowMHpNRE11TnpreklEZzBMalkzTTBNek1Ua3VPVFF5SURFd09DNDFNakVnTXpNMUxqVXpJREV5T0M0eU5UTWdNell3TGpJNE9TQXhNek11TXprM1F6UXdNeTQyTkRNZ01UUXlMalF3TkNBME5UUXVOREl4SURrM0xqY3pNaUEwT1RBdU5EYzVJREV5TXk0ME5UZEROVEl3TGpNeE1TQXhORFF1TnpNNUlEVXlNeTQ0SURJeE1DNDJORFlnTlRFd0xqUTNPU0F5TXpVdU9UazVRelE1TkM0NU56a2dNalkxTGpRNU9TQTBOVGd1TWpjNElESTRNQzR3TkNBME5ESXVPVGM1SURNd09TNDVPVGxETkRJMExqWXlPU0F6TkRVdU9UTXhJRFExTXk0M05DQXpPRFF1T1RZM0lEUXhNQzQwTnprZ05ERXpMalE1T1VNek56Y3VOVGM0SURRek5TNHhPVGdnTXpReExqZ3hOaUF6T1RjdU9EY3lJRE13TXk0M09UTWdOREE0TGpFNU9FTXlORE11T0RnMklEUXlOQzQwTmpZZ01qQTVMaklnTlRBMExqVTBNU0F4TkRjdU1UUTRJRFV3TWk0NU9UbERPRGt1TXpReE5DQTFNREV1TlRZeklETXhMalV4TURNZ05EVTBMamd6TmlBeE1DNDBOemt6SURRd01DNDVNRGhETFRFd0xqYzBPREVnTXpRMkxqUTNOeUF5TGpRek5UTTVJREkzTlM0d05UWWdOREV1TWpFMUlESXpNUzR6TmpaRE5qa3VOU0F4T1RrdU5TQXhNRFVnTVRnNUlERXlNaTQwT0NBeE16bERNVE14TGprek5TQXhNVEV1T1RVeklERXhPUzQwT0NBek5pQXhOelF1TXpjM0lEWXVPVFE1T1RoRE1qRTVMall4TnlBdE1UWXVPVGc1T1NBeU5qWXVORFF5SURJMExqQXlNakVnTXpBekxqYzVNeUE0TkM0Mk56TmFKeUJtYVd4c1BTY2pRVFE1TlVaQ0p5OCtQQzl6ZG1jK0NnPT1cIik7XG59XG4iLCIuZmVhdHVyZS1yb3dfX2l0ZW0tLW92ZXJsYXAtaW1hZ2VzIHtcbiAgJiAuZmVhdHVyZS1yb3dfX2ZpcnN0LWltYWdlIHtcbiAgICB3aWR0aDogNTUlO1xuICB9XG5cbiAgJiAuZmVhdHVyZS1yb3dfX3NlY29uZC1pbWFnZSB7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxufVxuXG4uZmVhdHVyZS1yb3dfX2l0ZW0tLXBsYWNlaG9sZGVyLWltYWdlcyB7XG4gICYgLnBsYWNlaG9sZGVyLWltYWdlLXdyYXAge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93LXdyYXBwZXIgLmZlYXR1cmUtcm93X19pbWFnZXMge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICB9XG59XG5cbi5mZWF0dXJlLXJvdy13cmFwcGVyIC5mZWF0dXJlLXJvd19fdGV4dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1pbi13aWR0aDogNDMlO1xuICAgIGZsZXg6IDAgMSA0MyU7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93LS0zMyB7XG4gICYgLmZlYXR1cmUtcm93X19pbWFnZXMge1xuICAgIG1heC13aWR0aDogNTAlO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgZmxleDogMCAxIDMzLjMzMyU7XG4gICAgfVxuICB9XG59XG5cbi5mZWF0dXJlLXJvdy0tNTAge1xuICAmIC5mZWF0dXJlLXJvd19faW1hZ2VzIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93LS02NiB7XG4gICYgLmZlYXR1cmUtcm93X19pbWFnZXMge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGZsZXg6IDAgMSA2Ni42NjYlO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLnNjcm9sbGluZy10ZXh0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG5cbi5zY3JvbGxpbmctdGV4dF9faW5uZXIge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luOiAwLjE1ZW0gMDtcbiAgYW5pbWF0aW9uOiBzY3JvbGxpbmctdGV4dCB2YXIoLS1tb3ZlLXNwZWVkKSBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nO1xufVxuXG4uc2Nyb2xsaW5nLXRleHRfX2lubmVyLS1yaWdodCB7XG4gIGFuaW1hdGlvbjogc2Nyb2xsaW5nLXRleHQtcmlnaHQgdmFyKC0tbW92ZS1zcGVlZCkgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc2Nyb2xsaW5nLXRleHQgc3BhbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zY3JvbGxpbmctdGV4dDpob3ZlciAuc2Nyb2xsaW5nLXRleHRfX2lubmVyLFxuLnNjcm9sbGluZy10ZXh0OmZvY3VzIC5zY3JvbGxpbmctdGV4dF9faW5uZXIge1xuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xufVxuXG5Aa2V5ZnJhbWVzIHNjcm9sbGluZy10ZXh0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzY3JvbGxpbmctdGV4dC1yaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG4iLCIubmV3c2xldHRlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDQwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDYwcHggMDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgfVxufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uLS1pbWFnZS1sZWZ0IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uX19jb250ZW50IHtcbiAgZmxleDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgQG5lc3QgLm5ld3NsZXR0ZXItc2VjdGlvbi0tbm8taW1hZ2UgJiB7XG4gICAgZmxleDogMTAwJTtcbiAgfVxuXG4gICYgZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBuZXN0IC50ZXh0LWxlZnQgJiB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgQG5lc3QgLnRleHQtcmlnaHQgJiB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXJfX2lucHV0LWdyb3VwIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItc2VjdGlvbl9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcblxuICAmIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb25fX2ltYWdlLS0zMyB7XG4gIGZsZXg6IDMzLjMzMyUgMCAwO1xufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uX19pbWFnZS0tNTAge1xuICBmbGV4OiA1MCUgMCAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uX19pbWFnZS0tNjYge1xuICBmbGV4OiA2Ni42NjYlIDAgMDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItZm9ybS1ncm91cCB7XG4gIEBuZXN0IC50ZXh0LWxlZnQgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgQG5lc3QgLnRleHQtcmlnaHQgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCIucHJlZGljdGl2ZS1vdmVyZmxvdy1oaWRkZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG59XG5cbnByZWRpY3RpdmUtc2VhcmNoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA5NjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGZsZXg6IDk5O1xuICB9XG5cbiAgJi5pcy1hY3RpdmUgLnByZWRpY3RpdmVfX3NjcmVlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5idG4tLWNsb3NlLXNlYXJjaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbltkYXRhLWRhcms9XCJ0cnVlXCJdIHtcbiAgJiBpbnB1dCB7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgfVxuXG4gICYgLmJ0bi0tc2VhcmNoIHBhdGgge1xuICAgIHN0cm9rZTogI2ZmZiAhaW1wb3J0YW50O1xuICB9XG59XG5cbltkYXRhLWRhcms9XCJmYWxzZVwiXSB7XG4gICYgaW5wdXQge1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmIC5idG4tLXNlYXJjaCBwYXRoIHtcbiAgICBzdHJva2U6ICMwMDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucHJlZGljdGl2ZV9fc2NyZWVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3JNb2RhbEJnKTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxucHJlZGljdGl2ZS1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgei1pbmRleDogNDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNlYXJjaF9faW5wdXQtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogNTtcbiAgdHJhbnNpdGlvbjogZmxleCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uc2VhcmNoX19pbnB1dCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yTmF2U2VhcmNoLCAjZmZmKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJvZHktdGV4dCk7XG4gIGZsZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJvdW5kbmVzcywgMCkgKjIpO1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbi5idG4tLXNlYXJjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcmlnaHQ6IDE1cHg7XG5cbiAgJiAuaWNvbiB7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIHdpZHRoOiAyNXB4O1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgQG5lc3QgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxNXB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbGVmdDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi0tY2xvc2Utc2VhcmNoIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxleDogMzBweCAwIDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICYgLmljb24ge1xuICAgIGhlaWdodDogMjVweDtcbiAgICB3aWR0aDogMjVweDtcbiAgfVxuXG4gICYgLmljb24gcGF0aCB7XG4gICAgc3Ryb2tlOiB2YXIoLS1jb2xvck5hdlRleHQpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNlYXJjaF9fcmVzdWx0cyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJvZHkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYm9keS10ZXh0KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG4gIG1heC1oZWlnaHQ6IDgwdmg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLXBhZ2VXaWR0aFBhZGRpbmcsIDE3cHgpICogMik7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tcGFnZVdpZHRoUGFkZGluZywgMTdweCkgKiAtMSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLXBhZ2VXaWR0aFBhZGRpbmcsIDE3cHgpICogLTEpO1xuICAgIG1heC1oZWlnaHQ6IDc1dmg7XG5cbiAgICBAbmVzdCAudGVtcGxhdGUtc2VhcmNoIC5wYWdlLWNvbnRlbnQgJiB7XG4gICAgICBtYXgtaGVpZ2h0OiA1MHZoO1xuICAgIH1cbiAgfVxufVxuXG4ucmVzdWx0cyB7XG4gIHBhZGRpbmc6IDAgMjBweCAyMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJiB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYgbGkge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjA1KTtcbiAgICB9XG5cbiAgICAmIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5yZXN1bHRzLS1xdWVyaWVzIHtcbiAgJiBzcGFuIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgJiBtYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi5yZXN1bHRzLS1wcm9kdWN0cyBzcGFuIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi5yZXN1bHRzLS1wcm9kdWN0cyAjcHJlZGljdGl2ZS1zZWFyY2gtcHJvZHVjdHMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucmVzdWx0cy1wcm9kdWN0c19faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiA4MHB4O1xuICBtYXgtd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbn1cblxuLnJlc3VsdHMtcHJvZHVjdHNfX2luZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ucHJlZGljdGl2ZS1zZWFyY2gtcmVzdWx0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogNDBweCAwIDA7XG5cbiAgJiBoMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLnByZWRpY3RpdmUtc2VhcmNoLXJlc3VsdHMtLW5vbmUge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbn1cblxuLnByZWRpY3RpdmUtc2VhcmNoX19uby1yZXN1bHRzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxufVxuXG4ucmVzdWx0c19fZ3JvdXAtMSB7XG4gIGZsZXg6IDEwMCUgMCAwO1xuXG4gICYgPiBkaXY6bm90KC5yZXN1bHRzLS1xdWVyaWVzKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucmVzdWx0c19fZ3JvdXAtMiB7XG4gIGZsZXg6IDEwMCUgMCAwO1xufVxuXG4ucmVzdWx0c19fc2VhcmNoLWJ0biB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4wNSk7XG4gIH1cbn1cblxuLyogQ29udGFpbmVyc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBjb250YWluZXIgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgLnByZWRpY3RpdmUtc2VhcmNoLXJlc3VsdHMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICAucmVzdWx0cyB7XG4gICAgcGFkZGluZzogMCA0MHB4IDIwcHg7XG4gIH1cblxuICAucmVzdWx0c19fZ3JvdXAtMSB7XG4gICAgZmxleDogMSAwIDA7XG5cbiAgICAmIGRpdjpub3QoLnJlc3VsdHMtLXF1ZXJpZXMpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5yZXN1bHRzX19ncm91cC0yIHtcbiAgICBmbGV4OiAyIDAgMDtcblxuICAgICYgPiBkaXY6bm90KC5yZXN1bHRzLS1wcm9kdWN0cykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAucmVzdWx0c19fc2VhcmNoLWJ0biB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCA0MHB4O1xuICB9XG59XG5cbi8qXG4ud29ya2Fyb3VuZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvckJvcmRlcik7XG59XG4qL1xuIiwiLnJlY2lwaWVudC1mb3JtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAyZW0gYXV0bztcblxuICAmIC5maWVsZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgJiAuZmllbGRfX2xhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0O1xuICAgIG1hcmdpbjogMDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG4gIH1cblxuICAmIC5maWVsZF9fbGFiZWw6bm90KC52YXJpYW50X19idXR0b24tbGFiZWwpOm5vdCgudGV4dC1sYWJlbCksXG4gICYgbGFiZWw6bm90KC52YXJpYW50X19idXR0b24tbGFiZWwpOm5vdCgudGV4dC1sYWJlbCkge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAmIC5maWVsZF9faW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgICB9XG5cbiAgICAmLnRleHQtYXJlYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB+IGxhYmVsLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCB7XG4gICAgICBvcGFjaXR5OiAwLjY1O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0wLjRlbSkgdHJhbnNsYXRlWCgwLjE1ZW0pO1xuICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgcGFkZGluZzogMTZweCAxMHB4IDA7XG4gICAgfVxuICB9XG5cbiAgJiAuZmllbGRfX2lucHV0LS1lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZXJyb3JSZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVycm9yUmVkQmc7XG4gICAgY29sb3I6ICRlcnJvclJlZDtcblxuICAgICYgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogJGVycm9yUmVkO1xuICAgIH1cbiAgfVxuXG4gIC5yZWNpcGllbnQtZm9ybV9fY2hlY2tib3gtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gICAgfVxuICB9XG5cbiAgJiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIGhlaWdodDogMTZweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIH1cblxuICAmIC5jaGVja2JveC1sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmIC5yZWNpcGllbnQtZm9ybS1maWVsZC1sYWJlbC0tc3BhY2UtYmV0d2VlbiA+IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gIH1cblxuICAmIC5yZWNpcGllbnQtZmllbGRzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIqLCBpbnB1dCwgOmJlZm9yZSwgOmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCwgYm9keSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmF1ZGlvLCBjYW52YXMsIHByb2dyZXNzLCB2aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIuZ3JpZCB7XG4gIEBtaXhpbiBjbGVhcmZpeDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlcjtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci1zbWFsbDtcblxuICAgIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC1ndXR0ZXItc21hbGw7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGdyaWQtZ3V0dGVyO1xuICB9XG59XG5cbi5ncmlkLS1zbWFsbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcblxuICAmIC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cbn1cblxuLmdyaWRfX2l0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItc21hbGw7XG5cbiAgICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci1zbWFsbDtcbiAgICB9XG4gIH1cblxuICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlcjtcbiAgfVxufVxuXG4uZ3JpZC0tbm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICYgLmdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uZ3JpZC0tZmx1c2gtYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogLSRncmlkLWd1dHRlcjtcbiAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgJiA+IC5ncmlkX19pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXI7XG4gIH1cbn1cblxuLmdyaWQtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmIC5ncmlkX19pdGVtIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEd1dHRlcmxlc3MgZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmdyaWQtLWZ1bGwge1xuICBtYXJnaW4tbGVmdDogMDtcblxuICAmID4gLmdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5ncmlkLS10YWJsZS1sYXJnZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICAgICYgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLnNtYWxsLS1ncmlkLS1mbHVzaCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG5cbiAgICBAbmVzdCAucGFnZS13aWR0aCAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBhZ2Utd2lkdGgtZ3V0dGVyLXNtYWxsO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0kcGFnZS13aWR0aC1ndXR0ZXItc21hbGwgKyAycHgpO1xuICAgIH1cblxuICAgICYgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFRleHQgQ29sdW1ucyBHcmlkIC0tIFNob3dzIDItMyBpdGVtcyBwZXIgcm93LCBmdWxsIHdpZHRoIGp1c3RpZnlcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gIFxuLnRleHQtY29sdW1uX19ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogJGdyaWQtZ3V0dGVyO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgLnRleHQtY29sdW1uX19ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7IC8qIDYtY29sdW1uIGdyaWQgKi9cbiAgfSBcblxuICAvKiBEZWZhdWx0OiBFYWNoIGl0ZW0gc3BhbnMgMyBjb2x1bW5zIChzbyAyIGl0ZW1zIHBlciByb3cpICovXG4gIC50ZXh0LWNvbHVtbl9fZ3JpZCA+ICoge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gIH1cblxuICAvKiBTcGVjaWFsIGNhc2UgZm9yIGV4YWN0bHkgMyBpdGVtczogMyBjb2x1bW5zLCAxIHJvdyAqL1xuICAudGV4dC1jb2x1bW5fX2dyaWQ6aGFzKD4gKjpudGgtY2hpbGQoMyk6bGFzdC1jaGlsZCkgPiAqIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICB9XG5cbiAgLyogRm9yIGFueSBvZGQgbnVtYmVyIG9mIGl0ZW1zIChleGNsdWRpbmcgZXhhY3RseSAzIGl0ZW1zKSAqL1xuICAudGV4dC1jb2x1bW5fX2dyaWQ6aGFzKD4gKjpudGgtY2hpbGQob2RkKTpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDMpKSkgPiAqOm50aC1sYXN0LWNoaWxkKC1uKzMpIHtcbiAgICAvKiBMYXN0IDMgaXRlbXMgaW4gdGhlIGdyaWQgc3BhbiAyIGNvbHVtbnMgZWFjaCAqL1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cbn1cbiIsbnVsbCwiQGN1c3RvbS1tZWRpYSAtLXNtYWxsIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCk7XG5AY3VzdG9tLW1lZGlhIC0tbWVkaXVtLXVwIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tdXApO1xuQGN1c3RvbS1tZWRpYSAtLW1lZGl1bS1kb3duIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tZG93bik7XG5AY3VzdG9tLW1lZGlhIC0td2lkZXNjcmVlbiBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtd2lkZXNjcmVlbik7XG5cbkBtaXhpbiBncmlkLWNvbHVtbi1nZW5lcmF0b3I7XG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ2VuZXJhdG9yIHNtYWxsO1xuQG1peGluIGdyaWQtY29sdW1uLWdlbmVyYXRvciBtZWRpdW0tdXA7XG5cbkBtaXhpbiByZXNwb25zaXZlLWRpc3BsYXktaGVscGVyO1xuQG1peGluIHJlc3BvbnNpdmUtZGlzcGxheS1oZWxwZXIgc21hbGw7XG5AbWl4aW4gcmVzcG9uc2l2ZS1kaXNwbGF5LWhlbHBlciBtZWRpdW0tZG93bjtcbkBtaXhpbiByZXNwb25zaXZlLWRpc3BsYXktaGVscGVyIG1lZGl1bS11cDtcbiIsIi5mbGV4LWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXg6IDEgMSAxMDAlO1xuXG4gIEBuZXN0IFtkYXRhLWNlbnRlci10ZXh0PVwiY2VudGVyXCJdICYge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5mbGV4LWdyaWQtLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LWdyaWQtLWd1dHRlcnMge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0kZ3V0dGVyIC8gMik7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0kZ3V0dGVyIC8gMik7XG59XG5cbi5mbGV4LWdyaWRfX2l0ZW0ge1xuICBmbGV4OiAwIDEgMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgQG5lc3QgLmZsZXgtZ3JpZC0tZ3V0dGVycyAmIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyIC8gMik7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gICYgPiAqIHtcbiAgICBmbGV4OiAxIDEgMTAwJTtcbiAgfVxufVxuXG4uZmxleC1ncmlkX19pdGVtLS1zdHJldGNoIHtcbiAgZmxleDogMSAxIDEwMCU7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcbiAgfVxufVxuXG4vKkZsZXggZ3JpZCBzaXppbmcgZnJvbSB0aGVtZSBzZXR0aW5ncyovXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5mbGV4LWdyaWRfX2l0ZW0tLTMzIHtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMyU7XG4gIH1cblxuICAuZmxleC1ncmlkX19pdGVtLS01MCB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICB9XG59XG5cbi8qUmV2ZXJzZSBvcmRlciBvciBlbGVtZW50cyovXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmZsZXgtZ3JpZF9faXRlbS0tbW9iaWxlLXNlY29uZCB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbn1cbiIsIi5jbGVhcmZpeCB7XG4gIEBtaXhpbiBjbGVhcmZpeDtcbn1cblxuaHRtbDpub3QoLm5vLWpzKTpub3QoLnRhYi1vdXRsaW5lKSAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmlzLXRyYW5zaXRpb25pbmcge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5kaXNwbGF5LXRhYmxlIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZGlzcGxheS10YWJsZS1jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLm1lZGl1bS11cC0tZGlzcGxheS10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5tZWRpdW0tdXAtLWRpc3BsYXktdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi52aXN1YWxseS1oaWRkZW4ge1xuICBAbWl4aW4gdmlzdWFsbHlIaWRkZW47XG59XG5cbi8qS2VlcCBkaW1lbnNpb25zIGJ1dCBoaWRlIHZpc3VhbGx5Ki9cbi52aXN1YWxseS1pbnZpc2libGUge1xuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBTa2lwIHRvIGNvbnRlbnQgYnV0dG9uXG4gICAgLSBPdmVycmlkZXMgLnZpc3VhbGx5LWhpZGRlbiB3aGVuIGZvY3VzZWRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uc2tpcC1saW5rOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6ICR6aW5kZXhTa2lwVG9Db250ZW50O1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuIiwiQGRlZmluZS1taXhpbiB2aXN1YWxseUhpZGRlbiB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuXG5AZGVmaW5lLW1peGluIG92ZXJsYXkgJHppbmRleDogYXV0byB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleDtcbn1cblxuQGRlZmluZS1taXhpbiBiYXNlRm9udFN0YWNrIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXR5cGVCYXNlUHJpbWFyeSksIHZhcigtLXR5cGVCYXNlRmFsbGJhY2spO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAqIDAuOTIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHlwZUJhc2VTcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXR5cGVCYXNlTGluZUhlaWdodCk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZUJhc2VTaXplKTtcbiAgfVxufVxuXG5AZGVmaW5lLW1peGluIGJhc2VTbWFsbEZvbnRTdGFjayB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICogMC44NSk7XG59XG5cbkBkZWZpbmUtbWl4aW4gYmFzZUV4dHJhU21hbGxGb250U3RhY2sge1xuICBmb250LXNpemU6IG1heChjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgKiAwLjcpLCAxMnB4KTtcbn1cblxuQGRlZmluZS1taXhpbiBoZWFkaW5nVGV4dENlbnRlciB7XG4gIEBuZXN0IFtkYXRhLXR5cGVfaGVhZGVyc19hbGlnbl90ZXh0PVwiY2VudGVyXCJdICYge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5AZGVmaW5lLW1peGluIGJhc2VUZXh0Q2VudGVyIHtcbiAgQG5lc3QgW2RhdGEtY2VudGVyLXRleHQ9XCJjZW50ZXJcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBkZWZpbmUtbWl4aW4gaGVhZGluZ0ZvbnRTdGFjayB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS10eXBlSGVhZGVyUHJpbWFyeSksIHZhcigtLXR5cGVIZWFkZXJGYWxsYmFjayk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS10eXBlSGVhZGVyV2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXR5cGVIZWFkZXJTcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXR5cGVIZWFkZXJMaW5lSGVpZ2h0KTtcblxuICBAbmVzdCBbZGF0YS10eXBlX2hlYWRlcl9jYXBpdGFsaXplPVwidHJ1ZVwiXSAmIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbkBkZWZpbmUtbWl4aW4gYWNjZW50Rm9udFN0YWNrIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuM2VtO1xufVxuXG5AZGVmaW5lLW1peGluIGFjY2VudEZvbnRTbWFsbFNpemUge1xuICBmb250LXNpemU6IDAuOGVtO1xufVxuXG5cbkBkZWZpbmUtbWl4aW4gaGVyb1NjcmltIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySW1hZ2VPdmVybGF5O1xuICBvcGFjaXR5OiAkY29sb3JJbWFnZU92ZXJsYXlPcGFjaXR5O1xufVxuXG5AZGVmaW5lLW1peGluIGhlcm9SYWRpYWwge1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAkY29sb3JJbWFnZU92ZXJsYXlUZXh0U2hhZG93KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA2MCUpO1xuICBtYXJnaW46IC0xMDBweCAtMjAwcHggLTEwMHB4IC0yMDBweDtcbn1cbiIsImh0bWwge1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuaHRtbFtkaXI9XCJydGxcIl0ge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cblxuaHRtbCxcbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAuc3VwcG9ydHMtdG91Y2gubG9jay1zY3JvbGwge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvKiBpT1Mgc3BlY2lmaWMgZml4ICovXG4gICAgQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZS13aWR0aCB7XG4gIG1heC13aWR0aDogJHBhZ2Utd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZS13aWR0aCxcbi5wYWdlLWZ1bGwge1xuICBwYWRkaW5nOiAwICRwYWdlLXdpZHRoLWd1dHRlci1zbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogMCAkcGFnZS13aWR0aC1ndXR0ZXItbGFyZ2U7XG4gIH1cbn1cblxuLnBhZ2Utd2lkdGgtLW5hcnJvdyB7XG4gIG1heC13aWR0aDogJHBhZ2Utd2lkdGgtbmFycm93O1xufVxuXG4ucGFnZS13aWR0aC0tdGlueSB7XG4gIG1heC13aWR0aDogNDUwcHg7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAucGFnZS13aWR0aC0tZmx1c2gtc21hbGwge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnBhZ2UtY29udGVudCxcbi5zaG9waWZ5LXBvbGljeV9fY29udGFpbmVyLFxuLnNob3BpZnktZW1haWwtbWFya2V0aW5nLWNvbmZpcm1hdGlvbl9fY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcbiAgcGFkZGluZy1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlO1xuICB9XG59XG5cbi5zaG9waWZ5LWVtYWlsLW1hcmtldGluZy1jb25maXJtYXRpb25fX2NvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2UtY29udGVudC0tdG9wLFxuLnBhZ2UtY29udGVudC0td2l0aC1ibG9ja3Mge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLnBhZ2UtY29udGVudC0tYm90dG9tIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5tYWluLWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMzAwcHg7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtaW4taGVpZ2h0OiA3MDBweDtcbiAgfVxuXG4gIEBuZXN0IC50ZW1wbGF0ZS1jaGFsbGFuZ2UgJiB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxufVxuXG5ocixcbi5oci0tc21hbGwsXG4uaHItLW1lZGl1bSxcbi5oci0tbGFyZ2Uge1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLmhyLS1zbWFsbCB7XG4gIG1hcmdpbjogMTVweCBhdXRvO1xufVxuXG4uaHItLW1lZGl1bSB7XG4gIG1hcmdpbjogMjVweCBhdXRvO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDM1cHggYXV0bztcbiAgfVxufVxuXG4uaHItLWxhcmdlIHtcbiAgbWFyZ2luOiAkZ3V0dGVyIGF1dG87XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbjogY2FsYygkZ3V0dGVyICogMS41KSBhdXRvO1xuICB9XG5cbiAgQG5lc3QgLnBhZ2UtYmxvY2tzICsgJixcbiAgLnBhZ2UtYmxvY2tzICsgW2RhdGEtc2VjdGlvbi10eXBlPVwicmVjZW50bHktdmlld2VkXCJdICYge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLmhyLS1jbGVhciB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFJlc3BvbnNpdmUgdGFibGVzLCBkZWZpbmVkIHdpdGggLnRhYmxlLS1yZXNwb25zaXZlIG9uIHRhYmxlIGVsZW1lbnQuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnRhYmxlLS1yZXNwb25zaXZlIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgdHIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJiB0cixcbiAgICAmIHRkIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIHRoLFxuICAgICYgdGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuXG4gICAgJiB0ZDpiZWZvcmUge1xuICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC50YWJsZS0tc21hbGwtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRhYmxlX19zZWN0aW9uICsgLnRhYmxlX19zZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuZGV0YWlscyBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcbiAgZGlzcGxheTpub25lO1xufVxuIiwiYm9keSxcbmlucHV0LFxudGV4dGFyZWEsXG5idXR0b24sXG5zZWxlY3QsXG4uZmF1eC1zZWxlY3Qge1xuICBAbWl4aW4gYmFzZUZvbnRTdGFjaztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG59XG5cbmJvZHkge1xuICBmb250LXdlaWdodDogdmFyKC0tdHlwZUJhc2VXZWlnaHQpO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgY2FsYygkZ3V0dGVyIC8gMikgMDtcblxuICAmIGltZyB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5iLCBzdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuc21hbGwsXG5wW2RhdGEtc3BhbS1kZXRlY3Rpb24tZGlzY2xhaW1lcl0ge1xuICBmb250LXNpemU6IDAuODVlbTtcbn1cblxuc3VwLCBzdWIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogNjAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjVlbTtcbn1cblxuYmxvY2txdW90ZSxcbi5ydGUgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlciA0MHB4O1xuXG4gICYgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICYgKyBjaXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxuXG4gICYgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuY29kZSwgcHJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZjdmNTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBib3JkZXI6IDAgbm9uZTtcbiAgcGFkZGluZzogMCAycHg7XG4gIGNvbG9yOiAjNTFhYjYyO1xufVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gIG1hcmdpbjogMCAwICRndXR0ZXI7XG59XG5cbmxhYmVsOm5vdCgudmFyaWFudF9fYnV0dG9uLWxhYmVsKTpub3QoLnRleHQtbGFiZWwpLFxuLmxhYmVsIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5sYWJlbC1pbmZvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDAgMCBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gICYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICB9XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xufVxuXG4vKiBNb2JpbGUgc2l6ZXMgKi9cbmgxLCAuaDEge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC44NSk7XG59XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC43Myk7XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC42Mik7XG59XG5cbi8qIERlc2t0b3Agc2l6ZXMgKi9cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlSGVhZGVyU2l6ZSk7XG4gIH1cblxuICBoMiwgLmgyIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC44NSk7XG4gIH1cblxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC42NSk7XG4gIH1cbn1cblxuaDQsIC5oNCB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIEBtaXhpbiBhY2NlbnRGb250U21hbGxTaXplO1xufVxuXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIEBtaXhpbiBhY2NlbnRGb250U21hbGxTaXplO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxufVxuXG4uc3ViaGVhZGluZyB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG59XG5cbi8qU3RhbmRhcmRpemUgdGV4dCBzcGFjaW5nIHNvbWV0aW1lcyovXG4udGV4dC1zcGFjaW5nLFxuLnRleHQtc3BhY2luZy5ydGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xufVxuXG4ucnRlIHtcbiAgJiB0YWJsZSB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG5cbiAgICAgICYgdGQsXG4gICAgICAmIHRoIHtcbiAgICAgICAgcGFkZGluZzogNnB4IDhweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbmVzdCAuY29sbGFwc2libGUtY29udGVudCAmIHtcbiAgICAgICYgdGQsXG4gICAgICAmIHRoIHtcbiAgICAgICAgcGFkZGluZzogNnB4IDhweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbW1lbnQtYXV0aG9yIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNvbW1lbnQtZGF0ZSB7XG4gIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAzcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cblxuLmFqYXhjYXJ0X19zdWJ0b3RhbCB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIEBtaXhpbiBhY2NlbnRGb250U21hbGxTaXplO1xufVxuXG4ucnRlIHtcbiAgJiAuZW5sYXJnZS10ZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgfVxuXG4gICYgLmVubGFyZ2UtdGV4dC0tb2Zmc2V0IHtcbiAgICAmIHAge1xuICAgICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNSU7XG5cbiAgICAgICAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgICAgICAgIHBhZGRpbmc6IDAgNSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAudGFibGUtLXNtYWxsLXRleHQge1xuICAgIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIH1cbn1cblxuLmluZGV4LXNlY3Rpb24tLWZvb3RlciB7XG4gICYgaDMge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09IFJUTCBvdmVycmlkZXMgPT09PT09PT09PT09PT09PSovXG5odG1sW2Rpcj1cInJ0bFwiXSB7XG4gICYgLnRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gICYgLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKkljb24gKyB0ZXh0IGVsZW1lbnQgdGhhdCBwcmV2ZW50cyBhd2t3YXJkIGxpbmUgd3JhcHBpbmcqL1xuLmljb24tYW5kLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAmIC5pY29uIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxufVxuIiwidWwsIG9sIHtcbiAgbWFyZ2luOiAwIDAgY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlcjtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxub2wgb2wge1xuICBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYTtcbn1cblxub2wgeyBsaXN0LXN0eWxlOiBkZWNpbWFsOyB9XG51bCB1bCwgdWwgb2wsXG5vbCBvbCwgb2wgdWwgeyBtYXJnaW46IDRweCAwIDVweCAyMHB4OyB9XG5saSB7IG1hcmdpbi1ib3R0b206IDAuMjVlbTsgfVxuXG51bC5zcXVhcmUgeyBsaXN0LXN0eWxlOiBzcXVhcmUgb3V0c2lkZTsgfVxudWwuZGlzYyB7IGxpc3Qtc3R5bGU6IGRpc2Mgb3V0c2lkZTsgfVxub2wuYWxwaGEgeyBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYSBvdXRzaWRlOyB9XG5cbi5uby1idWxsZXRzIHtcbiAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmlubGluZS1saXN0IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuXG4gICYgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cbiIsInRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1zcGFjaW5nOiAxcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvcmRlcjtcbn1cblxuLnRhYmxlLXdyYXBwZXIge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbnRkLFxudGgge1xuICBib3JkZXI6IDAgbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuXG4gIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnRoLFxuLnRhYmxlX190aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuIiwiYSxcbi50ZXh0LWxpbmsge1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi8qRm9yY2UgYW4gaW5wdXQvYnV0dG9uIHRvIGxvb2sgbGlrZSBhIHRleHQgbGluayovXG4udGV4dC1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBib3JkZXI6IDAgbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKkxpbmtzIGluIFJURSovXG4ucnRlIGEsXG4uc2hvcGlmeS1wb2xpY3lfX2NvbnRhaW5lciBhLFxuLnNob3BpZnktZW1haWwtbWFya2V0aW5nLWNvbmZpcm1hdGlvbl9fY29udGFpbmVyIGEge1xuICBjb2xvcjogJGNvbG9yTGluaztcbn1cbiIsImJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5idG4sXG4ucnRlIC5idG4sXG4uc2hvcGlmeS1wYXltZW50LWJ1dHRvbiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQge1xuICBsaW5lLWhlaWdodDogMS40MjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSA0cHgpO1xuICBmb250LXNpemU6IG1heChjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSA0cHgpLCAxM3B4KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYnRuUHJpbWFyeVBhZGRpbmc7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogOTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b25SYWRpdXMpO1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJ0blByaW1hcnk7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogJGJ0blByaW1hcnlQYWRkaW5nU21hbGw7XG4gICAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSA1cHgpO1xuICAgIGZvbnQtc2l6ZTogbWF4KGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDVweCksIDExcHgpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJ0blByaW1hcnk7XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGNvbG9yOiAkZGlzYWJsZWRHcmV5VGV4dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkR3JleVRleHQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgIH1cblxuICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRkaXNhYmxlZEJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZGlzYWJsZWRCb3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLypDdXN0b20gc2V0dGluZy1iYXNlZCBzdHlsZXMqL1xuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICB0cmFuc2Zvcm06c2tld1goLSRidXR0b25Ta2V3RGVnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogLTZweDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAtNnB4O1xuICAgIH1cblxuICAgICYuYnRuLS1zbWFsbCB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLypIb3ZlciBlZmZlY3Qgb24gbm9uLWFuZ2xlZCBidXR0b25zLiBNdXN0IG9ubHkgaGF2ZSAuYnRuIGNsYXNzKi9cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdzcXVhcmUnXSAmLFxuICBbZGF0YS1idXR0b25fc3R5bGVePSdyb3VuZCddICYge1xuICAgICY6bm90KC5idG4tLXNlY29uZGFyeSk6bm90KC5idG4tLXRlcnRpYXJ5KTpub3QoLmJ0bi0taW52ZXJzZSk6bm90KC5idG4tLWJvZHkpOm5vdCguYnRuLS1zdGF0aWMpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZSAwcztcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMTUwJTtcbiAgICAgICAgd2lkdGg6IDIwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMjBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsdHJhbnNwYXJlbnQsIHJnYmEoMjU1LDI1NSwyNTUsLjI1KSx0cmFuc3BhcmVudCk7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBhbmltYXRpb246IHNoaW5lIDAuNzVzIGN1YmljLWJlemllcigwLjAxLCAwLjU2LCAxLCAxKTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvckJ0blByaW1hcnlMaWdodDtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qTWltaWMgdGhlIC5idG4gaG92ZXIgc3R5bGUgZm9yIFNob3BpZnkgUGF5bWVudCBCdXR0b24qL1xuLnNob3BpZnktcGF5bWVudC1idXR0b24gLnNob3BpZnktcGF5bWVudC1idXR0b25fX2J1dHRvbi0tdW5icmFuZGVkOmhvdmVyOm5vdChbZGlzYWJsZWRdKSB7XG4gIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeTtcbn1cblxuLypNb3JlIHBheW1lbnQgb3B0aW9ucyBidXR0b24gY29sb3IqL1xuLnNob3BpZnktcGF5bWVudC1idXR0b25fX21vcmUtb3B0aW9ucyB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uYnRuLS1zZWNvbmRhcnksXG4ucnRlIC5idG4tLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JCb3JkZXI7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXIgMC4zcyBlYXNlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjNzIGVhc2U7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyIDAuM3MgZWFzZTtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi0tdGVydGlhcnksXG4ucnRlIC5idG4tLXRlcnRpYXJ5IHtcbiAgLypVbmRvIC5idG4gc3R5bGVzKi9cbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBpbml0aWFsO1xuXG4gIC8qTmV3IHN0eWxlcyovXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgcGFkZGluZzogJGZvcm1FbGVtZW50UGFkZGluZztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGNvbG9yOiAkZGlzYWJsZWRHcmV5VGV4dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkQm9yZGVyO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qRm9yY2Ugc2FtZSBjb2xvcnMgYXMgLmJ0biovXG4uYnRuLS10ZXJ0aWFyeS1hY3RpdmUge1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJ0blByaW1hcnk7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcbiAgfVxufVxuXG4vKkJ1dHRvbiB0aGF0IG1hdGNoZXMgYm9keSBiYWNrZ3JvdW5kKi9cbi5idG4tLWJvZHkge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cbn1cblxuLmJ0bi0tY2lyY2xlIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtaW4td2lkdGg6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICYgLmljb24ge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87IC8qZm9yIHBob3Rvc3dpcGUgY2xvc2UgYnV0dG9uKi9cbiAgfVxuXG4gICYuYnRuLS1sYXJnZSAuaWNvbiB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICB9XG5cbiAgJi5idG4tLWxhcmdlIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG5cbiAgLypVbmRvIGFuZ2xlZCBidXR0b24gc3R5bGVzIG9uIGNpcmNsZXMsIGJ1dCBrZWVwIGJvcmRlciovXG4gIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5idG4tLXNtYWxsIHtcbiAgcGFkZGluZzogOHB4IDE0cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDE1MCUgNDUlO1xuICBtaW4td2lkdGg6IDkwcHg7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gNnB4KTtcbiAgZm9udC1zaXplOiBtYXgoY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gNnB4KSwgMTJweCk7XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgfVxufVxuXG4uYnRuLS1zZWNvbmRhcnkuYnRuLS1zbWFsbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5idG4tLWxhcmdlIHtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xufVxuXG4uYnRuLS1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRidG5QcmltYXJ5UGFkZGluZztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMTNweCAyMHB4O1xuXG4gIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgbWF4LXdpZHRoOiA5NCU7XG4gIH1cbn1cblxuW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQge1xuICAgIG1heC13aWR0aDogOTQlO1xufVxuXG4uYnRuLS1pbnZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICBib3R0b206IC0ycHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZDtcbiAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8qU3BlY2lmaWMgY29sb3Igd2hlbiBpbiBhIGhlcm8qL1xuICBAbmVzdCAuaGVyb19fbGluayAmIHtcbiAgICBjb2xvcjogJGNvbG9ySGVyb1RleHQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JIZXJvVGV4dDtcblxuICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9ySGVyb1RleHQ7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYnRuLS1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeURpbTtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlEaW07XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJ0blByaW1hcnlEaW07XG4gICAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlEaW07XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDNweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGFuaW1hdGlvbjogc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5RGltO1xuICAgIH1cblxuICAgICYuYnRuLS1zZWNvbmRhcnk6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAxcHg7XG4gICAgfVxuICB9XG59XG5cbi8qQWx0IGxvYWRpbmcgc3RhdGUqL1xuLmJ0bi0tbG9hZGluZy5idG4tLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLnJldHVybi1saW5rIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxNXB4IDI1cHg7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogMjJweCAxN3B4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgfVxuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXItYnRuIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuICBAbWl4aW4gYWNjZW50Rm9udFN0YWNrO1xuICBAbWl4aW4gYWNjZW50Rm9udFNtYWxsU2l6ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNXB4IDEwcHggMTVweCAwO1xuXG4gIEBuZXN0IC5jb2xsZWN0aW9uLXNpZGViYXJfX2dyb3VwICYge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXItYnRuLS1ib3JkZXJzIHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxMnB4O1xuXG4gICYgLmNvbGxhcHNpYmxlLXRyaWdnZXJfX2ljb24ge1xuICAgIHJpZ2h0OiAxMnB4O1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAmIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uIHtcbiAgICAgIHJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5jb2xsYXBzaWJsZS1jb250ZW50ICsgJiB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgfVxuXG4gICYgKyAuY29sbGFwc2libGUtY29udGVudCAuY29sbGFwc2libGUtY29udGVudF9faW5uZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgcGFkZGluZzogMCAyMHB4IDIwcHg7XG4gICAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkqMC45Mik7XG4gIH1cblxuICAmICsgLmNvbGxhcHNpYmxlLWNvbnRlbnQtLWV4cGFuZGVkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgfVxuICB9XG59XG5cbi5jb2xsYXBzaWJsZS10cmlnZ2VyLWJ0bi0tYm9yZGVycy10b3Age1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEJ1dHRvbiBzdHlsZXMgd2hlbiBhZGRpdGlvbmFsIHF1aWNrIGNoZWNrb3V0IGJ1dHRvbnNcbiAgYXJlIGVuYWJsZWQgb24gcHJvZHVjdCBwYWdlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnNob3BpZnktcGF5bWVudC1idXR0b24ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uc2hvcGlmeS1wYXltZW50LWJ1dHRvbiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5wYXltZW50LWJ1dHRvbnMge1xuICAmIC5hZGQtdG8tY2FydCxcbiAgJiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbixcbiAgJiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQge1xuICAgIG1pbi1oZWlnaHQ6ICRidG5NaW5IZWlnaHRXaGVuUXVpY2tDaGVja291dDtcbiAgfVxufVxuXG4uYWRkLXRvLWNhcnQuYnRuLS1zZWNvbmRhcnkge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWRCb3JkZXI7XG5cbiAgICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWRCb3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaG9waWZ5LXBheW1lbnQtYnV0dG9uX19idXR0b24tLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsInN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4udmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBoZWlnaHQ6IDA7XG4gIGhlaWdodDogYXV0bztcblxuICAmIGlmcmFtZSxcbiAgJiB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4udmlkZW8td3JhcHBlci0tbW9kYWwge1xuICB3aWR0aDogMTAwMHB4O1xufVxuXG4uZ3JpZF9faW1hZ2UtcmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclNtYWxsSW1hZ2VCZztcblxuICAmIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICYuZ3JpZF9faW1hZ2UtY29udGFpbiB7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIC5wbGFjZWhvbGRlci1zdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuLmdyaWRfX2ltYWdlLXJhdGlvLS1vYmplY3Qge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZ3JpZF9faW1hZ2UtcmF0aW8tLXdpZGU6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLmdyaWRfX2ltYWdlLXJhdGlvLS1sYW5kc2NhcGU6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cblxuLmdyaWRfX2ltYWdlLXJhdGlvLS1zcXVhcmU6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG59XG5cbi5ncmlkX19pbWFnZS1yYXRpby0tcG9ydHJhaXQ6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDE1MCU7XG59XG5cbi5pbWFnZS1maXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlclwiO1xuICB6LWluZGV4OiAxO1xufVxuXG4ucGFyYWxsYXgtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0zMCU7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTYwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYXJhbGxheC1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNSU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDExMCU7XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuIiwiZm9ybSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmZvcm0tdmVydGljYWwge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gICYgbGFiZWwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLmlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gIGlucHV0LFxuICB0ZXh0YXJlYSxcbiAgc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG5idXR0b24sXG5pbnB1dCxcbnRleHRhcmVhIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5idXR0b24sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dCxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtRWxlbWVudFBhZGRpbmc7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG5cbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkQm9yZGVyO1xuICB9XG5cbiAgJi5pbnB1dC1mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG50ZXh0YXJlYSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBtYXJnaW46IDAgMTBweCAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGNoZWNrYm94O1xuICAtbW96LWFwcGVhcmFuY2U6IGNoZWNrYm94O1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHJhZGlvO1xuICAtbW96LWFwcGVhcmFuY2U6IHJhZGlvO1xufVxuXG5pbnB1dFt0eXBlPVwiaW1hZ2VcIl0ge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbnNlbGVjdCxcbi5mYXV4LXNlbGVjdCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nLXJpZ2h0OiAyOHB4O1xuICB0ZXh0LWluZGVudDogMC4wMXB4O1xuICB0ZXh0LW92ZXJmbG93OiAnJztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS11cmxJY29TZWxlY3QpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMHB4IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMXB4O1xuXG4gIEBuZXN0IC5pcy1saWdodCAmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS11cmxJY29TZWxlY3RXaGl0ZSk7XG4gIH1cbn1cblxuLmZhdXgtc2VsZWN0IC5pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTBweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDExcHg7XG4gIGhlaWdodDogMTFweDtcbn1cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLypGb3JjZSBvcHRpb24gY29sb3IgKGFmZmVjdHMgSUUgYW5kIHNvbWUgRmlyZWZveCB2ZXJzaW9ucykqL1xub3B0aW9uIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIGNvbG9yOiAjY2NjO1xuICB9XG59XG5cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oaWRkZW4tbGFiZWwge1xuICBAbWl4aW4gdmlzdWFsbHlIaWRkZW47XG59XG5cbmxhYmVsW2Zvcl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mb3JtLXZlcnRpY2FsIHtcbiAgJiBpbnB1dCxcbiAgJiBzZWxlY3QsXG4gICYgdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAmIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgJiBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICYgLmJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgJiAuYnRuOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuc21hbGwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gICYuZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogJGVycm9yUmVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRlcnJvclJlZEJnO1xuICAgIGNvbG9yOiAkZXJyb3JSZWQ7XG4gIH1cbn1cblxubGFiZWwuZXJyb3Ige1xuICBjb2xvcjogJGVycm9yUmVkO1xufVxuXG4uc2VsZWN0b3Itd3JhcHBlciB7XG4gICYgbGFiZWwge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuXG4gICYgKyAuc2VsZWN0b3Itd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cbiIsIi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgJiAuaW5wdXQtZ3JvdXAtZmllbGQ6Zmlyc3QtY2hpbGQsXG4gICYgLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCAuYnRuLFxuICAmIGlucHV0W3R5cGU9XCJoaWRkZW5cIl06Zmlyc3QtY2hpbGQgKyAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXM7XG4gIH1cblxuICAmIC5pbnB1dC1ncm91cC1maWVsZDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwO1xuICB9XG5cbiAgJiAuaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkIC5idG4sXG4gICYgaW5wdXRbdHlwZT1cImhpZGRlblwiXTpmaXJzdC1jaGlsZCArIC5pbnB1dC1ncm91cC1idG4gLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uUmFkaXVzKSAwIDAgdmFyKC0tYnV0dG9uUmFkaXVzKTtcbiAgfVxuXG4gICYgLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgdmFyKC0tYnV0dG9uUmFkaXVzKSB2YXIoLS1idXR0b25SYWRpdXMpIDA7XG4gIH1cblxuICAmIGlucHV0IHtcbiAgICAvKk5hc3R5IEZpcmVmb3ggaGFjayBmb3IgaW5wdXRzIGh0dHA6Ly9kYXZpZHdhbHNoLm5hbWUvZmlyZWZveC1idXR0b25zKi9cbiAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICB9XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIG1hcmdpbjogMDtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDsgLypmb3JjZXMgLmJ0biBmdWxsIGhlaWdodCovXG5cbiAgJiAuaWNvbiB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaXRpYWw7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOHB4O1xuICB9XG59XG4iLCIuaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuXG4gIEBuZXN0IC5uby1zdmcgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5zdmcsXG5zeW1ib2wge1xuICAmLmljb24ge1xuICAgICYgY2lyY2xlLFxuICAgICYgZWxsaXBzZSxcbiAgICAmIGcsXG4gICAgJiBsaW5lLFxuICAgICYgcGF0aCxcbiAgICAmIHBvbHlnb24sXG4gICAgJiBwb2x5bGluZSxcbiAgICAmIHJlY3Qge1xuICAgICAgZmlsbDogaW5oZXJpdDtcbiAgICAgIHN0cm9rZTogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuLyogT3ZlcnJpZGUgdGhlIGFib3ZlIGZvciBvdXIgc3Ryb2tlLW9ubHkgaWNvbnMgKi9cbnN2ZyB7XG4gICYuaWNvbi1jYXJ0LFxuICAmLmljb24tYmFnLFxuICAmLmljb24tYmFnLW1pbmltYWwsXG4gICYuaWNvbi1zZWFyY2gsXG4gICYuaWNvbi1jbG9zZSxcbiAgJi5pY29uLWNoZXZyb24tZG93bixcbiAgJi5pY29uLWVtYWlsLFxuICAmLmljb24tdXNlcixcbiAgJi5pY29uLWhhbWJ1cmdlcixcbiAgJi5pY29uLWZpbHRlcixcbiAgJi5pY29uLWdsb2JlLFxuICAmLmljb24tdHJ1Y2ssXG4gICYuaWNvbi1wYWNrYWdlLFxuICAmLmljb24tY2lyY2xlLWNoZWNrbWFyayxcbiAgJi5pY29uLWxlYWYsXG4gICYuaWNvbi1sb2NrLFxuICAmLmljb24tZ2lmdCxcbiAgJi5pY29uLXJpYmJvbixcbiAgJi5pY29uLXBob25lLFxuICAmLmljb24taGVhcnQsXG4gICYuaWNvbi1zaGllbGQsXG4gICYuaWNvbi10YWcsXG4gICYuaWNvbi1zaXplLWNoYXJ0LFxuICAmLmljb24tdGN3aS1iaWxscyxcbiAgJi5pY29uLXRjd2ktY2FsZW5kYXIsXG4gICYuaWNvbi10Y3dpLWNhcnQsXG4gICYuaWNvbi10Y3dpLWNoYXJpdHksXG4gICYuaWNvbi10Y3dpLWdlYXJzLFxuICAmLmljb24tdGN3aS1naWZ0LFxuICAmLmljb24tdGN3aS1nbG9iZSxcbiAgJi5pY29uLXRjd2ktb3Blbi1lbnZlbG9wZSxcbiAgJi5pY29uLXRjd2ktcGFja2FnZSxcbiAgJi5pY29uLXRjd2ktcGxhbnQsXG4gICYuaWNvbi10Y3dpLXJlY3ljbGUsXG4gICYuaWNvbi10Y3dpLXJpYmJvbixcbiAgJi5pY29uLXRjd2ktc2FsZXMtdGFnLFxuICAmLmljb24tdGN3aS1zaGllbGQsXG4gICYuaWNvbi10Y3dpLXN0b3B3YXRjaCxcbiAgJi5pY29uLXRjd2ktc3RvcmUsXG4gICYuaWNvbi10Y3dpLXRodW1icy11cCxcbiAgJi5pY29uLXRjd2ktdHJvcGh5LFxuICAmLmljb24tdGN3aS10cnVjayxcbiAgJi5pY29uLXRjd2ktd2FsbGV0LFxuICAmLmljb24tdGN3aS1jaGF0LFxuICAmLmljb24tdGN3aS1waG9uZSB7XG4gICAgJiBjaXJjbGUsXG4gICAgJiBlbGxpcHNlLFxuICAgICYgZyxcbiAgICAmIGxpbmUsXG4gICAgJiBwYXRoLFxuICAgICYgcG9seWdvbixcbiAgICAmIHBvbHlsaW5lLFxuICAgICYgcmVjdCB7XG4gICAgICBmaWxsOiBub25lO1xuICAgICAgc3Ryb2tlLXdpZHRoOiB2YXIoLS1pY29uV2VpZ2h0KTtcbiAgICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgICAgc3Ryb2tlLWxpbmVjYXA6IHZhcigtLWljb25MaW5lY2Fwcyk7XG4gICAgICBzdHJva2UtbGluZWpvaW46IHZhcigtLWljb25MaW5lY2Fwcyk7XG4gICAgfVxuICB9XG59XG5cbnN2Zy5pY29uLWNhcnQgY2lyY2xlIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4uaWNvbl9fZmFsbGJhY2stdGV4dCB7XG4gIEBtaXhpbiB2aXN1YWxseUhpZGRlbjtcbn1cbiIsIi5qcy1kcmF3ZXItb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5kcmF3ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG1heC13aWR0aDogOTUlO1xuICB6LWluZGV4OiAkemluZGV4RHJhd2VyO1xuICBjb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRHJhd2VycztcbiAgYm94LXNoYWRvdzogMCAwIDE1MHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG5cbiAgLyogQWxsb3cgd2hvbGUgZHJhd2VyIHRvIGJlIHNjcm9sbGFibGUgb24gc2hvcnQgc2NyZWVuc1xuICAgICB0eXBpY2FsbHkgd2hlbiBBbmRyb2lkIGtleWJvYXJkIGlzIG9wZW4qL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogJGZpeGVkSGVpZ2h0TGltaXQpIHtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuXG4gICAgJiAuZHJhd2VyX19jb250ZW50cyB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJiBhOm5vdCguYnRuKSB7XG4gICAgY29sb3I6ICRjb2xvckRyYXdlclRleHQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3JEcmF3ZXJUZXh0O1xuICAgIH1cbiAgfVxuXG4gICYgaW5wdXQsXG4gICYgdGV4dGFyZWEge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICB9XG5cbiAgJiAuYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JEcmF3ZXJCdXR0b247XG4gICAgY29sb3I6ICRjb2xvckRyYXdlckJ1dHRvblRleHQ7XG4gIH1cbn1cblxuLmRyYXdlci0tbGVmdCB7XG4gIHdpZHRoOiAkZHJhd2VyTmF2V2lkdGg7XG4gIGxlZnQ6IC0kZHJhd2VyTmF2V2lkdGg7XG5cbiAgJi5kcmF3ZXItLWlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkZHJhd2VyTmF2V2lkdGgpO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNDVzO1xuICB9XG59XG5cbi5kcmF3ZXItLXJpZ2h0IHtcbiAgd2lkdGg6ICRkcmF3ZXJDYXJ0V2lkdGg7XG4gIHJpZ2h0OiAtJGRyYXdlckNhcnRXaWR0aDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgd2lkdGg6ICRkcmF3ZXJDYXJ0V2lkdGhMYXJnZTtcbiAgICByaWdodDogLSRkcmF3ZXJDYXJ0V2lkdGhMYXJnZTtcbiAgfVxuXG4gICYuZHJhd2VyLS1pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRkcmF3ZXJDYXJ0V2lkdGgpO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNDVzO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kZHJhd2VyQ2FydFdpZHRoTGFyZ2UpO1xuICAgIH1cbiAgfVxufVxuXG4uanMtZHJhd2VyLW9wZW4gLm1haW4tY29udGVudDphZnRlcixcbi5qcy1kcmF3ZXItY2xvc2luZyAubWFpbi1jb250ZW50OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yTW9kYWxCZztcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogJHppbmRleERyYXdlck92ZXJsYXk7XG59XG5cbi5qcy1kcmF3ZXItb3BlbiAubWFpbi1jb250ZW50OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBvdmVybGF5LW9uIDAuMzVzIGZvcndhcmRzO1xufVxuXG4uanMtZHJhd2VyLWNsb3NpbmcgLm1haW4tY29udGVudDphZnRlciB7XG4gIGFuaW1hdGlvbjogb3ZlcmxheS1vZmYgMC4yNXMgZm9yd2FyZHM7XG59XG5cbi5kcmF3ZXJfX2hlYWRlcixcbi5kcmF3ZXJfX2ZpeGVkLWhlYWRlcixcbi5kcmF3ZXJfX3Njcm9sbGFibGUsXG4uZHJhd2VyX19mb290ZXIge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWRyYXdlci1ndXR0ZXIpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcbn1cblxuLmRyYXdlcl9faGVhZGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1pbi1oZWlnaHQ6ICRkcmF3ZXJIZWFkZXJIZWlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyLjYpIDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xufVxuXG4uZHJhd2VyX19maXhlZC1oZWFkZXIge1xuICBtaW4taGVpZ2h0OiAkZHJhd2VySGVhZGVySGVpZ2h0O1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLypmb3IgY2xvc2UgYnV0dG9uIGhpdCBhcmVhKi9cbn1cblxuLmRyYXdlcl9faGVhZGVyLFxuLmRyYXdlcl9fZml4ZWQtaGVhZGVyIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5kcmF3ZXJfX2hlYWRlcixcbiAgLmRyYXdlcl9fZml4ZWQtaGVhZGVyIHtcbiAgICBtaW4taGVpZ2h0OiAkZHJhd2VySGVhZGVySGVpZ2h0TGFyZ2U7XG4gIH1cbn1cblxuLmRyYXdlcl9fdGl0bGUsXG4uZHJhd2VyX19jbG9zZSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5kcmF3ZXJfX3RpdGxlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5kcmF3ZXJfX2Nsb3NlIHtcbiAgd2lkdGg6IDElO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qQnV0dG9uIHNpdHMgb24gcmlnaHQgYnkgZGVmYXVsdCovXG4uZHJhd2VyX19jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgcmlnaHQ6IGNhbGModmFyKC0tZHJhd2VyLWd1dHRlcikgKiAtMSk7XG4gIHBhZGRpbmc6IDAgdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICY6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JEcmF3ZXJzRGltO1xuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIHdpZHRoOiAyOHB4O1xuICB9XG59XG5cbi8qUmFyZSB1c2UgY2FzZSBsZWZ0IGNsb3NlIGJ1dHRvbiovXG4uZHJhd2VyX19jbG9zZS0tbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgJiAuZHJhd2VyX19jbG9zZS1idXR0b24ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGNhbGModmFyKC0tZHJhd2VyLWd1dHRlcikgKiAtMSk7XG4gIH1cbn1cblxuLmRyYXdlcl9fY29udGVudHMge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5kcmF3ZXJfX2lubmVyLFxuLmRyYXdlcl9fc2Nyb2xsYWJsZSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi5kcmF3ZXJfX3Njcm9sbGFibGUge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLmRyYXdlcl9fZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3JEcmF3ZXJCb3JkZXI7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWRyYXdlci1ndXR0ZXIpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyIC8gMS4zNSk7XG4gIH1cbn1cblxuLmRyYXdlcl9faW5uZXIuaXMtbG9hZGluZyB7XG4gICYgLmRyYXdlcl9fc2Nyb2xsYWJsZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMC43cztcbiAgICBvcGFjaXR5OiAwLjQ7XG4gIH1cbn1cblxuLmNhcnQtbm90ZXMge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBtaW4taGVpZ2h0OiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICB9XG59XG4iLCIucGxhY2Vob2xkZXItc3ZnIHtcbiAgZmlsbDogIzk5OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZTFlMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMzBweCAwO1xufVxuXG4ucGxhY2Vob2xkZXItbm9ibG9ja3Mge1xuICBwYWRkaW5nOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qUGxhY2Vob2xkZXIgYW5pbWF0aW9uIGZvciBsb2FkaW5nIHByb2R1Y3QgZm9ybSovXG4ucGxhY2Vob2xkZXItY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItc2hpbW1lciAxLjNzIGxpbmVhciBpbmZpbml0ZTtcbiAgYmFja2dyb3VuZC1zaXplOiA0MDAlIDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIkBtaXhpbiBhbmltYXRpb24tZGVsYXkgMjA7XG5AbWl4aW4gYXBwZWFyLWRlbGF5IDIwO1xuXG4uYW5pbWF0aW9uLWNyb3BwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbn1cblxuLmltYWdlLXdyYXAge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JTbWFsbEltYWdlQmc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmltYWdlLXdyYXAge1xuICAmIHN2ZyxcbiAgJiAuYW5pbWF0ZS1tZSB7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIEBuZXN0IC5uby1qcyAmIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5hb3MtYW5pbWF0ZSAuaW1hZ2Utd3JhcCB7XG4gICYgc3ZnLFxuICAmIC5hbmltYXRlLW1lIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB9XG59XG5cbi5pbWFnZS13cmFwIGltZyB7XG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi0zXCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCgzbisyKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDE1MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTNcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDNuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMzAwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNFwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNG4rMikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxMjBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi00XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg0biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDI0MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTRcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDRuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMzYwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rMikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiA3NW1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTVcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDVuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rNCkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyMjVtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi01XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg1bis1KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDMwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogNTBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDEwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNlwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNm4rNSkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2bis2KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDI1MG1zO1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWltYWdlIHtcbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTNcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDNuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtM1wiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoM24rMykgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi00XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg0bisyKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDEyMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTRcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDRuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMjQwbXM7XG4gIH1cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTRcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDRuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMzYwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rMikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiA3NW1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTVcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDVuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rNCkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyMjVtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi01XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg1bis1KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDMwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogNTBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDEwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNlwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNm4rNSkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2bis2KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDI1MG1zO1xuICB9XG59XG5cbi5sb2FkaW5nOmFmdGVyLFxuLmxvYWRpbmc6YmVmb3JlLFxuLnVubG9hZDpiZWZvcmUsXG4udW5sb2FkOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZDogJGNvbG9yQm9keTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luOiAtMXB4IDAgMCAtNTBweDtcbiAgei1pbmRleDogJHotaW5kZXgtbG9hZGVyO1xuICBvcGFjaXR5OiAwO1xuXG4gIEBuZXN0IC5uby1qcyAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5sb2FkaW5nOmJlZm9yZSxcbi51bmxvYWQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yVGV4dEJvZHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sb2FkaW5nOmFmdGVyLFxuLnVubG9hZDphZnRlciB7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogcHJlbG9hZGluZyAwLjVzIGVhc2UgMC4zcyBpbmZpbml0ZTtcbn1cblxuLmxvYWRpbmctLWRlbGF5ZWQ6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjhzICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXMgIWltcG9ydGFudDtcbn1cblxuLmxvYWRpbmctLWRlbGF5ZWQ6YWZ0ZXIge1xuICBhbmltYXRpb24tZGVsYXk6IDEuM3MgIWltcG9ydGFudDtcbn1cblxuLypEZWxheSBhbmltYXRpb25zLCB1c2VkIGluIGRyYXdlcnMqL1xuLmFwcGVhci1hbmltYXRpb24ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjBweCk7XG5cbiAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uanMtZHJhd2VyLW9wZW4gLmFwcGVhci1hbmltYXRpb24ge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbn1cblxuLmpzLWRyYXdlci1jbG9zaW5nIC5hcHBlYXItYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuNXM7XG59XG4iLCJ0b29sLXRpcFtkYXRhLXRvb2wtdGlwLW9wZW49XCJ0cnVlXCJdIC50b29sLXRpcF9faW5uZXIge1xuICBwYWRkaW5nOiA0NXB4O1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmc6IDQ1cHggMjBweCAyMHB4O1xuICB9XG59XG5cbi50b29sLXRpcF9fY2xvc2Uge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuIiwiW2RhdGEtY2VudGVyLXRleHQ9XCJjZW50ZXJcIl0gcHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNbZGF0YS1pbnRlbnQ9XCJjb21wbGVtZW50YXJ5XCJdIHtcblxuICAmIC5ncmlkLXByb2R1Y3RfX2NvbG9ycyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG4iLCJwcmVkaWN0aXZlLXNlYXJjaCB7XG4gICYgLnNlYXJjaF9fcmVzdWx0cyB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMzBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgZm9ybSB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW46IDAgMTBweCAwIDIwcHg7XG4gICAgfVxuICB9XG59XG4iLCIuZm9vdGVyLXByb21vdGlvbnMge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiAuZ3JpZF9faXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1mb290ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogJGd1dHRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRm9vdGVyO1xuICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoJGd1dHRlciAqIDIpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCRndXR0ZXIgKiAyKTtcbiAgfVxuXG4gICYgLmZvb3Rlcl9fY29sbGFwc2libGUge1xuICAgIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIH1cblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgJiB0ZXh0YXJlYSxcbiAgICAmIHNlbGVjdCxcbiAgICAmIGlucHV0IHtcbiAgICAgIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgJiAuZ3JpZF9faXRlbSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgICAgICAgb3BhY2l0eTogMC4xMjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiBidXR0b24uZm9vdGVyX190aXRsZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgfVxufVxuXG4uZm9vdGVyX19zbWFsbC10ZXh0IHtcbiAgQG1peGluIGJhc2VFeHRyYVNtYWxsRm9udFN0YWNrO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyA0KSAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBAbmVzdCB1bCArICYge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4uZm9vdGVyX19jbGVhciB7XG4gIGNsZWFyOiBib3RoO1xuICBoZWlnaHQ6ICRndXR0ZXI7XG59XG5cbi5mb290ZXJfX3NlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogJGd1dHRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmZvb3Rlcl9faXRlbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCRndXR0ZXIgKiAyKTtcbiAgfVxufVxuXG4uZm9vdGVyX190aXRsZSB7XG4gIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuICB9XG59XG5cbi5zaXRlLWZvb3Rlcl9fbGlua2xpc3Qge1xuICBtYXJnaW46IDA7XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgfVxufVxuXG4uZm9vdGVyX19uZXdzbGV0dGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZm9vdGVyX19uZXdzbGV0dGVyLWlucHV0IHtcbiAgcGFkZGluZzogMTBweCA0NXB4IDEwcHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRm9vdGVyO1xuICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbmV3c2xldHRlci1pbnB1dC0tYWN0aXZlIHtcbiAgcGFkZGluZy1yaWdodDogODBweDtcbn1cblxuLmZvb3Rlcl9fbmV3c2xldHRlci1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgcGFkZGluZzogMDtcblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogMjZweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gIH1cblxuICBAbmVzdCAuZm9vdGVyX19uZXdzbGV0dGVyLWlucHV0LS1hY3RpdmUgKyAmIHtcbiAgICAmIC5pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAuZm9vdGVyX19uZXdzbGV0dGVyLWJ0bi1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlcl9fbmV3c2xldHRlci1idG4tbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xufVxuXG4uZm9vdGVyX19sb2dvIHtcbiAgbWFyZ2luOiBjYWxjKCRndXR0ZXIgLyAyKSAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDAgMCBjYWxjKCRndXR0ZXIgLyAxLjUpO1xuICB9XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmZvb3Rlcl9fc29jaWFsIHtcbiAgbWFyZ2luOiAwO1xuXG4gIEBuZXN0IGZvcm0gKyAmIHtcbiAgICBtYXJnaW4tdG9wOiAkZ3V0dGVyO1xuICB9XG5cbiAgJiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAxNXB4IDE1cHggMDtcbiAgfVxuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDIycHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICB9XG5cbiAgICAmLmljb24tLXdpZGUge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgfVxuICB9XG59XG5cbi8qQ29sbGFwc2libGUgYnV0dG9ucyovXG4uZm9vdGVyX19jb2xsYXBzaWJsZSB7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmc6IDAgMCBjYWxjKCRndXR0ZXIgLyAyKSAwO1xuICB9XG59XG5cbi5mb290ZXJfY29sbGFwc2libGUtLWRpc2FibGVkIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS1jb250ZW50X19pbm5lciBwIHtcbiAgJiBhOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMnB4O1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC41cyBlYXNlO1xuICB9XG5cbiAgJiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yRm9vdGVyVGV4dEFscGhhMDEpO1xuXG4gICAgJjpob3ZlcjphZnRlcixcbiAgICAmOmZvY3VzOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1mb290ZXIge1xuICAmIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tdXJsSWNvU2VsZWN0Rm9vdGVyKTtcbiAgfVxufVxuXG4ucGF5bWVudC1pY29ucyB7XG4gIEBtaXhpbiBiYXNlVGV4dENlbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcblxuICAmIGxpIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgbWFyZ2luOiAwIDRweCAwO1xuICB9XG59XG5cbi5mb290ZXJfX2ZvbGxvdy1vbi1zaG9wIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG4gIH1cbn1cbiIsIi5ub3RlLFxuLmVycm9ycyB7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgJiB1bCxcbiAgJiBvbCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiBsaTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ub3RlIHtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG59XG5cbi5lcnJvcnMge1xuICAmIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBkaXNjIG91dHNpZGU7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIH1cbn1cblxuLm5vdGUtLXN1Y2Nlc3Mge1xuICBjb2xvcjogJHN1Y2Nlc3NHcmVlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN1Y2Nlc3NHcmVlbkJnO1xuICBib3JkZXItY29sb3I6ICRzdWNjZXNzR3JlZW47XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogJHN1Y2Nlc3NHcmVlbjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1lcnJvcixcbi5lcnJvcnMge1xuICBjb2xvcjogJGVycm9yUmVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3JSZWRCZztcbiAgYm9yZGVyLWNvbG9yOiAkZXJyb3JSZWQ7XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogJGVycm9yUmVkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogMikgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gICYgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgJiBhLFxuICAmIC5wYWdlLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICB9XG5cbiAgJiAucGFnZS5jdXJyZW50IHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gIH1cblxuICAmIC5uZXh0LFxuICAmIC5wcmV2IHtcbiAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcbiAgICB3aWR0aDogNDNweDtcbiAgICBtYXJnaW46IDAgMTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgfVxuXG4gICAgJiBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgIH1cblxuICAgICYgLmljb24ge1xuICAgICAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG5cbiAgICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnJ0ZSB7XG4gIEBtaXhpbiBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gNCk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiArIC5ydGUge1xuICAgIG1hcmdpbi10b3A6ICRndXR0ZXI7XG4gIH1cblxuICAmIHAsXG4gICYgdWwsXG4gICYgb2wsXG4gICYgdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgdWwge1xuICAgICYgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvKkFkZCBzb21lIHRvcCBtYXJnaW4gdG8gaGVhZGVycyBmcm9tIHRoZSByaWNoIHRleHQgZWRpdG9yKi9cblxuICAmIGgxLCAmIGgyLCAmIGgzLCAmIGg0LCAmIGg1LCAmIGg2IHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cblxuICAmIGgxLCAmIGgyLCAmIGgzLCAmIGg0LCAmIGg1LCAmIGg2IHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgJiBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvKkluIGNhc2UgbWVyY2hhbnRzIHBhc3RlIG1ldGEgdGFncyBpbnRvIHRoZWlyIGNvbnRlbnQgYnkgYWNjaWRlbnQqL1xuXG4gICYgbWV0YTpmaXJzdC1jaGlsZCB7XG4gICAgJiArIGgxLCAmICsgaDIsICYgKyBoMywgJiArIGg0LCAmICsgaDUsICYgKyBoNiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgPiBkaXYge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYgdGFibGUge1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cbn1cblxuLnJ0ZS0tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB9XG59XG5cbi5ydGUtc2V0dGluZyB7XG4gICYgPiBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnJ0ZSxcbi5ydGUtc2V0dGluZyB7XG4gICYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJiBpbWcge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gICYgYTpub3QoLnJ0ZV9faW1hZ2UpOm5vdCguYnRuKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5QWxwaGEwMTUpO1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoY3VycmVudENvbG9yLCBjdXJyZW50Q29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBib3R0b207XG4gICAgYmFja2dyb3VuZC1zaXplOiAwJSAycHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIDAuNXMgZWFzZTtcbiAgfVxuICBcbiAgJiBhOm5vdCgucnRlX19pbWFnZSk6bm90KC5idG4pOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMnB4O1xuICB9XG5cbiAgJiBhOm5vdCguYnRuKSB7XG4gICAgJjpob3ZlcjphZnRlcixcbiAgICAmOmZvY3VzOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gICYgYS5ydGVfX2ltYWdlOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG5cbi50ZXh0LWNlbnRlciAucnRlLFxuLnRleHQtY2VudGVyLnJ0ZSB7XG4gICYgdWwsXG4gICYgb2wge1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4ucnRlLS1ub21hcmdpbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ydGUgYixcbi5ydGUgc3Ryb25nLFxuLnJ0ZS1zZXR0aW5nIGIsXG4ucnRlLXNldHRpbmcgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4iLCIuaGVhZGVyLWxheW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmhlYWRlci1sYXlvdXQtLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5oZWFkZXItaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDEgMSBhdXRvO1xufVxuXG4uaGVhZGVyLWl0ZW0tLWxvZ28ge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmhlYWRlci1pdGVtLS1pY29ucyB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGZsZXg6IDAgMSBhdXRvO1xufVxuXG4vKlNhbWUgZGVmYXVsdCBsb2dvIGFuZCBpY29uIGNvbnRhaW5lciBzaXplLCBsb2dvIGJsb2NrIHdpZHRoIG92ZXJyaWRlcyovXG4uaGVhZGVyLWxheW91dC0tbGVmdC1jZW50ZXIge1xuICAmIC5oZWFkZXItaXRlbS0tbG9nbyxcbiAgJiAuaGVhZGVyLWl0ZW0tLWljb25zIHtcbiAgICBmbGV4OiAwIDAgMjAwcHg7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtaW4td2lkdGg6IDEzMHB4OyAvKmFwcHJveCB3aWR0aCBvZiAyIGljb25zKi9cbiAgICB9XG4gIH1cbn1cblxuLmhlYWRlci1sYXlvdXRbZGF0YS1sb2dvLWFsaWduPVwiY2VudGVyXCJdIHtcbiAgJiAuaGVhZGVyLWl0ZW0tLWxvZ28ge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbjogMCAzMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgLmhlYWRlci1pdGVtLS1uYXZpZ2F0aW9uLFxuICAmIC5oZWFkZXItaXRlbS0taWNvbnMge1xuICAgIGZsZXg6IDEgMSAxMzBweDsgLyphcHJveCB3aWR0aCBvZiAyIGljb25zKi9cbiAgfVxufVxuXG4uaGVhZGVyLWxheW91dFtkYXRhLWxvZ28tYWxpZ249XCJsZWZ0XCJdIHtcbiAgJiAuc2l0ZS1oZWFkZXJfX2xvZ28ge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygkZ3V0dGVyIC8gMyk7XG4gIH1cbn1cblxuLmhlYWRlci1pdGVtLS1sb2dvLXNwbGl0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDEgMSAxMDAlO1xuXG4gICYgLmhlYWRlci1pdGVtOm5vdCguaGVhZGVyLWl0ZW0tLWxvZ28pIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxleDogMSAxIDIwJTtcbiAgfVxufVxuXG4uaGVhZGVyLWl0ZW0tLXNwbGl0LWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4vKkljb24gYWxpZ25tZW50Ki9cbi5oZWFkZXItaXRlbS0tbGVmdCB7XG4gICYgLnNpdGUtbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogLSRzaXRlTmF2SWNvblBhZGRpbmc7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0kc2l0ZU5hdkl0ZW1QYWRkaW5nIC8gMik7XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItaXRlbS0taWNvbnMge1xuICAmIC5zaXRlLW5hdiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJHNpdGVOYXZJY29uUGFkZGluZztcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0kc2l0ZU5hdkl0ZW1QYWRkaW5nIC8gMik7XG4gICAgfVxuICB9XG59XG4iLCIuc2l0ZS1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDdweCAwO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JOYXY7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6IDIwcHggMDtcblxuICAgIEBuZXN0IC50b29sYmFyICsgLmhlYWRlci1zdGlja3ktd3JhcHBlciAmIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9ySGVhZGVyVGV4dEFscGhhMDEpO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXItLXN0dWNrIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgei1pbmRleDogJHotaW5kZXgtc3R1Y2staGVhZGVyO1xuXG4gIC8qUmVhcnJhbmdlbWVudCBmb3Igd2hlbiB0b3Agc2VhcmNoIGRyYXdlciBpcyBvcGVuIHNvIG5hdiBpcyBhYm92ZSBvdmVybGF5Ki9cbiAgQG5lc3QgLmpzLWRyYXdlci1vcGVuLS1zZWFyY2ggJiB7XG4gICAgei1pbmRleDogJHotaW5kZXgtaGVhZGVyLXNlYXJjaDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gIH1cbn1cblxuLypEaXNhYmxlIHN0aWNreSBoZWFkZXIgb24gc2hvcnQgYW5kIHdpZGUgc2NyZWVucyovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtaGVpZ2h0OiA1NTBweCkge1xuICAuc2l0ZS1oZWFkZXItLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlci0tb3BlbmluZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG59XG5cbi5zaXRlLWhlYWRlcl9fbG9nbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiBjYWxjKCRndXR0ZXIgLyAzKSAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAzMHB4OyAvKndoZW4gbm8gaW1hZ2UqL1xuICB6LWluZGV4OiBjYWxjKCR6aW5kZXhOYXZEcm9wZG93bnMgKyAxKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbjogY2FsYygkZ3V0dGVyIC8gMykgYXV0bztcbiAgICB9XG4gIH1cblxuICBAbmVzdCAuaGVhZGVyLWxheW91dFtkYXRhLWxvZ28tYWxpZ249XCJjZW50ZXJcIl0gJiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICYgYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiBhLFxuICAmIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBuZXN0IC5zaXRlLWhlYWRlciAmIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fbG9nby1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogJGNvbG9yTmF2VGV4dDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yTmF2VGV4dDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi8qU3RpY2t5IGhlYWRlciBvbiB0b3Agb2YgaW1hZ2Uvc2xpZGVzaG93Ki9cbi5oZWFkZXItc3RpY2t5LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6ICR6LWluZGV4LWhlYWRlci1zZWFyY2g7XG5cbiAgLyogVXBkYXRlIHdoZW4gZHJhd2VyIGlzIG9wZW4gKi9cbiAgQG5lc3QgLmpzLWRyYXdlci1vcGVuOm5vdCguanMtZHJhd2VyLW9wZW4tLXNlYXJjaCkgJiB7XG4gICAgei1pbmRleDogJHotaW5kZXgtc3RpY2t5LWhlYWRlcjtcbiAgfVxufVxuXG4uaGVhZGVyLXdyYXBwZXItLXN0aWNreSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogJHotaW5kZXgtc3RpY2t5LWhlYWRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLDAsMCwwLjMpIDAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7XG5cbiAgJiAuc2l0ZS1oZWFkZXI6bm90KC5zaXRlLWhlYWRlci0tc3R1Y2spIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgLypSZWFycmFuZ2VtZW50IGZvciB3aGVuIHRvcCBzZWFyY2ggZHJhd2VyIGlzIG9wZW4gc28gbmF2IGlzIGFib3ZlIG92ZXJsYXkqL1xuICBAbmVzdCAuanMtZHJhd2VyLW9wZW4tLXNlYXJjaCAmIHtcbiAgICB6LWluZGV4OiAkei1pbmRleC1oZWFkZXItc2VhcmNoO1xuICB9XG59XG4iLCIuc2l0ZS1oZWFkZXJfX3NlYXJjaC1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDIwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogJHotaW5kZXgtaGVhZGVyLXNlYXJjaDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYm90dG9tOiAwO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fc2VhcmNoIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6ICR6LWluZGV4LWhlYWRlci1zZWFyY2g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTExMCUsIDApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIGJveC1zaGFkb3c6IDAgMTVweCA0NXB4IHJnYigwLCAwLCAwLCAwLjEpO1xuXG4gICYgLnBhZ2Utd2lkdGgge1xuICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLmlzLWFjdGl2ZSAmIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fc2VhcmNoLWlucHV0IHtcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwcHg7IC8qZmxleGJveCBvdmVycmlkZXMsIGJ1dCBmaXhlcyBicm93c2VyIGlzc3VlcyovXG4gIGZsZXg6IDEgMSBhdXRvO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlcjogMDtcbiAgICBvdXRsaW5lOiAwOyAvKm9ubHkgYWN0aXZlIGVsZW1lbnQgb24gdGhlIHBhZ2UsIHNvIHRoaXMgaXMgYWNjZXB0YWJsZSovXG4gIH1cbn1cblxuLypTdWJtaXQgYW5kIGNhbmNlbCBidXR0b25zKi9cbi5zaXRlLWhlYWRlcl9fc2VhcmNoLWJ0biB7XG4gIHBhZGRpbmc6IDAgY2FsYygkZ3V0dGVyIC8gMik7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLnNpdGUtaGVhZGVyX19zZWFyY2gtYnRuLS1zdWJtaXQge1xuICAgIHBhZGRpbmc6IDAgY2FsYygkZ3V0dGVyIC8gMikgMCAwO1xuXG4gICAgJiAuaWNvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICB3aWR0aDogMjhweDtcbiAgICAgIGhlaWdodDogMjhweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5wcmVkaWN0aXZlLXJlc3VsdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgbWF4LWhlaWdodDogNzB2aDtcbiAgbWF4LWhlaWdodDogY2FsYyg5MHZoIC0gMTAwJSk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDkpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwJSAtIDMzcHgpOyAvKnNlYXJjaCBiYXIgKyB0b29sYmFyKi9cbiAgfVxufVxuXG4ucHJlZGljdGl2ZV9fbGFiZWwge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLypMYXlvdXQgZm9yIGFydGljbGUvaW1hZ2VzKi9cbiRwcmVkaWN0aXZlR2FwOiAxMHB4O1xuLnByZWRpY3RpdmUtcmVzdWx0X19sYXlvdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRwcmVkaWN0aXZlR2FwO1xuICBtYXJnaW4tbGVmdDogLSRwcmVkaWN0aXZlR2FwO1xuICBtYXJnaW4tcmlnaHQ6IC0kcHJlZGljdGl2ZUdhcDtcblxuICAmID4gZGl2IHtcbiAgICBtYXJnaW46IDAgJHByZWRpY3RpdmVHYXAgJGd1dHRlcjtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgW2RhdGEtdHlwZS1wcm9kdWN0c10ge1xuICAgIGZsZXg6IDEgMSA2MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1ndXR0ZXItc21hbGw7XG5cbiAgICAgIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGdyaWQtZ3V0dGVyLXNtYWxsO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLmdyaWQtcHJvZHVjdF9faW1hZ2Uge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmIFtkYXRhLXR5cGUtY29sbGVjdGlvbnNdLFxuICAmIFtkYXRhLXR5cGUtcGFnZXNdIHtcbiAgICBmbGV4OiAxIDEgMjAwcHg7XG4gIH1cblxuICAmIFtkYXRhLXR5cGUtYXJ0aWNsZXNdIHtcbiAgICBmbGV4OiAxIDEgNjAlO1xuXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19saW5rLS1pbmxpbmUge1xuICAgICAgZ2FwOiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucHJlZGljdGl2ZV9faW1hZ2Utd3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuXG4gICYgaW1nIHtcbiAgICBvYmplY3QtcG9zaXRpb246IDUwJSAwO1xuICB9XG59XG5cbi5wcmVkaWN0aXZlLXJlc3VsdHNfX2Zvb3RlciB7XG4gIHBhZGRpbmc6IDAgMCAzMHB4O1xufVxuIiwiLnNlYXJjaC1iYXIge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5zZWFyY2gtYmFyLS1wYWdlIHtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgbWFyZ2luLXRvcDogY2FsYygtJGd1dHRlciAvIDIpO1xuXG4gIEBuZXN0IFtkYXRhLXR5cGVfaGVhZGVyc19hbGlnbl90ZXh0PVwiY2VudGVyXCJdICYge1xuICAgIG1hcmdpbjogY2FsYygtJGd1dHRlciAvIDIpIGF1dG8gMDtcbiAgfVxufVxuXG4uc2VhcmNoLWJhci0tZHJhd2VyIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JEcmF3ZXJCb3JkZXI7XG5cbiAgJiBpbnB1dCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi5zZWFyY2gtYmFyIC5pY29uIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbiIsIi50b29sYmFyIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yTmF2O1xuICBjb2xvcjogJGNvbG9yTmF2VGV4dDtcbiAgQG1peGluIGJhc2VTbWFsbEZvbnRTdGFjaztcblxuICAmIGEge1xuICAgIGNvbG9yOiAkY29sb3JOYXZUZXh0O1xuICB9XG5cbiAgLypEbyBub3Qgc2hvdyBpbiBzdGlja3kgaGVhZGVyKi9cbiAgQG5lc3QgLnNpdGUtaGVhZGVyLS1zdHVjayAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b29sYmFyLS10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG4gIH1cblxuICAmIC50b29sYmFyX19jb250ZW50IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xuICB9XG59XG5cbi50b29sYmFyX19jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnRvb2xiYXJfX2l0ZW0ge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgcGFkZGluZzogMCA1cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgJiBzZWxlY3QsXG4gICYgLmZhdXgtc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZy10b3A6IDVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICB9XG59XG5cbi50b29sYmFyX19pdGVtLS1tZW51IHtcbiAgZmxleDogMSAxIGF1dG87XG59XG5cbi50b29sYmFyX19tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLSRndXR0ZXIgLyAzKTsgLyplcXVpdmFsZW50IG9mIGEgcGFkZGluZyovXG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA1cHggY2FsYygkZ3V0dGVyIC8gMyk7XG4gIH1cbn1cblxuLnRvb2xiYXJfX3NvY2lhbCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogNXB4O1xuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gIH1cbn1cbiIsIi5zZWN0aW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206ICRzZWN0aW9uSGVhZGVyQm90dG9tU21hbGw7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRzZWN0aW9uSGVhZGVyQm90dG9tO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtdHlwZV9oZWFkZXJzX2FsaWduX3RleHQ9XCJjZW50ZXJcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJiBzZWxlY3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlci0tZmx1c2gge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2VjdGlvbi1oZWFkZXItLXdpdGgtbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJiBzZWxlY3Qge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlci0taGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIDEwMCU7XG4gIGNvbG9yOiAkY29sb3JIZXJvVGV4dDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAmIGEge1xuICAgIGNvbG9yOiAkY29sb3JIZXJvVGV4dDtcbiAgfVxufVxuXG4uc2VjdGlvbi1oZWFkZXJfX3NoYWRvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6YmVmb3JlIHtcbiAgICBAbWl4aW4gb3ZlcmxheTtcbiAgICBAbWl4aW4gaGVyb1JhZGlhbDtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxuXG4gICYgLmJyZWFkY3J1bWIsXG4gICYgLnNlY3Rpb24taGVhZGVyX190aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlcl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIEBuZXN0IC5zZWN0aW9uLWhlYWRlci0td2l0aC1saW5rICYge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIEBuZXN0IC5zZWN0aW9uLWhlYWRlci0taGVybyAmIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlSGVhZGVyU2l6ZSkgKiAxLjQ1KTtcbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24taGVhZGVyX19saW5rIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIG1hcmdpbi10b3A6IDI1cHg7XG5cbiAgQG5lc3QgLnNlY3Rpb24taGVhZGVyLS13aXRoLWxpbmsgJiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4uc2VjdGlvbi1oZWFkZXItLTQwNCB7XG4gIHBhZGRpbmctdG9wOiA4MHB4O1xufVxuXG4uc2VjdGlvbi1oZWFkZXIgc2VsZWN0IHtcbiAgbWFyZ2luOiAxMHB4IDA7XG59XG5cbi5zZWN0aW9uLWhlYWRlciBwIHtcbiAgbWFyZ2luOiAxMHB4IDA7XG59XG4iLCIuc2l0ZS1uYXYge1xuICBtYXJnaW46IDA7XG59XG5cbi5zaXRlLW5hdmlnYXRpb24ge1xuICBAbmVzdCAudGV4dC1jZW50ZXIgJiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICBAbmVzdCAuaGVhZGVyLWxheW91dC0tbGVmdCAmIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoJGd1dHRlciAvIDMpO1xuICB9XG59XG5cbi5zaXRlLW5hdl9faWNvbnMge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2l0ZS1uYXZfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gICYgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJiAuaWNvbi1jaGV2cm9uLWRvd24ge1xuICAgIHdpZHRoOiAkZGVza3RvcE1lbnVDaGV2cm9uU2l6ZTtcbiAgICBoZWlnaHQ6ICRkZXNrdG9wTWVudUNoZXZyb25TaXplO1xuICB9XG59XG5cbi5zaXRlLW5hdl9fbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiBjYWxjKCRzaXRlTmF2SXRlbVBhZGRpbmcgLyAyKSAkc2l0ZU5hdkl0ZW1QYWRkaW5nO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogJGNvbG9yTmF2VGV4dDtcblxuICBAbmVzdCAuc2l0ZS1oZWFkZXItLWhlYWRpbmctc3R5bGUgJiB7XG4gICAgQG1peGluIGhlYWRpbmdGb250U3RhY2s7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yTmF2VGV4dDtcbiAgfVxuXG4gIEBuZXN0IC5pcy1saWdodCAmIHtcbiAgICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3JTdGlja3lOYXZMaW5rcztcbiAgICB9XG4gIH1cblxuICBAbmVzdCAuc2l0ZS1uYXYtLWhhcy1kcm9wZG93biA+ICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiBjYWxjKCR6aW5kZXhOYXZEcm9wZG93bnMgKyAxKTtcbiAgfVxuXG4gICYgLmljb24tY2hldnJvbi1kb3duIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gICAgcGFkZGluZzogY2FsYygkc2l0ZU5hdkl0ZW1QYWRkaW5nIC8gMik7XG5cbiAgICBAbmVzdCAuaGVhZGVyLWxheW91dC0tY2VudGVyICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLW5hdl9fbGluay0tdW5kZXJsaW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDAgJHNpdGVOYXZJdGVtUGFkZGluZztcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yTmF2VGV4dDtcbiAgICB0cmFuc2l0aW9uOiByaWdodCAwLjVzO1xuXG4gICAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLypXaGl0ZSB1bmRlcmxpbmUgd2hlbiBubyBkcm9wZG93biovXG4gIEBuZXN0IC5pcy1saWdodCAuc2l0ZS1uYXZfX2l0ZW06bm90KC5zaXRlLW5hdi0taGFzLWRyb3Bkb3duKSAmOmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLypEcm9wZG93biB0ZXh0IGNvbG9yIHVuZGVybGluZSB3aGVuIGluIGRyb3Bkb3duIGxpbmsqL1xuICBAbmVzdCAuc2l0ZS1uYXYtLWhhcy1kcm9wZG93biAmOmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JOYXZUZXh0O1xuICB9XG5cbiAgLypXaGl0ZSBEcm9wZG93biB0ZXh0IGNvbG9yIHVuZGVybGluZSB3aGVuIGluIGRyb3Bkb3duIGxpbmsqL1xuICBAbmVzdCAuaXMtbGlnaHQgLnNpdGUtbmF2LS1oYXMtZHJvcGRvd24gJjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbiAgfVxuXG4gIEBuZXN0IC5zaXRlLW5hdl9faXRlbTpob3ZlciAmOmFmdGVyIHtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2RldGFpbHMge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qS2VlcCBhY3RpdmUgc3RhdGUgb24gcGFyZW50IGRyb3Bkb3duIGxpbmsqL1xuLnNpdGUtbmF2LS1oYXMtZHJvcGRvd24ge1xuICB6LWluZGV4OiBjYWxjKCR6aW5kZXhOYXZEcm9wZG93bnMgKyAxKTtcblxuICAmLmlzLWZvY3VzZWQsXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IGNhbGMoJHppbmRleE5hdkRyb3Bkb3ducyArIDIpO1xuICB9XG59XG5cbi5zaXRlLW5hdi0taGFzLWRyb3Bkb3duLmlzLWZvY3VzZWQgPiBhLFxuLnNpdGUtbmF2LS1oYXMtZHJvcGRvd246aG92ZXIgPiBhIHtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5zaXRlLW5hdl9fbGluay0taWNvbiB7XG4gIHBhZGRpbmctbGVmdDogJHNpdGVOYXZJY29uUGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHNpdGVOYXZJY29uUGFkZGluZztcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoJHNpdGVOYXZJdGVtUGFkZGluZyAvIDIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoJHNpdGVOYXZJdGVtUGFkZGluZyAvIDIpO1xuXG4gICAgJiArIC5zaXRlLW5hdl9fbGluay0taWNvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogLTRweDsgLyp+YW1vdW50IG9mIGlubGluZS1ibG9jayBzcGFjZSovXG4gICAgfVxuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6ICRkZXNrdG9wTWVudUljb25TaXplO1xuICAgIGhlaWdodDogJGRlc2t0b3BNZW51SWNvblNpemU7XG4gIH1cbn1cblxuLnNpdGUtbmF2X19kcm9wZG93biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xuICB6LWluZGV4OiAkemluZGV4TmF2RHJvcGRvd25zO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDMpIDAgNXB4O1xuICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDkpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMnB4LCAwKTtcblxuICBAbmVzdCBkZXRhaWxzW29wZW5dID4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBjdWJpYy1iZXppZXIoMC4yLCAwLjA2LCAwLjA1LCAwLjk1KTtcbiAgfVxuXG4gICYgbGkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYgPiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJiA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogY2FsYygkemluZGV4TmF2RHJvcGRvd25zICsgMSk7XG4gICAgfVxuICB9XG5cbiAgJiBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICB9XG59XG5cbi5zaXRlLW5hdl9fZGVlcC1kcm9wZG93biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogJHppbmRleE5hdkRyb3Bkb3ducztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTJweCwgMCwgMCk7XG5cbiAgQG5lc3QgLnNpdGUtbmF2X19kZWVwLWRyb3Bkb3duLXRyaWdnZXI6aG92ZXIgJixcbiAgLmlzLWZvY3VzZWQgKyAmIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMiwgMC4wNiwgMC4wNSwgMC45NSk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC4wOSksIHRyYW5zcGFyZW50KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2Ryb3Bkb3duLWxpbmstLWhhcy1jaGlsZHJlbiB7XG4gIEBuZXN0IC5zaXRlLW5hdl9fZGVlcC1kcm9wZG93bi10cmlnZ2VyOmhvdmVyICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHlEaW07XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5RGltO1xuICB9XG59XG5cbi8qUm90YXRlIHRvIGZhY2UgcmlnaHQqL1xuLnNpdGUtbmF2X19kZWVwLWRyb3Bkb3duLXRyaWdnZXIgLmljb24tY2hldnJvbi1kb3duIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAkZGVza3RvcE1lbnVDaGV2cm9uU2l6ZTtcbiAgaGVpZ2h0OiAkZGVza3RvcE1lbnVDaGV2cm9uU2l6ZTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVYKDUwJSk7XG59XG5cbi8qIEluY3JlYXNlIHotaW5kZXggb24gYW4gb3BlbiBkcm9wZG93biB0byBhdm9pZCBvdmVybGFwcGluZyBtdWx0aS1saW5lIG5hdnMgKi9cbi5zaXRlLW5hdl9fZGV0YWlsc1tvcGVuXSAuc2l0ZS1uYXZfX2Ryb3Bkb3duIHtcbiAgei1pbmRleDogY2FsYygkemluZGV4TmF2RHJvcGRvd25zICsgMyk7XG59XG5cbi5tb2JpbGUtbmF2IHtcbiAgbWFyZ2luOiBjYWxjKHZhcigtLWRyYXdlci1ndXR0ZXIpICogLTEpIGNhbGModmFyKC0tZHJhd2VyLWd1dHRlcikgKiAtMSkgMDtcblxuICAmIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX3NlYXJjaCB7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpO1xufVxuXG4ubW9iaWxlLW5hdl9faXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLypCYWNrZ3JvdW5kIGNvbG9yIG9uIHRvcCBsZXZlbCBpdGVtcyBzbyB0aGVyZSBpcyBub1xuICBlbGVtZW50IG92ZXJsYXAgb24gc3VibmF2J3MgQ1NTIHRvZ2dsZSBhbmltYXRpb24qL1xuICBAbmVzdCAubW9iaWxlLW5hdiA+ICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckRyYXdlcnM7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IHZhcigtLWRyYXdlci1ndXR0ZXIpO1xuICAgIHJpZ2h0OiB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICB9XG59XG5cbi8qTG9naW4vbG9nb3V0IGxpbmtzIGNhbid0IGhhdmUgYSBjbGFzcyBvbiB0aGVtLCBzbyBzdHlsZSA8YT4gZWxlbWVudCovXG4ubW9iaWxlLW5hdl9fbGluayxcbi5tb2JpbGUtbmF2X19mYXV4LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1vYmlsZS1uYXZfX2xpbmstLXRvcC1sZXZlbCB7XG4gIGZvbnQtc2l6ZTogMS40ZW07XG5cbiAgQG5lc3QgLm1vYmlsZS1uYXYtLWhlYWRpbmctc3R5bGUgJiB7XG4gICAgQG1peGluIGhlYWRpbmdGb250U3RhY2s7XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX2xpbmssXG4ubW9iaWxlLW5hdl9fZmF1eC1saW5rLFxuLm1vYmlsZS1uYXZfX3RvZ2dsZSBidXR0b24sXG4ubW9iaWxlLW5hdl9fdG9nZ2xlIC5mYXV4LWJ1dHRvbiB7XG4gIGNvbG9yOiAkY29sb3JEcmF3ZXJUZXh0O1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKSB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGNvbG9yRHJhd2VyVGV4dERhcms7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRHJhd2Vyc0RpbTtcbiAgfVxufVxuXG4ubW9iaWxlLW5hdl9fY2hpbGQtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgJiBhLFxuICAmIC5tb2JpbGUtbmF2X19saW5rIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gICYgLmNvbGxhcHNpYmxlLXRyaWdnZXI6bm90KC5tb2JpbGUtbmF2X19saW5rLS1idXR0b24pIHtcbiAgICBmbGV4OiAwIDAgY2FsYygkY29sbGFwc2libGUtdHJpZ2dlci1jaXJjbGUtd2lkdGggKyBjYWxjKCRndXR0ZXIgLyAyKSk7XG4gIH1cblxuICAmIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cblxuICBAbmVzdCBbZGlyPVwicnRsXCJdICYge1xuICAgICYgLmNvbGxhcHNpYmxlLXRyaWdnZXJfX2ljb24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxufVxuXG4ubW9iaWxlLW5hdl9faXRlbS0tc2Vjb25kYXJ5IHtcbiAgJiBhIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgLypubyB0cmFpbGluZyBib3JkZXIqL1xuICB9XG59XG5cbi8qU3BhY2luZyBhYm92ZSBzZWNvbmRhcnkgbGlua3MqL1xuLm1vYmlsZS1uYXZfX2l0ZW06bm90KC5tb2JpbGUtbmF2X19pdGVtLS1zZWNvbmRhcnkpICsgLm1vYmlsZS1uYXZfX2l0ZW0tLXNlY29uZGFyeSB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5tb2JpbGUtbmF2X19oYXMtc3VibGlzdCxcbi5tb2JpbGUtbmF2X19saW5rLS1idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gICYgPiAqIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkOyAvKkJyZWFrcyBsb25nIHByb2JsZW1hdGljIHdvcmRzKi9cbiAgfVxufVxuXG4ubW9iaWxlLW5hdl9fbGluay0tYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5tb2JpbGUtbmF2X190b2dnbGUge1xuICBmbGV4OiAwIDEgYXV0bztcblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gIH1cblxuICAmIGJ1dHRvbixcbiAgJiAuZmF1eC1idXR0b24ge1xuICAgIGhlaWdodDogNjAlO1xuICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICBtYXJnaW46IDIwJSAwO1xuICB9XG5cbiAgJiBidXR0b24ge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgfVxuXG4gIEBuZXN0IFtkaXI9XCJydGxcIl0gJiB7XG4gICAgJiBidXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG4ubW9iaWxlLW5hdl9fc3VibGlzdCB7XG4gIG1hcmdpbjogMDtcblxuICAmIC5tb2JpbGUtbmF2X19pdGVtOmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICAmIC5tb2JpbGUtbmF2X19pdGVtOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gICYgLm1vYmlsZS1uYXZfX2xpbmssXG4gICYgLm1vYmlsZS1uYXZfX2ZhdXgtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyA0KSAyNXB4IGNhbGMoJGd1dHRlciAvIDQpIHZhcigtLWRyYXdlci1ndXR0ZXIpO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19ncmFuZGNoaWxkbGlzdCB7XG4gIG1hcmdpbjogMDtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICBsZWZ0OiAxN3B4O1xuICAgIHRvcDogMTBweDtcbiAgICBib3R0b206IDEwcHg7XG4gIH1cblxuICBAbmVzdCBbZGlyPVwicnRsXCJdICYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMTdweDtcbiAgICB9XG4gIH1cblxuICAmIC5tb2JpbGUtbmF2X19pdGVtOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgJiAubW9iaWxlLW5hdl9fbGluayB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19zb2NpYWwge1xuICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICBtYXJnaW46IDE1cHggMCAyMHB4IDA7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWRyYXdlci1ndXR0ZXIpICogLTEpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1kcmF3ZXItZ3V0dGVyKSAqIC0xKTtcbiAgfVxuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTJweCAzMHB4O1xuXG4gICAgJiAuaWNvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgfVxuICB9XG59XG5cbi5tb2JpbGUtbmF2X19zb2NpYWwtaXRlbSB7XG4gIGZsZXg6IDAgMSAzMy4zMyU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICBtYXJnaW46IDAgMCAtMXB4O1xuXG4gICY6bnRoLWNoaWxkKDNuLTEpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuc2l0ZS1uYXZfX2xpbmstLWljb24gLmljb24ge1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogMjhweDtcblxuICAgICYuaWNvbi11c2VyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMXB4O1xuICAgIH1cbiAgfVxufVxuXG4uY2FydC1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcnQtbGlua19fYnViYmxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNhcnQtbGlua19fYnViYmxlLS12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JDYXJ0RG90O1xuICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3JCb2R5O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgLypTbGlnaHQgcG9zaXRpb24gY2hhbmdlIHdpdGggY2FydCBpY29uKi9cbiAgQG5lc3QgW2RhdGEtaWNvbj1cImNhcnRcIl0gJiB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAtNHB4O1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtaWNvbj1cImJhZy1taW5pbWFsXCJdICYge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbi5icmVhZGNydW1iIHtcbiAgQG1peGluIGhlYWRpbmdUZXh0Q2VudGVyO1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICBtYXJnaW46IC0yNXB4IDAgMTBweDtcblxuICBAbmVzdCAudGVtcGxhdGUtcHJvZHVjdCAmIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4uYnJlYWRjcnVtYl9fZGl2aWRlciB7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG4iLCIubWVnYW1lbnUge1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAxLjMpIDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGN1YmljLWJlemllcigwLjIsIDAuMDYsIDAuMDUsIDAuOTUpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xuXG4gIEBuZXN0IGRldGFpbHNbb3Blbl0gPiAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXG4gICAgJiAuYXBwZWFyLWFuaW1hdGlvbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1uYXYtLWlzLW1lZ2FtZW51LnNpdGUtbmF2X19pdGVtIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuLm1lZ2FtZW51X19jb2xsZWN0aW9uLWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAxLjUpO1xufVxuXG4vKkNlbnRlciBncmlkIGl0ZW1zIGluIG1lZ2FtZW51IHdoZW4gbG9nbyBjZW50ZXJlZCovXG4udGV4dC1jZW50ZXIgLm1lZ2FtZW51IC5ncmlkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYgLmdyaWRfX2l0ZW0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLm1lZ2FtZW51IC5zaXRlLW5hdl9fZHJvcGRvd24tbGluazpub3QoLnNpdGUtbmF2X19kcm9wZG93bi1saW5rLS10b3AtbGV2ZWwpIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDFweCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLm1lZ2FtZW51IGg1LFxuLm1lZ2FtZW51IC5oNSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4iLCIubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogJHppbmRleE1vZGFsO1xuICBjb2xvcjogJGNvbG9yTW9kYWxUZXh0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAmLm1vZGFsLS1xdWljay1zaG9wIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gICYgYSxcbiAgJiBhOmhvdmVyIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gICYgLmJ0bjpub3QoW2Rpc2FibGVkXSk6bm90KC5idG4tLXNlY29uZGFyeSk6bm90KC5idG4tLWJvZHkpLFxuICAmIC5idG46bm90KFtkaXNhYmxlZF0pOm5vdCguYnRuLS1zZWNvbmRhcnkpOm5vdCguYnRuLS1ib2R5KTpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICB9XG5cbiAgQG5lc3QgLm1vZGFsLW9wZW4gJiB7XG4gICAgJiAubW9kYWxfX2lubmVyIHtcbiAgICAgIGFuaW1hdGlvbjogbW9kYWwtb3BlbiAwLjVzIGZvcndhcmRzO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yTW9kYWxCZztcbiAgICAgIGFuaW1hdGlvbjogb3ZlcmxheS1vbiAwLjVzIGZvcndhcmRzO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5tb2RhbC1jbG9zaW5nICYge1xuICAgICYgLm1vZGFsX19pbm5lciB7XG4gICAgICBhbmltYXRpb246IG1vZGFsLWNsb3NpbmcgMC41cyBmb3J3YXJkcztcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvck1vZGFsQmc7XG4gICAgICBhbmltYXRpb246IG92ZXJsYXktb2ZmIDAuNXMgZm9yd2FyZHM7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLm1vZGFsLW9wZW4tLXNvbGlkICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JNb2RhbEJnO1xuICB9XG59XG5cbi5tb2RhbC0tc29saWQge1xuICBAbmVzdCAubW9kYWwtb3BlbiAmIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgYW5pbWF0aW9uOiBmdWxsLW92ZXJsYXktb24gMC41cyBmb3J3YXJkcztcbiAgICB9XG4gIH1cblxuICBAbmVzdCAubW9kYWwtY2xvc2luZyAmIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgYW5pbWF0aW9uOiBmdWxsLW92ZXJsYXktb2ZmIDAuNXMgZm9yd2FyZHM7XG4gICAgfVxuICB9XG59XG5cbi5tb2RhbC0taXMtY2xvc2luZyB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLypvdmVycmlkZSAuaXMtdHJhbnNpdGlvbmluZyBzdHlsZXMqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubW9kYWwtLWlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLypvdmVycmlkZSAuaXMtdHJhbnNpdGlvbmluZyBzdHlsZXMqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKkNsYXNzIG9uIGJvZHkgZWxlbWVudCB3aGVuIG1vZGFsIG9wZW4uXG5Pbmx5IG1lZGl1bS11cCBiZWNhdXNlIGlPUyBqdW1wcyB0byB0b3Agb3RoZXJ3aXNlKi9cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLm1vZGFsLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLm1vZGFsX19pbm5lciB7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBtYXJnaW46IGNhbGMoJGd1dHRlciAvIDIpO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGMoJGd1dHRlciAvIDIpKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luOiA0MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIH1cblxuICBAbmVzdCAubW9kYWwtLXNxdWFyZSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBib3gtc2hhZG93OiAwIDE1cHggNDVweCByZ2IoMCwgMCwgMCwgMC4xKTtcbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuICB9XG59XG5cbi8qTm8gbWF4IGhlaWdodCBvbiBwcm9kdWN0IGltYWdlcyovXG4ubW9kYWxfX2lubmVyIHtcbiAgJiAuaW1hZ2Utd3JhcCBpbWcge1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gIH1cbn1cblxuLm1vZGFsX19jZW50ZXJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAxIGF1dG87XG4gIG1pbi13aWR0aDogMXB4OyAvKmllMTAgdGhpbmcqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5tb2RhbF9fY2VudGVyZWQtY29udGVudCB7XG4gIEBuZXN0IC5tb2RhbC0tc3F1YXJlICYge1xuICAgIG1heC1oZWlnaHQ6IDgwdmg7XG4gICAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogLjc1KTtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAqIDEuNSk7XG4gICAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgfVxuICB9XG59XG5cbi5tb2RhbF9fY2xvc2Uge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGNvbG9yOiAkY29sb3JNb2RhbFRleHQ7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6ICRndXR0ZXI7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yTW9kYWxUZXh0O1xuICB9XG5cbiAgQG5lc3QgLm1vZGFsLS1zcXVhcmUgJiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAzKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgfVxuICB9XG59XG5cbi8qQWpheCBwYWdlIGFkanVzdG1lbnRzKi9cbi5tb2RhbCB7XG4gICYgLnBhZ2UtY29udGVudCxcbiAgJiAucGFnZS13aWR0aCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vKkdvb2dsZS1mcmllbmRseSBub24gaW50cnVzaXZlIG1vYmlsZSBtb2RhbCovXG4ucG9wdXAtY3RhIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAubW9kYWwtLW1vYmlsZS1mcmllbmRseSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICYubW9kYWwtLXNxdWFyZSAubW9kYWxfX2NlbnRlcmVkLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgIH1cblxuICAgICYubW9kYWwtLWlzLWFjdGl2ZSB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG5cbiAgICBAbmVzdCAubW9kYWwtb3BlbiAmIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5tb2RhbF9faW5uZXIge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICYgLmgxIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgfVxuXG4gICAgJiBpbnB1dCB7XG4gICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmIC50ZXh0LWNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIuanMtcXR5X193cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogODBweDtcbiAgbWluLXdpZHRoOiA2MHB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuXG4gICYuaXMtbG9hZGluZyB7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbi5qcy1xdHlfX251bSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA1cHggMjBweDtcbiAgbWFyZ2luOiAwO1xuICB6LWluZGV4OiAxO1xufVxuXG4uanMtcXR5X19hZGp1c3Qge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXI6IDAgbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZS1vdXQ7XG4gIHotaW5kZXg6IDI7XG4gIGZpbGw6ICRjb2xvclRleHRCb2R5O1xuXG4gICYgLmljb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogOHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGZpbGw6IGluaGVyaXQ7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5RGltO1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxuXG4gIEBuZXN0IC5qcy1xdHlfX251bTphY3RpdmUgfiAmLFxuICAuanMtcXR5X19udW06Zm9jdXMgfiAmIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi5qcy1xdHlfX2FkanVzdC0tcGx1cyB7XG4gIHJpZ2h0OiAwO1xufVxuXG4uanMtcXR5X19hZGp1c3QtLW1pbnVzIHtcbiAgbGVmdDogMDtcbn1cblxuLmRyYXdlciB7XG4gICYgLmpzLXF0eV9fd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JEcmF3ZXJCb3JkZXI7XG4gIH1cblxuICAmIC5qcy1xdHlfX251bSB7XG4gICAgY29sb3I6ICRjb2xvckRyYXdlclRleHQ7XG4gICAgcGFkZGluZy10b3A6IDJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICB9XG5cbiAgJiAuanMtcXR5X19hZGp1c3Qge1xuICAgIGNvbG9yOiAkY29sb3JEcmF3ZXJUZXh0O1xuICAgIGZpbGw6ICRjb2xvckRyYXdlclRleHQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckRyYXdlclRleHQ7XG4gICAgICBjb2xvcjogJGNvbG9yRHJhd2VycztcbiAgICAgIGZpbGw6ICRjb2xvckRyYXdlcnM7XG4gICAgfVxuICB9XG59XG4iLCIuY3VycmVuY3ktZmxhZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41NSk7XG4gIG1hcmdpbjogLTAuNTVyZW07XG59XG5cbi8qXG4gIENlbnRlciBwb3B1cCBvbiBtb2JpbGUgc28gbG9uZyBjb3VudHJ5L2N1cnJlbmN5IG5hbWVzXG4gIGRvIG5vdCBjYXVzZSBob3Jpem9udGFsIHNjcm9sbFxuICovXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgW2RhdGEtZGlzY2xvc3VyZS1jdXJyZW5jeV0gLmRpc2Nsb3N1cmUtbGlzdCB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBtYXgtd2lkdGg6IDk1dnc7XG4gIH1cbn1cbiIsIi8qY29sbGFwc2libGVzLXdyYXBwZXIgaXMgYW4gb3B0aW9uYWwgd3JhcHBlciovXG4uY29sbGFwc2libGVzLXdyYXBwZXItLWJvcmRlci1ib3R0b20ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLmNvbGxhcHNpYmxlcy13cmFwcGVyLS1ib3JkZXItYm90dG9tICsgLmNvbGxhcHNpYmxlcy13cmFwcGVyLS1ib3JkZXItYm90dG9tIC5jb2xsYXBzaWJsZS10cmlnZ2VyLWJ0bi0tYm9yZGVycyB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5wcm9kdWN0LWJsb2NrLS10YWIgKyAucHJvZHVjdC1ibG9jay0tdGFiIC5jb2xsYXBzaWJsZS10cmlnZ2VyLWJ0bi0tYm9yZGVycyB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5jb2xsYXBzaWJsZS10cmlnZ2VyIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXJfX2ljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAkY29sbGFwc2libGUtdHJpZ2dlci1pY29uLXdpZHRoLXNtYWxsO1xuICBoZWlnaHQ6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGgtc21hbGw7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgd2lkdGg6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGg7XG4gICAgaGVpZ2h0OiAkY29sbGFwc2libGUtdHJpZ2dlci1pY29uLXdpZHRoO1xuICB9XG5cbiAgQG5lc3QgLm1vYmlsZS1uYXZfX2hhcy1zdWJsaXN0ICYge1xuICAgIHJpZ2h0OiAyNXB4O1xuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGgtc21hbGw7XG4gICAgaGVpZ2h0OiAkY29sbGFwc2libGUtdHJpZ2dlci1pY29uLXdpZHRoLXNtYWxsO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW47XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogJGNvbGxhcHNpYmxlLXRyaWdnZXItaWNvbi13aWR0aDtcbiAgICAgIGhlaWdodDogJGNvbGxhcHNpYmxlLXRyaWdnZXItaWNvbi13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXItLWlubGluZSB7XG4gIHBhZGRpbmc6IDExcHggMCAxMXB4IDQwcHg7XG5cbiAgJiAuY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbiB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbi0tY2lyY2xlIHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICB3aWR0aDogJGNvbGxhcHNpYmxlLXRyaWdnZXItY2lyY2xlLXdpZHRoO1xuICBoZWlnaHQ6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWNpcmNsZS13aWR0aDtcbiAgYm9yZGVyLXJhZGl1czogJGNvbGxhcHNpYmxlLXRyaWdnZXItY2lyY2xlLXdpZHRoO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJiAuaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlci5pcy1vcGVuIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uID4gLmljb24tY2hldnJvbi1kb3duIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xufVxuXG4vKlNsaWdodGx5IGRpZmZlcmVudCBmb3IgY2lyY2xlIGJ1dHRvbnMqL1xuLmNvbGxhcHNpYmxlLXRyaWdnZXIuaXMtb3BlbiAuY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbi0tY2lyY2xlID4gLmljb24tY2hldnJvbi1kb3duIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGVZKC0xKTtcbn1cblxuLmNvbGxhcHNpYmxlLWNvbnRlbnQge1xuICB0cmFuc2l0aW9uOiAkY29sbGFwc2libGUtY2xvc2UtdHJhbnNpdGlvbjtcblxuICAmLmlzLW9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiAkY29sbGFwc2libGUtb3Blbi10cmFuc2l0aW9uO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS1jb250ZW50LS1hbGwge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gICYgLmNvbGxhcHNpYmxlLWNvbnRlbnRfX2lubmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCk7XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5jb2xsYXBzaWJsZS1jb250ZW50LS1zbWFsbCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgaGVpZ2h0OiAwO1xuXG4gICAgJiAuY29sbGFwc2libGUtY29udGVudF9faW5uZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpO1xuICAgIH1cbiAgfVxufVxuXG4uY29sbGFwc2libGUtY29udGVudF9faW5uZXIge1xuICB0cmFuc2l0aW9uOiAkY29sbGFwc2libGUtY29udGVudC1jbG9zZS10cmFuc2l0aW9uO1xuXG4gIEBuZXN0IC5pcy1vcGVuICYge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiAkY29sbGFwc2libGUtY29udGVudC1vcGVuLXRyYW5zaXRpb247XG4gIH1cbn1cblxuLmZhcS1pdGVtIC5jb2xsYXBzaWJsZS10cmlnZ2VyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ydGUuY29sbGFwc2libGUtY29udGVudF9faW5uZXItLWZhcSB7XG4gIHBhZGRpbmctYm90dG9tOiAkZ3V0dGVyO1xufVxuXG4uY29sbGFwc2libGUtbGFiZWxfX2Nsb3NlZCB7XG4gIEBuZXN0IC5jb2xsYXBzaWJsZS10cmlnZ2VyW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLWxhYmVsX19vcGVuIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAbmVzdCAuY29sbGFwc2libGUtdHJpZ2dlclthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLypDdXN0b20gZnVuY3Rpb25hbGl0eSBmb3IgY29sbGVjdGlvbiBzaWRlYmFyKi9cbi5jb2xsYXBzaWJsZS1jb250ZW50LS1zaWRlYmFyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGhlaWdodDogMDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIucHN3cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIHotaW5kZXg6IDE1MDA7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5wc3dwIGltZyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLyogc3R5bGUgaXMgYWRkZWQgd2hlbiBKUyBvcHRpb24gc2hvd0hpZGVPcGFjaXR5IGlzIHNldCB0byB0cnVlICovXG4ucHN3cC0tYW5pbWF0ZV9vcGFjaXR5IHtcbiAgLyogMC4wMDEsIGJlY2F1c2Ugb3BhY2l0eTowIGRvZXNuJ3QgdHJpZ2dlciBQYWludCBhY3Rpb24sIHdoaWNoIGNhdXNlcyBsYWcgYXQgc3RhcnQgb2YgdHJhbnNpdGlvbiAqL1xuICBvcGFjaXR5OiAwLjAwMTtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7IH1cblxuLnBzd3AtLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucHN3cC0tem9vbS1hbGxvd2VkIC5wc3dwX19pbWcge1xuICBjdXJzb3I6IHpvb20taW47IH1cblxuLnBzd3AtLXpvb21lZC1pbiAucHN3cF9faW1nIHtcbiAgY3Vyc29yOiBncmFiOyB9XG5cbi5wc3dwLS1kcmFnZ2luZyAucHN3cF9faW1nIHtcbiAgY3Vyc29yOiBncmFiYmluZzsgfVxuXG4vKlxuICBCYWNrZ3JvdW5kIGlzIGFkZGVkIGFzIGEgc2VwYXJhdGUgZWxlbWVudC5cbiAgQXMgYW5pbWF0aW5nIG9wYWNpdHkgaXMgbXVjaCBmYXN0ZXIgdGhhbiBhbmltYXRpbmcgcmdiYSgpIGJhY2tncm91bmQtY29sb3IuXG4qL1xuLnBzd3BfX2JnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG5cbi5wc3dwX19zY3JvbGwtd3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDsgfVxuXG4vKiBQcmV2ZW50IHNlbGVjdGlvbiBhbmQgdGFwIGhpZ2hsaWdodHMgKi9cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9faW1nIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgfVxuXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi5wc3dwX19iZyB7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7IH1cblxuLnBzd3AtLWFuaW1hdGVkLWluIC5wc3dwX19iZyxcbi5wc3dwLS1hbmltYXRlZC1pbiAucHN3cF9fem9vbS13cmFwIHtcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX3pvb20td3JhcCB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5wc3dwX19pdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBzd3BfX2ltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwOyB9XG5cbi8qXG4gIHN0cmV0Y2hlZCB0aHVtYm5haWwgb3IgZGl2IHBsYWNlaG9sZGVyIGVsZW1lbnQgKHNlZSBiZWxvdylcbiAgc3R5bGUgaXMgYWRkZWQgdG8gYXZvaWQgZmxpY2tlcmluZyBpbiB3ZWJraXQvYmxpbmsgd2hlbiBsYXllcnMgb3ZlcmxhcFxuKi9cbi5wc3dwX19pbWctLXBsYWNlaG9sZGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnBzd3AtLWllIC5wc3dwX19pbWcge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi8qXG4gIEVycm9yIG1lc3NhZ2UgYXBwZWFycyB3aGVuIGltYWdlIGlzIG5vdCBsb2FkZWRcbiAgKEpTIG9wdGlvbiBlcnJvck1zZyBjb250cm9scyBtYXJrdXApXG4qL1xuLnBzd3BfX2Vycm9yLW1zZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBtYXJnaW4tdG9wOiAtOHB4O1xuICBjb2xvcjogI0NDQzsgfVxuXG4ucHN3cF9fZXJyb3ItbXNnIGEge1xuICBjb2xvcjogI0NDQztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLnBzd3BfX2J1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvKkJlY2F1c2UgSlMgbGlzdGVucyB0byBjbGljayBvbiBidXR0b24gZWxlbWVudCBpdHNlbGYqL1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICB9XG5cbiAgLypJZ25vcmUgY2xpY2tzIG9uIHN2Z3MgaW5zaWRlIGJ1dHRvbiovXG4gICYgc3ZnIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCAuaWNvbixcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCAuaWNvbiB7XG4gIHdpZHRoOiAxM3B4O1xuICBoZWlnaHQ6IDEzcHg7XG4gIG1hcmdpbjogOHB4O1xufVxuXG4ucHN3cF9fYnV0dG9uW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBIaWRlIGFycm93IGJ1dHRvbnMgd2hlbiBnYWxsZXJ5IGhhcyBvbmx5IG9uZSBpdGVtICovXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdC5wc3dwX19lbGVtZW50LS1kaXNhYmxlZCxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodC5wc3dwX19lbGVtZW50LS1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ucHN3cF9fdWkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3R0b206ICRndXR0ZXI7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyAwLjZzO1xuXG4gICYgLmJ0biB7XG4gICAgbWFyZ2luOiAxNXB4O1xuICB9XG59XG5cbi5wc3dwX191aS0taGlkZGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MCUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXM7XG59XG5cbi8qIEZpeGVzIGZvciBpT1MxNSAqL1xuLyogU2VlIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2RpbXNlbWVub3YvMGI4YzI1NWMwZDg3ZjI5ODllOGFiODc2MDczNTM0ZWEgKi9cblxuaHRtbC5wc3dwLW9wZW4taW4taW9zLFxuaHRtbC5wc3dwLW9wZW4taW4taW9zIGJvZHkge1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xuICBoZWlnaHQ6IHZhcigtLXdpbmRvdy1pbm5lci1oZWlnaHQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiBIaWRlIHBhZ2UgY29udGVudCB2aWEgQ1NTIHdoZW4gUGhvdG9Td2lwZSBvcGVucyAqL1xuLnBzd3Atb3Blbi1pbi1pb3MgYm9keSA+ICoge1xuICBkaXNwbGF5OiBub25lOyBcbn1cbi5wc3dwLW9wZW4taW4taW9zIGJvZHkgLnBzd3AucHN3cC0tb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyBcbn0gXG4iLCIkbWF4LWhlaWdodC1kaXNjbG9zdXJlOiA2MHZoO1xuJG1pbi1oZWlnaHQtZGlzY2xvc3VyZTogOTJweDtcblxuLmRpc2Nsb3N1cmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kaXNjbG9zdXJlX190b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZGlzY2xvc3VyZS1saXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBib3R0b206IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4taGVpZ2h0OiAkbWluLWhlaWdodC1kaXNjbG9zdXJlO1xuICBtYXgtaGVpZ2h0OiAkbWF4LWhlaWdodC1kaXNjbG9zdXJlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMDkpO1xuXG4gICYgYSB7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgfVxufVxuXG4uZGlzY2xvc3VyZS1saXN0LS1kb3duIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDEwMCU7XG4gIHotaW5kZXg6ICR6LWluZGV4LWRpc2Nsb3N1cmUtaGVhZGVyO1xufVxuXG4uZGlzY2xvc3VyZS1saXN0LS1sZWZ0IHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5kaXNjbG9zdXJlLWxpc3QtLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRpc2Nsb3N1cmUtbGlzdF9faXRlbSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBhZGRpbmc6IDVweCAxNXB4IDRweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmRpc2Nsb3N1cmUtbGlzdF9fb3B0aW9uIHtcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgJiAuZGlzY2xvc3VyZS1saXN0X19sYWJlbCB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuLmRpc2Nsb3N1cmUtbGlzdF9faXRlbS0tY3VycmVudCB7XG4gICYgLmRpc2Nsb3N1cmUtbGlzdF9fbGFiZWwge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi5kaXNjbG9zdXJlLWxpc3RfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMnJlbTtcblxuICBAbmVzdCBbZGF0YS1kaXNjbG9zdXJlLWN1cnJlbmN5XSAmIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHhcbiAgfVxuXG4gICYgc3BhbiB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgQG5lc3QgLmlzLWFjdGl2ZSAmIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIubXVsdGktc2VsZWN0b3JzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLm11bHRpLXNlbGVjdG9yc19faXRlbSB7XG4gIG1hcmdpbjogMCAyMHB4IDEwcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luOiAxMHB4IDIwcHg7XG4gIH1cblxuICBAbmVzdCAudG9vbGJhciAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vZ2xvYmFsL3ZhcmlhYmxlcy1yb290LmNzcy5saXF1aWQnO1xuXG4vKk1vZGVsIHZpZXdlciBjb250cm9scyovXG4uc2hvcGlmeS1tb2RlbC12aWV3ZXItdWkge1xuICAmIC5zaG9waWZ5LW1vZGVsLXZpZXdlci11aV9fY29udHJvbHMtYXJlYSB7XG4gICAgb3BhY2l0eTogMTsgLyphbHdheXMgc2hvdyBjb250cm9scyovXG4gICAgYmFja2dyb3VuZDogJGNvbG9yQm9keTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAwNSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxuXG4gICYgLnNob3BpZnktbW9kZWwtdmlld2VyLXVpX19idXR0b24ge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxuXG4gICYgLnNob3BpZnktbW9kZWwtdmlld2VyLXVpX19idXR0b24tLWNvbnRyb2wge1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICYuZm9jdXMtdmlzaWJsZTpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5QWxwaGEwMDUpO1xuICAgIH1cblxuICAgICY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAwNSk7XG4gICAgfVxuICB9XG5cbiAgJiAuc2hvcGlmeS1tb2RlbC12aWV3ZXItdWlfX2J1dHRvbi0tcG9zdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBjb2xvcjogJGNvbG9yQm9keTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb2R5QWxwaGEwNSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvckJvZHk7XG4gICAgfVxuICB9XG59XG5cbi8qVmlldyBpbiBzcGFjZSBidXR0b24qL1xuLnByb2R1Y3Qtc2luZ2xlX192aWV3LWluLXNwYWNlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keUFscGhhMDA4KTtcbiAgd2lkdGg6IDgwJTtcbiAgd2lkdGg6IGNhbGMoODAlIC0gNHB4KTsgLyo0cHggPSByaWdodCBtYXJnaW4gb24gcHJvZHVjdC1pbWFnZS1tYWluKi9cbiAgbWFyZ2luOiA0MHB4IDEwJSAxMHB4O1xuICBwYWRkaW5nOiA1cHggMTBweCAxMHB4O1xuXG4gICZbZGF0YS1zaG9waWZ5LXhyLWhpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnByb2R1Y3Qtc2luZ2xlX192aWV3LWluLXNwYWNlLXRleHQge1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5cbi8qTW9kZWwgdmlld2VyIGNvbnRhaW5lciovXG4uc2hvcGlmeS1tb2RlbC12aWV3ZXItdWksXG4uc2hvcGlmeS1tb2RlbC12aWV3ZXItdWkgbW9kZWwtdmlld2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2hvcGlmeS1tb2RlbC12aWV3ZXItdWlfX2J1dHRvbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByb2R1Y3Qtc2luZ2xlX19jbG9zZS1tZWRpYSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgei1pbmRleDogMjtcbn1cbiIsIi5wcmljZS1yYW5nZV9fc2xpZGVyLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwIDhweCA4cHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogMCAxMHB4IDhweDtcbiAgfVxufVxuXG4ucHJpY2UtcmFuZ2VfX2lucHV0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByaWNlLXJhbmdlX19kaXNwbGF5LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICB3aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5ub1VpLWhvcml6b250YWwgLm5vVWktaGFuZGxlIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yVGV4dEJvZHkpO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IDJweCByZ2IoMjU1IDI1NSAyNTUpO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHJpZ2h0OiAtNnB4O1xuICB0b3A6IC0zcHg7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIHJpZ2h0OiAtN3B4O1xuICAgIHRvcDogLTRweDtcbiAgfVxuXG4gICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG5cbi5ub1VpLXRhcmdldCB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLm5vVWktY29ubmVjdCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yVGV4dEJvZHkpO1xufVxuXG4ubm9VaS1ob3Jpem9udGFsIHtcbiAgaGVpZ2h0OiA2cHg7XG59XG4iLCIuY291bnRkb3duX19jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY291bnRkb3duLWJhY2tncm91bmQtY29sb3IpO1xuICBjb2xvcjogdmFyKC0tY291bnRkb3duLXRleHQtY29sb3IpO1xufVxuXG4uY291bnRkb3duX19ibG9jay0tYnV0dG9uIHtcbiAgJiAuYnRuLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgICBjb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yKTtcbiAgICAvKlxuICAgICAgSW1wdWxzZSBzZWNvbmRhcnkgYnRuIGlzIGNvbm5lY3RlZCB0b1xuICAgICAgdGhlIHRoZW1lIHNldHRpbmcgZm9yIGJvcmRlciBjb2xvclxuICAgICovXG4gIH1cbn1cbiIsIjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICBjb2xvcjogaW5oZXJpdDtcbiAgIG9wYWNpdHk6IDAuNTtcbn1cblxuOi1tb3otcGxhY2Vob2xkZXIge1xuICAgY29sb3I6IGluaGVyaXQ7XG4gICBvcGFjaXR5OiAwLjU7XG59XG5cbjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgY29sb3I6IGluaGVyaXQ7XG4gICBvcGFjaXR5OiAwLjU7XG59XG5cbjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgIGNvbG9yOiBpbmhlcml0O1xuICAgb3BhY2l0eTogMTtcbn1cblxuaW5wdXQsXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwiaW1hZ2VcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiIsIiRzaGFyZUJ1dHRvbkhlaWdodDogMThweDtcblxuLnNvY2lhbC1zaGFyaW5nIHtcbiAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuXG4gICYgLmljb24ge1xuICAgIGhlaWdodDogJHNoYXJlQnV0dG9uSGVpZ2h0O1xuICAgIHdpZHRoOiAkc2hhcmVCdXR0b25IZWlnaHQ7XG4gIH1cbn1cblxuLnNvY2lhbC1zaGFyaW5nX19saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgbWFyZ2luOiAwIDE4cHggMCAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBtYXJnaW46IDAgMCAwIDE4cHg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5zb2NpYWwtc2hhcmluZ19fdGl0bGUge1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuXG4gIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIH1cbn1cbiIsIi5ncmlkLXNlYXJjaCB7XG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG59XG5cbi5ncmlkLXNlYXJjaF9fcHJvZHVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZ3JpZC1zZWFyY2hfX3BhZ2UtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJvZHlMaWdodERpbSk7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5TWVkaXVtRGltKTtcbiAgfVxufVxuXG4uZ3JpZC1zZWFyY2hfX3BhZ2UtY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5ncmlkLXNlYXJjaF9fcGFnZS1jb250ZW50IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uZ3JpZC1zZWFyY2hfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cbn1cbiIsIi5pbmRleC1zZWN0aW9uIHtcbiAgbWFyZ2luOiAkaW5kZXhTZWN0aW9uTWFyZ2luU21hbGwgMDtcbn1cblxuLmluZGV4LXNlY3Rpb24tLXNtYWxsIHtcbiAgbWFyZ2luOiBjYWxjKCRndXR0ZXIgKiAwLjYpIDA7XG59XG5cbi5pbmRleC1zZWN0aW9uICsgLmluZGV4LXNlY3Rpb24sXG4uaW5kZXgtc2VjdGlvbiArIC5pbmRleC1zZWN0aW9uLS1oaWRkZW4sXG4ubWFpbi1jb250ZW50ICsgLmluZGV4LXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uaW5kZXgtc2VjdGlvbi0tZmx1c2gge1xuICBtYXJnaW46IDA7XG59XG5cbi5zZWN0aW9uLS1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIHBhZGRpbmctdG9wOiAkaW5kZXhTZWN0aW9uTWFyZ2luU21hbGw7XG59XG5cbi5pbmRleC1zZWN0aW9uLS1mYXEge1xuICBtYXJnaW4tYm90dG9tOiAkaW5kZXhTZWN0aW9uTWFyZ2luU21hbGw7XG59XG5cbi5pbmRleC1zZWN0aW9uLS1mYXEge1xuICBtYXJnaW4tYm90dG9tOiAkaW5kZXhTZWN0aW9uTWFyZ2luU21hbGw7XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb24ge1xuICBwYWRkaW5nOiAkaW5kZXhTZWN0aW9uTWFyZ2luU21hbGwgMDtcbn1cblxuLm5ld3NsZXR0ZXItc2VjdGlvbi0td2l0aC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3JCb3JkZXI7XG59XG5cbi8qSGlkZSBmb290ZXIgc2VjdGlvbnMgb24gL2NoYWxsZW5nZSBwYWdlKi9cbi50ZW1wbGF0ZS1jaGFsbGFuZ2UgLmluZGV4LXNlY3Rpb24tLWZvb3RlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50ZXN0aW1vbmlhbHMtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAqIDAuODUpIDA7XG59XG5cbi50ZXN0aW1vbmlhbHMtc2VjdGlvbi0td2l0aC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3JCb3JkZXI7XG59XG5cbi8qTGFyZ2Ugc2NyZWVuIHNlY3Rpb24gc3BhY2luZyovXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5pbmRleC1zZWN0aW9uIHtcbiAgICBtYXJnaW46ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZSAwO1xuICB9XG5cbiAgLmluZGV4LXNlY3Rpb24tLXNtYWxsIHtcbiAgICBtYXJnaW46ICRndXR0ZXIgMDtcbiAgfVxuXG4gIC5zZWN0aW9uLS1kaXZpZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlO1xuICB9XG5cbiAgLmluZGV4LXNlY3Rpb24tLWZhcSB7XG4gICAgbWFyZ2luOiAkaW5kZXhTZWN0aW9uTWFyZ2luTGFyZ2UgMCBjYWxjKCRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZSAvIDIpO1xuICB9XG5cbiAgLm5ld3NsZXR0ZXItc2VjdGlvbiB7XG4gICAgcGFkZGluZzogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlIDA7XG4gIH1cblxuICAudGVzdGltb25pYWxzLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAqIDIuNSkgMDtcbiAgfVxufVxuXG4ucGFnZS1ibG9ja3MtLWZsdXNoIC5wYWdlLXdpZHRoIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnBhZ2UtYmxvY2tzID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgJiAuaW5kZXgtc2VjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT0gRmVhdHVyZWQgcm93IHNlY3Rpb24gPT09PT09PT09PT09PT09PSovXG4uZmVhdHVyZS1yb3ctd3JhcHBlciB7XG4gIGRpcmVjdGlvbjogbHRyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZmVhdHVyZS1yb3cge1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIEBtZWRpYSAoLS13aWRlc2NyZWVuKSB7XG4gICAgbWFyZ2luOiAwIDYlO1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gIC5mZWF0dXJlLXJvdy0tc21hbGwtbm9uZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93X19pdGVtIHtcbiAgZmxleDogMCAxIDU3JTtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZmVhdHVyZS1yb3dfX2l0ZW0tLW92ZXJsYXAtaW1hZ2VzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwIDAgMTVweDtcbiAgbWFyZ2luOiAwIDAgMCAtMzBweDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogNTBweCAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgJiA+ICoge1xuICAgIHdpZHRoOiA1MCU7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMHB4LCAzMHB4KTtcblxuICAgICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MHB4LCA1MHB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmIHN2ZyB7XG4gICAgYm9yZGVyOiAycHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb2R5O1xuICB9XG59XG5cbi5mZWF0dXJlLXJvd19faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG9yZGVyOiAxO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBvcmRlcjogMjtcbiAgfVxufVxuXG4uZmVhdHVyZS1yb3dfX3RleHQge1xuICBtaW4td2lkdGg6IDQzJTtcbiAgZmxleDogMCAxIDQzJTtcbiAgcGFkZGluZzogMDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBvcmRlcjogMjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDMwcHggMjBweCAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyAvKmFsd2F5cyBsYXN0IGVsZW1lbnQgb24gbW9iaWxlKi9cbiAgfVxuXG4gICYgLnJ0ZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJiAuYnRuIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5mZWF0dXJlLXJvd19fdGV4dC0tbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKCRndXR0ZXIgKiAyKTtcbiAgfVxuXG4gIC5mZWF0dXJlLXJvd19fdGV4dC0tcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoJGd1dHRlciAqIDIpO1xuICB9XG59XG4iLCIucHJvZHVjdC1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG5cbiAgJiBociB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5wcm9kdWN0LWJsb2NrLS10YWIgKyAucHJvZHVjdC1ibG9jay0tdGFiIHtcbiAgbWFyZ2luLXRvcDogLTI1cHg7XG59XG5cbi5wcm9kdWN0LWJsb2NrLS1zYWxlcy1wb2ludCArIC5wcm9kdWN0LWJsb2NrLS1zYWxlcy1wb2ludCB7XG4gIG1hcmdpbi10b3A6IC0yMHB4O1xufVxuXG4ucHJvZHVjdC1ibG9jay0taGVhZGVyICsgLnByb2R1Y3QtYmxvY2stLXByaWNlIHtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbi50aGVtZS1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5zaXplLWNoYXJ0X19zdGFuZGFsb25lIC50b29sLXRpcC10cmlnZ2VyX190aXRsZSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjNlbTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbn1cbiIsIi5zbGlkZXNob3ctd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLypQYXVzZSBidXR0b24gKGZvY3VzYWJsZSBieSBrZXlib2FyZCBvbmx5KSovXG4uc2xpZGVzaG93X19wYXVzZTpmb2N1cyB7XG4gIGNsaXA6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5O1xuICBwYWRkaW5nOiAxMHB4O1xuICB6LWluZGV4OiAkemluZGV4U2tpcFRvQ29udGVudDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcblxuICBAbmVzdCAudmlkZW8taXMtcGxheWluZyAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zbGlkZXNob3dfX3BhdXNlLXN0b3Age1xuICBkaXNwbGF5OiBibG9jaztcblxuICBAbmVzdCAuaXMtcGF1c2VkICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNsaWRlc2hvd19fcGF1c2UtcGxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG5lc3QgLmlzLXBhdXNlZCAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc2xpZGVzaG93X19zbGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBuZXN0IC5mbGlja2l0eS1zbGlkZXIgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIiR6LWluZGV4LWhlcm8taW1hZ2U6IDE7XG4kei1pbmRleC1oZXJvLXZpZGVvOiAyO1xuJHotaW5kZXgtaGVyby1pbWFnZS1vdmVybGF5OiAzO1xuJHotaW5kZXgtaGVyby10ZXh0OiA0O1xuJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uQW1vdW50OiAyMDBweDtcbiRzbGlkZXNob3dJbWFnZUFuaW1hdGlvblNwZWVkOiAwLjVzO1xuXG4uaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogJGNvbG9yTGFyZ2VJbWFnZUJnO1xufVxuXG4uaGVyb19fbWVkaWEtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZXJvX19pbWFnZS13cmFwcGVyLFxuLmhlcm9fX21lZGlhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpiZWZvcmUge1xuICAgIEBtaXhpbiBvdmVybGF5ICR6LWluZGV4LWhlcm8taW1hZ2Utb3ZlcmxheTtcbiAgICBAbWl4aW4gaGVyb1NjcmltO1xuXG4gICAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uaGVyb19faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6ICR6LWluZGV4LWhlcm8taW1hZ2U7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaGVyb19fbWVkaWEge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICB6LWluZGV4OiAkei1pbmRleC1oZXJvLWltYWdlO1xufVxuXG4uaGVyb19faW1hZ2Utd3JhcHBlci0tbm8tb3ZlcmxheTpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4uaGVyb19fbWVkaWEgaWZyYW1lLFxuLmhlcm9fX21lZGlhIHZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxuXG4gIEBuZXN0IC52aWRlby1wYXJlbnQtc2VjdGlvbi5sb2FkaW5nICYge1xuICAgIG9wYWNpdHk6IDAuMDE7IC8qc25lYWt5IHdheSB0byBhdm9pZCB0YWxraW5nIHRvIGFuIGludmlzaWJsZSBZVCBpZnJhbWUqL1xuICB9XG5cbiAgQG5lc3QgLnZpZGVvLXBhcmVudC1zZWN0aW9uLmxvYWRlZCAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGFuaW1hdGlvbjogem9vbS1mYWRlIDIuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IC8qZml4ZXMgc2FmYXJpIGFuaW1hdGlvbiBjb25mbGljdCovXG4gIH1cbn1cblxuLypNUDQgc2l6aW5nKi9cbi5oZXJvX19tZWRpYSB2aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGNvdmVyXCI7XG59XG5cbi8qWW91VHViZSBpZnJhbWVzIG5lZWQgbW9yZSBzcGVjaWZpYyBzaXppbmcqL1xuLmhlcm9fX21lZGlhIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMzAwJTtcbiAgbGVmdDogLTEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcblxuICAvKlRoaXMgbWluLXdpZHRoIG1heSBuZWVkIHRvIGNoYW5nZSBzbGlnaHRseSBkZXBlbmRpbmcgb25cbiAgZW1iZWRkZWQgdmlkZW8gZGltZW5zaW9ucy4gQ2FuIGRvIG9uIGEgcGVyLXNob3AgYmFzaXMqL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTQwcHgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IC0xMDAlO1xuICB9XG59XG5cbi8qTW9iaWxlIG9ubHkgdmltZW8gcGxheSBidXR0b24qL1xuLnZpbWVvLW1vYmlsZS10cmlnZ2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi10b3A6IDkwcHg7XG5cbiAgQG5lc3QgLmhlcm9fX3RleHQtY29udGVudCAmIHtcbiAgICBib3R0b206IDEyMCU7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufVxuXG4uaGVyb19fc2xpZGUtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IGNhbGMoJHotaW5kZXgtaGVyby10ZXh0ICsgMSk7XG5cbiAgJjpob3ZlciB7XG4gICAgJiB+IC5oZXJvX190ZXh0LXdyYXAgLmJ0bjpub3QoLmJ0bi0tc2Vjb25kYXJ5KTpub3QoLmJ0bi0tdGVydGlhcnkpOm5vdCguYnRuLS1pbnZlcnNlKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JCdG5QcmltYXJ5TGlnaHQ7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjI1cztcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGFuaW1hdGlvbjogc2hpbmUgMC43NXMgY3ViaWMtYmV6aWVyKDAuMDEsIDAuNTYsIDEsIDEpO1xuICAgICAgfVxuXG4gICAgICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhlcm9fX3RleHQtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjb2xvcjogJGNvbG9ySGVyb1RleHQ7XG5cbiAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYgLnBhZ2Utd2lkdGgge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4uaGVyb19fdGV4dC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKSAwO1xuICB6LWluZGV4OiAkei1pbmRleC1oZXJvLXRleHQ7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAxLjUpIDA7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1kb3RzPVwidHJ1ZVwiXSAmIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuXG4uaGVyb19fdGV4dC1zaGFkb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOmJlZm9yZSB7XG4gICAgQG1peGluIG92ZXJsYXk7XG4gICAgQG1peGluIGhlcm9SYWRpYWw7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cblxuLmhlcm9fX3RvcC1zdWJ0aXRsZSB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmhlcm9fX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5oZXJvX19zdWJ0ZXh0IHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLmhlcm9fX3N1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjNlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5oZXJvX19saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvKklFIGNsaWNrYWJpbGl0eSBmaXgqL1xuICBkaXNwbGF5OiBibG9jaztcblxuICBAbmVzdCAudmlkZW8taW50ZXJhY3RhYmxlICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG5cbiAgJiAuYnRuIHtcbiAgICBtYXJnaW46IDRweCAzcHggMnB4IDA7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkYnV0dG9uU2tldztcbiAgICB9XG4gIH1cblxuICAmIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogMnB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgfVxuXG4gICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkYnV0dG9uU2tldztcbiAgICB9XG4gIH1cblxuICAvKlBsYXkgaWNvbiBpbiBidXR0b24qL1xuICAmIC5idG4gLmljb24tcGxheSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIC8qRXh0cmEgcGFkZGluZyBpbiBjYXNlIGluc2lkZSBhbmltYXRpb24gY3JvcHBlciovXG4gIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgJiAuYW5pbWF0aW9uLWNyb3BwZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLypUZXh0IGFsaWdubWVudCovXG4uaGVyb19fdGV4dC1jb250ZW50IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICAmIC5oZXJvX19saW5rIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyA0KTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxuXG4gICYuaG9yaXpvbnRhbC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgJi5ob3Jpem9udGFsLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJi5ob3Jpem9udGFsLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gICYudmVydGljYWwtY2VudGVyIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG5cbiAgJi52ZXJ0aWNhbC1ib3R0b20ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cbn1cblxuLypUb3AgcGFkZGluZyBhZGp1c3RtZW50IHRvIGFjY291bnQgZm9yIG92ZXJsYWlkIGhlYWRlciovXG4ub3ZlcmxhaWQtaGVhZGVyIC5pbmRleC1zZWN0aW9uLS1oZXJvOmZpcnN0LWNoaWxkIC5oZXJvX190ZXh0LWNvbnRlbnQudmVydGljYWwtY2VudGVyIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgfVxufVxuXG4uaGVyby0tNDUwcHgge1xuICBoZWlnaHQ6IGNhbGMoNDUwcHggKiAwLjY1KTtcbn1cbi5oZXJvLS01NTBweCB7XG4gIGhlaWdodDogY2FsYyg1NTBweCAqIDAuNjUpO1xufVxuLmhlcm8tLTY1MHB4IHtcbiAgaGVpZ2h0OiBjYWxjKDY1MHB4ICogMC42NSk7XG59XG4uaGVyby0tNzUwcHgge1xuICBoZWlnaHQ6IGNhbGMoNzUwcHggKiAwLjY1KTtcbn1cbi5oZXJvLS0xMDB2aCB7XG4gIGhlaWdodDogMTAwdmg7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmhlcm8tLW5hdHVyYWxbZGF0YS1uYXR1cmFsXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuICAuaGVyby0tNDUwcHgge1xuICAgIGhlaWdodDogNDUwcHg7XG4gIH1cbiAgLmhlcm8tLTU1MHB4IHtcbiAgICBoZWlnaHQ6IDU1MHB4O1xuICB9XG4gIC5oZXJvLS02NTBweCB7XG4gICAgaGVpZ2h0OiA2NTBweDtcbiAgfVxuICAuaGVyby0tNzUwcHgge1xuICAgIGhlaWdodDogNzUwcHg7XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5oZXJvLS1tb2JpbGUtLWF1dG9bZGF0YS1tb2JpbGUtbmF0dXJhbD1cInRydWVcIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5oZXJvLS1uYXR1cmFsW2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJmYWxzZVwiXSB7XG4gICAgaGVpZ2h0OiA1MDBweDsgLypmb3JjZSBpdCBqdXN0IGluIHRoaXMgY2FzZSovXG4gIH1cbiAgLmhlcm8tLW1vYmlsZS0tMjUwcHhbZGF0YS1tb2JpbGUtbmF0dXJhbD1cImZhbHNlXCJdIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICB9XG4gIC5oZXJvLS1tb2JpbGUtLTMwMHB4W2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJmYWxzZVwiXSB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxuICAuaGVyby0tbW9iaWxlLS00MDBweFtkYXRhLW1vYmlsZS1uYXR1cmFsPVwiZmFsc2VcIl0ge1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cbiAgLmhlcm8tLW1vYmlsZS0tNTAwcHhbZGF0YS1tb2JpbGUtbmF0dXJhbD1cImZhbHNlXCJdIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG4gIC5oZXJvLS1tb2JpbGUtLTEwMHZoW2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJmYWxzZVwiXSB7XG4gICAgaGVpZ2h0OiA5MHZoO1xuICB9XG59XG5cbi8qSGVybyBhbmQgc2xpZGVzaG93IHNoYXJlZCBzdGFydGluZyBhbmltYXRpb24qL1xuLnNsaWRlc2hvd19fc2xpZGUsXG5bZGF0YS1hb3M9XCJoZXJvX19hbmltYXRpb25cIl0ge1xuICAvKkRlZmF1bHQgcG9zaXRpb25pbmcgcHJlLWFuaW1hdGlvbiovXG4gICYgLmFuaW1hdGlvbi1jcm9wcGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJiAuYW5pbWF0aW9uLWNvbnRlbnRzIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNXB4KTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgLypPdmVycmlkZSBsYXp5bG9hZCBzdHlsZSovXG4gICY6bm90KC5hbmltYXRlLW91dCkgLmhlcm9fX2ltYWdlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAmIC5oZXJvX19saW5rIC5idG4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8qRGlzYWJsZSBhbmltYXRpb25zIHdoZW4gbm90IGFjdGl2ZSBvciBmYWRpbmcgb3V0Ki9cbiAgJiAuaGVyb19faW1hZ2Utd3JhcHBlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzbGlkZXNob3dJbWFnZUFuaW1hdGlvbkFtb3VudCk7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qSGVybyBhbmQgc2xpZGVzaG93IHNoYXJlZCBhY3RpdmUgYW5pbWF0aW9uICovXG4ubG9hZGVkIC5zbGlkZXNob3dfX3NsaWRlLmlzLXNlbGVjdGVkLFxuW2RhdGEtYW9zPVwiaGVyb19fYW5pbWF0aW9uXCJdLmxvYWRlZCB7XG4gICYgLmFuaW1hdGlvbi1jcm9wcGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJiAuYW5pbWF0aW9uLWNvbnRlbnRzIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgfVxuXG4gICYgLmhlcm9fX3RpdGxlIC5hbmltYXRpb24tY29udGVudHMge1xuICAgIGFuaW1hdGlvbjogMC44cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMC4zcyBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tbmFtZTogcmlzZS11cDtcbiAgfVxuXG4gICYgLmhlcm9fX3RvcC1zdWJ0aXRsZSAuYW5pbWF0aW9uLWNvbnRlbnRzLFxuICAmIC5oZXJvX19zdWJ0aXRsZSAuYW5pbWF0aW9uLWNvbnRlbnRzIHtcbiAgICBhbmltYXRpb246IDFzIGN1YmljLWJlemllcigwLjI2LCAwLjU0LCAwLjMyLCAxKSAwLjdzIGZvcndhcmRzO1xuICAgIGFuaW1hdGlvbi1uYW1lOiByaXNlLXVwO1xuICB9XG5cbiAgJiAuaGVyb19fbGluayAuYW5pbWF0aW9uLWNvbnRlbnRzIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJiAuaGVyb19fbGluayAuYnRuIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMnMgZWFzZSAxLjNzIGZvcndhcmRzO1xuICB9XG5cbiAgJiAuaGVyb19fbGluayAuYnRuOm50aC1jaGlsZCgyKSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLWluIDJzIGVhc2UgMS42cyBmb3J3YXJkcztcbiAgfVxuXG4gICYgLmhlcm9fX21lZGlhLFxuICAmIC5oZXJvX19pbWFnZSxcbiAgJiAuaGVyb19faW1hZ2UtLXN2ZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgJiAuaGVyb19faW1hZ2Utd3JhcHBlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gY2FsYygkc2xpZGVzaG93SW1hZ2VBbmltYXRpb25TcGVlZCArIDAuMnMpIGVhc2UsIG9wYWNpdHkgY2FsYygkc2xpZGVzaG93SW1hZ2VBbmltYXRpb25TcGVlZCArIDAuMnMpIGVhc2U7XG4gIH1cbn1cblxuLypXaGVuIG5vdCBpbiBhIHNsaWRlc2hvdywgc2ltcGxlIGZhZGUgYW5pbWF0aW9uKi9cbltkYXRhLWFvcz1cImhlcm9fX2FuaW1hdGlvblwiXS5sb2FkZWQge1xuICAmIC5oZXJvX19pbWFnZS13cmFwcGVyIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IGNhbGMoJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uU3BlZWQgKyAwLjJzKSBlYXNlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLm5vLWpzIHtcbiAgJiAuaGVyb19faW1hZ2UsXG4gICYgLmhlcm9fX2ltYWdlLXdyYXBwZXIge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLypTbGlkZXNob3cgZmFkaW5nIG91dCBhbmltYXRpb24qL1xuLnNsaWRlc2hvd19fc2xpZGUuYW5pbWF0ZS1vdXQge1xuICAmIC5hbmltYXRpb24tY3JvcHBlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgJiAuaGVyb19faW1hZ2Utd3JhcHBlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzbGlkZXNob3dJbWFnZUFuaW1hdGlvbkFtb3VudCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRzbGlkZXNob3dJbWFnZUFuaW1hdGlvblNwZWVkIGVhc2UtaW4gMC4wNXMsIG9wYWNpdHkgJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uU3BlZWQgZWFzZS1pbiAwLjA1cztcbiAgfVxuXG4gICYgLmhlcm9fX2xpbmsge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLmNvbGxlY3Rpb24tY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCRndXR0ZXIgKiAwLjc1KTsgLypzYW1lIGFzIHBhZ2UtY29udGVudCovXG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKCRndXR0ZXIgKiAxLjUpO1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWZpbHRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogJGdyaWQtZ3V0dGVyLXNtYWxsO1xuICAgIHotaW5kZXg6IDU7XG5cbiAgICBAbmVzdCAuc3RpY2t5LWhlYWRlciAmIHtcbiAgICAgIHRvcDogODZweDsgLyp1cGRhdGVkIHdpdGggSlMgYmFzZWQgb24gc3RpY2t5IGhlYWRlciBoZWlnaHQqL1xuICAgIH1cbiAgfVxuXG4gICYgc2VsZWN0LFxuICAmIC5idG4ge1xuICAgIGhlaWdodDogNDRweDsgLyptYWdpYyBudW1iZXIsIGp1c3QgaW4gZmlsdGVyIG1lbnUqL1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuXG4gICYgc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICYgLmJ0biB7XG4gICAgcGFkZGluZzogMCAyMHB4OyAvKmJlY2F1c2UgaXQgaGFzIGEgZml4ZWQgaGVpZ2h0Ki9cbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgICYgLmljb24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uY29sbGVjdGlvbi1maWx0ZXJfX2l0ZW0ge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG59XG5cbi5jb2xsZWN0aW9uLWZpbHRlciAuYnRuOm5vdCguYnRuLS10ZXJ0aWFyeS1hY3RpdmUpLFxuLmNvbGxlY3Rpb24tZmlsdGVyX19zb3J0LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG59XG5cbi5jb2xsZWN0aW9uLWZpbHRlcl9faXRlbS0tZHJhd2VyIHtcbiAgZmxleDogMCAxIDQ4JTtcbn1cblxuLmNvbGxlY3Rpb24tZmlsdGVyX19pdGVtLS1jb3VudCB7XG4gIGZsZXg6IDEgMSAxNzAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jb2xsZWN0aW9uLWZpbHRlcl9faXRlbS0tc29ydCB7XG4gIGZsZXg6IDAgMSA0OCU7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAuY29sbGVjdGlvbi1maWx0ZXJfX2l0ZW0tLWNvdW50IHtcbiAgICBvcmRlcjogMztcbiAgICBmbGV4OiAxIDEgMTAwJTtcbiAgfVxufVxuXG4uaW1hZ2UtZmlsdGVyX193cmFwcGVyIHVsIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgZ2FwOiAxMHB4O1xuXG4gIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuICAgIH1cbiAgfVxuXG4gIC50YWdfX3RleHQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgfVxufVxuXG4uaW1hZ2UtZmlsdGVyX193cmFwcGVyIC50YWctLWFjdGl2ZSBsYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keSk7XG59XG5cbi5pbWFnZS1maWx0ZXJfX2ltYWdlLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnJ0ZS5jb2xsZWN0aW9uX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAqIDEuNSk7XG59XG5cbiRjb2xsZWN0aW9uSGVyb0xhcmdlOiA0MjBweDtcbiRjb2xsZWN0aW9uSGVyb1NtYWxsOiAyNTBweDtcbi5jb2xsZWN0aW9uLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjb2xsZWN0aW9uSGVyb1NtYWxsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JMYXJnZUltYWdlQmc7XG4gIGJveC1zaXppbmc6IGluaXRpYWw7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGhlaWdodDogJGNvbGxlY3Rpb25IZXJvTGFyZ2U7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taGVyb19fY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpIDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6ICRndXR0ZXIgMDtcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLXR5cGVfaGVhZGVyc19hbGlnbl90ZXh0PVwiY2VudGVyXCJdICYge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAvKkFjY291bnQgZm9yIG92ZXJsYXllZCBoZWFkZXIvdG9vbGJhciovXG4gIEBuZXN0IC5vdmVybGFpZC1oZWFkZXIgJiB7XG4gICAgcGFkZGluZy10b3A6IDcwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgfVxuICB9XG5cbiAgJiAucGFnZS13aWR0aCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgQG1peGluIG92ZXJsYXk7XG4gICAgQG1peGluIGhlcm9TY3JpbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLnNlY3Rpb24taGVhZGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAwLjVzIGZvcndhcmRzIDFzO1xuXG4gICAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qQXBwbHkgYW5pbWF0aW9ucyovXG4uY29sbGVjdGlvbi1oZXJvX19pbWFnZSB7XG4gIGFuaW1hdGlvbjogem9vbS1mYWRlIDIuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB0cmFuc2l0aW9uOiBub25lOyAvKmZpeGVzIHNhZmFyaSBhbmltYXRpb24gY29uZmxpY3QqL1xuXG4gIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IDFcbiAgfVxufVxuXG4vKlVubG9hZCBhamF4IHN0eWxlcyovXG4uY29sbGVjdGlvbi1ncmlkX193cmFwcGVyLnVubG9hZCB7XG4gIG1pbi1oZWlnaHQ6IDE4MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG9wYWNpdHk6IDAuMjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuXG4gICYgW2RhdGEtc2VjdGlvbi10eXBlPVwiY29sbGVjdGlvbi1ncmlkXCJdIHtcbiAgICBhbmltYXRpb246IGdyaWQtcHJvZHVjdF9fbG9hZGluZyAxLjVzIGVhc2UgaW5maW5pdGUgMS41cztcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1zaWRlYmFyIHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuZ3JpZF9faXRlbS0tc2lkZWJhciB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEwcHg7IC8qdXBkYXRlZCB3aXRoIHN0aWNreSBoZWFkZXIgSlMqL1xuICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1zaWRlYmFyX19ncm91cCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgJiAuY29sbGFwc2libGUtY29udGVudF9faW5uZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIH1cbn1cblxuLypSZW1vdmUgdG9wIGJvcmRlciBmcm9tIGZpcnN0IGZpbHRlciBncm91cCovXG4uZmlsdGVyLWZvcm0gZGl2OmZpcnN0LW9mLXR5cGUgLmNvbGxlY3Rpb24tc2lkZWJhcl9fZ3JvdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbiIsIi5zaXRlLWhlYWRlcl9fbG9nbyAubG9nby0taGFzLWludmVydGVkIHtcbiAgQG5lc3QgLmlzLWxpZ2h0ICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyX19sb2dvIC5sb2dvLS1pbnZlcnRlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG5lc3QgLmlzLWxpZ2h0ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fbG9nbyB7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fbG9nbyBhLFxuLmhlYWRlci1sb2dvIGEge1xuICBjb2xvcjogJGNvbG9yTmF2VGV4dDtcblxuICBAbmVzdCAuaXMtbGlnaHQgJiB7XG4gICAgY29sb3I6ICRjb2xvclN0aWNreU5hdkxpbmtzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gIEBuZXN0IC5pcy1saWdodCAmIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlci0tcGFzc3dvcmQge1xuICBjb2xvcjogdmFyKC0tY29sb3JOYXZUZXh0KTtcblxuICAmIGEsXG4gICYgYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yTmF2VGV4dCk7XG4gIH1cblxuICBAbmVzdCAuaXMtbGlnaHQgJiB7XG4gICAgY29sb3I6ICRjb2xvclN0aWNreU5hdkxpbmtzO1xuXG4gICAgJiBhLFxuICAgICYgYTpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLW5hdl9fZHJvcGRvd24tbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTVweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAbmVzdCAubWVnYW1lbnUgJiB7XG4gICAgcGFkZGluZzogNHB4IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiJHRhZ0FjdGl2ZUljb25TaXplOiAxNnB4O1xuJHRhZ0FjdGl2ZUljb25TaXplQWN0aXZlOiAxMHB4O1xuXG4udGFnLWxpc3RfX2hlYWRlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50YWctbGlzdCAudGFnLWxpc3Qge1xuICBtYXJnaW4tbGVmdDogY2FsYygkZ3V0dGVyIC8gMik7XG59XG5cbi50YWctbGlzdCBhLFxuLnRhZy1saXN0IGxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnRhZy1saXN0IGxhYmVsOmhvdmVyLFxuLnRhZzpmb2N1cy13aXRoaW4gbGFiZWwge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi50YWctLWFjdGl2ZSA+IGEsXG4udGFnLS1hY3RpdmUgPiBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi50YWctbGlzdC0tYWN0aXZlLXRhZ3M6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGFnLWxpc3QtLWNoZWNrYm94ZXMge1xuICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuXG4gICYgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDJweCk7XG4gICAgZm9udC1zaXplOiBtYXgoY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gMnB4KSwgMTRweCk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgaGVpZ2h0OiAkdGFnQWN0aXZlSWNvblNpemU7XG4gICAgICB3aWR0aDogJHRhZ0FjdGl2ZUljb25TaXplO1xuICAgIH1cbiAgfVxufVxuXG4udGFnLWxpc3QtLWNoZWNrYm94ZXMgLnRhZy0tYWN0aXZlIGE6YWZ0ZXIsXG4udGFnLS1hY3RpdmUgLnRhZ19fY2hlY2tib3g6YWZ0ZXIsXG5pbnB1dDpjaGVja2VkIH4gLnRhZ19fY2hlY2tib3g6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbn1cblxuLypSZW1vdmUgdGFncyAodG9wIG9mIHNpZGViYXIpKi9cbi50YWctLXJlbW92ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmIGEge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAvKlggaWNvbiBzaXRzIG92ZXIgYnV0dG9uLCBub3QgaW4gaXQqL1xuICAmIC5pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgfVxufVxuXG4vKkNvbG9yIHN3YXRjaGVzIGluIHNpZGViYXIqL1xuLnRhZy1saXN0LS1zd2F0Y2hlcyB7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XG5cbiAgQG5lc3QgLmRyYXdlciAmIHtcbiAgICBtYXJnaW4tbGVmdDogLTJweDtcbiAgfVxuXG4gICYgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG5sYWJlbC50YWdfX2NoZWNrYm94LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4udGFnX19jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvckJvcmRlcik7XG4gICAgaGVpZ2h0OiAkdGFnQWN0aXZlSWNvblNpemU7XG4gICAgd2lkdGg6ICR0YWdBY3RpdmVJY29uU2l6ZTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGhlaWdodDogJHRhZ0FjdGl2ZUljb25TaXplQWN0aXZlO1xuICAgIHdpZHRoOiAkdGFnQWN0aXZlSWNvblNpemVBY3RpdmU7XG4gICAgbGVmdDogM3B4O1xuICB9XG59XG5cbi50YWdfX2lucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbn1cbiIsIiRsYWJlbC1ib3R0b20tbWFyZ2luOiAxMnB4O1xuXG4udmFyaWFudC1pbnB1dC13cmFwIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDAgMCAtJGxhYmVsLWJvdHRvbS1tYXJnaW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmIGlucHV0IHtcbiAgICBAbWl4aW4gdmlzdWFsbHlIaWRkZW47XG4gIH1cblxuICAmIGxhYmVsIHtcbiAgICBAbWl4aW4gYmFzZUZvbnRTdGFjaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogN3B4IDE1cHggN3B4O1xuICAgIG1hcmdpbjogMCA4cHggJGxhYmVsLWJvdHRvbS1tYXJnaW4gMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkY29sb3JCb3JkZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBuZXN0IFtkYXRhLWNlbnRlci10ZXh0PVwiY2VudGVyXCJdICYge1xuICAgICAgbWFyZ2luOiAwIDRweCAkbGFiZWwtYm90dG9tLW1hcmdpbjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZDphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cbiAgfVxuXG4gICYgaW5wdXRbdHlwZT0ncmFkaW8nXTpmb2N1cyArIGxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAwNSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvclRleHRCb2R5O1xuICB9XG5cbiAgJiBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi52YXJpYW50LWlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIC8qRmlyZWZveCBidWcgZml4Ki9cbiAgQG5lc3Qgc2VsZWN0ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi52YXJpYW50LXdyYXBwZXIgKyAudmFyaWFudC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMjVweDtcbn1cblxuLm5vLWpzIC52YXJpYW50LXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udmFyaWFudC13cmFwcGVyLS1kcm9wZG93biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udmFyaWFudF9fbGFiZWxbZm9yXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi52YXJpYW50X19sYWJlbC1pbmZvIHtcbiAgLyp1bmRvIGFjY2VudCBzdGFjayBzdHlsZXMqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG4iLCIuZ3JpZC1wcm9kdWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBAbmVzdCAuZ3JpZC1vdmVyZmxvdy13cmFwcGVyICYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4uZ3JpZF9faXRlbS1pbWFnZS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ3JpZC1wcm9kdWN0X190aXRsZS0taGVhZGluZyB7XG4gIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDJweCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5bZGF0YS10eXBlX3Byb2R1Y3RfY2FwaXRhbGl6ZT1cInRydWVcIl0ge1xuICAmIC5ncmlkLXByb2R1Y3RfX3RpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gMnB4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4yZW07XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gM3B4KTtcbiAgICB9XG4gIH1cbn1cblxuLyogUHJldmVudCBsb25nIHdvcmRzIGZyb20gYnJlYWtpbmcgb3V0IG9mIGF2YWlsYWJsZSBzcGFjZSAqL1xuLmdyaWQtcHJvZHVjdF9fdGl0bGUge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuXG4uZ3JpZC1wcm9kdWN0X19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi5ncmlkLXByb2R1Y3RfX2xpbmstLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS1tYXNrIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cblxuICAmIC5ncmlkX19pbWFnZS1yYXRpbyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX21ldGEge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9faW1hZ2UtbWFzayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmdyaWQtcHJvZHVjdF9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uZ3JpZC1wcm9kdWN0X19zZWNvbmRhcnktaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTFweDtcbiAgbGVmdDogLTFweDtcbiAgcmlnaHQ6IC0xcHg7XG4gIGJvdHRvbTogLTFweDtcbiAgb3BhY2l0eTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcblxuICAmIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG5cbiAgQG5lc3QgLmdyaWQtcHJvZHVjdF9fY29udGVudDpob3ZlciAmIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMC4ycyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBAbmVzdCAuc3VwcG9ydHMtdG91Y2ggJiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZ3JpZC1wcm9kdWN0X19jb2xvci1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMC41cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fbWV0YSB7XG4gIEBtaXhpbiBiYXNlVGV4dENlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxMHB4IDAgNnB4IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS10eXBlQmFzZWxpbmVIZWlnaHRNaW51czAxKTtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBAbmVzdCAuc21hbGwtLWdyaWQtLWZsdXNoICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fdmVuZG9yIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgb3BhY2l0eTogMC42NTtcbn1cblxuLmdyaWQtcHJvZHVjdF9fcHJpY2Uge1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICBjb2xvcjogJGNvbG9yUHJpY2U7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLmdyaWQtcHJvZHVjdF9fcHJpY2UtLW9yaWdpbmFsIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4uZ3JpZC1wcm9kdWN0X19wcmljZS0tc2F2aW5ncyB7XG4gIGNvbG9yOiAkY29sb3JUZXh0U2F2aW5ncztcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLmdyaWQtcHJvZHVjdF9fdGFnIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgKiAwLjY1KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogNnB4IDVweCA2cHggN3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5O1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlO1xuXG4gICYuZ3JpZC1wcm9kdWN0X190YWctLXNvbGQtb3V0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAqIDAuODUpO1xuICAgIHBhZGRpbmc6IDdweCA3cHggN3B4IDlweDtcbiAgfVxufVxuXG4uZ3JpZC1wcm9kdWN0X190YWctLXNhbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JTYWxlVGFnO1xuICBjb2xvcjogJGNvbG9yU2FsZVRhZ1RleHQ7XG59XG5cbi5xdWljay1wcm9kdWN0X19idG4ge1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJ0blByaW1hcnk7XG4gIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogOHB4IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIHRyYW5zZm9ybSAwLjI1cyBlYXNlLW91dCwgYmFja2dyb3VuZCAwLjRzIGVhc2U7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcblxuICBAbmVzdCAubm8tanMgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLXByb2R1Y3RfX2NvbnRlbnQ6aG92ZXIgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1vdXQ7XG4gIH1cblxuICBAbmVzdCAuc3VwcG9ydHMtdG91Y2ggJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLXByb2R1Y3Q6Zm9jdXMtd2l0aGluICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgdHJhbnNmb3JtIDAuMjVzIGVhc2Utb3V0O1xuICB9XG5cbiAgJi5idG4tLW5vdC1yZWFkeSB7XG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qTW9iaWxlIGhvcml6b250YWwgb3ZlcmZsb3cgZ3JpZCovXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmdyaWQtb3ZlcmZsb3ctd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgJiAuZ3JpZCB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAmIC5ncmlkX19pdGVtIHtcbiAgICAgIHdpZHRoOiAzOXZ3O1xuICAgICAgZmxleDogMCAwIDM5dnc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogJHBhZ2Utd2lkdGgtZ3V0dGVyLXNtYWxsO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkcGFnZS13aWR0aC1ndXR0ZXItc21hbGw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuZ3JpZF9faXRlbSxcbiAgICAmIC5ncmlkLXByb2R1Y3RfX3ByaWNlIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICB9XG4gIH1cblxuICBbZGF0YS1hb3M9XCJvdmVyZmxvd19fYW5pbWF0aW9uXCJdIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwdncpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjhzIGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpO1xuXG4gICAgJi5hb3MtYW5pbWF0ZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5ncmlkLXByb2R1Y3RfX2NvbG9ycyB7XG4gIEBtaXhpbiBiYXNlVGV4dENlbnRlcjtcbiAgbWFyZ2luLXRvcDogM3B4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGxpbmUtaGVpZ2h0OiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbGluZS1oZWlnaHQ6ICRjb2xvclN3YXRjaENvbGxlY3Rpb25TaXplTGFyZ2U7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1jZW50ZXItdGV4dD1cImNlbnRlclwiXSAmIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgJiArIC5ncmlkLXByb2R1Y3RfX2NvbG9ycyB7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICB9XG59XG4iLCIuc2FsZXMtcG9pbnRzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAyNXB4IDA7XG5cbiAgQG5lc3QgLnF1aWNrLWFkZC1tb2RhbCAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zYWxlcy1wb2ludCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYgLmljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgQG5lc3QgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLnNhbGVzLXBvaW50IC5pY29uLWFuZC10ZXh0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuIiwiLypJbnZlbnRvcnkgaW5kaWNhdG9yKi9cbkBrZXlmcmFtZXMgaW52ZW50b3J5LXB1bHNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDIuNSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uaWNvbi0taW52ZW50b3J5IHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIHdpZHRoOiA5cHg7XG4gICAgaGVpZ2h0OiA5cHg7XG4gICAgYmFja2dyb3VuZDogIzU0YzYzYTtcbiAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIG1hcmdpbjogOHB4O1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGFuaW1hdGlvbjogaW52ZW50b3J5LXB1bHNlIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuXG4gIEBuZXN0IC5pbnZlbnRvcnktLWxvdyAmIHtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNGNEFGMjk7XG4gICAgfVxuICB9XG59XG4iLCIuY29sb3Itc3dhdGNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCA0cHggNHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGhlaWdodDogNDBweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkY29sb3JCb3JkZXI7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuXG4gIEBuZXN0IFtkYXRhLXN3YXRjaF9zdHlsZT0ncm91bmQnXSAmIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBib3JkZXI6IDNweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckJvZHk7XG5cbiAgICAvKlRyeSBhbmQgYXZvaWQgb3Zlci1waXhlbGF0ZWQgYm9yZGVycyBvbiBzb21lIHNjcmVlbnMqL1xuICAgIEBuZXN0IFtkYXRhLXN3YXRjaF9zdHlsZT0ncm91bmQnXSAmIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBib3JkZXItd2lkdGg6IDRweDtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIGxlZnQ6IC0xcHg7XG4gICAgICByaWdodDogLTFweDtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICB9XG4gIH1cbn1cblxuLypQcm9kdWN0IGdyaWQgZGlyZWN0IHZhcmlhbnQgbGlua3MgYW5kXG5zaWRlYmFyIGNvbG9yIHN3YXRjaGVzKi9cbmEuY29sb3Itc3dhdGNoOmhvdmVyLFxuLnRhZzpub3QoLnRhZy0tYWN0aXZlKSBsYWJlbDpob3ZlciAuY29sb3Itc3dhdGNoOmhvdmVyLFxuLnRhZzpmb2N1cy13aXRoaW4gLmNvbG9yLXN3YXRjaCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkY29sb3JUZXh0Qm9keTtcbn1cblxuLnRhZy0tYWN0aXZlIC5jb2xvci1zd2F0Y2gge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggJGNvbG9yVGV4dEJvZHk7XG59XG5cbi5jb2xvci1zd2F0Y2gtLXNtYWxsIHtcbiAgd2lkdGg6ICRjb2xvclN3YXRjaENvbGxlY3Rpb25TaXplO1xuICBoZWlnaHQ6ICRjb2xvclN3YXRjaENvbGxlY3Rpb25TaXplO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICB3aWR0aDogJGNvbG9yU3dhdGNoQ29sbGVjdGlvblNpemVMYXJnZTtcbiAgICBoZWlnaHQ6ICRjb2xvclN3YXRjaENvbGxlY3Rpb25TaXplTGFyZ2U7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYm9yZGVyOiAycHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb2R5O1xuXG4gICAgQG5lc3QgW2RhdGEtc3dhdGNoX3N0eWxlPSdyb3VuZCddICYge1xuICAgICAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gICAgfVxuICB9XG59XG5cbi50YWctLXN3YXRjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmID4gbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnRhZy0tc2hvdy1sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAudGFnX190ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIH1cbn1cblxuLmNvbG9yLXN3YXRjaC0tZmlsdGVyIHtcbiAgd2lkdGg6ICRjb2xvclN3YXRjaFNpZGViYXJTaXplO1xuICBoZWlnaHQ6ICRjb2xvclN3YXRjaFNpZGViYXJTaXplO1xufVxuXG4udGFnLS1hY3RpdmUgLmNvbG9yLXN3YXRjaC0tZmlsdGVyOmhvdmVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuIiwiLmNvbGxlY3Rpb24taXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci1zbWFsbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyO1xuICB9XG5cbiAgQG5lc3QgLmdyaWQtLW5vLWd1dHRlcnMgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICY6aG92ZXIgLmNvbGxlY3Rpb24taW1hZ2Uge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMywxLjAzKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC44cyBlYXNlO1xuXG4gICAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW06bm90KC5jb2xsZWN0aW9uLWl0ZW0tLWJlbG93KSB7XG4gICY6YWZ0ZXIge1xuICAgIEBtaXhpbiBvdmVybGF5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckdyaWRPdmVybGF5O1xuICAgIG9wYWNpdHk6IHZhcigtLWNvbG9yR3JpZE92ZXJsYXlPcGFjaXR5KTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuOHMgZWFzZTtcbiAgfVxuXG4gICY6aG92ZXI6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IGNhbGModmFyKC0tY29sb3JHcmlkT3ZlcmxheU9wYWNpdHkpICsgMC4xNSk7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG5cbiAgJiBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taXRlbS0tYmVsb3cgaW1nIHtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLmNvbGxlY3Rpb24taW1hZ2UtLXBsYWNlaG9sZGVyIHtcbiAgb3BhY2l0eTogMTtcblxuICAmIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1pbWFnZS0tc3F1YXJlIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG59XG5cbi5jb2xsZWN0aW9uLWltYWdlLS1sYW5kc2NhcGUge1xuICBwYWRkaW5nLXRvcDogNzUlO1xufVxuXG4uY29sbGVjdGlvbi1pbWFnZS0tcG9ydHJhaXQge1xuICBwYWRkaW5nLXRvcDogMTUwJTtcbn1cblxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMjtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVDb2xsZWN0aW9uVGl0bGUpICogMC44KTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlQ29sbGVjdGlvblRpdGxlKTtcblxuICAgIC8qU2xpZ2h0bHkgc21hbGxlciBiYXNlIHdoZW4gNS1hY3Jvc3Mgb24gZGVza3RvcCovXG4gICAgQG5lc3QgLm1lZGl1bS11cC0tb25lLWZpZnRoICYge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IFtkYXRhLXR5cGVfcHJvZHVjdF9jYXBpdGFsaXplPVwidHJ1ZVwiXSAmIHtcbiAgICAmIHNwYW4ge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4yZW07XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLmNvbGxlY3Rpb24taXRlbS0tYmVsb3cgJiB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1oZWFkaW5nIHtcbiAgQG1peGluIGhlYWRpbmdGb250U3RhY2s7XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1vdmVybGFpZCxcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1vdmVybGFpZC1ib3gge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogMTBweDtcbn1cblxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLW92ZXJsYWlkIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIDAgNTBweCByZ2JhKDAsMCwwLDEpO1xufVxuXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tb3ZlcmxhaWQtYm94IHtcbiAgJiA+IHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cbn1cblxuLypUaXRsZSBhbGlnbm1lbnQqL1xuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLXRvcC1jZW50ZXIsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tY2VudGVyLFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWJvdHRvbS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS10b3AtcmlnaHRcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1yaWdodCxcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1ib3R0b20tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWxlZnQsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tY2VudGVyLFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLXJpZ2h0IHtcbiAgJltjbGFzcyo9XCJjb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1vdmVybGFpZFwiXSB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5cbi8qVG9wIGFsaWduIHNvbWUgdGl0bGVzKi9cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS10b3AtbGVmdCxcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS10b3AtY2VudGVyLFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLXRvcC1yaWdodCB7XG4gICZbY2xhc3MqPVwiY29sbGVjdGlvbi1pdGVtX190aXRsZS0tb3ZlcmxhaWRcIl0ge1xuICAgIHRvcDogMTBweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHRvcDogMThweDtcbiAgICB9XG4gIH1cbn1cblxuLypCb3R0b20gYWxpZ24gc29tZSB0aXRsZXMqL1xuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWJvdHRvbS1sZWZ0LFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWJvdHRvbS1jZW50ZXIsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tYm90dG9tLXJpZ2h0IHtcbiAgJltjbGFzcyo9XCJjb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1vdmVybGFpZFwiXSB7XG4gICAgYm90dG9tOiAxMHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgYm90dG9tOiAxOHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLmN1c3RvbS1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IC0kZ3JpZC1ndXR0ZXI7XG4gIG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IC0kZ3JpZC1ndXR0ZXItc21hbGw7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1ndXR0ZXItc21hbGw7XG4gIH1cbn1cblxuLmN1c3RvbV9faXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXI7XG4gIHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyO1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItc21hbGw7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyLXNtYWxsO1xuXG4gICAgJi5zbWFsbC0tb25lLWhhbGYge1xuICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmN1c3RvbV9faXRlbS1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY3VzdG9tX19pdGVtLWlubmVyLS12aWRlbyxcbi5jdXN0b21fX2l0ZW0taW5uZXItLWh0bWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmN1c3RvbV9faXRlbS1pbm5lci0taW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmN1c3RvbV9faXRlbS1pbm5lci0taHRtbCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jdXN0b21fX2l0ZW0taW5uZXItLXBsYWNlaG9sZGVyLWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hbGlnbi0tdG9wLW1pZGRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmFsaWduLS10b3AtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmFsaWduLS1taWRkbGUtbGVmdCB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmFsaWduLS1jZW50ZXIge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmFsaWduLS1taWRkbGUtcmlnaHQge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uYWxpZ24tLWJvdHRvbS1sZWZ0IHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi0tYm90dG9tLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hbGlnbi0tYm90dG9tLXJpZ2h0IHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuIiwiLmFydGljbGVfX2dyaWQtaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxN3B4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5hcnRpY2xlX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICsgMnB4KTtcbn1cblxuLmFydGljbGVfX2RhdGUge1xuICBAbWl4aW4gYmFzZUV4dHJhU21hbGxGb250U3RhY2s7XG4gIG1hcmdpbi1ib3R0b206IDNweDtcblxuICBAbmVzdCAuc2VjdGlvbi1oZWFkZXIgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cblxuLmFydGljbGVfX2F1dGhvciB7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgQG1peGluIGJhc2VFeHRyYVNtYWxsRm9udFN0YWNrO1xufVxuXG4uYXJ0aWNsZV9fZ3JpZC1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcjtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuICB9XG59XG5cbi5hcnRpY2xlX19leGNlcnB0IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cbiIsIi5sb2dvLWJhciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogLSRndXR0ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5sb2dvLWJhcl9faXRlbSB7XG4gIGZsZXg6IDAgMSAxMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIGNhbGMoJGd1dHRlciAvIDIpIGNhbGMoJGd1dHRlciAvIDEuNSk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGZsZXg6IDAgMSAxNjBweDtcbiAgICBtYXJnaW46IDAgY2FsYygkZ3V0dGVyIC8gMS41KSAkZ3V0dGVyO1xuICB9XG59XG5cbi5sb2dvLWJhcl9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ubG9nby1iYXJfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdIC5sb2dvLWJhcl9faXRlbSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW0ge1xuICBhbmltYXRpb246IGZhZGUtaW4gMC41cyBlYXNlIDBzIGZvcndhcmRzO1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoMikge1xuICBhbmltYXRpb24tZGVsYXk6IDAuMnM7XG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCgzKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC40cztcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDQpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoNSkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuOHM7XG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCg2KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMS4wcztcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDcpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjJzXG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCg4KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMS40cztcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDkpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjZzO1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoMTApIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjhzO1xufVxuIiwiLmJhY2tncm91bmQtbWVkaWEtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICRjb2xvckxhcmdlSW1hZ2VCZztcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgei1pbmRleDogMDtcbn1cblxuLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fdmlkZW8ge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICB3aWR0aDogNDAwJTtcbiAgICBsZWZ0OiAtMTUwJTtcblxuICAgIGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAtMTUwJTtcbiAgICB9XG4gIH1cblxuICAmIGlmcmFtZSxcbiAgJiB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogMTIwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGxlZnQ6IC0xNTAlO1xuICAgICAgaGVpZ2h0OiAxNTAlO1xuICAgICAgd2lkdGg6IDQwMCU7XG4gICAgfVxuXG4gICAgLypUaGlzIG1pbi13aWR0aCBtYXkgbmVlZCB0byBjaGFuZ2Ugc2xpZ2h0bHkgZGVwZW5kaW5nIG9uXG4gICAgZW1iZWRkZWQgdmlkZW8gZGltZW5zaW9ucy4gQ2FuIGRvIG9uIGEgcGVyLXNob3AgYmFzaXMqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNDBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDMwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgdG9wOiAtMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLWludGVyYWN0YWJsZSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gICYgaWZyYW1lLFxuICAmIHZpZGVvIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxufVxuXG4uYmFja2dyb3VuZC1tZWRpYS10ZXh0X19pbm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fYWxpZ25lciB7XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyICogMik7XG59XG5cbi5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3RleHQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXNpemU6IDEuMWVtO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuICBwYWRkaW5nOiAkZ3V0dGVyO1xuICB3aWR0aDogMzgwcHg7XG5cbiAgQG5lc3QgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tbGVmdCAmIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgQG5lc3QgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tcmlnaHQgJiB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fdGV4dC0tZnJhbWVkIHtcbiAgYm9yZGVyOiAkdGV4dEZyYW1lTWFyZ2luU21hbGwgc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9keTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBib3JkZXItd2lkdGg6ICR0ZXh0RnJhbWVNYXJnaW5MYXJnZTtcbiAgfVxufVxuXG4uYmFja2dyb3VuZC1tZWRpYS10ZXh0X190ZXh0IC5idG4ge1xuICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS1sZWZ0IC5hbmltYXRpb24tY3JvcHBlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS1yaWdodCAuYW5pbWF0aW9uLWNyb3BwZXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4vKlNlY3Rpb24gaGVpZ2h0Ki9cbi5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fY29udGFpbmVyLFxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMjQwcHg7XG5cbiAgICBAbmVzdCAucHJvbW8tdmlkZW8gJiB7XG4gICAgICBoZWlnaHQ6IDU1MHB4O1xuICAgIH1cbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbGlnbmVyIHtcbiAgICBtYXJnaW46IC02cHggNnB4IDZweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X190ZXh0IHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAwLjc1KTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0LmxvYWRpbmcge1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAxMTdweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS00NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTQ1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNDUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS01NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTU1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNTUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA1NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS02NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTY1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNjUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA2NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS03NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTc1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNzUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA3NTBweDtcbiAgfVxufVxuXG5bZGF0YS1hb3M9XCJiYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2FuaW1hdGlvblwiXSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19pbWFnZSxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2ltYWdlIHN2ZyxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgYW5pbWF0aW9uOiB6b29tLWZhZGUgMi41cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gIHRyYW5zaXRpb246IG5vbmU7IC8qZml4ZXMgc2FmYXJpIGFuaW1hdGlvbiBjb25mbGljdCovXG5cbiAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5bZGF0YS1hb3M9XCJiYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19pbWFnZSxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2ltYWdlIHN2ZyxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdLmxvYWRlZC5hb3MtYW5pbWF0ZSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gIGFuaW1hdGlvbjogem9vbS1mYWRlIDIuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB0cmFuc2l0aW9uOiBub25lOyAvKmZpeGVzIHNhZmFyaSBhbmltYXRpb24gY29uZmxpY3QqL1xuXG4gIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgW2RhdGEtYW9zPVwiYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbmltYXRpb25cIl0gLmJhY2tncm91bmQtbWVkaWEtdGV4dF9faW5uZXIgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIEBuZXN0IC5uby1qcyAmIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgW2RhdGEtYW9zPVwiYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbmltYXRpb25cIl0ubG9hZGVkLmFvcy1hbmltYXRlIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2lubmVyIC5hbmltYXRpb24tY29udGVudHMge1xuICAgIGFuaW1hdGlvbjogcmlzZS11cCAxcyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMC41cyBmb3J3YXJkcztcblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiLnF1b3RlLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbn1cblxuLnRlc3RpbW9uaWFsLXN0YXJzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4udGVzdGltb25pYWxzLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogNDBweCAwIDU1cHg7XG4gIHdpZHRoOiAzMyU7XG5cbiAgLypIaWRlIGFsbCBidXQgZmlyc3Qgc2xpZGUgdG8gcHJldmVudCBwYWdlIHJlZmxvd3MgcHJpb3IgdG8gaW5pdCovXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG5lc3QgLmZsaWNraXR5LXNsaWRlciAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJiAudGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlLCBib3gtc2hhZG93IDAuNXMgZWFzZTtcbiAgfVxuXG4gICYuaXMtc2VsZWN0ZWQgLnRlc3RpbW9uaWFscy1zbGlkZXJfX3RleHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIC50ZXN0aW1vbmlhbHMtc2xpZGVyX190ZXh0IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44Nik7XG4gICAgfVxuXG4gICAgJi5pcy1zZWxlY3RlZCAudGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgfVxufVxuXG4udGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gIG1hcmdpbjogMCAzMHB4O1xuICBwYWRkaW5nOiAzMHB4IGNhbGMoJGd1dHRlciAvIDIpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvckJvZHkpO1xuICBjb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiBjaXRlIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDFweCk7XG4gICAgfVxuICB9XG5cbiAgJiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyA0KTtcblxuICAgICYgKyBjaXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi50ZXN0aW1vbmlhbHNfX2luZm8ge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDFweCk7XG59XG5cbiR0ZXN0aW1vbmlhbEltYWdlU2l6ZTogMTQycHg7XG4kdGVzdGltb25pYWxJbWFnZVNpemVSb3VuZDogNjVweDtcblxuLnRlc3RpbW9uaWFsLWltYWdlIHtcbiAgbWF4LXdpZHRoOiAkdGVzdGltb25pYWxJbWFnZVNpemU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG5cbiAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gICYgLmltYWdlLXdyYXAge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi50ZXN0aW1vbmlhbC1pbWFnZS0tcm91bmQge1xuICB3aWR0aDogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG4gIGhlaWdodDogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG5cbiAgLypmaXggYW5pbWF0aW9uIGJ1ZyBpbiBTYWZhcmkqL1xuICAmIGltZyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiAkdGVzdGltb25pYWxJbWFnZVNpemVSb3VuZDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFscy1zZWN0aW9uIC5mbGlja2l0eS1wYWdlLWRvdHMge1xuICBib3R0b206IDA7XG59XG4iLCIuYW5ub3VuY2VtZW50LWJhciB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICogMC43NSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnQ7XG4gIGNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnRUZXh0O1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjsgLypvbmx5IHdoZW4gc2FtZSBiZyBhcyBib2R5Ki9cblxuICAmIGEsXG4gICYgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGNvbG9yQW5ub3VuY2VtZW50VGV4dDtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRjb2xvckFubm91bmNlbWVudFRleHQ7XG4gICAgfVxuICB9XG59XG5cbi5hbm5vdW5jZW1lbnQtc2xpZGVyX19zbGlkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMCA1cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYW5ub3VuY2VtZW50LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjb2xvckFubm91bmNlbWVudFRleHQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnRUZXh0O1xuICB9XG59XG5cbi5hbm5vdW5jZW1lbnQtdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuXG4uYW5ub3VuY2VtZW50LWxpbmstdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIEBuZXN0IC5hbm5vdW5jZW1lbnQtbGluayAmIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gICYgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAvKjEgc2xpZGUgYXQgYSB0aW1lLCBpbmxpbmUgdGV4dCovXG4gIC5hbm5vdW5jZW1lbnQtc2xpZGVyW2RhdGEtY29tcGFjdD1cInRydWVcIl0ge1xuICAgICYgLmFubm91bmNlbWVudC1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgJiAuYW5ub3VuY2VtZW50LXRleHQsXG4gICAgJiAuYW5ub3VuY2VtZW50LWxpbmstdGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuXG4gICAgJiAuYW5ub3VuY2VtZW50LXRleHQgKyAuYW5ub3VuY2VtZW50LWxpbmstdGV4dCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICB9XG5cbiAgICAmLmZsaWNraXR5LWVuYWJsZWQgLmFubm91bmNlbWVudC1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8qVXAgdG8gMyBiZXNpZGUgZWFjaG90aGVyKi9cbiAgLmFubm91bmNlbWVudC1zbGlkZXJbZGF0YS1jb21wYWN0PVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmIC5hbm5vdW5jZW1lbnQtc2xpZGVyX19zbGlkZSB7XG4gICAgICBmbGV4OiAxIDEgMzMlO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmFubm91bmNlbWVudC1zbGlkZXIge1xuICAgICYgLmFubm91bmNlbWVudC1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZsaWNraXR5LWVuYWJsZWQgLmFubm91bmNlbWVudC1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLnNob3BpZnktY2hhbGxlbmdlX19jb250YWluZXIge1xuICBwYWRkaW5nOiAzMHB4IDIycHg7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiAxMjBweCAwO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNTIwcHg7XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb24gLmVycm9ycyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogNTIwcHg7XG59XG5cbi5tb2RhbCAubmV3c2xldHRlciAuaDEge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cbn1cblxuLm1vZGFsIC5uZXdzbGV0dGVyIC5pbWFnZS13cmFwIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gNCk7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4ubW9kYWwgLm5ld3NsZXR0ZXIgLnRleHQtY2xvc2Uge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLm5ld3NsZXR0ZXJfX2lucHV0LWdyb3VwIHtcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgbWF4LXdpZHRoOiA0MDBweDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXJfX2lucHV0IHtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG5cbiAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmZvcm1fX3N1Ym1pdC0tbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZm9ybV9fc3VibWl0LS1zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuZm9ybV9fc3VibWl0LS1sYXJnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZm9ybV9fc3VibWl0LS1zbWFsbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5bZGF0YS1oYXMtaW1hZ2VdIC5tb2RhbF9fY2xvc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJvZHkpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBhZGRpbmc6IDVweDtcbiAgdG9wOiAxMHB4O1xuICByaWdodDoxMHB4O1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG5bZGF0YS1zZWN0aW9uLXR5cGU9XCJuZXdzbGV0dGVyLXBvcHVwXCJdIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYgLm1vZGFsX19pbm5lciB7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIH1cblxuICAgICYubW9kYWwtLXNxdWFyZSAubW9kYWxfX2Nsb3NlIHtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICB9XG4gIH1cblxuICAmIC5oMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJiAucnRlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmIC5wb3B1cC1jdGEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmIC5ub3RlLS1zdWNjZXNzIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXJfX2lucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXItYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG5cbiAgJiAuc29jaWFsLWljb25zIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmc6IDVweDtcblxuICB9XG59XG5cbi5tb2RhbF9fY2VudGVyZWQtY29udGVudC5uZXdzbGV0dGVyLS1oYXMtaW1hZ2Uge1xuICBwYWRkaW5nOiAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyLXBvcHVwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWluLXdpZHRoOiA2NTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cblxuICAgICYubmV3c2xldHRlci1wb3B1cC0taW1hZ2UtcmV2ZXJzZWQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cbiAgfVxuXG4gICYgLmZvcm1fX3N1Ym1pdC0tbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmIC5mb3JtX19zdWJtaXQtLXNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXItcG9wdXBfX2ltYWdlLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXItcG9wdXBfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJiAubmV3c2xldHRlci1wb3B1cF9fY29udGVudCB7XG4gICAgcGFkZGluZzogNDBweDtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG5uZXdzbGV0dGVyLXJlbWluZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yQnRuUHJpbWFyeVRleHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJ0blByaW1hcnkpO1xuXG4gICYubW9kYWwtLXNxdWFyZSAubW9kYWxfX2Nsb3NlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3JCdG5QcmltYXJ5VGV4dCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvckJ0blByaW1hcnlUZXh0KTtcbiAgICAgIG9wYWNpdHk6IDUwJTtcbiAgICB9XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyLXJlbWluZGVyX19tZXNzYWdlIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpKjAuNSk7XG4gIH1cbn1cblxuLmZvcm1fX3N1Ym1pdC0tc21hbGwge1xuICBsaW5lLWhlaWdodDogMDtcbn1cbiIsIi5tYXAtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA2NTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGhlaWdodDogNTAwcHg7XG4gIH1cblxuICAmIC5wYWdlLXdpZHRoIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLm1hcC1zZWN0aW9uLS1sb2FkLWVycm9yIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubWFwLW9uYm9hcmRpbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgei1pbmRleDogMDtcbn1cblxuLm1hcC1zZWN0aW9uX19vdmVybGF5LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1hcC1zZWN0aW9uX19vdmVybGF5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIHBhZGRpbmc6ICRndXR0ZXI7XG4gIG1hcmdpbjogJGd1dHRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGd1dHRlcioyKTtcbiAgei1pbmRleDogMztcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6ICRndXR0ZXI7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgd2lkdGg6IDMwJTtcbiAgfVxuXG4gIEBuZXN0IC5tYXAtc2VjdGlvbi0tbG9hZC1lcnJvciAmIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4ubWFwLXNlY3Rpb25fX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi8qT3B0aWNhbGx5IGNlbnRlciBtYXAgaW4gdmlzaWJsZSBhcmVhIHdpdGhcbmV4dGVuZGVkIGhlaWdodC93aWR0aHMgYW5kIG5lZ2F0aXZlIG1hcmdpbnMqL1xuLm1hcC1zZWN0aW9uX19jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgLyphcGkgd2lsbCBpbmxpbmUgcmVsYXRpdmUgc29tZXRpbWVzKi9cbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxNTAlO1xuICBtYXJnaW4tYm90dG9tOiAtNTAlO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICB3aWR0aDogMTMwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwIC0zMCUgMCAwO1xuICB9XG5cbiAgQG5lc3QgLmRpc3BsYXktbWFwLS1mYWxzZS5iZy1pbWFnZS0tdHJ1ZSAmICB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgJiBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuW2RhdGEtYW9zPVwibWFwLXNlY3Rpb25fX2FuaW1hdGlvblwiXSAubWFwLXNlY3Rpb25fX2NvbnRhaW5lciB7XG4gIGFuaW1hdGlvbjogZmFkZS1vdXQgMC41cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gIG9wYWNpdHk6IDA7XG59XG5cbltkYXRhLWFvcz1cIm1hcC1zZWN0aW9uX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLm1hcC1zZWN0aW9uX19jb250YWluZXIge1xuICBhbmltYXRpb246IHpvb20tZmFkZSAyLjVzIGN1YmljLWJlemllcigwLjI2LCAwLjU0LCAwLjMyLCAxKSAwcyBmb3J3YXJkcztcbn1cbiIsIi5pbWFnZS1yb3cge1xuICBAbWl4aW4gY2xlYXJmaXg7XG59XG5cbi5pbWFnZS1yb3dfX3BsYWNlaG9sZGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMy4zMyU7XG5cbiAgQG5lc3QgLmltYWdlLXJvdy0tZ3V0dGVycyAmIHtcbiAgICB3aWR0aDogMzIlO1xuICAgIG1hcmdpbjogMCAxJSAyJTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmltYWdlLXJvd19faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZmxvYXQ6IGxlZnQ7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4vKlpvb20gY3Vyc29yIHVubGVzcyBpbnNpZGUgYSBsaW5rKi9cbltkYXRhLXpvb209XCJ0cnVlXCJdIHtcbiAgJiAuaW1hZ2Utcm93X19pbWFnZSAuanMtcGhvdG9zd2lwZV9fem9vbSB7XG4gICAgY3Vyc29yOiB6b29tLWluO1xuICB9XG5cbiAgJiAuaW1hZ2Utcm93X19pbWFnZSBhIC5qcy1waG90b3N3aXBlX196b29tIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbiIsIiR6LWluZGV4LXByb21vLXRpbnQ6IDI7XG4kei1pbmRleC1wcm9tby1jb2xvci1vdmVybGF5OiAzO1xuJHotaW5kZXgtcHJvbW8tZnJhbWU6IDM7XG4kei1pbmRleC1wcm9tby10ZXh0OiAzO1xuJHotaW5kZXgtcHJvbW8tY29udGVudDogNDtcbiR6LWluZGV4LXByb21vLWxpbms6IDU7XG5cbi5wcm9tby1ncmlkLS1zcGFjZS10b3Age1xuICBwYWRkaW5nLXRvcDogJGluZGV4U2VjdGlvbk1hcmdpblNtYWxsO1xuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZTtcbiAgfVxufVxuXG4ucHJvbW8tZ3JpZC0tc3BhY2UtYm90dG9tIHtcbiAgcGFkZGluZy1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmctYm90dG9tOiAkaW5kZXhTZWN0aW9uTWFyZ2luTGFyZ2U7XG4gIH1cbn1cblxuLnByb21vLWdyaWRfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgJiAuYnRuIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogN3B4O1xuICAgIH1cbiAgfVxuXG4gICYuaG9yaXpvbnRhbC1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYgLmJ0biB7XG4gICAgICBtYXJnaW46IDJweCA1cHg7XG4gICAgfVxuICB9XG5cbiAgJi5ob3Jpem9udGFsLXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5wcm9tby1ncmlkX19jb250YWluZXItLWJveGVkIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiAucHJvbW8tZ3JpZF9fYmcge1xuICAgICAgaGVpZ2h0OiA2MCU7XG4gICAgfVxuXG4gICAgJiAucHJvbW8tZ3JpZF9fY29udGVudCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDU1JTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA1MHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICB9XG4gIH1cbn1cblxuLypGcmFtZWQgYnV0IG5vdCBib3hlZCovXG4ucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1mcmFtZWQ6bm90KC5wcm9tby1ncmlkX19jb250YWluZXItLWJveGVkKTphZnRlciB7XG4gIEBtaXhpbiBvdmVybGF5O1xuICBib3JkZXI6ICR0ZXh0RnJhbWVNYXJnaW5TbWFsbCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2xvckhlcm9UZXh0O1xuICB6LWluZGV4OiAkei1pbmRleC1wcm9tby1mcmFtZTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGV4dEZyYW1lTWFyZ2luTGFyZ2U7XG4gIH1cblxuICAvKldoZW4gdGV4dCBpcyBub3Qgb3ZlcmxheWluZyBpbWFnZSwgYm9yZGVyIHNob3VsZCBiZSB0ZXh0IGNvbG9yKi9cbiAgQG5lc3QgLnR5cGUtc2FsZV9jb2xsZWN0aW9uICYsXG4gIC50eXBlLXByb2R1Y3QgJixcbiAgLnR5cGUtYmFubmVyICYge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkY29sb3JUZXh0Qm9keTtcbiAgfVxufVxuXG4udmlkZW8taW50ZXJhY3RhYmxlLnByb21vLWdyaWRfX2NvbnRhaW5lci0tZnJhbWVkOm5vdCgucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1ib3hlZCk6YWZ0ZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnByb21vLWdyaWRfX2NvbnRhaW5lci0tdGludDpiZWZvcmUge1xuICBAbWl4aW4gb3ZlcmxheTtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogJHotaW5kZXgtcHJvbW8tdGludDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wcm9tby1ncmlkX19zbGlkZS1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogJHotaW5kZXgtcHJvbW8tbGluaztcblxuICAmOmhvdmVyIHtcbiAgICAmIH4gLnByb21vLWdyaWRfX2NvbnRlbnQgLmJ0bjpub3QoLmJ0bi0tc2Vjb25kYXJ5KTpub3QoLmJ0bi0tdGVydGlhcnkpOm5vdCguYnRuLS1pbnZlcnNlKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JCdG5QcmltYXJ5TGlnaHQ7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjI1cztcblxuICAgICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdzcXVhcmUnXSAmLFxuICAgICAgW2RhdGEtYnV0dG9uX3N0eWxlXj0ncm91bmQnXSAmIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYW5pbWF0aW9uOiBzaGluZSAwLjc1cyBjdWJpYy1iZXppZXIoMC4wMSwgMC41NiwgMSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb21vLWdyaWRfX2NvbnRlbnQge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgcGFkZGluZzogMmVtIDIuNWVtOyAvKlJlbGF0aXZlIHRvIHRleHQtc2l6ZSovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgei1pbmRleDogJHotaW5kZXgtcHJvbW8tY29udGVudDtcblxuICBAbmVzdCAucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1mcmFtZWQ6bm90KC5wcm9tby1ncmlkX19jb250YWluZXItLWJveGVkKSAmIHtcbiAgICBtYXJnaW46IDEuNWVtO1xuICB9XG5cbiAgJiBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBAbmVzdCAudmVydGljYWwtdG9wICYge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICBAbmVzdCAudmVydGljYWwtY2VudGVyICYge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxuXG4gIEBuZXN0IC52ZXJ0aWNhbC1ib3R0b20gJiB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIH1cbn1cblxuLnZpZGVvLWludGVyYWN0YWJsZSAucHJvbW8tZ3JpZF9fY29udGVudCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ucHJvbW8tZ3JpZF9fY29udGVudC0tYm94ZWQge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luOiAxMHB4O1xuICB9XG59XG5cbi5wcm9tby1ncmlkX19jb250ZW50LS1mcmFtZWQucHJvbW8tZ3JpZF9fY29udGVudC0tYm94ZWQge1xuICBib3JkZXI6ICR0ZXh0RnJhbWVNYXJnaW5TbWFsbCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb2R5O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggJGNvbG9yVGV4dEJvZHk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGJvcmRlci13aWR0aDogJHRleHRGcmFtZU1hcmdpbkxhcmdlO1xuICB9XG59XG5cbi8qUmFkaWFsIGdyYWRpZW50IG9uIG9ubHkgc29tZSB0eXBlcyovXG4udHlwZS1hZHZhbmNlZCxcbi50eXBlLXNpbXBsZSB7XG4gICYgLnByb21vLWdyaWRfX2NvbnRlbnQ6bm90KC5wcm9tby1ncmlkX19jb250ZW50LS1ib3hlZCk6bm90KC5wcm9tby1ncmlkX19jb250ZW50LS1zYWxlKSB7XG4gICAgY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuXG4gICAgJiBhIHtcbiAgICAgIGNvbG9yOiAkY29sb3JIZXJvVGV4dDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuXG4gICAgICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J3NxdWFyZSddICYsXG4gICAgICBbZGF0YS1idXR0b25fc3R5bGVePSdyb3VuZCddICYge1xuICAgICAgICAmOm5vdCguYnRuLS1pbnZlcnNlKSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYgLmJ0bi0taW52ZXJzZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgQG1peGluIG92ZXJsYXk7XG4gICAgICBAbWl4aW4gaGVyb1JhZGlhbDtcbiAgICAgIHotaW5kZXg6ICR6LWluZGV4LXByb21vLXRpbnQ7XG4gICAgfVxuICB9XG59XG5cbi50eXBlLWFkdmFuY2VkLFxuLnR5cGUtcHJvZHVjdCxcbi50eXBlLXNhbGVfY29sbGVjdGlvbiB7XG4gICYgLnJ0ZS0tc3Ryb25nIHtcbiAgICBAbWl4aW4gaGVhZGluZ0ZvbnRTdGFjaztcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICB9XG5cbiAgJiAucnRlLS1lbSB7XG4gICAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgICBmb250LXNpemU6IDAuOTM3NWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbn1cblxuLnR5cGUtYWR2YW5jZWQsXG4udHlwZS1wcm9kdWN0IHtcbiAgJiAucnRlLS1zdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC50eXBlLWFkdmFuY2VkLFxuICAudHlwZS1wcm9kdWN0IHtcbiAgICAmIC5ydGUtLXN0cm9uZyB7XG4gICAgICBmb250LXNpemU6IDIuMTI1ZW07XG4gICAgfVxuICB9XG5cbiAgLnR5cGUtcHJvZHVjdCB7XG4gICAgJi5mbGV4LWdyaWRfX2l0ZW0tLTUwLFxuICAgICYuZmxleC1ncmlkX19pdGVtLS0zMyB7XG4gICAgICAmIC5ydGUtLXN0cm9uZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9tby1ncmlkX19iZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gIC8qQWRkIGNvbG9yIG92ZXJsYXkgaWYgbm90IGJveGVkIHZlcnNpb24qL1xuICBAbmVzdCAucHJvbW8tZ3JpZF9fY29udGFpbmVyOm5vdCgucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1ib3hlZCkgJjpiZWZvcmUge1xuICAgIEBtaXhpbiBvdmVybGF5ICR6LWluZGV4LXByb21vLWNvbG9yLW92ZXJsYXk7XG4gICAgQG1peGluIGhlcm9TY3JpbTtcbiAgfVxuXG4gICYgLnBsYWNlaG9sZGVyLXN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi50eXBlLXNpbXBsZSB7XG4gIC5wcm9tby1ncmlkX19iZyAucGxhY2Vob2xkZXItc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4udmlkZW8taW50ZXJhY3RhYmxlIC5wcm9tby1ncmlkX19iZzpiZWZvcmUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnByb21vLWdyaWRfX2JnLWltYWdlIHtcbiAgei1pbmRleDogJHotaW5kZXgtaGVyby1pbWFnZTtcblxuICBAbmVzdCBbZGF0YS1hb3M9XCJpbWFnZS1mYWRlLWluXCJdLmFvcy1hbmltYXRlICYge1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAxcyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gICAgdHJhbnNpdGlvbjogbm9uZTsgLypmaXhlcyBzYWZhcmkgYW5pbWF0aW9uIGNvbmZsaWN0Ki9cbiAgfVxufVxuXG4ucHJvbW8tZ3JpZF9fdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogJHotaW5kZXgtcHJvbW8tZnJhbWU7XG5cbiAgJiAuYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09IFR5cGU6IEFkdmFuY2VkID09PT09PT09PT09PT09PT09PT09PSAqL1xuLnR5cGUtYWR2YW5jZWQge1xuICAmIC5wcm9tby1ncmlkX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyZW07XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHBhZGRpbmc6IDEuNWVtO1xuICAgIH1cbiAgfVxuXG4gICYgLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgIH1cbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PSBUeXBlOiBTYWxlIENvbGxlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09ICovXG4udHlwZS1zYWxlX2NvbGxlY3Rpb24ge1xuICBmbGV4LWdyb3c6IDE7XG4gIG1heC1oZWlnaHQ6IDYwMHB4O1xuXG4gICYgLnByb21vLWdyaWRfX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yU21hbGxJbWFnZUJnO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAmIC5wcm9tby1ncmlkX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyZW07XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nOiAxZW07XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgICY6bm90KC5wcm9tby1ncmlkX19jb250ZW50LS1zbWFsbC10ZXh0KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLypDdXN0b20gdHlwb2dyYXBoeSBzdHlsZXMqL1xuICAmIC5ydGUtLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3LjVweDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLnJ0ZS0tc3Ryb25nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAzLjM3NWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAvKkN1c3RvbSB0eXBlIGxheW91dCBmb3IgXCJvZmZcIiB3aGVuIGZvbGxvd2luZyBcIiVcIiovXG4gICYgc21hbGwge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmb250LXNpemU6IDAuMjVlbTtcbiAgICBtYXJnaW4tbGVmdDogLTIuOWVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICB9XG59XG5cbi50eXBlLXNhbGUtaW1hZ2VzIHtcbiAgZmxleDogMSAxIDUwJTtcblxuICAmIHN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4udHlwZS1zYWxlLWltYWdlc19fY3JvcCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udHlwZS1zYWxlLWltYWdlc19faW1hZ2Uge1xuICB3aWR0aDogNTAlO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT0gVHlwZTogU2ltcGxlID09PT09PT09PT09PT09PT09PT09PSAqL1xuLnR5cGUtc2ltcGxlIHtcbiAgJiAucHJvbW8tZ3JpZF9fY29udGVudCB7XG4gICAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMSk7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG4gIH1cbn1cblxuLnByb21vLWdyaWRfX3RpdGxlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PSBUeXBlOiBJbWFnZSA9PT09PT09PT09PT09PT09PT09PT0gKi9cbi50eXBlLWltYWdlIHtcbiAgJiAucHJvbW8tZ3JpZF9fY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgJiBpbWcsXG4gICYgYSxcbiAgJiAuaW1hZ2Utd3JhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09IFR5cGU6IEJhbm5lciA9PT09PT09PT09PT09PT09Ki9cbi50eXBlLWJhbm5lciB7XG4gIGZsZXg6IDEgMCAxMDAlO1xuXG4gICYgLnByb21vLWdyaWRfX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxuXG4gICYgLnByb21vLWdyaWRfX2NvbnRhaW5lci0tZnJhbWVkOm5vdCgucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1ib3hlZCkge1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgfVxuXG4gICYgcCB7XG4gICAgbWFyZ2luOiA1cHggMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5cbi50eXBlLWJhbm5lcl9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxIDEgMTAwJTtcbn1cblxuLnR5cGUtYmFubmVyX19jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwIDEwcHg7XG59XG5cbi50eXBlLWJhbm5lcl9fdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAxIGF1dG87XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLXRleHQ7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbn1cblxuLnR5cGUtYmFubmVyX19pbWFnZSB7XG4gIGZsZXg6IDAgMCA0NSU7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGZsZXg6IDAgMCAyMDBweDtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT0gVHlwZTogUHJvZHVjdCA9PT09PT09PT09PT09PT09Ki9cbi50eXBlLXByb2R1Y3RfX3dyYXBwZXIge1xuICBmbGV4OiAxIDEgMTAwJTtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDJlbSAwO1xuICB6LWluZGV4OiAkei1pbmRleC1wcm9tby1jb250ZW50O1xuXG4gICYucHJvbW8tZ3JpZF9fY29udGFpbmVyLS10aW50IHtcbiAgICBwYWRkaW5nOiAyZW07XG4gIH1cblxuICBAbmVzdCAucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1mcmFtZWQgJiB7XG4gICAgcGFkZGluZzogMmVtO1xuICB9XG59XG5cbi50eXBlLXByb2R1Y3RfX2NvbnRlbnQge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4udHlwZS1wcm9kdWN0X19pbWFnZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwcHggMCAxMHB4IDEwcHg7XG59XG5cbi50eXBlLXByb2R1Y3RfX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG5cbiAgJjpudGgtY2hpbGQoMikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDQwcHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzMCU7XG4gIH1cbn1cblxuLnR5cGUtcHJvZHVjdF9fbGFiZWxzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xMHB4O1xuICByaWdodDogLTEwcHg7XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLXRleHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAmIC5mbGV4LWdyaWRfX2l0ZW0tLTUwLFxuICAgICYgLmZsZXgtZ3JpZF9faXRlbS0tMzMge1xuICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB9XG4gIH1cbn1cblxuLnR5cGUtcHJvZHVjdF9fbGFiZWwge1xuICBwYWRkaW5nOiA0cHggMTJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeTtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICBmbG9hdDogcmlnaHQ7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udHlwZS1wcm9kdWN0X19sYWJlbC0tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xufVxuIiwiLnN0b3JlLWF2YWlsYWJpbGl0eSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXG4gICYgLmljb24ge1xuICAgIG1hcmdpbjogNnB4IDAgMDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gIH1cblxuICAmIC5pY29uLWluLXN0b2NrIHtcbiAgICBmaWxsOiAkc3VjY2Vzc0dyZWVuO1xuICB9XG5cbiAgJiAuaWNvbi1vdXQtb2Ytc3RvY2sge1xuICAgIGZpbGw6ICRlcnJvclJlZDtcbiAgfVxuXG4gICYgKyAuc3RvcmUtYXZhaWxhYmlsaXR5IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5cbi5zdG9yZS1hdmFpbGFiaWxpdHlfX2luZm8ge1xuICBmbGV4OiAwIDEgOTAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMTBweDtcblxuICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cblxuICAmID4gZGl2IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi5zdG9yZS1hdmFpbGFiaWxpdHlfX3NtYWxsIHtcbiAgZm9udC1zaXplOiAwLjhlbTtcblxuICAmIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cbn1cblxuLnN0b3JlLWF2YWlsYWJpbGl0eV9fc21hbGwtLWxpbmsge1xuICBAbmVzdCAubW9kYWwgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLmFnZS12ZXJpZmljYXRpb24tcG9wdXAge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcblxuICAmLmFnZS12ZXJpZmljYXRpb24tcG9wdXAtLWltYWdlLWZhbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJvZHkpO1xuXG4gICAgJi5tb2RhbDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5KTtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5tb2RhbF9faW5uZXIge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLm1vZGFsLS1tb2JpbGUtZnJpZW5kbHkubW9kYWwtLXNxdWFyZSAubW9kYWxfX2NlbnRlcmVkLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yRHJhd2Vycyk7XG4gIH1cbn1cbiIsIi8qIENhcnQgcGFnZSBsYXlvdXQgKi9cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmNhcnRfX3BhZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gIC5jYXJ0X19wYWdlLWNvbDpmaXJzdC1jaGlsZCB7XG4gICAgZmxleDogMSAxIDYwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgfVxuXG4gIC5jYXJ0X19wYWdlLWNvbDpsYXN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMTAlO1xuICAgIGZsZXg6IDAgMSAzNSU7XG4gICAgcGFkZGluZzogMzBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgQG1peGluIG92ZXJsYXkgLTE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5KTtcbiAgICAgIG9wYWNpdHk6IDAuMDM7XG4gICAgfVxuICB9XG59XG5cbi5jYXJ0X19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cblxuLmNhcnRfX2ltYWdlIHtcbiAgZmxleDogMCAwIDE1MHB4O1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdyaWQtZ3V0dGVyKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwcHg7XG4gIH1cblxuICAmIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLypTbWFsbGVyIGltYWdlIGluIGRyYXdlciovXG4gIEBuZXN0IC5kcmF3ZXIgJiB7XG4gICAgZmxleDogMCAwIDEwMHB4O1xuICB9XG59XG5cbi5jYXJ0X19pdGVtLWRldGFpbHMge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uY2FydF9faXRlbS10aXRsZSB7XG4gIGZsZXg6IDEgMSAxMDAlO1xuXG4gIEBuZXN0IC5kcmF3ZXIgJiB7XG4gICAgQG1peGluIGJhc2VTbWFsbEZvbnRTdGFjaztcbiAgfVxufVxuXG4uY2FydF9faXRlbS1zdWIge1xuICBmbGV4OiAxIDEgMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAmID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuLmNhcnRfX2l0ZW0tcm93IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLmNhcnRfX3JlbW92ZSB7XG4gICYgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cblxuICAvKkhpZGUgaW4gZHJhd2VyKi9cbiAgQG5lc3QgLmRyYXdlciAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jYXJ0X19jaGVja291dCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FydF9faXRlbS1uYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICsgMXB4KTtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4uY2FydF9faXRlbS0tdmFyaWFudHMge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICYgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLmNhcnRfX3ByaWNlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJ0X19wcmljZS0tc3RyaWtldGhyb3VnaCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xufVxuXG4uY2FydF9fZGlzY291bnQge1xuICBjb2xvcjogdmFyKC0tY29sb3JUZXh0U2F2aW5ncyk7XG59XG5cbi5jYXJ0X190ZXJtcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICYgbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIH1cbn1cblxuLmNhcnRfX2NoZWNrb3V0LXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICYgLmFkZGl0aW9uYWwtY2hlY2tvdXQtYnV0dG9ucyB7XG4gICAgbWFyZ2luLXRvcDogMTJweDtcbiAgfVxufVxuXG4uZHJhd2VyIC5hZGRpdGlvbmFsLWNoZWNrb3V0LWJ1dHRvbnMge1xuICBtYXJnaW46IDEwcHggMDtcblxuICAmIFtkYXRhLXNob3BpZnktYnV0dG9uY29udGFpbmVyXSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAmID4gKiB7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLypQYXlQYWwgYnV0dG9uIGhhcyB1bmhlbHBmdWwgei1pbmRleCovXG5pZnJhbWUuem9pZC1jb21wb25lbnQtZnJhbWUge1xuICB6LWluZGV4OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5kcmF3ZXJfX2NhcnQtZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZHJhd2VyLmlzLWVtcHR5IHtcbiAgJiAuZHJhd2VyX19pbm5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYgLmRyYXdlcl9fY2FydC1lbXB0eSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLyogQ2FydCBwcm9wZXJ0aWVzICovXG4uY2FydF9faXRlbS0tcHJvcGVydGllcyB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gMnB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAmIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbn1cbiIsIkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLnByb2R1Y3Qtc2luZ2xlX19zdGlja3kge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAyMHB4O1xuXG4gICAgQG5lc3QgLnN0aWNreS1oZWFkZXIgJiB7XG4gICAgICB0b3A6IDE0MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC0tcXVpY2stc2hvcCAucHJvZHVjdC1zaW5nbGVfX3N0aWNreSB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cbi5wYWdlLWNvbnRlbnQtLXByb2R1Y3Qge1xuICBwYWRkaW5nLXRvcDogNTVweDtcbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5wYWdlLWNvbnRlbnQtLXByb2R1Y3Qge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgLmdyaWQtLXByb2R1Y3QtaW1hZ2VzLXJpZ2h0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICYgLmdyaWRfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuICB9XG59XG5cbi8qUHJldmVudCBxdWljayB2aWV3IGhvcml6b250YWwgamFuayB3aGVuIGltYWdlIGxvYWRzKi9cbi5tb2RhbCAucGFnZS1jb250ZW50LS1wcm9kdWN0IHtcbiAgd2lkdGg6ICRwYWdlLXdpZHRoO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fbWV0YSB7XG4gIHBhZGRpbmctbGVmdDogNDVweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG5cbiAgQG5lc3QgLmdyaWQtLXByb2R1Y3QtaW1hZ2VzLXJpZ2h0ICYge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NXB4O1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLnNvY2lhbC1zaGFyaW5nIHtcbiAgICBtYXJnaW4tdG9wOiAkZ3V0dGVyO1xuICB9XG5cbiAgJiAucnRlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3Qtc2luZ2xlX192ZW5kb3Ige1xuICBAbWl4aW4gYWNjZW50Rm9udFN0YWNrO1xuICBAbWl4aW4gYWNjZW50Rm9udFNtYWxsU2l6ZTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gNCk7XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fc2t1IHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gNik7XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fZGVzY3JpcHRpb24tZnVsbCB7XG4gIG1hcmdpbjogJGd1dHRlciAwO1xuXG4gICYgKyAuY29sbGFwc2libGVzLXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAwO1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbjogJGd1dHRlciA5NXB4O1xuXG4gICAgJiArIC5jb2xsYXBzaWJsZXMtd3JhcHBlciB7XG4gICAgICBtYXJnaW46IDAgOTVweDtcbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3Qtc2luZ2xlX192YXJpYW50cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG5lc3QgLm5vLWpzICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cbn1cblxuLnByb2R1Y3QtaW1hZ2UtbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuW2RhdGEtYnV0dG9uX3N0eWxlPVwiYW5nbGVkXCJdIC5wcm9kdWN0LWltYWdlLW1haW4gLmJ0bjpub3QoLnByb2R1Y3RfX3Bob3RvLXpvb20pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0b3A6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ucHJvZHVjdF9fdmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogMTAwJTsgLyphcHNlY3QgcmF0aW8gb3ZlcndyaXR0ZW4gaW5saW5lKi9cbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JTbWFsbEltYWdlQmc7XG5cbiAgJiBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbjtcbiAgfVxuXG4gIC8qUHV0IG92ZXJsYXkgb24gbXV0ZWQgdmlkZW9zIGJlY2F1c2UgdGhleSBjYW5ub3QgYmUgaW50ZXJhY3RlZCB3aXRoKi9cbiAgJltkYXRhLXZpZGVvLXN0eWxlPVwibXV0ZWRcIl0ubG9hZGVkOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLypVbmxlc3MgbG93IHBvd2VyIG1vZGUgcmVxdWlyZXMgdGhlbSB0byBiZSB0b3VjaGVkIHRvIHN0YXJ0Ki9cbiAgJi52aWRlby1pbnRlcmFjdGFibGU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLypNYWtlIHN1cmUgc3RhdGVzIGRvbid0IG92ZXJsYXAqL1xuICAmLmxvYWRlZDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYubG9hZGluZyBpZnJhbWUge1xuICAgIG9wYWNpdHk6IDAuMDE7IC8qc25lYWt5IHdheSB0byBhdm9pZCB0YWxraW5nIHRvIGFuIGludmlzaWJsZSBZVCBpZnJhbWUqL1xuICB9XG5cbiAgJi5sb2FkZWQgaWZyYW1lIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5wcm9kdWN0X192aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucHJvZHVjdF9fdmlkZW8tb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDQwJTtcbiAgdG9wOiAzMnB4O1xuICBib3R0b206IDQwcHg7XG4gIHotaW5kZXg6IDM7XG5cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogNjAlO1xuICAgIGhlaWdodDogMzUlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG5cbiAgJiArIC5wcm9kdWN0X192aWRlby1vdmVybGF5IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3QtdmlkZW8tdHJpZ2dlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8qSW1hZ2VzKi9cbi5wcm9kdWN0X19waG90b3MtLWJlc2lkZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucHJvZHVjdF9fcGhvdG9zIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5wcm9kdWN0X19tYWluLXBob3RvcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG5cbiAgJiAuZmxpY2tpdHktcGFnZS1kb3RzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtYXJnaW4tbGVmdDogLSRwYWdlLXdpZHRoLWd1dHRlci1zbWFsbDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kcGFnZS13aWR0aC1ndXR0ZXItc21hbGw7XG5cbiAgICAmIC5mbGlja2l0eS1wYWdlLWRvdHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi8qSGlkZSBzZWxlY3RhYmxlIGVsZW1lbnRzIHdoZW4gc2xpZGUgaXMgbm90IGFjdGl2ZSovXG4ucHJvZHVjdC1tYWluLXNsaWRlOm5vdCguaXMtc2VsZWN0ZWQpIHtcbiAgJiBidXR0b24sXG4gICYgdmlkZW8sXG4gICYgaWZyYW1lLFxuICAmIG1vZGVsLXZpZXdlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucHJvZHVjdC1tYWluLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLypIaWRlIGFsbCBidXQgZmlyc3Qgc2xpZGUgdG8gcHJldmVudCBwYWdlIHJlZmxvd3MgcHJpb3IgdG8gaW5pdCovXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG5lc3QgLmZsaWNraXR5LXNsaWRlciAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC8qc2hvdyBhIGJpdCBvZiB0aGUgbmV4dCBpbWFnZSovXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBAbmVzdCAuZ3JpZC0tcHJvZHVjdC1pbWFnZXMtLXBhcnRpYWwgJiB7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJvZHVjdF9fdGh1bWJzLS1iZWxvdyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoJGdyaWQtZ3V0dGVyLXNtYWxsIC8gMik7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG59XG5cbi5wcm9kdWN0X190aHVtYnMtLWJlc2lkZSB7XG4gIGZsZXg6IDAgMCA2MHB4O1xuICBtYXgtd2lkdGg6IDYwcHg7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKCRncmlkLWd1dHRlci1zbWFsbCAvIDIpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmbGV4OiAwIDAgODBweDtcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gICAgJi5wcm9kdWN0X190aHVtYnMtcGxhY2VtZW50LS1sZWZ0IHtcbiAgICAgIG9yZGVyOiAtMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3RfX3RodW1icy0tc2Nyb2xsZXIge1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcblxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICB9XG5cbiAgQG5lc3QgLnByb2R1Y3RfX3RodW1icy0tYmVsb3cgJiB7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICBAbmVzdCAucHJvZHVjdF9fdGh1bWJzLS1iZXNpZGUgJiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIH1cbn1cblxuLnByb2R1Y3RfX3RodW1iLWl0ZW0ge1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAmIGE6Zm9jdXMsXG4gICYgYS5pcy1hY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cblxuICAvKkRvbid0IHByZS1mb2N1cyB0aHVtYm5haWxzKi9cbiAgJiBhOmFjdGl2ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cblxuICBAbmVzdCAucHJvZHVjdF9fdGh1bWJzLS1iZXNpZGUgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3JpZC1ndXR0ZXItc21hbGwgLyAyKTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5wcm9kdWN0X190aHVtYnMtLWJlbG93ICYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygkZ3JpZC1ndXR0ZXItc21hbGwgLyAyKTtcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0X19wcmljZSB7XG4gIGNvbG9yOiAkY29sb3JQcmljZTtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICsgMnB4KTtcblxuICAmLm9uLXNhbGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgfVxufVxuXG4vKlVzZWQgYW55d2hlcmUgdW5pdCBwcmljZSBpcyB2aXNpYmxlKi9cbi5wcm9kdWN0X191bml0LXByaWNlIHtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4ucHJvZHVjdF9fdW5pdC1wcmljZS0tc3BhY2luZyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5wcm9kdWN0X19wcmljZS0tY29tcGFyZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuLnByb2R1Y3RfX3ByaWNlLXNhdmluZ3Mge1xuICBjb2xvcjogJGNvbG9yVGV4dFNhdmluZ3M7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qUXVhbnRpdHkgc2VsZWN0b3IgYW5kIGxhYmVsKi9cbi5wcm9kdWN0X19xdWFudGl0eSB7XG4gICYgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLnByb2R1Y3QtZm9ybS1ob2xkZXItLWxvYWRlZCB7XG4gIGFuaW1hdGlvbjogZmFkZS1pbiAxcyBlYXNlO1xufVxuXG4vKkhpZGUgU2hvcGlmeSBQYXltZW50IEJ1dHRvbnMgaWYgbm8gdmFyaWFudCovXG4uYWRkLXRvLWNhcnRbZGlzYWJsZWRdICsgLnNob3BpZnktcGF5bWVudC1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBXaGVuIGltYWdlIHNldHMgYXJlIGVuYWJsZWQsIGhpZGUgc2xpZGVzIHRoYXQgYXJlbid0IGluIHRoZSBzbGlkZXIgKi9cbi5wcm9kdWN0LXNsaWRlc2hvdy5mbGlja2l0eS1lbmFibGVkIHtcbiAgJiAucHJvZHVjdC1tYWluLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktdmlld3BvcnQgLnByb2R1Y3QtbWFpbi1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLypab29tIGJ1dHRvbiovXG4ucHJvZHVjdF9fcGhvdG8tem9vbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBjdXJzb3I6IHpvb20taW47XG5cbiAgLypPbmx5IHNob3cgYWN0aXZlIHNsaWRlJ3Mgem9vbSBidXR0b24gKG1vYmlsZSkqL1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiA2cHg7XG5cbiAgICBAbmVzdCAucHJvZHVjdF9fbWFpbi1waG90b3MgJiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgIC8qSGlkZSB6b29tIGJ1dHRvbiBvbiBhbGwgc2xpZGVzKi9cbiAgICBAbmVzdCAucHJvZHVjdC1zbGlkZXNob3cgJiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2Utb3V0O1xuICAgIH1cblxuICAgIEBuZXN0IC5wcm9kdWN0LXNsaWRlc2hvdyAuaXMtc2VsZWN0ZWQgJiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIC8qVmlzdWFsbHkgaGlkZGVuLCBjb3ZlcnMgZnVsbCBpbWFnZSBvbiBkZXNrdG9wKi9cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAmIHN2ZyxcbiAgICAmIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLypUaHVtYiBzbGlkZXIgYXJyb3dzKi9cbi5wcm9kdWN0X190aHVtYi1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHotaW5kZXg6IDI7XG5cbiAgJiAuaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA2cHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICB9XG59XG5cbi5wcm9kdWN0X190aHVtYnNbZGF0YS1wb3NpdGlvbj1cImJlbG93XCJdIC5wcm9kdWN0X190aHVtYi1hcnJvdyB7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMjVweDtcblxuICAmLnByb2R1Y3RfX3RodW1iLWFycm93LS1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAmLnByb2R1Y3RfX3RodW1iLWFycm93LS1uZXh0IHtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWJzW2RhdGEtcG9zaXRpb249XCJiZXNpZGVcIl0gLnByb2R1Y3RfX3RodW1iLWFycm93IHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJiAuaWNvbiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB9XG5cbiAgJi5wcm9kdWN0X190aHVtYi1hcnJvdy0tcHJldiB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cblxuICAmLnByb2R1Y3RfX3RodW1iLWFycm93LS1uZXh0IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG59XG5cbi5wcm9kdWN0X190aHVtYiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmID4gLmltYWdlLXdyYXAgaW1nIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWItaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1cHg7XG4gIHJpZ2h0OiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgcGFkZGluZzogNnB4O1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcbiAgZm9udC1zaXplOiAwO1xuXG4gIEBuZXN0IC5hb3MtYW5pbWF0ZSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgZmlsbDogJGNvbG9yQm9keTtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogMTNweDtcbiAgICAgIGhlaWdodDogMTNweDtcbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3RfX3BvbGljaWVzIHtcbiAgZm9udC1zaXplOiAwLjg1ZW07XG59XG5cbi5zaG9waWZ5LXBheW1lbnQtdGVybXMge1xuICBtYXJnaW46IDEycHggMDtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQG5lc3QgLm1vZGFsICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi50ZW1wbGF0ZS1ibG9nIC5hcnRpY2xlIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyICogMS41KTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyICogMyk7XG4gIH1cbn1cblxuLnRlbXBsYXRlLWJsb2cgLmFydGljbGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAqIDEuNSk7XG4gIH1cbn1cblxuLmFydGljbGVfX2JvZHkge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcjtcbiAgfVxufVxuXG4uYXJ0aWNsZV9fY29tbWVudCB7XG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIucGFzc3dvcmQtcGFnZV9faGVhZGVyX19ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAxIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLnBhc3N3b3JkLXBhZ2VfX2xvZ28ge1xuICAmIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiAubG9nbyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5wYXNzd29yZC1sb2dpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gNCkgMTVweDtcbn1cblxuLnBhc3N3b3JkLWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi5wYXNzd29yZF9fbG9jayAuaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cblxuLmljb24tc2hvcGlmeS1sb2dvIHtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogMjBweDtcbn1cblxuI0xvZ2luTW9kYWwgLm1vZGFsX19jbG9zZSB7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbn1cblxuI0xvZ2luTW9kYWwgLm1vZGFsX19pbm5lciB7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgcGFkZGluZzogMzBweDtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDB2aDtcbiAgfVxufVxuXG4ucGFzc3dvcmQtYWRtaW4tbGluayB7XG4gIG1hcmdpbjogMDtcblxuICAmIGEge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlciAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIudGVtcGxhdGUtZ2lmdGNhcmQsXG4udGVtcGxhdGUtZ2lmdGNhcmQgYm9keSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG5cbiAgJiBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnRlbXBsYXRlLWdpZnRjYXJkIC5wYWdlLXdpZHRoIHtcbiAgbWF4LXdpZHRoOiA1ODhweDtcbn1cblxuLmdpZnRjYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAqIDIpIDA7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4udGVtcGxhdGUtZ2lmdGNhcmQgLnNob3AtdXJsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdpZnRjYXJkX19ib3JkZXIge1xuICBwYWRkaW5nOiAxLjVlbTtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLDAsMCwwLjMpO1xufVxuXG4uZ2lmdGNhcmRfX2NvbnRlbnQge1xuICBAbWl4aW4gY2xlYXJmaXg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbn1cblxuLmdpZnRjYXJkX19oZWFkZXIge1xuICBAbWl4aW4gY2xlYXJmaXg7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpO1xufVxuXG4uZ2lmdGNhcmRfX3RpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5naWZ0Y2FyZF9fdGFnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGNvbG9yQm9keTtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMyk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5naWZ0Y2FyZF9fdGFnLS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG59XG5cbi5naWZ0Y2FyZF9fd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiBjYWxjKCRndXR0ZXIgLyAyKSBjYWxjKCRndXR0ZXIgLyAyKSAkZ3V0dGVyO1xuXG4gICYgaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB6LWluZGV4OiAyO1xuICB9XG59XG5cbi5naWZ0Y2FyZF9fY29kZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAkZ3V0dGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA1MDtcbn1cblxuLmdpZnRjYXJkX19jb2RlLS1tZWRpdW0ge1xuICBmb250LXNpemU6IC44NzVlbTtcbn1cblxuLmdpZnRjYXJkX19jb2RlLS1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG59XG5cbi5naWZ0Y2FyZF9fY29kZV9faW5uZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXgtd2lkdGg6IDQ1MHB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsMCwwLDAuMSk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsMCwwLDAuMSk7XG5cbiAgQG5lc3QgLmdpZnRjYXJkX19jb2RlLS1zbWFsbCAmIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxufVxuXG4uZ2lmdGNhcmRfX2NvZGVfX3RleHQge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuODc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiAxcHggZGFzaGVkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgcGFkZGluZzogLjRlbSAuNWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBsaW5lLWhlaWdodDogMTtcblxuICBAbmVzdCAuZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gIH1cbn1cblxuLmdpZnRjYXJkX19hbW91bnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDIuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gIHotaW5kZXg6IDUwO1xuXG4gICYgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LXNoYWRvdzogM3B4IDNweCAwIHJnYmEoMCwwLDAsMC4xKTtcbiAgfVxufVxuXG4uZ2lmdGNhcmRfX2Ftb3VudC0tbWVkaXVtIHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi50b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNTAlO1xuICByaWdodDogNTAlO1xuICBtYXJnaW4tdG9wOiAxNnB4O1xuICB6LWluZGV4OiAzO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgICBib3JkZXItbGVmdDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjMzMzO1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCByZ2JhKDUxLDUxLDUxLDAuOSk7XG4gIH1cbn1cblxuLnRvb2x0aXBfX2xhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC01MCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDUxLDUxLDUxLDAuOSk7XG4gIG1pbi1oZWlnaHQ6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IC41ZW0gLjc1ZW07XG4gIG1hcmdpbi1sZWZ0OiAuMjVlbTtcblxuICAmIHNtYWxsIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMWVtO1xuICAgIGNvbG9yOiAjYjNiM2IzO1xuICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICB9XG59XG5cbi5naWZ0Y2FyZF9faW5zdHJ1Y3Rpb25zIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlcjtcbn1cblxuLmdpZnRjYXJkX19hY3Rpb25zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG59XG5cbi50ZW1wbGF0ZS1naWZ0Y2FyZCAuYWN0aW9uLWxpbmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB0b3A6IDUwJTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAuMmVtO1xuICBtYXJnaW4tdG9wOiAtMTBweDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cbn1cblxuLnRlbXBsYXRlLWdpZnRjYXJkIC5hY3Rpb24tbGlua19fcHJpbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTdweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy8vY2RuLnNob3BpZnkuY29tL3MvYXNzZXRzL2dpZnQtY2FyZC9pY29uLXByaW50LTE2NGRhYTFhZTMyZDEwZDFmOWI4M2FjMjFiNmYyYzcwLnBuZycpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5naWZ0Y2FyZF9fZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAyKSAwO1xufVxuXG4jUXJDb2RlIHtcbiAgJiBpbWcge1xuICAgIHBhZGRpbmc6ICRndXR0ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIG1hcmdpbjogMCBhdXRvICRndXR0ZXI7XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5naWZ0Y2FyZCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG5cbiAgLmdpZnRjYXJkLWhlYWRlciB7XG4gICAgcGFkZGluZzogJGd1dHRlciAwO1xuICB9XG5cbiAgLmhlYWRlci1sb2dvIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fYm9yZGVyIHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fYWN0aW9ucyB7XG4gICAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cblxuICAuZ2lmdGNhcmRfX2FjdGlvbnMgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAudGVtcGxhdGUtZ2lmdGNhcmQgLmFjdGlvbi1saW5rIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PSBTbWFsbCB3aWR0aCA9PT09PT09PT09PT09PT09Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gIC5naWZ0Y2FyZF9fYW1vdW50IHN0cm9uZyB7XG4gICAgdGV4dC1zaGFkb3c6IDJweCAycHggMCByZ2JhKDAsMCwwLDAuMSk7XG4gIH1cblxuICAuZ2lmdGNhcmRfX3dyYXA6YmVmb3JlLFxuICAuZ2lmdGNhcmRfX3dyYXA6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZ2lmdGNhcmRfX2NvZGUge1xuICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gIH1cblxuICAuZ2lmdGNhcmRfX2NvZGUtLW1lZGl1bSB7XG4gICAgZm9udC1zaXplOiAuNjVlbTtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fY29kZS0tc21hbGwge1xuICAgIGZvbnQtc2l6ZTogLjU1ZW07XG4gIH1cbn1cblxuXG4vKj09PT09PT09PT09PT09PT0gU21hbGwgaGVpZ2h0ID09PT09PT09PT09PT09PT0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG4gIC5oZWFkZXItbG9nbyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDkwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207XG4gIH1cblxuICBwLCBoMiwgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG5cbiAgaDIsIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuXG4gIGh0bWwsIGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cblxuICAuZ2lmdGNhcmQtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gIH1cblxuICAuZ2lmdGNhcmRfX2NvbnRlbnQsXG4gIC5naWZ0Y2FyZF9fYm9yZGVyIHtcbiAgICBib3JkZXI6IDAgbm9uZTtcbiAgfVxuXG4gIC5zaXRlLWhlYWRlcl9fbG9nby1saW5rIGltZzpudGgtY2hpbGQoMiksXG4gIC5naWZ0Y2FyZF9fYWN0aW9ucyxcbiAgLmdpZnRjYXJkX193cmFwOmJlZm9yZSxcbiAgLmdpZnRjYXJkX193cmFwOmFmdGVyLFxuICAudG9vbHRpcCxcbiAgLmFkZC10by1hcHBsZS13YWxsZXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZ2lmdGNhcmRfX3RpdGxlIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuZ2lmdGNhcmRfX2NvZGVfX3RleHQge1xuICAgIGNvbG9yOiAjNTU1O1xuICB9XG5cbiAgLnRlbXBsYXRlLWdpZnRjYXJkIC5zaG9wLXVybCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAudGVtcGxhdGUtZ2lmdGNhcmQgLmxvZ28ge1xuICAgIGNvbG9yOiAjNTg2ODZGO1xuICB9XG59XG4iXX0= */

/* SALEバッジ非表示（受注販売仕様） */
.grid-product__tag--sale {
  display: none !important;
}

.collection-sidebar-horizontal {
    display: block;
    width: 85%;
}