/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
/*! sanitize.css v5.0.0 | CC0 License | github.com/jonathantneal/sanitize.css */
/* Document (https://html.spec.whatwg.org/multipage/semantics.html#semantics)
   ========================================================================== */
/**
 * 1. Remove repeating backgrounds in all browsers (opinionated).
 * 2. Add box sizing inheritance in all browsers (opinionated).
 */
*, ::before, ::after {
    background-repeat: no-repeat;
    /* 1 */
    box-sizing: inherit;
    /* 2 */
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */
::before, ::after {
    text-decoration: inherit;
    /* 1 */
    vertical-align: inherit;
    /* 2 */
}

/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Add the default cursor in all browsers (opinionated).
 * 3. Prevent font size adjustments after orientation changes in IE and iOS.
 */
html {
    box-sizing: border-box;
    /* 1 */
    cursor: default;
    /* 2 */
    -ms-text-size-adjust: 100%;
    /* 3 */
    -webkit-text-size-adjust: 100%;
    /* 3 */
}

/* Sections (https://html.spec.whatwg.org/multipage/semantics.html#sections)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
article, aside, footer, header, nav, section {
    display: block;
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
    margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content (https://html.spec.whatwg.org/multipage/semantics.html#grouping-content)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption, figure, main {
    /* 1 */
    display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
    margin: 0;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
nav ol, nav ul {
    list-style: none;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/* Text-level semantics (https://html.spec.whatwg.org/multipage/semantics.html#text-level-semantics)
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
    background-color: transparent;
    /* 1 */
    -webkit-text-decoration-skip: objects;
    /* 2 */
    text-decoration: none;
}

a:hover {
    text-decoration: none !important;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    text-decoration: underline dotted;
    /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b, strong {
    font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b, strong {
    font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code, kbd, samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
    font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
    background-color: #ffff00;
    color: #000000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/*
 * Remove the text shadow on text selections (opinionated).
 * 1. Restore the coloring undone by defining the text shadow (opinionated).
 */
::-moz-selection {
    background-color: #b3d4fc;
    /* 1 */
    color: #000000;
    /* 1 */
    text-shadow: none;
}

::selection {
    background-color: #b3d4fc;
    /* 1 */
    color: #000000;
    /* 1 */
    text-shadow: none;
}

/* Embedded content (https://html.spec.whatwg.org/multipage/embedded-content.html#embedded-content)
   ========================================================================== */
/*
 * Change the alignment on media elements in all browers (opinionated).
 */
audio, canvas, iframe, img, svg, video {
    vertical-align: middle;
}

/**
 * Add the correct display in IE 9-.
 */
audio, video {
    display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
    display: none;
    height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
    border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
/*svg {*/
/*    fill: currentColor;*/
/*}*/
/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
    overflow: hidden;
}

/* Tabular data (https://html.spec.whatwg.org/multipage/tables.html#tables)
   ========================================================================== */
/**
 * Collapse border spacing
 */
table {
    border-collapse: collapse;
}

th {
    font-weight: normal;
}

/* Forms (https://html.spec.whatwg.org/multipage/forms.html#forms)
   ========================================================================== */
/**
 * Remove the margin in Firefox and Safari.
 */
button, input, optgroup, select, textarea {
    margin: 0;
}

/**
 * Inherit styling in all browsers (opinionated).
 */
button, input, select, textarea {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    appearance: none;
    border: none;
    outline: unset;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button, input {
    /* 1 */
    overflow: visible;
}

/* button {
  text-align: left;
} */
/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button, select {
    /* 1 */
    text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button, html [type="button"], /* 1 */
[type="reset"], [type="submit"] {
    -webkit-appearance: button;
    /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner, [type='button']::-moz-focus-inner, [type='reset']::-moz-focus-inner, [type='submit']::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring, [type='button']:-moz-focusring, [type='reset']:-moz-focusring, [type='submit']:-moz-focusring {
    outline: 1px dotted ButtonText;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
    display: inline-block;
    /* 1 */
    vertical-align: baseline;
    /* 2 */
}

/**
 * 1. Remove the default vertical scrollbar in IE.
 * 2. Change the resize direction on textareas in all browsers (opinionated).
 */
textarea {
    overflow: auto;
    /* 1 */
    resize: vertical;
    /* 2 */
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type='checkbox'], [type='radio'] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type='number']::-webkit-inner-spin-button, [type='number']::-webkit-outer-spin-button {
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type='search'] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type='search']::-webkit-search-cancel-button, [type='search']::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
}

/* Interactive elements (https://html.spec.whatwg.org/multipage/forms.html#interactive-elements)
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details, /* 1 */
menu {
    display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
    display: list-item;
}

/* Scripting (https://html.spec.whatwg.org/multipage/scripting.html#scripting-3)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
    display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
    display: none;
}

/* User interaction (https://html.spec.whatwg.org/multipage/interaction.html#editing)
   ========================================================================== */
/*
 * Remove the tapping delay on clickable elements (opinionated).
 * 1. Remove the tapping delay in IE 10.
 */
a, area, button, input, label, select, summary, textarea, [tabindex] {
    -ms-touch-action: manipulation;
    /* 1 */
    touch-action: manipulation;
}

/**
 * Add the correct display in IE 10-.
 */
[hidden] {
    display: none;
}

/* ARIA (https://w3c.github.io/html-aria/)
   ========================================================================== */
/**
 * Change the cursor on busy elements (opinionated).
 */
[aria-busy='true'] {
    cursor: progress;
}

/*
 * Change the cursor on control elements (opinionated).
 */
[aria-controls] {
    cursor: pointer;
}

/*
 * Change the display on visually hidden accessible elements (opinionated).
 */
[aria-hidden='false'][hidden]:not(:focus) {
    clip: rect(0, 0, 0, 0);
    display: inherit;
    position: absolute;
}


/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements (opinionated).
 */
[aria-disabled] {
    cursor: default;
}

@font-face {
    font-family: 'brandon-grotesque';
    src: url(/build/fonts/brandon_grotesque_400.b7c48c53.woff2)
    format('woff2'),
    url(/build/fonts/brandon_grotesque_400.0160b6ce.woff)
    format('woff'),
    url(/build/assets/brandon_grotesque_400.738d881f.ot)
    format('opentype');
    font-display: auto;
    font-style: normal;
    font-weight: 400;
}

@font-face {
    font-family: 'brandon-grotesque';
    src: url(/build/fonts/brandon_grotesque_700.cda96bf9.woff2)
    format('woff2'),
    url(/build/fonts/brandon_grotesque_700.d66384b1.woff)
    format('woff'),
    url(/build/assets/brandon_grotesque_700.7f62c809.ot)
    format('opentype');
    font-display: auto;
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: 'kepler-std-display';
    src: url(/build/fonts/kepler_std_display_300.fdc9718a.woff2)
    format('woff2'),
    url(/build/fonts/kepler_std_display_300.3f1bd507.woff)
    format('woff'),
    url(/build/assets/kepler_std_display_300.e1ed2d03.ot)
    format('opentype');
    font-display: auto;
    font-style: normal;
    font-weight: 300;
}

@font-face {
    font-family: 'kepler-std-display';
    src: url(/build/fonts/kepler_std_display_400.b26ccfb2.woff2)
    format('woff2'),
    url(/build/fonts/kepler_std_display_400.ac2d0e60.woff)
    format('woff'),
    url(/build/assets/kepler_std_display_400.6314b3fe.ot)
    format('opentype');
    font-display: auto;
    font-style: normal;
    font-weight: 400;
}

/* Custom additional styles */
p, blockquote {
    margin: 0;
}

address {
    font-style: normal;
}

ul, ol {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

button {
    background: none;
    border: none;
    padding: 0;
    text-decoration: none;
    outline: 0;
}

fieldset {
    margin: 0;
    padding: 0;
    border: none;
}

input[type='number']::-webkit-inner-spin-button, input[type='number']::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type='number'] {
    -moz-appearance: textfield;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    font-size: inherit;
    font-weight: inherit;
}

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

input {
    background: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
    border-radius: 0;
}

.modal-open {
    height: 100vh;
    overflow: hidden;
}

* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/**
 * Swiper 6.5.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2021 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 29, 2021
 */
@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, 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") format('woff');
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-container-vertical > .swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide, .swiper-wrapper {
    transform: translate3d(0px, 0, 0)
}

.swiper-container-multirow > .swiper-wrapper {
    flex-wrap: wrap
}

.swiper-container-multirow-column > .swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-container-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-container-pointer-events {
    touch-action: pan-y
}

.swiper-container-pointer-events.swiper-container-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
    height: auto
}

.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-container-3d {
    perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-container-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
    scroll-snap-type: y mandatory
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0 - (var(--swiper-navigation-size) / 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    text-transform: none;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after {
    content: 'prev'
}

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after {
    content: 'next'
}

.swiper-button-next.swiper-button-white, .swiper-button-prev.swiper-button-white {
    --swiper-navigation-color: #ffffff
}

.swiper-button-next.swiper-button-black, .swiper-button-prev.swiper-button-black {
    --swiper-navigation-color: #000000
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: .3s opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 50%;
    background: #000;
    opacity: .2
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0px, -50%, 0)
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: .2s transform, .2s top
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s left
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s right
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, .25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-white {
    --swiper-pagination-color: #ffffff
}

.swiper-pagination-black {
    --swiper-pagination-color: #000000
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, .1)
}

.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, .5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    animation: swiper-preloader-spin 1s infinite linear;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg)
    }
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube {
    overflow: visible
}

.swiper-container-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}

.swiper-container-cube .swiper-cube-shadow:before {
    content: '';
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    -webkit-filter: blur(50px);
    filter: blur(50px)
}

.swiper-container-flip {
    overflow: visible
}

.swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.fontHeaderLarge, .search__heading, .impressum__heading, .columnsTextImage__heading, .statChart__heading, .storyCarousel__heading, .testimonialsCarousel__heading, .newsletterSubscribe__heading, .extTable__heading, .stateChooser__heading, .drawer__heading, .historyArticle__heading, .twoItemsCarousel__heading, .sectionHeader__heading, .heroCarousel__heading, .advantagesSection__heading {
    font-family: "kepler-std-display", sans-serif;
    font-size: clamp(32px, calc(1em + 2vw), 56px);
    line-height: calc(70 / 56);
    font-weight: 300
}

.fontHeaderTextBlock, .applicationInfo__heading, .employerInfo__heading, .eventRegister__heading, .downloads__accordionHeading, .downloads__heading, .developmentOverview__heading, .calculator h3, .accordions__heading, .embedDialogue__headline, .guaranteeOptionCard__heading, .form__heading, .textBlock h2 {
    font-family: "kepler-std-display", sans-serif;
    font-size: clamp(32px, calc(1em + 2vw), 40px);
    line-height: calc(50 / 40);
    font-weight: 300
}

.fontHeaderSemiLarge, .columnsTextImage__iconHeading {
    font-family: "kepler-std-display", sans-serif;
    font-size: 40px;
    line-height: 50px
}

@media screen and (max-width: 767px) {
    .fontHeaderSemiLarge, .columnsTextImage__iconHeading {
        font-size: 32px;
        line-height: 42px
    }
}

.fontHeaderMedium, .countdown__heading, .eventRegister__eventName, .locationInfo__heading, .extTable table, .table table, .modal h3, .textBlock h3, .storyCard__title, .articleCard__title {
    font-family: "brandon-grotesque", sans-serif;
    font-size: clamp(22px, calc(1em + 2vw), 28px);
    font-weight: 500;
    line-height: calc(38 / 28)
}

.fontHeaderSmall, .search__title, #glightbox-slider .gslide-title, .developmentOverview__listIntro, .advantageArticle__title {
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    font-size: clamp(14px, calc(1em + 2vw), 20px);
    line-height: calc(32 / 22)
}

.fontHeadingTiny, .search__linkDisable, .search__linkActive, .search__link, .search__resultCount, .countdown__preHeading, .footer__linksListHeader, .imageGallery__heading, .downloadLink, .companyInfo__heading, .downloadsList__itemSize, .logoWall__heading, .advantagesSection__tab, .submenu__heading, .pageBox__heading {
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: calc(26 / 16);
    text-transform: uppercase
}

.fontHeadingMini, .storyCarousel__preHeading, .fundingPortalStepCard__counter, .indexPaginator, .articleCard__preHeader, .sectionHeader__additionalInfo, .sectionHeader__strapline, .heroCarousel__preHeading, .landingPageNav__open {
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 26px;
    text-transform: uppercase
}

.fontParagraph, .search__paragraph, .error404__text, .developmentOverviewInverted__listItem, .developmentOverview__listItem, .embedDialogue__text, .downloadsList__itemName, .representativeCard__name, .accordionInverted__content p, .accordion__content p, .articleCard__excerpt, .heroCarousel__paragraph {
    font-family: "brandon-grotesque", sans-serif;
    font-size: clamp(18px, calc(1em + 2vw), 20px);
    line-height: calc(28 / 20)
}

.fontInput, .search input[type=text], .form textarea, .form input[type=text], .form input[type=email], .form input[type=tel] {
    font-family: "brandon-grotesque", sans-serif;
    font-size: 20px;
    line-height: 26px
}

.fontParagraph2, .backgroundWrapper__blue .textBlock a, .articleIntro__imageCaption, .backgroundWrapper__blue .calculator #result, .backgroundWrapper__blueLight .calculator #result, .backgroundWrapper__white .calculator #result, .getInTouch__openHours, .extTable .textBlock a, a.linkExternalIcon, .linkExternal_inverted, .linkExternal, .textBlock__columnWrapper a, .accordionInverted__content a, .accordionInverted__content a.linkExternalIcon, .accordion__content a, .submenu__paragraph, .pageBox__excerpt {
    font-family: "brandon-grotesque", sans-serif;
    font-size: 18px;
    line-height: 22px
}

.fontParagraph3, .articleIntro__additionalInfoText, .routePlanner__openHours, .getInTouch__paragraph, .personDocument__text > p, .form__captcha a, .form input[type=checkbox] + label, .form input[type=radio] + label, .representativeCard__info, .textBlock span.text-small, .fundingPortalStepCard__description, .storyCard__abstract, .sectionHeader__intro, .advantageArticle__description {
    font-family: "brandon-grotesque", sans-serif;
    font-size: clamp(14px, calc(1em + 2vw), 20px);
    line-height: calc(28 / 20)
}

.fontParagraph4, .moreContentLink p, .applicationInfo__column p, .employerInfo__assetDescription p, .employerInfo__intro, .anniversaryExcerpt__text, .anniversaryExcerpt__title, .anniversaryIntro__text, .statChart__intro, .eventRegister__eventDetails, .locationInfo__address, .locationInfo__openHours, .fundingPortalSteps__intro, .calculator, .storyCarousel__intro, .stateChooser__intro, .historyArticle__text, .historyArticle__date, .historyArticle__title, .guaranteeOptionCard__list, .textBlock ul, .textBlock ol, .textBlock p, .accordionInverted__summary, .accordion__summary, .quotation__author {
    font-family: "brandon-grotesque", sans-serif;
    line-height: calc(32 / 20)
}

.fontParagraph4, .moreContentLink p, .applicationInfo__column p, .employerInfo__assetDescription p, .employerInfo__intro, .anniversaryExcerpt__text, .anniversaryExcerpt__title, .anniversaryIntro__text, .statChart__intro, .eventRegister__eventDetails, .locationInfo__address, .locationInfo__openHours, .fundingPortalSteps__intro, .calculator, .storyCarousel__intro, .stateChooser__intro, .historyArticle__text, .historyArticle__date, .historyArticle__title, .guaranteeOptionCard__list, .textBlock ul, .textBlock ol, .textBlock p, .accordionInverted__summary, .accordion__summary, .quotation__author {
    font-size: clamp(18px, 0.1632653061vw + 17.387755102px, 20px)
}

.fontCopyright, #glightbox-slider .gslide-desc, .gallery__imageDescription, .footer__copyright, .embedDialogue__privacyNote, .embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitchLabel, .historyArticle__figureDescription, .landingPageFooter__copyright, .landingPageFooter__nav-list li a, .landingPageFooter__bottom-wrapper {
    font-family: "brandon-grotesque", sans-serif;
    font-size: 16px;
    line-height: calc(26 / 16)
}

.fontLink, .locationInfo__phone, .articleIntro__additionalInfoTitle, .drawer__subHeading, .form legend, .form__successInputLabel, .form__inputLabel, .linkInverted, .link {
    font-family: "brandon-grotesque", sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    letter-spacing: 1.2px;
    text-transform: uppercase
}

.fontLink2, .submenu__link {
    font-family: "brandon-grotesque", sans-serif;
    font-size: 14px;
    line-height: 20px;
    text-transform: uppercase
}

.fontQuotation, .textBlock blockquote, .quotation__text {
    font-family: "kepler-std-display", sans-serif;
    font-size: clamp(28px, calc(1em + 2vw), 40px);
    line-height: calc(52 / 40);
    font-style: italic
}

.fontHeaderExtTableBlock, .extTable .textBlock span.text-serif {
    font-family: "kepler-std-display", sans-serif;
    font-size: clamp(20px, calc(1em + 2vw), 20px);
    line-height: calc(28 / 20)
}

.fontHeadingLarg, .countdown__intro {
    font-family: "brandon-grotesque", sans-serif;
    font-size: clamp(26px, calc(1em + 2vw), 42px)
}

.layoutWrapper {
    max-width: 1540px;
    margin: 0 auto;
    padding-left: 40px;
    padding-right: 40px;
    width: 100%
}

@media screen and (max-width: 767px) {
    .layoutWrapper {
        padding-left: 20px;
        padding-right: 20px
    }
}

.columnWrapper {
    display: flex;
    flex-direction: column
}

.rowWrapper {
    display: flex;
    flex-direction: row
}

.gridRowWrapper {
    margin-left: -15px;
    margin-right: -15px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    position: relative
}

.gridBoxWrapper, .gridBox--xxl--fr12, .gridBox--xxl--fr11, .gridBox--xxl--fr10, .gridBox--xxl--fr9, .gridBox--xxl--fr8, .gridBox--xxl--fr7, .gridBox--xxl--fr6, .gridBox--xxl--fr5, .gridBox--xxl--fr4, .gridBox--xxl--fr3, .gridBox--xxl--fr2, .gridBox--xxl--fr1, .gridBox--xxl--fr0, .gridBox--xl--fr12, .gridBox--xl--fr11, .gridBox--xl--fr10, .gridBox--xl--fr9, .gridBox--xl--fr8, .gridBox--xl--fr7, .textBlock__columnWrapper > blockquote, .gridBox--xl--fr6, .textBlock__columnWrapper > *:not(blockquote), .gridBox--xl--fr5, .gridBox--xl--fr4, .gridBox--xl--fr3, .gridBox--xl--fr2, .gridBox--xl--fr1, .gridBox--xl--fr0, .gridBox--lg--fr12, .gridBox--lg--fr11, .gridBox--lg--fr10, .gridBox--lg--fr9, .gridBox--lg--fr8, .gridBox--lg--fr7, .gridBox--lg--fr6, .gridBox--lg--fr5, .gridBox--lg--fr4, .gridBox--lg--fr3, .gridBox--lg--fr2, .companyInfo, .gridBox--lg--fr1, .gridBox--lg--fr0, .gridBox--md--fr12, .gridBox--md--fr11, .gridBox--md--fr10, .gridBox--md--fr9, .gridBox--md--fr8, .gridBox--md--fr7, .gridBox--md--fr6, .gridBox--md--fr5, .gridBox--md--fr4, .gridBox--md--fr3, .gridBox--md--fr2, .gridBox--md--fr1, .gridBox--md--fr0, .gridBox--sm--fr12, .gridBox--sm--fr11, .gridBox--sm--fr10, .gridBox--sm--fr9, .gridBox--sm--fr8, .gridBox--sm--fr7, .gridBox--sm--fr6, .gridBox--sm--fr5, .gridBox--sm--fr4, .gridBox--sm--fr3, .gridBox--sm--fr2, .gridBox--sm--fr1, .gridBox--sm--fr0 {
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    width: 100%
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr0 {
        width: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr0 {
        margin-left: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr1 {
        width: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr1 {
        margin-left: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr2 {
        width: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr2 {
        margin-left: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr3 {
        width: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr3 {
        margin-left: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr4 {
        width: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr4 {
        margin-left: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr5 {
        width: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr5 {
        margin-left: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr6 {
        width: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr6 {
        margin-left: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr7 {
        width: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr7 {
        margin-left: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr8 {
        width: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr8 {
        margin-left: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr9 {
        width: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr9 {
        margin-left: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr10 {
        width: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr10 {
        margin-left: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr11 {
        width: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr11 {
        margin-left: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridBox--sm--fr12 {
        width: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 0) {
    .gridMargin--sm--fr12 {
        margin-left: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr0 {
        width: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr0 {
        margin-left: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr1 {
        width: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr1, .textBlock__columnWrapper > *:not(blockquote) {
        margin-left: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr2 {
        width: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr2 {
        margin-left: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr3 {
        width: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr3 {
        margin-left: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr4 {
        width: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr4 {
        margin-left: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr5 {
        width: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr5 {
        margin-left: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr6 {
        width: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr6 {
        margin-left: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr7 {
        width: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr7 {
        margin-left: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr8 {
        width: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr8 {
        margin-left: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr9 {
        width: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr9 {
        margin-left: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr10, .textBlock__columnWrapper > *:not(blockquote) {
        width: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr10 {
        margin-left: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr11, .textBlock__columnWrapper > blockquote {
        width: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr11 {
        margin-left: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridBox--md--fr12 {
        width: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 768px) {
    .gridMargin--md--fr12 {
        margin-left: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr0 {
        width: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr0 {
        margin-left: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr1 {
        width: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr1, .textBlock__columnWrapper > blockquote {
        margin-left: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr2, .companyInfo {
        width: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr2, .textBlock__columnWrapper > *:not(blockquote) {
        margin-left: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr3 {
        width: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr3 {
        margin-left: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr4 {
        width: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr4 {
        margin-left: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr5 {
        width: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr5 {
        margin-left: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr6 {
        width: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr6 {
        margin-left: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr7 {
        width: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr7 {
        margin-left: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr8, .textBlock__columnWrapper > *:not(blockquote) {
        width: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr8 {
        margin-left: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr9, .textBlock__columnWrapper > blockquote {
        width: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr9 {
        margin-left: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr10 {
        width: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr10 {
        margin-left: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr11 {
        width: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr11 {
        margin-left: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridBox--lg--fr12 {
        width: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px) {
    .gridMargin--lg--fr12 {
        margin-left: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr0 {
        width: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr0 {
        margin-left: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr1 {
        width: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr1 {
        margin-left: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr2 {
        width: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr2, .textBlock__columnWrapper > blockquote {
        margin-left: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr3 {
        width: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr3, .textBlock__columnWrapper > *:not(blockquote) {
        margin-left: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr4 {
        width: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr4 {
        margin-left: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr5 {
        width: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr5 {
        margin-left: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr6, .textBlock__columnWrapper > *:not(blockquote) {
        width: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr6 {
        margin-left: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr7, .textBlock__columnWrapper > blockquote {
        width: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr7 {
        margin-left: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr8 {
        width: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr8 {
        margin-left: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr9 {
        width: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr9 {
        margin-left: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr10 {
        width: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr10 {
        margin-left: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr11 {
        width: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr11 {
        margin-left: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridBox--xl--fr12 {
        width: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .gridMargin--xl--fr12 {
        margin-left: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr0 {
        width: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr0 {
        margin-left: calc(0 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr1 {
        width: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr1 {
        margin-left: calc(1 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr2 {
        width: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr2 {
        margin-left: calc(2 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr3 {
        width: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr3 {
        margin-left: calc(3 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr4 {
        width: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr4 {
        margin-left: calc(4 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr5 {
        width: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr5 {
        margin-left: calc(5 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr6 {
        width: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr6 {
        margin-left: calc(6 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr7 {
        width: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr7 {
        margin-left: calc(7 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr8 {
        width: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr8 {
        margin-left: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr9 {
        width: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr9 {
        margin-left: calc(9 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr10 {
        width: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr10 {
        margin-left: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr11 {
        width: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr11 {
        margin-left: calc(11 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridBox--xxl--fr12 {
        width: calc(12 / 12 * 100%)
    }
}

@media screen and (min-width: 1601px) {
    .gridMargin--xxl--fr12 {
        margin-left: calc(12 / 12 * 100%)
    }
}

.wpcc-container {
    font-family: "brandon-grotesque", sans-serif
}

.header {
    font-family: "brandon-grotesque", sans-serif;
    box-shadow: 0 40px 30px rgba(4, 26, 50, .15);
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 2
}

.header__logoWrapper {
    height: 60px
}

.header__logoWrapper img {
    height: 100%;
    width: auto
}

@media (max-width: 767px) {
    .header__logoWrapper {
        height: 50px
    }
}

.header__logoWrapper:not(:first-child) {
    margin-left: 10px
}

.header__logoWrapper:empty {
    margin-left: 0px
}

.header__hideMobile {
    display: block
}

@media (max-width: 1000px) {
    .header__hideMobile {
        display: none
    }
}

.header__wrapper {
    background-color: #fff;
    height: 110px;
    align-items: center;
    display: flex
}

.header__wrapper > .layoutWrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    align-content: center;
    height: 100%
}

@media (max-width: 1600px) {
    .header__wrapper {
        height: 90px
    }
}

@media (max-width: 767px) {
    .header__wrapper {
        height: 70px
    }
}

.header__separator {
    height: 56px;
    width: 1px;
    background-color: #707070;
    margin-left: 30px;
    margin-right: 30px
}

.header__localeButton {
    width: 36px;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer
}

.header .navigation {
    margin-left: auto
}

.navigation {
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 100%
}

.navigation__menuToggleButton {
    display: none;
    height: 30px;
    width: 30px;
    align-items: center;
    justify-content: center
}

.navigation__menuToggleButton .closeIcon {
    display: none
}

.navigation__menuToggleButton.open .burgerIcon {
    display: none
}

.navigation__menuToggleButton.open .closeIcon {
    display: inline
}

@media (max-width: 1000px) {
    .navigation__menuToggleButton {
        display: flex
    }
}

.navigation__mobileWrapper {
    height: 100%
}

@media (max-width: 1000px) {
    .navigation__mobileWrapper {
        position: fixed;
        right: 0;
        top: 70px;
        bottom: 0;
        background: #fff;
        max-width: 420px;
        width: 100%;
        display: flex;
        flex-direction: column;
        transform: translateX(100%);
        transition: all .2s;
        height: auto
    }

    .navigation__mobileWrapper.open {
        transform: translateX(0)
    }
}

.navigation__mobileSpecialButtonsWrapper {
    display: none;
    justify-content: center;
    align-items: center;
    padding-top: 30px;
    padding-bottom: 20px;
    margin-top: auto;
    border-top: solid 1px #e2eaf5
}

@media (max-width: 1000px) {
    .navigation__mobileSpecialButtonsWrapper {
        display: flex
    }
}

.navigation__items {
    display: flex;
    flex-direction: row;
    margin: 0 -15px;
    height: 100%
}

@media (hover: hover), not all and (-moz-touch-enabled) {
    .navigation__items:not(.hoverLocked) .navigation__item:hover .navigation__itemLabel::after {
        transform: scaleX(1)
    }

    .navigation__items:not(.hoverLocked) .navigation__item:hover .navigation__itemSubmenu {
        transform: translateY(100%);
        box-shadow: 0 40px 30px rgba(4, 26, 50, .15)
    }
}

@media (max-width: 1000px) {
    .navigation__items {
        flex-direction: column;
        margin: 0;
        padding-right: 40px;
        padding-left: 50px;
        align-items: flex-end;
        overflow: scroll
    }
}

@media (max-width: 767px) {
    .navigation__items {
        padding-right: 20px
    }
}

.navigation__item {
    padding: 0 15px;
    display: flex;
    align-items: center
}

.navigation__item.navigation__item--mobileOnly {
    display: none
}

@media (max-width: 1000px) {
    .navigation__item.navigation__item--mobileOnly {
        display: flex
    }
}

@media (max-width: 1000px) {
    .navigation__item {
        padding: 0;
        flex-direction: column;
        align-items: flex-end
    }
}

.navigation__search {
    margin-left: 60px;
    text-transform: uppercase;
    display: flex;
    align-items: center
}

.navigation__search > svg {
    margin-left: 8px
}

.navigation__itemLabel {
    display: flex;
    align-items: center;
    white-space: nowrap;
    text-transform: uppercase;
    cursor: pointer;
    position: relative;
    font-weight: 700;
    font-family: "brandon-grotesque", sans-serif;
    font-size: 14px;
    line-height: 1
}

.navigation__itemLabel svg {
    transition: all .2s
}

.navigation__itemLabel.active svg {
    transform: rotate(180deg)
}

.navigation__itemLabel.active::after {
    transform: scaleX(1)
}

@media (max-width: 1000px) {
    .navigation__itemLabel {
        height: 50px
    }
}

.navigation__itemLabel > svg {
    margin-left: 6px
}

.navigation__itemLabel::after {
    content: "";
    position: absolute;
    top: 100%;
    margin-top: 8px;
    height: 3px;
    width: 100%;
    background-color: #024693;
    transform: scaleX(0);
    transition: transform .2s
}

@media (max-width: 1000px) {
    .navigation__itemLabel::after {
        display: none
    }
}

.navigation__itemSubmenu {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    transform: translateY(-0.1%);
    transition: transform .2s;
    border-top: solid 1px transparent;
    will-change: transform
}

.navigation__itemSubmenu.open {
    transform: translateY(100%);
    box-shadow: 0 40px 30px rgba(4, 26, 50, .15)
}

@media (max-width: 1000px) {
    .navigation__itemSubmenu {
        z-index: 1;
        position: relative;
        display: none !important;
        transform: translateY(0) !important;
        box-shadow: none !important
    }

    .navigation__itemSubmenu.open {
        display: flex !important
    }
}

.landingPageFooter > div {
    background-color: #024693
}

@media only screen and (min-width: 0)and (max-width: 767px) {
    .landingPageFooter {
        text-align: center
    }
}

.landingPageFooter__bottom {
    text-align: center
}

@media only screen and (min-width: 0)and (max-width: 767px) {
    .landingPageFooter__bottom {
        padding: 32px 16px
    }
}

@media only screen and (min-width: 768px) {
    .landingPageFooter__bottom {
        padding: 32px 0
    }
}

.landingPageFooter__bottom-wrapper {
    font-size: 18px;
    width: 100%;
    max-width: 1220px;
    margin-right: auto;
    margin-left: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.landingPageFooter__bottom-wrapper:after, .landingPageFooter__bottom-wrapper:before {
    content: "";
    display: table
}

.landingPageFooter__bottom-wrapper:after {
    clear: both
}

@media only screen and (min-width: 0)and (max-width: 991px) {
    .landingPageFooter__bottom-wrapper {
        padding-right: 0px;
        padding-left: 0px
    }
}

@media only screen and (min-width: 992px) {
    .landingPageFooter__bottom-wrapper {
        padding-right: 32px;
        padding-left: 32px
    }
}

@media only screen and (min-width: 0)and (max-width: 767px) {
    .landingPageFooter__nav {
        width: 100%
    }
}

.landingPageFooter__nav-list {
    list-style: none;
    padding-left: 0
}

.landingPageFooter__nav-list a {
    padding: 0
}

.landingPageFooter__nav-list a:hover {
    text-decoration: underline !important
}

@media only screen and (min-width: 0)and (max-width: 767px) {
    .landingPageFooter__nav-list {
        display: block;
        -ms-flex-order: 1;
        order: 1;
        width: 100%
    }

    .landingPageFooter__nav-list a {
        padding: 0 0 12px 0;
        display: inline-block
    }
}

@media only screen and (min-width: 768px) {
    .landingPageFooter__nav-list {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: end;
        align-items: flex-end;
        margin-right: 0;
        margin-left: auto
    }

    .landingPageFooter__nav-list a {
        display: block
    }
}

.landingPageFooter__nav-link {
    display: block;
    text-transform: none
}

@media only screen and (min-width: 0)and (max-width: 767px) {
    .landingPageFooter__nav-link {
        font-size: 12px;
        font-weight: 400;
        line-height: 1;
        margin-bottom: 8px
    }
}

@media only screen and (min-width: 768px) {
    .landingPageFooter__nav-link {
        font-size: 14px;
        font-weight: 400;
        line-height: 1;
        margin-left: 32px
    }
}

@media only screen and (min-width: 0)and (max-width: 767px) {
    .landingPageFooter__copyright {
        -ms-flex-order: 2;
        order: 2;
        width: 100%
    }
}

@media only screen and (min-width: 768px) {
    .landingPageFooter__copyright {
        margin-right: auto;
        margin-left: 0
    }
}

.landingPageFooter__copyright, .landingPageFooter__nav-list li a {
    font-size: 16px;
    color: #fff !important;
    opacity: 1
}

.landingPageHeader {
    position: fixed;
    z-index: 101;
    width: 100%;
    -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, .15);
    -webkit-transform: translateY(-200%);
    transform: translateY(-200%);
    background-color: #fff;
    -webkit-transition: -webkit-transform .6s ease-out;
    transition: -webkit-transform .6s ease-out;
    transition: transform .6s ease-out;
    transition: transform .6s ease-out, -webkit-transform .6s ease-out
}

.landingPageHeader__wrapper {
    width: 100%;
    height: 110px;
    max-width: 1220px;
    margin-right: auto;
    margin-left: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.landingPageHeader__wrapper.scrolled {
    padding: 0;
    top: 0rem
}

.landingPageHeader__logo {
    padding: 0;
    top: 0rem;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    height: 60px
}

.landingPageHeader__logo img {
    height: 100%;
    width: auto
}

@media (max-width: 767px) {
    .landingPageHeader__logo {
        height: 50px
    }
}

.landingPageHeader__wrapper:after, .landingPageHeader__wrapper:before {
    content: "";
    display: table
}

.landingPageHeader__wrapper:after {
    clear: both
}

.landingPageHeader__logo-mbg {
    float: left;
    margin-top: -2.5rem;
    position: absolute
}

.landingPageHeader__logo-next {
    margin-left: 1rem
}

.landingPageHeader__logo-image {
    width: 9.5rem;
    max-width: none !important;
    padding: 0;
    margin: 1rem 0;
    height: 3rem !important
}

.landingPageHeader__figure, .landingPageHeader__figure_next {
    width: 200px;
    height: auto
}

@media only screen and (min-width: 0)and (max-width: 991px) {
    .landingPageHeader__wrapper {
        padding-right: 16px;
        padding-left: 16px
    }
}

@media only screen and (min-width: 992px) {
    .landingPageHeader__wrapper {
        padding-right: 32px;
        padding-left: 32px
    }
}

.landingPageHeader__heading {
    clip: rect(1px, 1px, 1px, 1px);
    overflow: hidden;
    position: absolute;
    width: 1px;
    height: 1px
}

@media only screen and (min-width: 0)and (max-width: 991px) {
    .landingPageHeader__logo {
        width: 90%;
        padding-bottom: 16px
    }
}

@media only screen and (min-width: 992px) {
    .landingPageHeader__logo {
        -ms-flex: 0 1 0%;
        flex: 0 1 0%;
        padding-bottom: 20px
    }
}

@media only screen and (min-width: 0)and (max-width: 991px) {
    .landingPageHeader__logo-image {
        max-width: 105px
    }
}

@media only screen and (min-width: 992px) {
    .landingPageHeader__logo-image {
        max-width: 120px
    }
}

@media only screen and (min-width: 992px) {
    .landingPageHeader__nav {
        -ms-flex: 1 1 0%;
        flex: 1 1 0%;
        margin-left: 168px
    }
}

@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none) {
    .landingPageHeader__logo-mbg img {
        margin-top: 0 !important
    }
}

@media only screen and (max-width: 767px) {
    .landingPageHeader__logo-mbg img {
        width: 7rem !important;
        margin-left: 6.5rem
    }

    .landingPageHeader__logo-image {
        width: 6rem !important
    }

    .landingPageHeader a.landingPageHeader__logo {
        width: 100% !important;
        float: left !important
    }

    .landingPageHeader__logo-image {
        width: 8rem;
        height: 3rem !important
    }

    .landingPageHeader .float-right {
        float: right;
        position: absolute;
        right: 16px;
        top: 1.675rem
    }
}

@media only screen and (max-width: 786px) {
    .landingPageHeader__wrapper.scrolled .float-right {
        top: .5rem
    }
}

@media only screen and (max-width: 991px)and (min-width: 0) {
    .landingPageHeader__logo {
        width: auto !important;
        padding-bottom: 16px
    }
}

@media all and (-ms-high-contrast: none),(-ms-high-contrast: active) {
    .landingPageHeader__logo-image {
        height: auto
    }
}

@media only screen and (max-width: 998px) {
    .landingPageHeader__logo-mbg {
        float: left;
        margin-top: -2.5rem;
        position: absolute
    }

    .landingPageHeader__logo-mbg img {
        width: 12.5rem;
        height: 3.5rem;
        margin-top: 3.5rem;
        margin-left: 11rem
    }

    .landingPageHeader__nav {
        display: none
    }

    .landingPageHeader__figure {
        width: 100%;
        height: auto
    }

    .landingPageHeader__figure img {
        width: 100%;
        height: auto
    }

    .landingPageHeader__wrapper {
        justify-content: start
    }
}

.landingPageHeader--pinned {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: -webkit-transform .4s ease-out;
    transition: -webkit-transform .4s ease-out;
    transition: transform .4s ease-out;
    transition: transform .4s ease-out, -webkit-transform .4s ease-out
}

.landingPageNav__open {
    float: right;
    position: relative;
    margin-right: 2rem;
    width: 170px;
    margin-top: 1.3rem;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1rem;
    padding: 0 !important;
    text-align: right
}

.landingPageNav__open:hover {
    color: #024693;
    cursor: pointer
}

.landingPageNav__open span svg {
    width: .675rem;
    height: 5px;
    stroke: #000;
    top: -1px;
    margin-left: 5px;
    position: relative
}

.landingPageNav__open span svg:hover span svg {
    stroke: #024693
}

.landingPageNav__open.open span svg {
    margin-bottom: .675rem;
    transform: rotate(180deg)
}

.landingPageNav__open.open .landingPageNav__list {
    display: block;
    cursor: pointer
}

.landingPageNav__close-button, .landingPageNav__open-button {
    line-height: 0;
    cursor: pointer;
    stroke: #024693
}

@media only screen and (min-width: 992px) {
    .landingPageNav__close-button, .landingPageNav__open-button {
        display: none
    }
}

.landingPageNav__close-button {
    position: absolute;
    top: 24px;
    right: 24px
}

@media only screen and (min-width: 992px) {
    .landingPageNav__close-button {
        opacity: 0;
        visibility: hidden
    }
}

@media only screen and (min-width: 0)and (max-width: 991px) {
    .landingPageNav--closed .landingPageNav__close-button {
        opacity: 0;
        visibility: hidden
    }
}

.landingPageNav__list {
    position: absolute;
    background-color: #fff;
    top: 2rem;
    left: -0.125rem;
    text-transform: initial;
    -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, .15);
    padding: .25rem 0;
    display: none;
    width: 100%
}

@media only screen and (min-width: 0)and (max-width: 991px) {
    .landingPageNav--closed .landingPageNav__list {
        opacity: 0;
        visibility: hidden
    }
}

.landingPageNav__item {
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    width: 100%
}

.landingPageNav__item:last-child {
    margin-bottom: 0;
    border-bottom: none
}

@media only screen and (min-width: 0)and (max-width: 991px) {
    .landingPageNav__item {
        font-size: 16px;
        font-weight: 400;
        line-height: 1.5;
        width: 100%;
        margin-bottom: 32px;
        text-align: center
    }
}

.landingPageNav__link {
    font-size: 1.1rem !important;
    padding: 1rem 0rem 1rem 1.5rem !important;
    display: block !important;
    width: 100% !important;
    letter-spacing: 0rem;
    text-align: left
}

@media only screen and (max-width: 998px) {
    .landingPageNav__open {
        display: none
    }
}

@media only screen and (min-width: 992px) {
    .landingPageNav__link {
        font-size: 14px;
        font-weight: 400;
        line-height: 1.71428571;
        opacity: .5;
        width: auto;
        margin-bottom: 0;
        color: #222
    }

    .landingPageNav__link:hover {
        opacity: 1;
        text-decoration: none;
        color: #222
    }
}

@media only screen and (min-width: 0)and (max-width: 991px) {
    .landingPageNav__button {
        width: 100%
    }
}

@media only screen and (min-width: 992px) {
    .landingPageNav__button {
        width: auto
    }
}

.btn {
    height: 64px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 40px;
    background-color: #024693;
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    font-size: .75rem;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    letter-spacing: .5px;
    transition: all .3s ease-in-out
}

.btn.btn--transparent {
    background-color: transparent;
    border: solid 1px #024693;
    color: #024693
}

.btn.btn--transparent:hover {
    -webkit-box-shadow: 0 0 15px 0 #024693;
    box-shadow: 0 0 15px 0 #fff;
    background-color: #024693;
    color: #fff
}

.btn_white {
    background-color: #fff;
    border: solid 1px #024693;
    color: #024693
}

.btn:hover {
    -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, .15);
    background-color: #000
}

.btnInverted {
    height: 64px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 40px;
    background-color: #fff;
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    font-size: .75rem;
    text-transform: uppercase;
    text-align: center;
    color: #024693;
    letter-spacing: .5px;
    transition: all .3s ease-in-out
}

.btnInverted.btn--transparent {
    background-color: transparent;
    border: solid 1px #024693;
    color: #024693
}

.btnInverted.btn--transparent:hover {
    -webkit-box-shadow: 0 0 15px 0 #024693;
    box-shadow: 0 0 15px 0 #fff;
    background-color: #024693;
    color: #fff
}

.btnInverted:hover {
    -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, .15);
    background-color: #041a32;
    color: #fff
}

.pageBox__list {
    padding-bottom: 30px;
    justify-content: center
}

@media (max-width: 1000px) {
    .pageBox__list {
        padding-bottom: 0
    }
}

.pageBox__wrapper {
    width: 25%
}

@media (max-width: 1000px) {
    .pageBox__wrapper {
        width: 100%
    }
}

.pageBox__imageWrapper {
    height: 140px;
    width: 100%;
    overflow: hidden;
    margin-bottom: 20px
}

@media (hover: hover), not all and (-moz-touch-enabled) {
    .pageBox__imageWrapper:hover img {
        transform: scale(1.1)
    }
}

@media (max-width: 1000px) {
    .pageBox__imageWrapper {
        display: none
    }
}

.pageBox__imageWrapper img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    transition: transform .6s
}

.pageBox__heading {
    margin-bottom: 20px
}

@media (max-width: 1000px) {
    .pageBox__heading {
        display: none
    }
}

.pageBox__excerpt {
    margin-bottom: 20px;
    color: #8e9195
}

@media (max-width: 1000px) {
    .pageBox__excerpt {
        display: none
    }
}

@media (max-width: 1300px) {
    .pageBox__excerpt {
        display: none
    }
}

.advantageArticle {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap
}

.advantageArticle__description {
    display: flex;
    flex-direction: column
}

.advantageArticle__title {
    text-transform: uppercase;
    margin-bottom: 24px
}

@media screen and (max-width: 767px) {
    .advantageArticle__title {
        margin-bottom: 12px
    }
}

.advantageArticle__illustrationWrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 300px
}

@media screen and (max-width: 767px) {
    .advantageArticle__illustrationWrapper {
        width: 70%;
        height: 220px;
        margin: 0 auto 40px
    }
}

.advantageArticle__illustrationWrapper img {
    object-fit: contain
}

@media screen and (max-width: 1000px) {
    .advantageArticle__illustrationWrapper img {
        height: 100%;
        width: 100%
    }
}

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

@media screen and (max-width: 767px) {
    .advantageArticle__illustrationWrapper svg {
        height: auto
    }
}

.advantageArticle.advantageArticle--reverseOrder {
    flex-direction: row-reverse
}

.submenu {
    background-color: #fff;
    display: flex;
    padding-top: 60px;
    padding-bottom: 40px;
    border-top: solid 1px #e2eaf5
}

@media (max-width: 1600px) {
    .submenu {
        padding-top: 40px;
        padding-bottom: 30px
    }
}

@media (max-width: 1000px) {
    .submenu {
        padding-top: 0;
        padding-bottom: 0;
        border-top: none
    }
}

.submenu__aside {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: 20px
}

@media (max-width: 1300px) {
    .submenu__aside {
        flex-direction: row;
        width: 100%;
        margin-top: 30px
    }

    .submenu__aside div[class^=submenu__] {
        width: 50%
    }
}

@media (max-width: 1300px)and (max-width: 1000px) {
    .submenu__aside {
        width: 100%;
        flex-direction: column;
        margin-top: 0
    }

    .submenu__aside div[class^=submenu__] {
        margin-top: 12px;
        width: 100%
    }

    .submenu__aside div[class^=submenu__]:nth-child(2) {
        display: none
    }

    .submenu__aside .submenu__heading {
        text-align: right;
        font-size: 12px
    }

    .submenu__aside .submenu__linksList {
        margin-top: 0
    }

    .submenu__aside .submenu__linkWrapper:not(:last-child) {
        margin-bottom: 0
    }
}

.submenu__paragraph {
    color: #8e9195
}

.submenu__linksList {
    margin-top: 20px
}

.submenu__linkWrapper {
    padding-left: 10px;
    padding-right: 10px
}

.submenu__linkWrapper img {
    max-width: 100%
}

.submenu__linkWrapper:not(:last-child) {
    margin-bottom: 12px
}

.submenu__link {
    font-size: 12px;
    color: #024693;
    display: flex;
    align-items: center;
    text-transform: uppercase;
    cursor: pointer
}

@media (max-width: 1000px) {
    .submenu__link {
        justify-content: flex-end
    }
}

.submenu__link > svg {
    margin-right: 10px;
    transition: transform .2s
}

@media (hover: hover), not all and (-moz-touch-enabled) {
    .submenu__link:hover svg {
        transform: translateX(4px)
    }
}

@media (max-width: 1000px) {
    .submenu__link {
        height: 38px
    }
}

@media (max-width: 1000px) {
    .submenu__linkLabelDesktop {
        display: none
    }
}

.submenu__linkLabelMobile {
    display: none
}

@media (max-width: 1000px) {
    .submenu__linkLabelMobile {
        display: inline
    }
}

.submenu__downloadBox .submenu__paragraph {
    margin-top: 20px;
    margin-bottom: 20px
}

.submenu__buttonWrapper {
    display: flex;
    justify-content: center;
    border-top: solid 1px #e2eaf5;
    padding-top: 40px
}

@media (max-width: 1600px) {
    .submenu__buttonWrapper {
        padding-top: 30px
    }
}

.submenu__linksColumn {
    width: 33%
}

.submenu__linksColumn > * {
    margin-bottom: 40px
}

@media (max-width: 767px) {
    .submenu__linksColumn > * {
        margin-bottom: 16px
    }
}

@media (max-width: 1000px) {
    .submenu__linksColumn > * {
        margin-bottom: 16px
    }
}

@media (max-width: 1000px) {
    .submenu__linksColumn {
        width: 100%
    }
}

@media (max-width: 1000px) {
    .submenu__specialButtonWrapper {
        display: none
    }
}

@media (max-width: 1000px) {
    .submenu .gridRowWrapper {
        flex-direction: column
    }
}

@media (max-width: 1000px) {
    .submenu > .layoutWrapper {
        padding: 0
    }
}

@media (max-width: 1000px) {
    .submenu .aboutUsWrapper {
        flex-direction: column
    }

    .submenu .aboutUsWrapper .submenu__heading {
        text-align: right;
        font-size: 12px
    }

    .submenu .aboutUsWrapper .submenu__linkWrapper {
        margin-bottom: 0px
    }

    .submenu .aboutUsWrapper .submenu__linksList {
        margin-top: 0
    }
}

@media (max-width: 767px) {
    .submenu .aboutUsWrapper {
        margin-top: 10px
    }
}

@media (max-width: 1000px) {
    .submenu .extraLink {
        display: none
    }
}

.advantagesSection {
    display: flex;
    flex-direction: column
}

.advantagesSection {
    margin-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    margin-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.advantagesSection__heading {
    margin-bottom: 40px
}

.advantagesSection__tabs {
    display: flex
}

.advantagesSection__tabs {
    margin-bottom: clamp(40px, 3.2653061224vw + 27.7551020408px, 80px)
}

@media screen and (max-width: 767px) {
    .advantagesSection__tabs {
        display: block
    }
}

.advantagesSection__tabWrapper {
    width: calc(100% / 3);
    flex: 1;
    display: flex
}

@media screen and (max-width: 767px) {
    .advantagesSection__tabWrapper {
        width: 100%
    }

    .advantagesSection__tabWrapper:not(:last-child) {
        margin-bottom: 20px
    }
}

.advantagesSection__tab {
    text-align: left;
    position: relative;
    width: 100%;
    cursor: pointer;
    padding-bottom: 16px
}

.advantagesSection__tab::after {
    content: "";
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    height: 1px;
    background-color: #44494d;
    transition: all .2s
}

.advantagesSection__tab:hover::after, .advantagesSection__tab.active::after {
    height: 4px;
    background-color: #024693
}

.advantagesSection__buttonWrapper {
    margin-top: 100px;
    display: flex;
    justify-content: center
}

.advantagesSection .advantageArticle:not(:last-child) {
    margin-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

@media screen and (max-width: 767px) {
    .advantagesSection .advantageArticle:not(:last-child) {
        margin-bottom: 40px
    }
}

.heroCarousel {
    padding-bottom: 770px;
    position: relative;
    overflow: hidden
}

@media screen and (max-width: 767px) {
    .heroCarousel {
        padding-bottom: initial
    }
}

.heroCarousel__carousel {
    position: absolute;
    left: 0;
    right: 0;
    height: 100%
}

@media screen and (max-width: 767px) {
    .heroCarousel__carousel {
        position: relative;
        margin-bottom: 30px
    }
}

.heroCarousel__slideBackgroundWrapper {
    position: absolute;
    z-index: -1;
    height: 100%;
    width: 100%
}

@media screen and (max-width: 767px) {
    .heroCarousel__slideBackgroundWrapper {
        position: relative;
        height: 220px
    }
}

.heroCarousel__slideBackground {
    object-fit: cover;
    height: 100%;
    width: 100%
}

.heroCarousel__preHeading {
    letter-spacing: 1.2px;
    margin-bottom: 20px;
    display: inline-flex;
    align-items: center
}

.heroCarousel__preHeading > svg {
    margin-left: 16px;
    margin-right: 16px
}

.heroCarousel__heading {
    margin-bottom: 20px
}

.heroCarousel__paragraph {
    margin-bottom: 28px
}

@media screen and (max-width: 767px) {
    .heroCarousel__paragraph {
        margin-bottom: 75px
    }
}

.heroCarousel__slideContent {
    margin-top: 120px
}

.heroCarousel__slideContent .btn {
    margin-top: clamp(30px, 2.4489795918vw + 20.8163265306px, 60px)
}

@media screen and (max-width: 767px) {
    .heroCarousel__slideContent .btn {
        width: 100%
    }
}

@media screen and (max-width: 1200px) {
    .heroCarousel__slideContent {
        margin-top: 80px
    }
}

@media screen and (max-width: 767px) {
    .heroCarousel__slideContent {
        margin-top: 30px
    }
}

.heroCarousel__paginationWrapper {
    position: absolute;
    z-index: 1;
    bottom: 180px;
    left: 0;
    right: 0;
    margin: 0 auto
}

@media screen and (max-width: 1200px) {
    .heroCarousel__paginationWrapper {
        bottom: 80px
    }
}

@media screen and (max-width: 767px) {
    .heroCarousel__paginationWrapper {
        display: none
    }
}

.heroCarousel__paginationWrapper {
    position: absolute;
    z-index: 1;
    bottom: 180px;
    left: 0;
    right: 0;
    margin: 0 auto
}

.heroCarousel__pagination {
    display: flex;
    flex-direction: row
}

.heroCarousel__bullet {
    height: 2px;
    width: 120px;
    background-color: #fff;
    display: block;
    margin-right: 10px
}

.heroCarousel__bullet.swiper-pagination-bullet-active {
    background-color: #024693
}

@media screen and (max-width: 1000px) {
    .heroCarousel__bullet {
        width: 60px
    }
}

@media screen and (max-width: 767px) {
    .heroCarousel__bullet {
        width: 44px;
        background-color: #cbd6f9
    }
}

.heroCarousel__btn {
    position: absolute;
    display: flex;
    align-items: center;
    height: 50px;
    margin-top: -25px;
    cursor: pointer;
    z-index: 1
}

.heroCarousel__btn.heroCarousel__btn--prev {
    left: 40px
}

.heroCarousel__btn.heroCarousel__btn--next {
    right: 40px
}

.heroCarousel__navigationWrapper {
    position: absolute;
    top: 50%;
    height: auto;
    left: 0;
    right: 0;
    margin: 0 auto
}

@media screen and (max-width: 1000px) {
    .heroCarousel__navigationWrapper {
        display: none
    }
}

.heroCarousel .swiper-slide {
    box-sizing: border-box
}

.heroCarousel .swiper-slide {
    box-sizing: border-box
}

.logoWall {
    background-color: #f5f8fe;
    display: flex;
    flex-direction: column;
    align-items: center
}

.logoWall {
    padding-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    padding-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.logoWall__heading {
    margin-bottom: 40px;
    text-align: center
}

.logoWall__imageWrapper {
    height: 50px;
    display: flex;
    justify-content: center
}

.logoWall__imageWrapper img {
    height: 100%;
    width: 100%;
    object-fit: contain
}

.logoWall .layoutWrapper {
    width: 100%
}

.logoWall__pagination {
    display: flex;
    flex-direction: row;
    margin: 50px auto 0;
    justify-content: center
}

.logoWall__carousel__bullet {
    height: 2px;
    width: 100px;
    background-color: #cbd6f9;
    display: block;
    margin-right: 5px;
    margin-left: 5px
}

.logoWall__carousel__bullet.swiper-pagination-bullet-active {
    background-color: #024693
}

@media screen and (max-width: 1000px) {
    .logoWall__carousel__bullet {
        width: 60px
    }
}

@media screen and (max-width: 767px) {
    .logoWall__carousel__bullet {
        width: 44px;
        background-color: #cbd6f9
    }
}

.sectionHeader__strapline {
    letter-spacing: 1.2px;
    margin-bottom: 20px
}

.sectionHeader__heading:not(:last-child) {
    margin-bottom: 50px
}

.sectionHeader__heading:not(:last-child) {
    margin-bottom: clamp(30px, 1.6326530612vw + 23.8775510204px, 50px)
}

.sectionHeader__additionalInfo {
    letter-spacing: 1.2px;
    display: inline-flex;
    align-items: center;
    margin-bottom: 20px
}

.sectionHeader__additionalInfoSeparator > svg {
    margin-left: 20px;
    margin-right: 20px
}

.sectionHeader__additionalInfoLocation > svg {
    margin-right: 12px
}

.link {
    display: inline-flex;
    align-items: center;
    color: #024693
}

.link svg {
    margin-right: 8px;
    transition: transform .2s
}

@media (hover: hover), not all and (-moz-touch-enabled) {
    .link:hover svg {
        transform: translateX(4px)
    }
}

.linkInverted {
    display: inline-flex;
    align-items: center;
    color: #fff
}

.linkInverted svg {
    margin-right: 8px;
    transition: transform .2s
}

@media (hover: hover), not all and (-moz-touch-enabled) {
    .linkInverted:hover svg {
        transform: translateX(4px)
    }
}

.quotation__author {
    margin-top: 15px
}

.articleCard__preHeader {
    letter-spacing: 1.2px;
    display: flex;
    align-items: center;
    margin-bottom: 16px
}

.articleCard__preHeader > svg {
    margin-left: 16px;
    margin-right: 16px
}

.articleCard__preHeaderPin {
    margin-right: 12px
}

.articleCard__title {
    margin-bottom: 32px
}

.articleCard .link {
    margin-top: 30px
}

.twoItemsCarousel {
    padding-top: 100px;
    padding-bottom: 100px
}

.twoItemsCarousel__carousel {
    overflow: hidden
}

.twoItemsCarousel__heading {
    margin-bottom: 80px
}

.twoItemsCarousel__navWrapper {
    display: flex;
    align-items: center
}

@media (max-width: 1000px) {
    .twoItemsCarousel__navWrapper {
        display: none
    }
}

.twoItemsCarousel .carouselPagination {
    margin-top: 46px;
    justify-content: center
}

.twoItemsCarousel .buttonsWrapper {
    display: flex;
    flex-direction: row;
    margin-top: 80px;
    justify-content: center
}

.twoItemsCarousel .buttonsWrapper > * {
    margin: 0 10px;
    width: 300px
}

.carouselPagination {
    display: flex;
    flex-direction: row;
    margin-left: -5px;
    margin-right: -5px
}

.carouselPagination > * {
    height: 2px;
    background-color: #fff;
    display: block;
    margin: 0 5px;
    min-width: 80px
}

@media (max-width: 767px) {
    .carouselPagination > * {
        min-width: 24px;
        margin: 0 3px
    }
}

.carouselPagination > *.swiper-pagination-bullet-active {
    background-color: #024693
}

.carouselPagination.carouselPagination--onWhite > * {
    background-color: #cbd6f9
}

.carouselPagination.carouselPagination--onWhite > *.swiper-pagination-bullet-active {
    background-color: #024693
}

.carouselNavButton {
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer
}

.indexPaginator {
    letter-spacing: 1.2px;
    display: inline-flex;
    align-items: center
}

.indexPaginator__currentSliderViewIndex {
    width: 20px;
    margin-right: 4px;
    display: inline-block;
    text-align: right
}

.indexPaginator__totalSliderViewsNumber {
    margin-left: 4px;
    display: inline-block
}

.indexPaginator svg {
    margin-left: 20px;
    margin-right: 20px
}

.storyCard {
    height: 620px
}

.storyCard__withoutImage {
    max-height: 360px !important
}

@media (max-width: 1300px) {
    .storyCard {
        height: auto
    }
}

.storyCard__imageWrapper {
    background-color: #f5f8fe;
    width: 100%;
    padding-bottom: 62%;
    position: relative
}

.storyCard__image {
    object-fit: cover;
    position: absolute;
    height: 100%;
    width: 100%
}

.storyCard__textWrapper {
    background-color: #fff;
    height: 320px;
    padding: 40px 40px 0 40px;
    position: absolute;
    bottom: 0;
    left: 40px;
    right: 0
}

@media (max-width: 1300px) {
    .storyCard__textWrapper {
        padding: 20px 20px 0 20px
    }
}

@media (max-width: 1300px) {
    .storyCard__textWrapper {
        position: relative;
        left: 0;
        padding: 20px 0 0;
        height: auto
    }
}

@media (max-width: 767px) {
    .storyCard__textWrapper {
        padding-top: 10px
    }
}

@media (max-width: 1000px) {
    .storyCard__title {
        font-size: 22px
    }
}

.storyCard__abstract {
    margin-top: 10px;
    margin-bottom: 20px
}

@media (max-width: 1000px) {
    .storyCard__abstract {
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden
    }
}

.storyCard__abstract ul {
    position: relative;
    list-style: disc;
    margin-left: 0;
    padding-left: 1.2em
}

.storyCard__abstract ul li:before {
    position: absolute;
    left: 0
}

.storyCardInverted {
    color: #041a32
}

.accordion {
    border-bottom: solid 1px #8e9195
}

.accordion__summary {
    padding-top: 20px;
    padding-bottom: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    cursor: pointer;
    outline: none !important
}

.accordion__summary::-webkit-details-marker {
    display: none
}

@media (max-width: 767px) {
    .accordion__summary {
        padding-top: 15px;
        padding-bottom: 15px
    }
}

.accordion__marker {
    height: 40px;
    width: 40px;
    flex-shrink: 0;
    background-color: #024693;
    margin-right: 30px;
    border: solid 1px #024693;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff
}

@media (max-width: 767px) {
    .accordion__marker {
        height: 30px;
        width: 30px;
        margin-right: 16px
    }
}

.accordion__marker::after {
    content: "+"
}

.accordion__content {
    padding-left: 70px;
    padding-bottom: 20px
}

@media (max-width: 767px) {
    .accordion__content {
        padding-left: 56px
    }
}

.accordion__content p + .linkExternal {
    margin-top: 10px
}

.accordion__content img {
    max-width: 100%;
    height: auto
}

.accordion__content a {
    color: #024693;
    display: inline-flex;
    align-items: center
}

.accordion[open] .accordion__marker {
    background-color: transparent;
    color: #024693
}

.accordion[open] .accordion__marker::after {
    content: "-"
}

.accordionInverted {
    border-bottom: solid 1px #fff
}

.accordionInverted__summary {
    padding-top: 20px;
    padding-bottom: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    cursor: pointer;
    outline: none !important
}

.accordionInverted__summary::-webkit-details-marker {
    display: none
}

@media (max-width: 767px) {
    .accordionInverted__summary {
        padding-top: 15px;
        padding-bottom: 15px
    }
}

.accordionInverted__marker {
    height: 40px;
    width: 40px;
    flex-shrink: 0;
    background-color: #fff;
    margin-right: 30px;
    border: solid 1px #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #024693
}

@media (max-width: 767px) {
    .accordionInverted__marker {
        height: 30px;
        width: 30px;
        margin-right: 16px
    }
}

.accordionInverted__marker::after {
    content: "+"
}

.accordionInverted__content {
    padding-left: 70px;
    padding-bottom: 20px
}

@media (max-width: 767px) {
    .accordionInverted__content {
        padding-left: 56px
    }
}

.accordionInverted__content p ~ .linkExternal {
    margin-top: 10px;
    color: #fff
}

.accordionInverted__content img {
    max-width: 100%;
    height: auto
}

.accordionInverted__content a, .accordionInverted__content a.linkExternalIcon {
    color: #fff;
    display: inline;
    text-decoration: underline
}

.accordionInverted__content a svg path, .accordionInverted__content a.linkExternalIcon svg path {
    stroke: #fff
}

.accordionInverted[open] .accordionInverted__marker {
    background-color: transparent;
    color: #fff
}

.accordionInverted[open] .accordionInverted__marker::after {
    content: "-"
}

.fundingPortalStepCard {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative
}

.fundingPortalStepCard__illustrationWrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 120px;
    width: 120px;
    border-radius: 50%;
    background-color: #fff
}

.fundingPortalStepCard__description {
    position: absolute;
    text-align: center;
    top: calc(100% + 30px)
}

@media (max-width: 767px) {
    .fundingPortalStepCard__description {
        position: relative;
        margin-top: 20px
    }
}

.fundingPortalStepCard__counter {
    display: inline-block;
    margin-right: 10px
}

.textBlock {
    margin-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    margin-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.textBlock__columnWrapper {
    flex-direction: column;
    width: 100%
}

.textBlock__columnWrapper figure {
    margin-top: 2em;
    margin-bottom: 2em
}

.textBlock__columnWrapper figure img.richtext-image {
    max-width: 100%;
    height: auto
}

.textBlock__columnWrapper figure img.richtext-image.left {
    float: left;
    margin: 10px 10px 10px 0
}

.textBlock__columnWrapper figure img.richtext-image.right {
    float: right;
    margin: 10px 0 10px 10px
}

.textBlock__columnWrapper figure img.richtext-image.full-width {
    width: 100%;
    height: auto;
    margin-top: 10px;
    margin-bottom: 10px
}

@media screen and (max-width: 640px) {
    .textBlock__columnWrapper figure img.richtext-image.left {
        float: none;
        display: block;
        margin: 10px auto
    }

    .textBlock__columnWrapper figure img.richtext-image.right {
        float: none;
        display: block;
        margin: 10px auto
    }
}

.textBlock__columnWrapper a {
    color: #024693;
    display: inline-flex;
    align-items: center
}

.textBlock h2 + p {
    margin-top: clamp(20px, 1.6326530612vw + 13.8775510204px, 40px)
}

.textBlock h3 + p {
    margin-top: 20px
}

.textBlock p {
    overflow: auto
}

.textBlock p + p, .textBlock p + ul, .textBlock p + ol {
    margin-top: clamp(24px, 1.306122449vw + 19.1020408163px, 40px)
}

.textBlock p + blockquote {
    margin-top: clamp(30px, 1.6326530612vw + 23.8775510204px, 50px)
}

.textBlock p + h2 {
    margin-top: 80px
}

.textBlock p + h2 {
    margin-top: clamp(40px, 3.2653061224vw + 27.7551020408px, 80px)
}

.textBlock p + h3 {
    margin-top: clamp(24px, 1.306122449vw + 19.1020408163px, 40px)
}

.textBlock ul + p, .textBlock ol + p {
    margin-top: clamp(24px, 1.306122449vw + 19.1020408163px, 40px)
}

.textBlock ul {
    list-style-type: square;
    list-style-position: inside
}

.textBlock ul {
    list-style: none;
    overflow: auto
}

.textBlock li {
    position: relative;
    padding-left: 30px
}

.textBlock li::before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2715.107%27 height=%2713.895%27 viewBox=%270 0 15.107 13.895%27%3E%3Cg id=%27Gruppe_1782%27 data-name=%27Gruppe 1782%27 transform=%27translate%282.107 2.107%29%27%3E%3Cpath id=%27Pfad_3417%27 data-name=%27Pfad 3417%27 d=%27M855.74,3047.772l3.454,4.353,7.439-9.374%27 transform=%27translate%28-855.74 -3042.751%29%27 fill=%27none%27 stroke=%27%23024693%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%273%27/%3E%3C/g%3E%3C/svg%3E%0A");
    background-size: 100%;
    background-position: top center;
    background-repeat: no-repeat;
    width: 13px;
    height: 13px;
    display: inline-block;
    left: 0px;
    top: 7px;
    position: absolute
}

.textBlock ol {
    list-style-type: decimal;
    list-style-position: inside
}

.textBlock blockquote + p {
    margin-top: 50px
}

.textBlock div.text-center {
    text-align: center
}

.textBlock span.text-small {
    font-size: 16px
}

.textBlock hr {
    border: none;
    height: 1px;
    background-color: transparent;
    overflow: hidden
}

.textBlock hr::after {
    content: "";
    height: 1px;
    background-color: #8e9195;
    display: flex;
    width: 100%
}

.textBlock .responsive-object {
    position: relative;
    width: 100%;
    height: 0
}

@media screen and (max-width: 768px) {
    .textBlock .responsive-object {
        margin-left: calc(1 / 12 * 100%)
    }
}

@media screen and (max-width: 1000px) {
    .textBlock .responsive-object {
        padding-bottom: 55%
    }
}

@media screen and (min-width: 1001px)and (max-width: 1300px) {
    .textBlock .responsive-object {
        padding-bottom: 55%;
        margin-bottom: -10%
    }
}

@media screen and (min-width: 1301px) {
    .textBlock .responsive-object {
        padding-bottom: 55%;
        margin-bottom: -16%
    }
}

.textBlock .responsive-object iframe, .textBlock .responsive-object object, .textBlock .responsive-object video {
    position: absolute;
    left: 0;
    top: 0
}

@media screen and (max-width: 1000px) {
    .textBlock .responsive-object iframe, .textBlock .responsive-object object, .textBlock .responsive-object video {
        height: calc(10 / 12 * 100%);
        width: calc(10 / 12 * 100%)
    }
}

@media screen and (min-width: 1001px)and (max-width: 1300px) {
    .textBlock .responsive-object iframe, .textBlock .responsive-object object, .textBlock .responsive-object video {
        height: calc(8 / 12 * 100%);
        width: calc(8 / 12 * 100%)
    }
}

@media screen and (min-width: 1301px) {
    .textBlock .responsive-object iframe, .textBlock .responsive-object object, .textBlock .responsive-object video {
        height: calc(6 / 12 * 100%);
        width: calc(6 / 12 * 100%)
    }
}

.representativeCard {
    display: flex;
    flex-direction: row
}

@media (max-width: 1000px) {
    .representativeCard {
        flex-direction: column
    }
}

.representativeCard__imageWrapper {
    height: 120px;
    width: 120px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0
}

@media (max-width: 1000px) {
    .representativeCard__imageWrapper {
        height: 90px;
        width: 90px
    }
}

.representativeCard__image {
    object-fit: cover;
    height: 100%;
    width: 100%
}

.representativeCard__info {
    display: flex;
    flex-direction: column;
    margin-left: 40px
}

@media (max-width: 1000px) {
    .representativeCard__info {
        margin-left: 0;
        margin-top: 16px
    }
}

.representativeCard__info > * {
    display: inline-flex;
    align-items: center
}

.representativeCard__info > * svg {
    margin-right: 4px
}

.representativeCard__name {
    font-weight: 700
}

.representativeCard__openHours {
    display: block;
    margin-top: 30px
}

.buttonWrapper {
    display: flex;
    justify-content: center
}

.downloadsList__item {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding-top: 10px;
    padding-bottom: 10px
}

.downloadsList__item:not(:last-child) {
    border-bottom: solid 1px #d1d1d1
}

.downloadsList__itemName {
    font-weight: 700;
    width: 70%
}

.downloadsList__itemSize {
    letter-spacing: 1.2px;
    color: #024693;
    margin-right: 20px;
    margin-left: auto
}

.downloadsList__link {
    height: 30px;
    width: 30px;
    display: flex;
    align-items: center;
    justify-content: center
}

.downloadsList__link svg .arrow {
    transition: transform .2s
}

.downloadsList__link:hover svg > .arrow {
    transform: translateY(2px)
}

.downloadsList__wrapper {
    width: 30%;
    display: flex;
    align-items: center
}

@media screen and (max-width: 1000px) {
    .downloadsList__wrapper {
        display: flex;
        flex-direction: column
    }

    .downloadsList__itemName {
        font-size: 17px !important;
        word-wrap: break-word
    }

    .downloadsList__itemSize {
        margin: auto;
        font-size: 14px !important
    }
}

.linkExternal {
    color: #024693;
    display: inline
}

.linkExternal svg {
    margin-left: 6px;
    transition: transform .2s
}

.linkExternal:hover svg {
    transform: translate(2px, -2px)
}

.linkExternal_inverted {
    color: #fff;
    display: inline
}

.linkExternal_inverted svg {
    margin-left: 6px;
    transition: transform .2s
}

.linkExternal_inverted:hover svg {
    transform: translate(2px, -2px)
}

a.linkExternalIcon {
    color: #024693;
    display: inline
}

a.linkExternalIcon svg {
    margin-left: 4px;
    margin-bottom: 5.4px;
    transition: transform .2s
}

a.linkExternalIcon:hover svg {
    transform: translate(2px, -2px)
}

.form__inputWrapper {
    margin-bottom: 40px;
    display: flex;
    flex-direction: column-reverse
}

@media (max-width: 767px) {
    .form__inputWrapper {
        margin-bottom: 20px
    }
}

.form__inputLabel {
    margin-bottom: 10px;
    display: block
}

@media (max-width: 767px) {
    .form__inputLabel {
        margin-bottom: 4px
    }
}

.form__successInputLabel {
    margin-bottom: 60px;
    display: block;
    color: #d0e00e
}

.form__heading {
    margin-bottom: 40px;
    margin-top: 80px
}

@media (max-width: 767px) {
    .form__heading {
        margin-bottom: 20px;
        margin-top: 40px
    }
}

.form__contentWrapper {
    margin: 0 -15px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap
}

.form__itemWrapper {
    padding: 0 15px
}

.form__itemWrapper.form__itemWrapper--half {
    width: 50%
}

@media (max-width: 767px) {
    .form__itemWrapper.form__itemWrapper--half {
        width: 100%
    }
}

.form__radioGroup {
    display: flex;
    flex-direction: row
}

.form legend {
    margin-bottom: 10px;
    display: block
}

.form input[type=radio] + label {
    font-weight: 300;
    text-transform: none;
    display: inline-flex;
    align-items: center;
    margin-right: 40px;
    cursor: pointer;
    position: relative
}

.form input[type=radio] + label::before {
    content: "";
    height: 30px;
    width: 30px;
    border-radius: 50%;
    border: solid 1px #024693;
    display: block;
    margin-right: 10px
}

.form input[type=radio] + label::after {
    content: "";
    position: absolute;
    left: 15px;
    top: 15px;
    margin-left: -11px;
    margin-top: -11px;
    height: 22px;
    width: 22px;
    border-radius: 50%;
    background: #024693;
    transform: scale(0);
    transition: all .2s
}

.form input[type=radio]:checked + label::after {
    transform: scale(1)
}

.form input[type=checkbox] {
    height: 1px;
    width: 1px
}

.form input[type=checkbox] + label {
    display: flex;
    flex-direction: row;
    align-items: center;
    cursor: pointer;
    position: relative
}

.form input[type=checkbox] + label a {
    text-decoration: underline
}

.form input[type=checkbox] + label svg {
    position: absolute;
    left: 6px;
    transform: scale(0);
    transition: transform cubic-bezier(0.25, 0.1, 0.57, 1.33) .2s
}

.form input[type=checkbox] + label::before {
    content: "";
    display: inline-flex;
    height: 30px;
    width: 30px;
    border: solid 1px #024693;
    margin-right: 10px;
    opacity: .1;
    transition: opacity .2s;
    flex-shrink: 0
}

.form input[type=checkbox] + label:hover::before {
    opacity: 1
}

.form input[type=checkbox]:checked + label svg {
    transform: scale(1)
}

.form input[type=checkbox]:checked + label::before {
    opacity: 1
}

.form textarea, .form input[type=text], .form input[type=email], .form input[type=tel] {
    width: 100%;
    border: solid 1px rgba(2, 70, 147, .1);
    padding-left: 30px;
    height: 60px;
    transition: all .2s
}

@media (max-width: 767px) {
    .form textarea, .form input[type=text], .form input[type=email], .form input[type=tel] {
        padding-left: 16px;
        height: 50px
    }
}

.form textarea:not(:required) + label::after, .form input[type=text]:not(:required) + label::after, .form input[type=email]:not(:required) + label::after, .form input[type=tel]:not(:required) + label::after {
    content: "optional";
    font-size: 18px;
    text-transform: lowercase;
    font-weight: 300;
    color: #8e9195;
    margin-left: 8px;
    font-style: italic;
    letter-spacing: 0
}

.form textarea::placeholder, .form input[type=text]::placeholder, .form input[type=email]::placeholder, .form input[type=tel]::placeholder {
    color: #8e9195
}

.form textarea:focus, .form input[type=text]:focus, .form input[type=email]:focus, .form input[type=tel]:focus {
    border-color: #024693
}

.form textarea {
    min-height: 250px;
    padding-top: 17px
}

@media (max-width: 767px) {
    .form textarea {
        min-height: 180px
    }
}

@media (max-width: 767px) {
    .form .btn {
        width: 100%
    }
}

.form__captcha {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 10px;
    margin-bottom: 40px
}

.form__captcha label {
    width: 100%;
    order: 1
}

.form__captcha input {
    margin-right: 30px;
    width: calc(50% - 15px) !important;
    order: 2
}

.form__captcha img {
    height: 60px;
    width: auto;
    order: 3
}

@media (max-width: 767px) {
    .form__captcha img {
        height: 50px
    }
}

.form__captcha a {
    order: 3;
    display: flex;
    align-items: flex-end
}

.form__captcha .errorlist {
    order: 4
}

.form .errorlist {
    width: 100%;
    margin-top: 4px;
    font-family: "brandon-grotesque", sans-serif;
    color: red
}

.companyInfo {
    position: absolute;
    right: 0
}

@media (max-width: 1000px) {
    .companyInfo {
        position: relative;
        width: auto;
        margin-bottom: 50px
    }
}

.companyInfo__heading {
    margin-bottom: 30px
}

.companyInfo__address {
    font-family: "brandon-grotesque", sans-serif;
    font-size: 18px;
    line-height: 26px
}

.companyInfo__address a {
    color: #024693;
    text-decoration: underline
}

.guaranteeOptionsList {
    margin: 0 -15px -40px -15px;
    flex-wrap: wrap
}

.guaranteeOptionsList__itemWrapper {
    width: 50%;
    padding: 0 15px;
    margin-bottom: 40px
}

@media (max-width: 767px) {
    .guaranteeOptionsList__itemWrapper {
        width: 100%
    }
}

.guaranteeOptionCard {
    display: flex;
    flex-direction: column;
    background-color: #f5f8fe;
    padding: 40px 60px;
    align-items: center
}

@media (max-width: 1000px) {
    .guaranteeOptionCard {
        padding: 30px 20px
    }
}

.guaranteeOptionCard__signetWrapper {
    display: flex;
    flex-direction: row;
    justify-content: center
}

@media (max-width: 1000px) {
    .guaranteeOptionCard__signetWrapper svg {
        height: 60px;
        width: auto
    }
}

.guaranteeOptionCard__heading {
    margin-top: 20px;
    margin-bottom: 40px;
    width: 100%
}

@media (max-width: 1000px) {
    .guaranteeOptionCard__heading {
        margin-top: 20px;
        margin-bottom: 24px
    }
}

@media (max-width: 1000px) {
    .guaranteeOptionCard__list {
        font-size: 16px
    }
}

.guaranteeOptionCard__listItem {
    padding-left: 45px;
    position: relative;
    color: #44494d
}

.guaranteeOptionCard__listItem:not(:last-child) {
    margin-bottom: 30px
}

@media (max-width: 1000px) {
    .guaranteeOptionCard__listItem:not(:last-child) {
        margin-bottom: 20px
    }
}

@media (max-width: 767px) {
    .guaranteeOptionCard__listItem {
        padding-left: 32px
    }
}

.guaranteeOptionCard__listBulletWrapper {
    left: 0;
    position: absolute
}

@media (max-width: 767px) {
    .guaranteeOptionCard__listBulletWrapper svg {
        width: 20px;
        height: auto
    }
}

.guaranteeOptionCard__buttonWrapper {
    width: 100%;
    padding-left: 45px;
    margin-top: 60px
}

@media (max-width: 1000px) {
    .guaranteeOptionCard__buttonWrapper {
        margin-top: 40px
    }
}

@media (max-width: 767px) {
    .guaranteeOptionCard__buttonWrapper {
        padding-left: 32px
    }
}

.personDocument {
    width: 50%;
    box-sizing: border-box
}

.personDocument__imageWrapper {
    padding-bottom: 115%;
    overflow: hidden;
    position: relative;
    margin-bottom: 10px
}

.personDocument__imageWrapper img {
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover
}

.downloadLink {
    color: #024693;
    height: 30px;
    display: flex;
    align-items: center
}

.downloadLink svg {
    margin-left: 20px
}

.downloadLink svg .arrow {
    transition: transform .2s
}

.downloadLink:hover svg > .arrow {
    transform: translateY(2px)
}

.historyArticle.historyArticle--reverseOrder {
    flex-direction: row-reverse
}

@media (max-width: 1000px) {
    .historyArticle {
        flex-direction: row !important
    }
}

.historyArticle.historyArticle--oneCol .historyArticle__content, .historyArticle.historyArticle--oneCol .historyArticle__figure {
    width: 100%
}

.historyArticle__content, .historyArticle__figures {
    width: 50%
}

@media (max-width: 1000px) {
    .historyArticle__content, .historyArticle__figures {
        width: 100%
    }
}

.historyArticle__content .link, .historyArticle__figures .link {
    margin-top: 20px
}

@media (max-width: 1000px) {
    .historyArticle__figures {
        margin-top: 20px
    }
}

.historyArticle__heading {
    margin-bottom: 16px
}

.historyArticle__title {
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 24px
}

.historyArticle__date {
    font-weight: 700;
    display: inline-block
}

.historyArticle__text p + p, .historyArticle__text p + em, .historyArticle__text p + ul {
    margin-top: 1em
}

.historyArticle__text a {
    text-decoration: underline
}

.historyArticle__text em {
    font-weight: 700;
    color: #a68b4f;
    font-style: normal;
    display: inline-block
}

.historyArticle__text ul {
    list-style-type: square;
    list-style-position: inside
}

.historyArticle__text ul li:not(:last-child) {
    margin-bottom: 1em
}

.historyArticle__text + .historyArticle__date {
    margin-top: 1em
}

.historyArticle__logosWrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 20px
}

.historyArticle__logoItem {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    max-height: 90px
}

.historyArticle__logoItem img {
    max-width: 100%;
    max-height: 100%
}

.historyArticle__figures {
    display: flex;
    flex-direction: column
}

.historyArticle__figures:not(:last-child) {
    margin-bottom: 30px
}

.historyArticle__imageWrapper {
    max-width: 100%
}

@media (max-width: 1000px) {
    .historyArticle__imageWrapper {
        width: 100%
    }
}

.historyArticle__imageWrapper:not(:first-child) {
    margin-top: 30px
}

.historyArticle__imageWrapper img {
    max-width: 100%;
    display: block
}

@media (max-width: 1000px) {
    .historyArticle__imageWrapper img {
        margin-left: auto;
        margin-right: auto
    }
}

.historyArticle__figureDescription {
    margin-top: 10px
}

@media (max-width: 1000px) {
    .historyArticle__figureDescription {
        text-align: center
    }
}

.timeStamp {
    height: 90px;
    width: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: solid 1px #a68b4f;
    font-size: 20px;
    line-height: 16px;
    color: #a68b4f;
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    text-align: center;
    background-color: #fff;
    position: relative
}

.timeStamp.timeStamp--tallTypo {
    line-height: 24px
}

.drawer {
    position: fixed;
    background-color: #fff;
    right: 0;
    width: 360px;
    transform: translate(100%, -50%);
    top: 50%;
    transition: transform .2s
}

.drawer:hover {
    transform: translate(0, -50%);
    box-shadow: rgba(4, 26, 50, .15) 0 0 30px 0
}

@media all and (max-width: 1100px) {
    .drawer {
        display: none
    }
}

.drawer__content {
    display: none
}

.drawer__content.visible {
    display: block
}

.drawer__buttons {
    position: absolute;
    right: 100%;
    top: 50%
}

.drawer__button {
    height: 64px;
    width: 64px;
    background-color: #024693;
    color: #fff;
    text-transform: uppercase;
    font-size: 10px;
    font-weight: 700;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: opacity .2s
}

.drawer__button svg {
    margin-bottom: 4px
}

.drawer__button:not(:last-child) {
    margin-bottom: 1px
}

@media (hover: hover), not all and (-moz-touch-enabled) {
    .drawer__button:hover {
        opacity: .6
    }
}

.drawer__heading {
    margin-bottom: 20px
}

.drawer__subHeading {
    margin-bottom: 10px
}

.drawer .btn + .drawer__subHeading {
    margin-top: 40px
}

.drawer__address {
    margin-bottom: 20px
}

.drawer__paragraph {
    margin-top: 10px;
    margin-bottom: 20px
}

.drawer__links {
    margin-top: 16px
}

.drawer__links .link {
    line-height: 40px
}

.drawer__requestSection {
    padding: 40px 40px 50px;
    border-top: solid 1px #d1d1d1
}

.drawer__paddingWrapper {
    padding: 50px 40px
}

.drawer__loginSection {
    padding: 50px 40px 40px
}

.drawer .btn {
    width: 100%
}

.stateChooser {
    padding: 3rem 0 5rem 0;
    background-color: #024693;
    margin: 0 auto;
    text-align: center;
    color: #fff
}

.stateChooser__heading {
    margin-bottom: 16px
}

.stateChooser__intro {
    margin-bottom: 40px
}

@media screen and (max-width: 767px) {
    .stateChooser {
        justify-content: center
    }
}

.map_mobile {
    margin: 5px;
    display: none
}

@media screen and (max-width: 767px) {
    .map_mobile {
        width: 90%;
        display: inline-flex
    }
}

@media screen and (max-width: 767px) {
    #vmap {
        display: none
    }
}

.modal {
    display: none;
    position: fixed;
    z-index: 100;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: #000;
    background-color: rgba(0, 0, 0, .4)
}

.modal-content.buttons {
    padding-bottom: 4rem !important
}

.modal-content {
    max-width: 70rem !important;
    padding: 4rem 4rem 8rem 4rem !important;
    font-family: Brandon;
    font-size: 1.275rem;
    line-height: 1.25;
    color: #44494d;
    position: relative;
    border-radius: 0 !important;
    border: none !important;
    top: 10% !important;
    display: block !important
}

.modal-content span.close {
    position: relative;
    top: -2rem;
    right: -2rem;
    transform: scale(1.3)
}

.modal-buttons-opt-in {
    display: block;
    margin-top: 2rem;
    position: absolute;
    right: 4rem
}

.modal-buttons button {
    margin-bottom: 1rem
}

@media only screen and (max-width: 998px) {
    .modal-content {
        width: 75% !important
    }
}

@media (min-device-width: 320px)and (max-device-width: 480px) {
    .modal-content {
        background-color: #fefefe;
        margin: 20% auto;
        padding: 20px;
        border: 1px solid #888;
        border-radius: 5px;
        width: 80%
    }

    .modal-title {
        text-align: center;
        margin-bottom: 4rem;
        line-height: 1.6
    }
}

@media (min-device-width: 481px) {
    .modal-content {
        background-color: #fefefe;
        margin: 12% auto;
        padding: 20px;
        border: 1px solid #888;
        border-radius: 5px;
        width: 50%
    }

    .modal-title {
        text-align: center;
        margin-bottom: 4rem;
        line-height: 1.6
    }
}

.modal-buttons {
    display: flex;
    justify-content: space-between;
    align-self: flex-end;
    flex-direction: column
}

.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold
}

.close:hover, .close:focus {
    color: #041a32;
    text-decoration: none;
    cursor: pointer
}

.landingPageButton {
    font-size: 14px
}

.landingPageButton span {
    display: inline-block
}

.landingPageButton .mobile {
    display: none
}

@media only screen and (max-width: 767px) {
    .landingPageButton .mobile {
        display: inline-block
    }

    .landingPageButton span {
        display: none
    }
}

.float-right {
    float: right
}

.btn {
    cursor: pointer
}

.table {
    display: flex;
    flex-direction: column;
    align-items: center
}

.table {
    padding-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    padding-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.table__tableWrapper {
    overflow-x: auto
}

.table table {
    border: solid thin;
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 5rem;
    font-size: 1.275rem;
    color: #41484f
}

.table table figure {
    display: inline-block;
    margin-right: 8%;
    margin-top: 24px;
    margin-bottom: 24px
}

.table table figure svg {
    width: 40px;
    height: auto
}

.table table caption {
    padding-bottom: .5em
}

.table table th, .table table td {
    border: solid thin;
    border-color: #eee;
    padding: .5rem 2rem
}

.table table td {
    word-wrap: break-word;
    overflow-wrap: break-word
}

.table table th {
    font-weight: normal
}

.table table td:first-child {
    text-align: left
}

.table table td {
    border-style: solid;
    vertical-align: top;
    text-align: center
}

.table table th {
    padding: .2em;
    vertical-align: middle;
    text-align: center
}

.table table th:first-child img {
    margin-right: 1rem
}

.table table th:first-child img:last-child {
    margin-right: 0
}

.table table ul {
    list-style: none
}

.table table li {
    position: relative;
    padding-left: 30px
}

.table table li::before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2715.107%27 height=%2713.895%27 viewBox=%270 0 15.107 13.895%27%3E%3Cg id=%27Gruppe_1782%27 data-name=%27Gruppe 1782%27 transform=%27translate%282.107 2.107%29%27%3E%3Cpath id=%27Pfad_3417%27 data-name=%27Pfad 3417%27 d=%27M855.74,3047.772l3.454,4.353,7.439-9.374%27 transform=%27translate%28-855.74 -3042.751%29%27 fill=%27none%27 stroke=%27%23024693%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%273%27/%3E%3C/g%3E%3C/svg%3E%0A");
    background-size: 100%;
    background-position: top center;
    background-repeat: no-repeat;
    width: 13px;
    height: 13px;
    display: inline-block;
    left: 0px;
    top: 7px;
    position: absolute
}

.table #table tbody td:first-child::after {
    content: leader(". ")
}

.imageGallery {
    background-color: #f5f8fe;
    display: flex;
    flex-direction: column;
    align-items: center
}

.imageGallery {
    padding-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    padding-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.imageGallery__heading {
    margin-bottom: 40px;
    text-align: center
}

.imageGallery__cardsWrapper {
    display: grid;
    grid-gap: 1.5rem;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    grid-auto-rows: minmax(140px, 1fr);
    grid-auto-flow: dense;
    padding: 1.5rem
}

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

.imageGallery .layoutWrapper {
    width: 100%
}

.extTable {
    display: flex;
    flex-direction: column;
    align-items: center
}

.extTable {
    padding-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    padding-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.extTable__heading {
    margin-bottom: 40px;
    text-align: center
}

.extTable__tableWrapper {
    overflow-x: auto
}

.extTable .layoutWrapper {
    width: 100%
}

.extTable table {
    border: solid thin;
    border-collapse: collapse;
    width: 100%;
    font-size: 1.275rem;
    color: #41484f;
    overflow-x: auto
}

.extTable table figure {
    display: inline-block;
    margin-right: 8%;
    margin-top: 24px;
    margin-bottom: 24px
}

.extTable table figure svg {
    width: 40px;
    height: auto
}

.extTable table caption {
    padding-bottom: .5em
}

.extTable table th, .extTable table td {
    border: solid thin;
    border-color: #eee;
    padding: .5rem 2rem
}

.extTable table td {
    word-wrap: break-word;
    overflow-wrap: break-word
}

.extTable table th {
    font-weight: normal
}

.extTable table td:first-child {
    text-align: left
}

.extTable table td {
    border-style: solid;
    vertical-align: middle;
    text-align: left
}

.extTable table th {
    padding: .2em;
    vertical-align: middle;
    text-align: center
}

.extTable table th:first-child img {
    margin-right: 1rem
}

.extTable table th:first-child img:last-child {
    margin-right: 0
}

.extTable table ul {
    list-style: none
}

.extTable table li {
    position: relative;
    padding-left: 30px
}

.extTable table li::before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2715.107%27 height=%2713.895%27 viewBox=%270 0 15.107 13.895%27%3E%3Cg id=%27Gruppe_1782%27 data-name=%27Gruppe 1782%27 transform=%27translate%282.107 2.107%29%27%3E%3Cpath id=%27Pfad_3417%27 data-name=%27Pfad 3417%27 d=%27M855.74,3047.772l3.454,4.353,7.439-9.374%27 transform=%27translate%28-855.74 -3042.751%29%27 fill=%27none%27 stroke=%27%23024693%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%273%27/%3E%3C/g%3E%3C/svg%3E%0A");
    background-size: 100%;
    background-position: top center;
    background-repeat: no-repeat;
    width: 13px;
    height: 13px;
    display: inline-block;
    left: 0px;
    top: 7px;
    position: absolute
}

.extTable .textBlock span.text-small {
    font-family: "kepler-std-display", sans-serif;
    font-size: 16px
}

.extTable .textBlock a {
    color: #024693;
    display: inline
}

.extTable .rowBackground__white {
    background-color: #fff;
    color: #41484f
}

.extTable .rowBackground__blueLight {
    background-color: #f5f8fe;
    color: #041a32
}

.extTable .rowBackground__blue {
    background-color: #024693;
    color: #fff
}

.extTable .rowBackground__blue .textBlock a {
    color: #fff;
    text-decoration: underline
}

.extTable .rowBackground__blue .textBlock a svg path {
    stroke: #fff
}

#navSearch {
    z-index: 30
}

#navSearch .searchWrapper {
    height: 100%;
    transform: translateY(calc(+50% - 20px));
    position: relative
}

#navSearch .absoluteWrapper {
    z-index: 20;
    position: absolute;
    height: 40px
}

#navSearch .single-search {
    margin-bottom: auto;
    margin-top: auto;
    height: 40px;
    display: flex;
    flex-direction: row-reverse
}

#navSearch .search-area {
    display: flex;
    justify-content: center
}

#navSearch .c-height {
    height: 100%
}

#navSearch .custom-input {
    border: 0;
    outline: 0;
    width: 0;
    line-height: 40px;
    transition: width .4s linear;
    display: flex;
    background-color: #fff
}

#navSearch input::placeholder {
    color: #262626;
    font-size: 19px
}

#navSearch input {
    font-size: 20px
}

#navSearch .icon-area {
    text-indent: -999px;
    overflow: hidden;
    width: 40px;
    padding: 0;
    margin: 0;
    border: 1px solid transparent;
    border-radius: inherit;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2720%27 height=%2720%27 class=%27bi bi-search%27 viewBox=%270 0 16 16%27%3E%3Cpath d=%27M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z%27%3E%3C/path%3E%3C/svg%3E") no-repeat center;
    cursor: pointer
}

@media screen and (min-width: 681px) {
    #navSearch .custom-input.active {
        border-bottom: 1px solid #000;
        border-top: 1px solid #000;
        border-left: 1px solid #000;
        border-right: none;
        padding: 0 10px;
        width: 350px;
        caret-color: #262626;
        transition: width .4s linear
    }

    #navSearch .icon-area.active {
        border-top: 1px solid #000;
        border-right: 1px solid #000;
        border-bottom: 1px solid #000;
        border-left: none;
        background-color: #fff
    }
}

.vLine {
    border-left: 1px solid #041a32;
    height: 40%;
    margin-left: 12px;
    margin-right: 10px
}

.embedDialogue {
    width: 100%;
    border: 2px dotted #d1d1d1;
    padding: 10px;
    margin-top: 10px;
    margin-bottom: 10px
}

.embedDialogue__headline {
    display: block
}

.embedDialogue__text {
    display: block;
    margin-bottom: 20px;
    margin-top: 14px
}

.embedDialogue__allowSwitchWrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between
}

@media only screen and (max-width: 470px) {
    .embedDialogue__allowSwitchWrapper {
        flex-direction: column
    }
}

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

@media only screen and (max-width: 470px) {
    .embedDialogue__allowSwitchWrapper .allowSwitchWrapper {
        justify-content: unset;
        align-items: unset;
        margin-bottom: 16px
    }
}

.embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitch {
    position: relative;
    display: block;
    height: 28px;
    width: 60px;
    cursor: pointer
}

.embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitch input {
    opacity: 0;
    width: 0;
    height: 0
}

.embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSlider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #d1d1d1;
    -webkit-transition: .3s;
    transition: .3s;
    border-radius: 20px
}

.embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSlider:before {
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 4px;
    bottom: 4px;
    background-color: #fff;
    -webkit-transition: .3s;
    transition: .3s;
    border-radius: 50%
}

.embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitch input:checked + .allowSlider {
    background-color: #024693
}

.embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitch input:focus + .allowSlider {
    box-shadow: 0 0 1px #024693
}

.embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitch input:checked + .allowSlider:before {
    -webkit-transform: translateX(32px);
    -ms-transform: translateX(32px);
    transform: translateX(32px)
}

.embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitchLabel {
    font-size: 18px;
    margin-left: 10px;
    cursor: pointer
}

.embedDialogue__allowSwitchWrapper .privacyLink {
    display: flex;
    align-items: center
}

.embedDialogue__privacyNote {
    margin-top: 20px
}

.embedDialogue__privacyNote p {
    font-size: 17px
}

.embedDialogue__privacyNote p a {
    display: inline;
    font-size: 17px
}

.backgroundWrapper__blue .embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSlider {
    background-color: #d1d1d1
}

.backgroundWrapper__blue .embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSlider:before {
    background-color: #024693
}

.backgroundWrapper__blue .embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitch input:checked + .allowSlider {
    background-color: #fff
}

.backgroundWrapper__blue .embedDialogue__allowSwitchWrapper .allowSwitchWrapper .allowSwitch input:focus + .allowSlider {
    box-shadow: 0 0 1px #fff
}

.backgroundWrapper__blue .embedDialogue__allowSwitchWrapper .privacyLink a {
    color: #fff;
    text-decoration: underline
}

.backgroundWrapper__blue .embedDialogue__privacyNote p a {
    color: #fff;
    text-decoration: underline
}

.responsive_video {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-top: 56.25%
}

.responsive_video iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: none
}

iframe#twitter-widget-1 *, iframe#twitter-widget-2 * {
    max-width: 100% !important
}

.getInTouch {
    margin-top: 100px;
    margin-bottom: 100px
}

@media (max-width: 767px) {
    .getInTouch {
        margin-top: 60px;
        margin-bottom: 60px
    }
}

.getInTouch__paragraph {
    margin-bottom: 40px
}

.getInTouch__openHours {
    margin-top: 30px
}

.getInTouch .sectionHeader {
    margin-bottom: 24px
}

.getInTouch.getInTouch--backgroundTrue {
    background-color: #f5f8fe
}

.getInTouch__illustrationWrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 140%;
    position: relative
}

.getInTouch__illustrationWrapper svg {
    object-fit: contain;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0
}

@media (max-width: 767px) {
    .getInTouch__illustrationBlock--desktop {
        display: none
    }
}

.getInTouch__illustrationBlock--mobile {
    display: none
}

.getInTouch__illustrationBlock--mobile .getInTouch__illustrationWrapper {
    margin-bottom: 30px;
    padding-bottom: 80%
}

.getInTouch__illustrationBlock--mobile svg {
    height: 100%;
    width: auto
}

@media (max-width: 767px) {
    .getInTouch__illustrationBlock--mobile {
        display: block
    }
}

@media (max-width: 767px) {
    .getInTouch .btn {
        width: 100%
    }
}

.routePlanner {
    padding-top: 150px;
    padding-bottom: 150px
}

@media (max-width: 767px) {
    .routePlanner {
        padding-top: 40px;
        padding-bottom: 60px
    }
}

.routePlanner__separator {
    background-color: #8e9195;
    height: 1px;
    margin-bottom: 120px
}

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

.routePlanner__illustrationWrapper svg {
    object-fit: contain;
    height: 100%;
    width: 100%
}

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

.routePlanner__columnWrapper {
    display: flex;
    flex-direction: column
}

.routePlanner__openHours {
    margin-top: 24px
}

.routePlanner .link {
    margin-top: 50px
}

@keyframes trace-in {
    0% {
        transform: translate3d(-101%, 0, 0)
    }

    to {
        transform: translateZ(0)
    }
}

@keyframes trace-out {
    0% {
        transform: translateZ(0)
    }

    to {
        transform: translate3d(101%, 0, 0)
    }
}

.footer__navigation {
    padding: 100px 0;
    background-color: #024693;
    color: #fff
}

@media (max-width: 1300px) {
    .footer__navigation {
        padding-top: 50px;
        padding-bottom: 50px
    }
}

.footer__base {
    height: 140px;
    display: flex;
    background-color: #041a32;
    color: #fff
}

.footer__base .gridRowWrapper {
    height: 100%
}

.footer .rowWrapper {
    height: 100%;
    justify-content: space-between;
    align-items: center
}

.footer__column {
    width: 20%;
    display: flex;
    flex-direction: column;
    margin-bottom: 60px
}

@media screen and (max-width: 1100px) {
    .footer__column {
        width: 25%
    }
}

@media (max-width: 1000px) {
    .footer__column {
        width: calc(100% / 3)
    }
}

@media (max-width: 767px) {
    .footer__column {
        width: 100%
    }

    .footer__column:not(:last-child) {
        display: none
    }
}

.footer__linksList:not(:last-child) {
    margin-bottom: 50px
}

.footer__navigationContent .gridRowWrapper {
    flex-wrap: wrap;
    margin-bottom: -64px
}

.footer__linksListHeader {
    margin-bottom: 16px
}

.footer__linksListItem:not(:last-child) {
    margin-bottom: 10px
}

.footer__socialMediaLinks {
    display: flex;
    flex-direction: row
}

@media (max-width: 767px) {
    .footer__socialMediaLinks svg {
        -moz-transform: scale(1.3);
        -moz-transform-origin: 0 0;
        -o-transform: scale(1.3);
        -o-transform-origin: 0 0;
        -webkit-transform: scale(1.3);
        -webkit-transform-origin: 0 0;
        transform: scale(1.3);
        transform-origin: 0 0
    }
}

.footer__socialMediaItem {
    margin-right: 14px
}

@media (max-width: 767px) {
    .footer__socialMediaItem {
        margin-right: 27px
    }
}

.footer__socialMediaLink {
    transition: opacity ease-in-out .2s
}

@media (hover: hover), not all and (-moz-touch-enabled) {
    .footer__socialMediaLink:hover {
        opacity: .6
    }
}

.footer__logo {
    margin-top: 30px;
    display: block;
    height: 54px
}

.footer__logo svg {
    height: 100%
}

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

.footer__link {
    position: relative;
    font-family: "brandon-grotesque", sans-serif;
    font-size: 16px;
    line-height: 24px;
    overflow: hidden;
    display: inline-block
}

.footer__link::after {
    content: "";
    height: 1px;
    width: 100%;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translateX(calc(-100% - 0.1rem));
    animation: .25s ease-out 0s trace-out forwards
}

@media (hover: hover), not all and (-moz-touch-enabled) {
    .footer__link:hover::after {
        animation: .25s ease-out 0s trace-in forwards
    }
}

.newsletterSubscribe {
    margin-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    margin-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.newsletterSubscribe__heading {
    margin-bottom: 56px;
    text-align: center
}

.newsletterSubscribe__illustrationWrapper {
    margin-bottom: 56px;
    padding-bottom: 66%;
    position: relative
}

.newsletterSubscribe__illustrationWrapper > svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    position: absolute;
    top: 0
}

.newsletterSubscribe .columnWrapper {
    align-items: center;
    width: 100%
}

.newsletterSubscribe .columnWrapper > svg {
    margin-bottom: 40px
}

.testimonialsCarousel {
    padding-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    padding-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.testimonialsCarousel.testimonialsCarousel--background {
    background-color: #f5f8fe
}

.testimonialsCarousel__carousel {
    overflow: hidden
}

.testimonialsCarousel__heading {
    margin-bottom: 80px
}

.testimonialsCarousel__navWrapper {
    display: flex;
    align-items: center
}

@media (max-width: 1000px) {
    .testimonialsCarousel__navWrapper {
        display: none
    }
}

.testimonialsCarousel .indexPaginator {
    margin-bottom: 60px
}

.testimonialsCarousel .carouselPagination {
    margin-top: 46px;
    justify-content: center
}

.testimonialsCarousel .buttonsWrapper {
    display: flex;
    flex-direction: row;
    margin-top: 80px;
    justify-content: center
}

.testimonialsCarousel .buttonsWrapper > * {
    margin: 0 10px;
    width: 300px
}

.storyCarousel {
    padding-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    padding-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.storyCarousel ul {
    list-style: none;
    padding: 0
}

.storyCarousel li {
    position: relative;
    padding-left: 30px;
    padding-bottom: 20px
}

.storyCarousel li::before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2716.68%27 height=%2716.717%27 viewBox=%270 0 16.68 16.717%27%3E%3Cg id=%27Gruppe_6630%27 data-name=%27Gruppe 6630%27 transform=%27translate%28-359.331 -3603.376%29%27%3E%3Crect id=%27Rechteck_1228%27 data-name=%27Rechteck 1228%27 width=%279.579%27 height=%279.579%27 transform=%27translate%28363.903 3610.514%29%27 fill=%27%23d7e251%27/%3E%3Cpath id=%27Stroke_1%27 data-name=%27Stroke 1%27 d=%27M5.647,10.359,9.7,14,20.877,0%27 transform=%27translate%28354.353 3604%29%27 fill=%27none%27 stroke=%27%23000%27 stroke-miterlimit=%2710%27 stroke-width=%272%27/%3E%3C/g%3E%3C/svg%3E");
    background-size: 100%;
    background-position: top center;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    display: inline-block;
    left: 0px;
    top: 4px;
    position: absolute
}

.storyCarousel li.guaranteeOptionCard__listItem::before {
    content: none
}

.storyCarousel__carousel {
    overflow: hidden
}

.storyCarousel__preHeading {
    margin-bottom: 25px
}

.storyCarousel__heading {
    margin-bottom: 16px
}

.storyCarousel__intro {
    margin-bottom: 40px
}

.storyCarousel__navWrapper {
    display: flex;
    align-items: center
}

@media (max-width: 1000px) {
    .storyCarousel__navWrapper {
        display: none
    }
}

.storyCarousel .indexPaginator {
    justify-content: center;
    margin-bottom: 40px
}

.storyCarousel .heroCarousel__preHeading {
    width: 100%;
    justify-content: center
}

.storyCarousel .carouselPagination {
    margin-top: 50px;
    justify-content: center
}

@media (max-width: 1300px) {
    .storyCarousel .carouselPagination {
        margin-top: 30px
    }
}

@media (max-width: 1000px) {
    .storyCarousel .storyCard {
        height: auto
    }
}

.storyCarousel .sectionHeader {
    margin-bottom: 75px
}

.storyCarousel .buttonWrapper {
    margin-top: 80px
}

@media (max-width: 1600px) {
    .storyCarousel .buttonWrapper {
        margin-top: 50px
    }
}

.storyCarousel .hidePagination-md {
    visibility: hidden
}

@media (max-width: 767px) {
    .storyCarousel .hidePagination-md {
        visibility: visible
    }
}

.accordions {
    margin-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    margin-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.accordions__heading {
    margin-bottom: clamp(20px, 1.6326530612vw + 13.8775510204px, 40px)
}

.accordions__buttonsWrapper {
    display: flex;
    justify-content: center;
    margin-top: 80px
}

.accordions .textBlock {
    margin: 0 !important
}

.accordions .gridRowWrapper {
    flex-direction: column !important
}

.calculator {
    padding-top: 90px;
    padding-bottom: 90px
}

.calculator input[type=text] {
    width: 100%;
    margin: 2rem 0 3rem;
    padding: .75rem
}

.calculator label {
    display: block
}

.calculator .radio {
    display: inline-block;
    margin: 2rem 2rem 2rem 0;
    padding: .75rem;
    width: 6rem;
    text-align: center;
    border: 2px solid;
    cursor: pointer
}

.backgroundWrapper__white .calculator input[type=text] {
    border-bottom: 2px solid #041a32
}

.backgroundWrapper__white .calculator input[type=text]::placeholder {
    color: rgba(4, 26, 50, .5)
}

.backgroundWrapper__white .calculator #result {
    background-color: #041a32;
    padding: 2rem;
    color: #fff
}

.backgroundWrapper__white .calculator input:checked + .radio {
    background-color: #041a32;
    border-color: #041a32;
    color: #fff
}

.backgroundWrapper__white .calculator p.error {
    color: #041a32;
    font-weight: bold;
    font-size: .875rem !important;
    margin-top: -2rem;
    text-align: left
}

.backgroundWrapper__blueLight .calculator input[type=text] {
    border-bottom: 2px solid #041a32
}

.backgroundWrapper__blueLight .calculator input[type=text]::placeholder {
    color: rgba(255, 255, 255, .5)
}

.backgroundWrapper__blueLight .calculator #result {
    background-color: #fff;
    padding: 2rem;
    color: #041a32
}

.backgroundWrapper__blueLight .calculator input:checked + .radio {
    background-color: #fff;
    border-color: #fff;
    color: #041a32
}

.backgroundWrapper__blueLight .calculator p.error {
    color: #041a32;
    font-weight: bold;
    font-size: .875rem !important;
    margin-top: -2rem;
    text-align: left
}

.backgroundWrapper__blue .calculator input[type=text] {
    border-bottom: 2px solid #fff
}

.backgroundWrapper__blue .calculator input[type=text]::placeholder {
    color: rgba(255, 255, 255, .5)
}

.backgroundWrapper__blue .calculator #result {
    background-color: #fff;
    padding: 2rem;
    color: #041a32
}

.backgroundWrapper__blue .calculator input:checked + .radio {
    background-color: #fff;
    border-color: #fff;
    color: #041a32
}

.backgroundWrapper__blue .calculator p.error {
    color: #fff;
    font-weight: bold;
    font-size: .875rem !important;
    margin-top: -2rem;
    text-align: left
}

.fundingPortalSteps {
    background-color: #f5f8fe;
    overflow: hidden
}

.fundingPortalSteps {
    padding-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    padding-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.fundingPortalSteps__intro {
    margin-top: 50px;
    margin-bottom: 50px
}

.fundingPortalSteps__stepsWrapper {
    margin-bottom: 90px;
    padding-bottom: 90px
}

@media (max-width: 1000px) {
    .fundingPortalSteps__stepsWrapper {
        justify-content: center
    }
}

@media (max-width: 767px) {
    .fundingPortalSteps__stepsWrapper {
        padding-bottom: 0;
        margin-bottom: 40px
    }
}

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

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

.fundingPortalSteps__buttonWrapper {
    display: flex;
    justify-content: center
}

@media (max-width: 767px) {
    .fundingPortalSteps .fundingPortalStepCard {
        margin-bottom: 30px
    }
}

.heroIntro {
    background-color: #f5f8fe;
    min-height: 560px;
    padding-top: 120px;
    padding-bottom: 120px
}

@media (max-width: 1000px) {
    .heroIntro {
        padding-top: 80px;
        padding-bottom: 80px;
        min-height: auto
    }
}

@media (max-width: 767px) {
    .heroIntro {
        padding-top: 40px;
        padding-bottom: 40px
    }
}

@media (max-width: 767px) {
    .heroIntro__imageWrapper {
        margin-top: 30px
    }
}

.heroIntro__imageWrapper svg {
    object-fit: contain;
    height: 100%;
    width: 100%
}

.heroPoster {
    height: 770px;
    position: relative;
    overflow: hidden
}

@media (max-width: 767px) {
    .heroPoster {
        height: auto
    }
}

.heroPoster__content {
    padding-top: 120px
}

.heroPoster__content .btn {
    margin-top: 30px
}

@media screen and (max-width: 767px) {
    .heroPoster__content .btn {
        width: 100%
    }
}

@media (max-width: 767px) {
    .heroPoster__content {
        padding-top: 30px;
        margin-bottom: 30px
    }
}

.heroPoster__background {
    object-fit: cover;
    height: 100%;
    width: 100%;
    position: absolute
}

@media (max-width: 767px) {
    .heroPoster__background {
        position: relative;
        height: 220px
    }
}

.developmentOverview {
    margin-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    margin-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.developmentOverview__heading {
    margin-bottom: 40px
}

.developmentOverview__listIntro {
    margin-left: auto;
    width: 100%;
    text-align: right;
    padding-bottom: 24px
}

.developmentOverview__listItem {
    border-top: solid 1px #041a32;
    display: flex;
    flex-direction: column
}

.developmentOverview__listItem {
    padding-top: clamp(12px, 0.9795918367vw + 8.3265306122px, 24px);
    padding-bottom: clamp(12px, 0.9795918367vw + 8.3265306122px, 24px)
}

.developmentOverview__itemName {
    max-width: 300px
}

.developmentOverview__itemValue {
    margin-left: auto
}

.developmentOverview__contentWrapper {
    display: flex;
    flex-direction: row;
    width: 100%
}

.developmentOverview__subList {
    padding-left: 30px
}

.developmentOverview__subListItem {
    padding-top: 24px;
    display: flex;
    flex-direction: row
}

.developmentOverviewInverted__listItem {
    border-top: solid 1px #fff;
    display: flex;
    flex-direction: column
}

.developmentOverviewInverted__listItem {
    padding-top: clamp(12px, 0.9795918367vw + 8.3265306122px, 24px);
    padding-bottom: clamp(12px, 0.9795918367vw + 8.3265306122px, 24px)
}

.representativesList {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap
}

.representativesList__itemWrapper {
    box-sizing: border-box
}

.representativesList__itemWrapper:not(:last-child) {
    margin-bottom: 40px
}

.separator {
    margin-top: 80px;
    margin-bottom: 80px
}

.separator__line {
    height: 1px;
    background-color: #8e9195;
    display: block
}

.separatorInverted {
    margin-top: 80px;
    margin-bottom: 80px
}

.separatorInverted__line {
    height: 1px;
    background-color: #fff;
    display: block
}

.downloads {
    padding-top: 80px;
    padding-bottom: 80px
}

.downloads__heading {
    margin-bottom: 40px
}

.contactForm {
    padding-top: 80px;
    padding-bottom: 80px
}

@media (max-width: 767px) {
    .contactForm {
        padding-top: 40px;
        padding-bottom: 40px
    }
}

.articleIntro__textContent {
    padding-top: 120px;
    padding-bottom: 40px;
    background-color: #f5f8fe
}

@media (max-width: 767px) {
    .articleIntro__textContent {
        padding-top: 50px;
        padding-bottom: 20px
    }
}

.articleIntro__graphicContent {
    background: linear-gradient(180deg, #f5f8fe 0 50%, transparent 50%)
}

.articleIntro__imageWrapper {
    position: relative;
    overflow: hidden
}

@media (max-width: 767px) {
    .articleIntro__imageWrapper {
        height: 220px
    }
}

.articleIntro__imageWrapper > img {
    object-fit: cover;
    height: 100%;
    width: 100%
}

.articleIntro__imageCaption {
    margin-top: 10px
}

.articleIntro__additionalInfo {
    margin-top: auto
}

@media (max-width: 1300px) {
    .articleIntro__additionalInfo {
        display: none
    }
}

.articleIntro__additionalInfoTitle {
    margin-bottom: 25px
}

.locationInfo {
    padding-top: 120px;
    padding-bottom: 120px
}

@media (max-width: 767px) {
    .locationInfo {
        padding-top: 40px;
        padding-bottom: 40px
    }
}

.locationInfo__heading {
    margin-bottom: 20px
}

.locationInfo__openHours {
    margin-bottom: 60px
}

@media (max-width: 767px) {
    .locationInfo__openHours {
        margin-bottom: 30px
    }
}

.locationInfo__address {
    margin-top: 20px
}

.locationInfo__phone {
    margin-top: 40px;
    margin-bottom: 20px
}

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

.locationInfo__illustrationWrapper svg {
    height: 100%;
    width: 100%;
    object-fit: contain
}

@media (max-width: 767px) {
    .locationInfo__illustrationWrapper {
        height: 220px
    }
}

@media (max-width: 767px) {
    .locationInfo__textBlock {
        order: 1;
        margin-bottom: 30px
    }
}

@media (max-width: 767px) {
    .locationInfo__textBlock .btn {
        width: 100%
    }
}

@media (max-width: 767px) {
    .locationInfo__imageBlock {
        order: 2
    }
}

.cta {
    display: flex;
    flex-direction: row
}

.cta {
    margin-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    margin-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.cta__buttonWrapper {
    display: flex;
    flex-direction: row;
    justify-content: center
}

@media (max-width: 767px) {
    .cta .btn {
        width: 100%
    }
}

.eventsList {
    margin-top: 100px;
    margin-bottom: 100px
}

.eventsList__list {
    display: flex;
    flex-direction: column
}

.eventsList__item:not(:first-child) {
    margin-top: 80px
}

.eventsList .buttonWrapper {
    margin-top: 120px
}

.eventRegister__heading {
    margin-bottom: 40px
}

.eventRegister__eventDetails {
    margin-bottom: 20px
}

.guaranteeOptions {
    margin-top: 100px;
    margin-bottom: 100px
}

.guaranteeProgramIntro {
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #f5f8fe
}

.guaranteeProgramIntro .guaranteeOptionCard__list {
    margin-top: 60px
}

.contactPerson {
    margin-top: 80px;
    margin-bottom: 80px
}

.contactPerson .representativeCard {
    margin-top: 40px
}

.statChart {
    background-color: #f7efde;
    padding-top: 80px;
    padding-bottom: 80px;
    margin-top: 80px;
    margin-bottom: 80px
}

.statChart.statChart--noBg {
    background-color: transparent;
    padding-top: 0;
    padding-bottom: 0
}

.statChart__imagesWrapper:not(:last-child) {
    margin-bottom: 60px
}

.statChart__imagesWrapper img {
    max-width: 100%;
    height: auto
}

.statChart__intro {
    margin-top: 30px
}

.statChart__text {
    margin-bottom: 50px
}

.anniversaryIntro {
    margin-top: 100px;
    margin-bottom: 100px
}

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

@media (max-width: 1000px) {
    .anniversaryIntro__logoWrapper {
        margin-bottom: 30px
    }
}

.anniversaryIntro .gridRowWrapper {
    align-items: center
}

.anniversaryExcerpt__imageWrapper {
    padding-bottom: 66%;
    overflow: hidden;
    position: relative
}

@media (max-width: 1000px) {
    .anniversaryExcerpt__imageWrapper {
        margin-bottom: 20px
    }
}

.anniversaryExcerpt__imageWrapper img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    position: absolute
}

.anniversaryExcerpt__title {
    text-transform: uppercase;
    margin-bottom: 24px;
    font-weight: 700
}

.anniversaryExcerpt__text {
    margin-bottom: 24px
}

.anniversaryExcerpt .gridRowWrapper {
    align-items: center
}

@media (max-width: 1000px) {
    .anniversaryExcerpt .gridRowWrapper {
        flex-direction: column-reverse !important
    }
}

.anniversaryExcerpt .gridBoxWrapper, .anniversaryExcerpt .gridBox--sm--fr0, .anniversaryExcerpt .gridBox--sm--fr1, .anniversaryExcerpt .gridBox--sm--fr2, .anniversaryExcerpt .gridBox--sm--fr3, .anniversaryExcerpt .gridBox--sm--fr4, .anniversaryExcerpt .gridBox--sm--fr5, .anniversaryExcerpt .gridBox--sm--fr6, .anniversaryExcerpt .gridBox--sm--fr7, .anniversaryExcerpt .gridBox--sm--fr8, .anniversaryExcerpt .gridBox--sm--fr9, .anniversaryExcerpt .gridBox--sm--fr10, .anniversaryExcerpt .gridBox--sm--fr11, .anniversaryExcerpt .gridBox--sm--fr12, .anniversaryExcerpt .gridBox--md--fr0, .anniversaryExcerpt .gridBox--md--fr1, .anniversaryExcerpt .gridBox--md--fr2, .anniversaryExcerpt .gridBox--md--fr3, .anniversaryExcerpt .gridBox--md--fr4, .anniversaryExcerpt .gridBox--md--fr5, .anniversaryExcerpt .gridBox--md--fr6, .anniversaryExcerpt .gridBox--md--fr7, .anniversaryExcerpt .gridBox--md--fr8, .anniversaryExcerpt .gridBox--md--fr9, .anniversaryExcerpt .gridBox--md--fr10, .anniversaryExcerpt .gridBox--md--fr11, .anniversaryExcerpt .gridBox--md--fr12, .anniversaryExcerpt .gridBox--lg--fr0, .anniversaryExcerpt .gridBox--lg--fr1, .anniversaryExcerpt .gridBox--lg--fr2, .anniversaryExcerpt .gridBox--lg--fr3, .anniversaryExcerpt .gridBox--lg--fr4, .anniversaryExcerpt .gridBox--lg--fr5, .anniversaryExcerpt .gridBox--lg--fr6, .anniversaryExcerpt .gridBox--lg--fr7, .anniversaryExcerpt .gridBox--lg--fr8, .anniversaryExcerpt .gridBox--lg--fr9, .anniversaryExcerpt .gridBox--lg--fr10, .anniversaryExcerpt .gridBox--lg--fr11, .anniversaryExcerpt .gridBox--lg--fr12, .anniversaryExcerpt .gridBox--xl--fr0, .anniversaryExcerpt .gridBox--xl--fr1, .anniversaryExcerpt .gridBox--xl--fr2, .anniversaryExcerpt .gridBox--xl--fr3, .anniversaryExcerpt .gridBox--xl--fr4, .anniversaryExcerpt .gridBox--xl--fr5, .anniversaryExcerpt .gridBox--xl--fr6, .anniversaryExcerpt .gridBox--xl--fr7, .anniversaryExcerpt .gridBox--xl--fr8, .anniversaryExcerpt .gridBox--xl--fr9, .anniversaryExcerpt .gridBox--xl--fr10, .anniversaryExcerpt .gridBox--xl--fr11, .anniversaryExcerpt .gridBox--xl--fr12, .anniversaryExcerpt .gridBox--xxl--fr0, .anniversaryExcerpt .gridBox--xxl--fr1, .anniversaryExcerpt .gridBox--xxl--fr2, .anniversaryExcerpt .gridBox--xxl--fr3, .anniversaryExcerpt .gridBox--xxl--fr4, .anniversaryExcerpt .gridBox--xxl--fr5, .anniversaryExcerpt .gridBox--xxl--fr6, .anniversaryExcerpt .gridBox--xxl--fr7, .anniversaryExcerpt .gridBox--xxl--fr8, .anniversaryExcerpt .gridBox--xxl--fr9, .anniversaryExcerpt .gridBox--xxl--fr10, .anniversaryExcerpt .gridBox--xxl--fr11, .anniversaryExcerpt .gridBox--xxl--fr12, .anniversaryExcerpt .textBlock__columnWrapper > *:not(blockquote), .anniversaryExcerpt .textBlock__columnWrapper > blockquote, .anniversaryExcerpt .companyInfo {
    width: 50%
}

@media (max-width: 1000px) {
    .anniversaryExcerpt .gridBoxWrapper, .anniversaryExcerpt .gridBox--sm--fr0, .anniversaryExcerpt .gridBox--sm--fr1, .anniversaryExcerpt .gridBox--sm--fr2, .anniversaryExcerpt .gridBox--sm--fr3, .anniversaryExcerpt .gridBox--sm--fr4, .anniversaryExcerpt .gridBox--sm--fr5, .anniversaryExcerpt .gridBox--sm--fr6, .anniversaryExcerpt .gridBox--sm--fr7, .anniversaryExcerpt .gridBox--sm--fr8, .anniversaryExcerpt .gridBox--sm--fr9, .anniversaryExcerpt .gridBox--sm--fr10, .anniversaryExcerpt .gridBox--sm--fr11, .anniversaryExcerpt .gridBox--sm--fr12, .anniversaryExcerpt .gridBox--md--fr0, .anniversaryExcerpt .gridBox--md--fr1, .anniversaryExcerpt .gridBox--md--fr2, .anniversaryExcerpt .gridBox--md--fr3, .anniversaryExcerpt .gridBox--md--fr4, .anniversaryExcerpt .gridBox--md--fr5, .anniversaryExcerpt .gridBox--md--fr6, .anniversaryExcerpt .gridBox--md--fr7, .anniversaryExcerpt .gridBox--md--fr8, .anniversaryExcerpt .gridBox--md--fr9, .anniversaryExcerpt .gridBox--md--fr10, .anniversaryExcerpt .gridBox--md--fr11, .anniversaryExcerpt .gridBox--md--fr12, .anniversaryExcerpt .gridBox--lg--fr0, .anniversaryExcerpt .gridBox--lg--fr1, .anniversaryExcerpt .gridBox--lg--fr2, .anniversaryExcerpt .gridBox--lg--fr3, .anniversaryExcerpt .gridBox--lg--fr4, .anniversaryExcerpt .gridBox--lg--fr5, .anniversaryExcerpt .gridBox--lg--fr6, .anniversaryExcerpt .gridBox--lg--fr7, .anniversaryExcerpt .gridBox--lg--fr8, .anniversaryExcerpt .gridBox--lg--fr9, .anniversaryExcerpt .gridBox--lg--fr10, .anniversaryExcerpt .gridBox--lg--fr11, .anniversaryExcerpt .gridBox--lg--fr12, .anniversaryExcerpt .gridBox--xl--fr0, .anniversaryExcerpt .gridBox--xl--fr1, .anniversaryExcerpt .gridBox--xl--fr2, .anniversaryExcerpt .gridBox--xl--fr3, .anniversaryExcerpt .gridBox--xl--fr4, .anniversaryExcerpt .gridBox--xl--fr5, .anniversaryExcerpt .gridBox--xl--fr6, .anniversaryExcerpt .gridBox--xl--fr7, .anniversaryExcerpt .gridBox--xl--fr8, .anniversaryExcerpt .gridBox--xl--fr9, .anniversaryExcerpt .gridBox--xl--fr10, .anniversaryExcerpt .gridBox--xl--fr11, .anniversaryExcerpt .gridBox--xl--fr12, .anniversaryExcerpt .gridBox--xxl--fr0, .anniversaryExcerpt .gridBox--xxl--fr1, .anniversaryExcerpt .gridBox--xxl--fr2, .anniversaryExcerpt .gridBox--xxl--fr3, .anniversaryExcerpt .gridBox--xxl--fr4, .anniversaryExcerpt .gridBox--xxl--fr5, .anniversaryExcerpt .gridBox--xxl--fr6, .anniversaryExcerpt .gridBox--xxl--fr7, .anniversaryExcerpt .gridBox--xxl--fr8, .anniversaryExcerpt .gridBox--xxl--fr9, .anniversaryExcerpt .gridBox--xxl--fr10, .anniversaryExcerpt .gridBox--xxl--fr11, .anniversaryExcerpt .gridBox--xxl--fr12, .anniversaryExcerpt .textBlock__columnWrapper > *:not(blockquote), .anniversaryExcerpt .textBlock__columnWrapper > blockquote, .anniversaryExcerpt .companyInfo {
        width: 100%
    }
}

.anniversaryExcerpt.anniversaryExcerpt--reverseOrder .gridRowWrapper {
    flex-direction: row-reverse
}

.anniversarySectionsLinks {
    margin-bottom: -40px
}

@media (max-width: 1000px) {
    .anniversarySectionsLinks {
        margin-bottom: -20px
    }
}

.anniversarySectionsLinks__item {
    margin-bottom: 120px
}

@media (max-width: 1000px) {
    .anniversarySectionsLinks__item {
        margin-bottom: 60px
    }
}

.history {
    margin-top: 100px;
    margin-bottom: 100px
}

.history__period {
    display: flex;
    flex-direction: column
}

.history__period:first-child .timeStamp {
    margin-top: 0
}

.history__period:first-child .timeStamp::before {
    display: none
}

.history__separator {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    margin-bottom: 40px
}

.history .timeStamp {
    align-self: center;
    margin-bottom: 70px;
    margin-top: 70px
}

.history.history--timeline .timeStamp::before {
    content: "";
    height: 30px;
    width: 1px;
    background-color: #a68b4f;
    position: absolute;
    bottom: 100%
}

.history.history--timeline .timeStamp::after {
    content: "";
    height: 30px;
    width: 1px;
    background-color: #a68b4f;
    position: absolute;
    top: 100%
}

.historyTimeline {
    margin-top: 80px
}

@media (max-width: 1000px) {
    .historyTimeline {
        display: none
    }
}

.historyTimeline__wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    position: relative;
    margin-bottom: 100px
}

.historyTimeline__wrapper::before {
    content: "";
    height: 1px;
    width: 100%;
    background-color: #a68b4f;
    position: absolute
}

.historyTimeline .timeStamp:last-child {
    line-height: 24px
}

.historyTimeline__itemDescription {
    position: absolute;
    top: calc(100% + 16px);
    left: 0;
    font-size: 20px;
    line-height: 26px;
    color: #041a32;
    text-transform: uppercase;
    text-align: left;
    white-space: nowrap
}

.gallery {
    margin-bottom: -60px
}

@media (max-width: 1000px) {
    .gallery {
        margin-bottom: -30px
    }
}

.gallery__item {
    width: 50%;
    margin-bottom: 60px
}

@media (max-width: 1000px) {
    .gallery__item {
        margin-bottom: 30px
    }
}

@media (max-width: 767px) {
    .gallery__item {
        width: 100%
    }
}

.gallery__imageFitFrame {
    padding-bottom: 68%;
    position: relative;
    overflow: hidden
}

.gallery__imageFitFrame img {
    object-fit: cover;
    position: absolute;
    height: 100%;
    width: 100%
}

.gallery__imageDescription {
    margin-top: 10px
}

.employerInfo__heading {
    margin-bottom: 40px
}

.employerInfo__assetInfo {
    display: flex;
    flex-direction: row;
    margin-top: 50px
}

@media (max-width: 767px) {
    .employerInfo__assetInfo {
        flex-wrap: wrap
    }
}

.employerInfo__assetDescription p {
    margin-bottom: 20px
}

.employerInfo__assetDescription .linkExternal {
    font-weight: 600
}

.employerInfo__assetImageWrapper {
    margin-right: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(100% / 3);
    flex-shrink: 0;
    position: relative
}

@media (max-width: 767px) {
    .employerInfo__assetImageWrapper {
        width: 50%;
        margin: 0 auto 20px
    }
}

.employerInfo__assetImageWrapper::after {
    content: "";
    padding-bottom: 100%;
    position: relative;
    display: block
}

.employerInfo__assetImageWrapper img {
    object-fit: contain;
    position: absolute;
    height: 100%;
    width: 100%
}

.applicationInfo {
    margin-top: 80px;
    margin-bottom: 80px
}

.applicationInfo__heading {
    margin-bottom: 40px
}

.applicationInfo__column p + p, .applicationInfo__column p + a {
    margin-top: 20px
}

.moreContentLink {
    margin-top: 80px;
    margin-bottom: 80px
}

.moreContentLink p {
    margin-bottom: 30px;
    text-align: center
}

.error404 {
    height: calc(100vh - 90px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.error404__errorCode {
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    font-size: 100px;
    line-height: 1
}

.error404__heading {
    font-family: "kepler-std-display", sans-serif;
    font-size: clamp(32px, calc(1em + 2vw), 60px);
    margin: 40px 20px 60px;
    font-weight: 300;
    text-align: center
}

.error404__text a {
    text-decoration: underline
}

.anchor {
    position: relative;
    top: -110px
}

html {
    scroll-behavior: smooth
}

.backgroundWrapper {
    padding-top: clamp(1px, 0vw + 1px, 1px);
    padding-bottom: clamp(1px, 0vw + 1px, 1px)
}

.backgroundWrapper__white {
    background-color: #fff;
    color: #041a32
}

.backgroundWrapper__blueLight {
    background-color: #f5f8fe;
    color: #041a32
}

.backgroundWrapper__blue {
    background-color: #024693;
    color: #fff
}

.backgroundWrapper__blue .textBlock a {
    color: #fff;
    display: inline;
    text-decoration: underline
}

.backgroundWrapper__blue .textBlock a svg path {
    stroke: #fff
}

.backgroundWrapper__blue .textBlock hr {
    background-color: transparent
}

.backgroundWrapper__blue .textBlock hr::after {
    background-color: #fff
}

.columnsTextImage {
    display: flex;
    flex-direction: column
}

.columnsTextImage {
    margin-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    margin-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.columnsTextImage .textBlock {
    margin-top: 0;
    margin-bottom: 0
}

.columnsTextImage ul {
    list-style: none
}

.columnsTextImage li {
    position: relative;
    padding-left: 30px;
    padding-bottom: 15px
}

.columnsTextImage li::before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2716.68%27 height=%2716.717%27 viewBox=%270 0 16.68 16.717%27%3E%3Cg id=%27Gruppe_6630%27 data-name=%27Gruppe 6630%27 transform=%27translate%28-359.331 -3603.376%29%27%3E%3Crect id=%27Rechteck_1228%27 data-name=%27Rechteck 1228%27 width=%279.579%27 height=%279.579%27 transform=%27translate%28363.903 3610.514%29%27 fill=%27%23d7e251%27/%3E%3Cpath id=%27Stroke_1%27 data-name=%27Stroke 1%27 d=%27M5.647,10.359,9.7,14,20.877,0%27 transform=%27translate%28354.353 3604%29%27 fill=%27none%27 stroke=%27%23000%27 stroke-miterlimit=%2710%27 stroke-width=%272%27/%3E%3C/g%3E%3C/svg%3E");
    background-size: 100%;
    background-position: top center;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    display: inline-block;
    left: 0px;
    top: 4px;
    position: absolute
}

.columnsTextImage .marginSecondColumn {
    margin-top: 0
}

@media screen and (max-width: 767px) {
    .columnsTextImage .marginSecondColumn {
        margin-top: 40px
    }
}

.columnsTextImage__heading {
    margin-bottom: 40px
}

.columnsTextImage__btn {
    margin-top: 20px;
    margin-bottom: 20px
}

.columnsTextImage__btn .btn {
    width: 100%
}

.columnsTextImage__illustrationIconWrapper {
    width: 8rem;
    height: auto
}

.columnsTextImage__iconHeading {
    font-size: 30px;
    margin-bottom: 18px;
    margin-top: 16px
}

@media screen and (max-width: 767px) {
    .columnsTextImage__iconHeading {
        font-size: 24px
    }
}

.columnsTextImage__illustrationWrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 300px
}

@media screen and (max-width: 767px) {
    .columnsTextImage__illustrationWrapper {
        width: 70%;
        height: 220px;
        margin: 0 auto 40px
    }
}

.columnsTextImage__illustrationWrapper img {
    object-fit: contain
}

@media screen and (max-width: 1000px) {
    .columnsTextImage__illustrationWrapper img {
        height: 100%;
        width: 100%
    }
}

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

@media screen and (max-width: 767px) {
    .columnsTextImage__illustrationWrapper svg {
        height: auto
    }
}

.countdown {
    background-color: #f5f8fe;
    overflow: hidden
}

.countdown {
    padding-top: clamp(50px, 4.0816326531vw + 34.693877551px, 100px);
    padding-bottom: clamp(50px, 4.0816326531vw + 34.693877551px, 100px)
}

.countdown__preHeading {
    margin-bottom: 16px
}

.countdown__heading {
    margin-bottom: 12px
}

.countdown__intro {
    margin-top: 25px;
    margin-bottom: 50px
}

.countdown__buttonWrapper {
    display: flex;
    justify-content: center
}

.countdown [id^=hidden-] {
    display: none
}

.impressum {
    padding-top: 100px
}

.search {
    padding-top: 100px;
    min-height: 100vh
}

.search__resultCount {
    display: inline-flex;
    align-items: center;
    color: #024693;
    margin-top: 38px;
    margin-bottom: 38px
}

.search__item {
    margin-bottom: 30px;
    border-bottom: 1px solid rgba(2, 70, 147, .1);
    padding-bottom: 8px
}

.search input[type=text] {
    width: 100%;
    border: solid 1px rgba(2, 70, 147, .1);
    padding-left: 30px;
    height: 60px;
    transition: all .2s;
    margin-top: 10px
}

@media (max-width: 767px) {
    .search input[type=text] {
        padding-left: 16px;
        height: 50px
    }
}

.search input[type=text]:not(:required) + label::after {
    content: "optional";
    font-size: 18px;
    text-transform: lowercase;
    font-weight: 300;
    color: #8e9195;
    margin-left: 8px;
    font-style: italic;
    letter-spacing: 0
}

.search input[type=text]::placeholder {
    color: #8e9195
}

.search input[type=text]:focus {
    border-color: #024693
}

.search__link {
    color: #024693
}

.search__link:hover {
    opacity: 1;
    text-decoration: none;
    color: #041a32
}

.search__linkActive {
    color: #041a32
}

.search__linkDisable {
    opacity: .4;
    color: #024693
}

.search__pagination {
    margin-top: 20px;
    margin-bottom: 40px;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 20px
}

.search__pagination > a {
    margin: 14px
}

/*!****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/main.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************/
.header-content {
  padding: 20px 0;
  display: flex;
  gap: 50px;
  align-items: center;
}
.header-content h1 {
  font-family: "kepler-std-display", sans-serif;
  font-size: clamp(32px, 1em + 2vw, 56px);
  line-height: 1.25;
  font-weight: 300;
}

#message {
  padding: 10px;
  border: 1px solid #024693;
  text-wrap: wrap;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FBRUE7SUFDSTtRQUNJO0lBQ0o7QUFDSjs7QUFFQTtJQUNJO1FBQ0k7SUFDSjtBQUNKOztBQUVBO0lBQ0k7UUFDSTtJQUNKO0FBQ0o7O0FB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Q2YseUJBQXlCO0lBQ3pCLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtJQUNsQjtBQUNKOztBQUVBO0lBQ0k7QUFDSjs7QUFFQTtJQUNJO0FBQ0o7O0FBRUE7SUFDSTtBQUNKOztBQUVBO0lBQ0ksVUFBVTtJQUNWLHFCQUFxQjtJQUNyQjtBQUNKOztBQUVBO0lBQ0k7QUFDSjs7QUFFQTtJQUNJLFdBQVc7SUFDWDtBQUNKOztBQUVBO0lBQ0ksZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixvQkFBb0I7SUFDcEIsZUFBZTtJQUNmO0FBQ0o7O0FBRUE7SUFDSTtBQUNKOzs7OztBQ3h2UEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQ0NGO0FEQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQ0NKOztBREdBO0VBQ0U7RUFDQTtFQUNBO0FDQUYsQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYXBwLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL21haW4uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vQkIlMjBOUlclMjAtJTIwT1RMJTIwVG9vbC93ZWIvb3RsLXRvb2wvYXNzZXRzL3N0eWxlcy9tYWluLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyohIHNhbml0aXplLmNzcyB2NS4wLjAgfCBDQzAgTGljZW5zZSB8IGdpdGh1Yi5jb20vam9uYXRoYW50bmVhbC9zYW5pdGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50IChodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9zZW1hbnRpY3MuaHRtbCNzZW1hbnRpY3MpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgcmVwZWF0aW5nIGJhY2tncm91bmRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQWRkIGJveCBzaXppbmcgaW5oZXJpdGFuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbiosIDo6YmVmb3JlLCA6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIC8qIDEgKi9cbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGV4dCBkZWNvcmF0aW9uIGluaGVyaXRhbmNlIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQWRkIHZlcnRpY2FsIGFsaWdubWVudCBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuOjpiZWZvcmUsIDo6YWZ0ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAvKiAxICovXG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIEFkZCBib3JkZXIgYm94IHNpemluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCB0aGUgZGVmYXVsdCBjdXJzb3IgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAzLiBQcmV2ZW50IGZvbnQgc2l6ZSBhZGp1c3RtZW50cyBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIGFuZCBpT1MuXG4gKi9cbmh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogMSAqL1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAvKiAyICovXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgLyogMyAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgICAvKiAzICovXG59XG5cbi8qIFNlY3Rpb25zIChodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9zZW1hbnRpY3MuaHRtbCNzZWN0aW9ucylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hcnRpY2xlLCBhc2lkZSwgZm9vdGVyLCBoZWFkZXIsIG5hdiwgc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudCAoaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvc2VtYW50aWNzLmh0bWwjZ3JvdXBpbmctY29udGVudClcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbmZpZ2NhcHRpb24sIGZpZ3VyZSwgbWFpbiB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgLyogMSAqL1xuICAgIGhlaWdodDogMDtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgbGlzdCBzdHlsZSBvbiBuYXZpZ2F0aW9uIGxpc3RzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5uYXYgb2wsIG5hdiB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICAvKiAxICovXG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljcyAoaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvc2VtYW50aWNzLmh0bWwjdGV4dC1sZXZlbC1zZW1hbnRpY3MpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cbmEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8qIDEgKi9cbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAgIC8qIDIgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAvKiAyICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYiwgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLCBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSwga2JkLCBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gKi9cbmRmbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAqL1xubWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmYwMDtcbiAgICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG59XG5cbi8qXG4gKiBSZW1vdmUgdGhlIHRleHQgc2hhZG93IG9uIHRleHQgc2VsZWN0aW9ucyAob3BpbmlvbmF0ZWQpLlxuICogMS4gUmVzdG9yZSB0aGUgY29sb3JpbmcgdW5kb25lIGJ5IGRlZmluaW5nIHRoZSB0ZXh0IHNoYWRvdyAob3BpbmlvbmF0ZWQpLlxuICovXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkNGZjO1xuICAgIC8qIDEgKi9cbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAvKiAxICovXG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkNGZjO1xuICAgIC8qIDEgKi9cbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAvKiAxICovXG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnQgKGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2VtYmVkZGVkLWNvbnRlbnQuaHRtbCNlbWJlZGRlZC1jb250ZW50KVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBDaGFuZ2UgdGhlIGFsaWdubWVudCBvbiBtZWRpYSBlbGVtZW50cyBpbiBhbGwgYnJvd2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5hdWRpbywgY2FudmFzLCBpZnJhbWUsIGltZywgc3ZnLCB2aWRlbyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuYXVkaW8sIHZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBmaWxsIGNvbG9yIHRvIG1hdGNoIHRoZSB0ZXh0IGNvbG9yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG4vKnN2ZyB7Ki9cbi8qICAgIGZpbGw6IGN1cnJlbnRDb2xvcjsqL1xuLyp9Ki9cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBUYWJ1bGFyIGRhdGEgKGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL3RhYmxlcy5odG1sI3RhYmxlcylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENvbGxhcHNlIGJvcmRlciBzcGFjaW5nXG4gKi9cbnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50aCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyogRm9ybXMgKGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Zvcm1zLmh0bWwjZm9ybXMpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbiwgaW5wdXQsIG9wdGdyb3VwLCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogSW5oZXJpdCBzdHlsaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5idXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogdW5zZXQ7XG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sIGlucHV0IHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qIGJ1dHRvbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sIHNlbGVjdCB7XG4gICAgLyogMSAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLCBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5bdHlwZT1cInJlc2V0XCJdLCBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciwgW3R5cGU9J2J1dHRvbiddOjotbW96LWZvY3VzLWlubmVyLCBbdHlwZT0ncmVzZXQnXTo6LW1vei1mb2N1cy1pbm5lciwgW3R5cGU9J3N1Ym1pdCddOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZywgW3R5cGU9J2J1dHRvbiddOi1tb3otZm9jdXNyaW5nLCBbdHlwZT0ncmVzZXQnXTotbW96LWZvY3VzcmluZywgW3R5cGU9J3N1Ym1pdCddOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogMSAqL1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIC8qIDIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAvKiAxICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIC8qIDMgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLyogMSAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAvKiAyICovXG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqIDIuIENoYW5nZSB0aGUgcmVzaXplIGRpcmVjdGlvbiBvbiB0ZXh0YXJlYXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbnRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAvKiAxICovXG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuW3R5cGU9J2NoZWNrYm94J10sIFt0eXBlPSdyYWRpbyddIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiwgW3R5cGU9J251bWJlciddOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9J3NlYXJjaCddIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAvKiAxICovXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPSdzZWFyY2gnXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgW3R5cGU9J3NlYXJjaCddOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gICAgLyogMSAqL1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZSBlbGVtZW50cyAoaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvZm9ybXMuaHRtbCNpbnRlcmFjdGl2ZS1lbGVtZW50cylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMsIC8qIDEgKi9cbm1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIFNjcmlwdGluZyAoaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvc2NyaXB0aW5nLmh0bWwjc2NyaXB0aW5nLTMpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuY2FudmFzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbnRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBVc2VyIGludGVyYWN0aW9uIChodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9pbnRlcmFjdGlvbi5odG1sI2VkaXRpbmcpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFJlbW92ZSB0aGUgdGFwcGluZyBkZWxheSBvbiBjbGlja2FibGUgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqIDEuIFJlbW92ZSB0aGUgdGFwcGluZyBkZWxheSBpbiBJRSAxMC5cbiAqL1xuYSwgYXJlYSwgYnV0dG9uLCBpbnB1dCwgbGFiZWwsIHNlbGVjdCwgc3VtbWFyeSwgdGV4dGFyZWEsIFt0YWJpbmRleF0ge1xuICAgIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICAvKiAxICovXG4gICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5baGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQVJJQSAoaHR0cHM6Ly93M2MuZ2l0aHViLmlvL2h0bWwtYXJpYS8pXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBidXN5IGVsZW1lbnRzIChvcGluaW9uYXRlZCkuXG4gKi9cblthcmlhLWJ1c3k9J3RydWUnXSB7XG4gICAgY3Vyc29yOiBwcm9ncmVzcztcbn1cblxuLypcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGNvbnRyb2wgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqL1xuW2FyaWEtY29udHJvbHNdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGRpc3BsYXkgb24gdmlzdWFsbHkgaGlkZGVuIGFjY2Vzc2libGUgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqL1xuW2FyaWEtaGlkZGVuPSdmYWxzZSddW2hpZGRlbl06bm90KDpmb2N1cykge1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cblxuLypcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGRpc2FibGVkLCBub3QtZWRpdGFibGUsIG9yIG90aGVyd2lzZVxuICogaW5vcGVyYWJsZSBlbGVtZW50cyAob3BpbmlvbmF0ZWQpLlxuICovXG5bYXJpYS1kaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdicmFuZG9uLWdyb3Rlc3F1ZSc7XG4gICAgc3JjOiB1cmwoLi4vZm9udHMvYnJhbmRvbl9ncm90ZXNxdWVfNDAwLndvZmYyKVxuICAgIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoLi4vZm9udHMvYnJhbmRvbl9ncm90ZXNxdWVfNDAwLndvZmYpXG4gICAgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKC4uL2ZvbnRzL2JyYW5kb25fZ3JvdGVzcXVlXzQwMC5vdClcbiAgICBmb3JtYXQoJ29wZW50eXBlJyk7XG4gICAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2JyYW5kb24tZ3JvdGVzcXVlJztcbiAgICBzcmM6IHVybCguLi9mb250cy9icmFuZG9uX2dyb3Rlc3F1ZV83MDAud29mZjIpXG4gICAgZm9ybWF0KCd3b2ZmMicpLFxuICAgIHVybCguLi9mb250cy9icmFuZG9uX2dyb3Rlc3F1ZV83MDAud29mZilcbiAgICBmb3JtYXQoJ3dvZmYnKSxcbiAgICB1cmwoLi4vZm9udHMvYnJhbmRvbl9ncm90ZXNxdWVfNzAwLm90KVxuICAgIGZvcm1hdCgnb3BlbnR5cGUnKTtcbiAgICBmb250LWRpc3BsYXk6IGF1dG87XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAna2VwbGVyLXN0ZC1kaXNwbGF5JztcbiAgICBzcmM6IHVybCguLi9mb250cy9rZXBsZXJfc3RkX2Rpc3BsYXlfMzAwLndvZmYyKVxuICAgIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoLi4vZm9udHMva2VwbGVyX3N0ZF9kaXNwbGF5XzMwMC53b2ZmKVxuICAgIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCguLi9mb250cy9rZXBsZXJfc3RkX2Rpc3BsYXlfMzAwLm90KVxuICAgIGZvcm1hdCgnb3BlbnR5cGUnKTtcbiAgICBmb250LWRpc3BsYXk6IGF1dG87XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAna2VwbGVyLXN0ZC1kaXNwbGF5JztcbiAgICBzcmM6IHVybCguLi9mb250cy9rZXBsZXJfc3RkX2Rpc3BsYXlfNDAwLndvZmYyKVxuICAgIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoLi4vZm9udHMva2VwbGVyX3N0ZF9kaXNwbGF5XzQwMC53b2ZmKVxuICAgIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCguLi9mb250cy9rZXBsZXJfc3RkX2Rpc3BsYXlfNDAwLm90KVxuICAgIGZvcm1hdCgnb3BlbnR5cGUnKTtcbiAgICBmb250LWRpc3BsYXk6IGF1dG87XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi8qIEN1c3RvbSBhZGRpdGlvbmFsIHN0eWxlcyAqL1xucCwgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5hZGRyZXNzIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbnVsLCBvbCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG59XG5cbmZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9J251bWJlciddOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCBpbnB1dFt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbn1cblxuaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG5hIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG59XG5cbmlucHV0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubW9kYWwtb3BlbiB7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4qIHtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLyoqXG4gKiBTd2lwZXIgNi41LjFcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwczovL3N3aXBlcmpzLmNvbVxuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMjEgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogTWFyY2ggMjksIDIwMjFcbiAqL1xuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IHN3aXBlci1pY29ucztcbiAgICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbFxufVxuXG46cm9vdCB7XG4gICAgLS1zd2lwZXItdGhlbWUtY29sb3I6ICMwMDdhZmZcbn1cblxuLnN3aXBlci1jb250YWluZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgei1pbmRleDogMVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtblxufVxuXG4uc3dpcGVyLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsIC5zd2lwZXItd3JhcHBlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApXG59XG5cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBmbGV4LXdyYXA6IHdyYXBcbn1cblxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3ctY29sdW1uID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtblxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBtYXJnaW46IDAgYXV0b1xufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1wb2ludGVyLWV2ZW50cyB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1wb2ludGVyLWV2ZW50cy5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi14XG59XG5cbi5zd2lwZXItc2xpZGUge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtXG59XG5cbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW5cbn1cblxuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCwgLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRlIHtcbiAgICBoZWlnaHQ6IGF1dG9cbn1cblxuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0XG59XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgICBwZXJzcGVjdGl2ZTogMTIwMHB4XG59XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3csIC5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUsIC5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsIC5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCwgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci13cmFwcGVyIHtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkXG59XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsIC5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAxMFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAuNSksIHJnYmEoMCwgMCwgMCwgMCkpXG59XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgLjUpLCByZ2JhKDAsIDAsIDAsIDApKVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgLjUpLCByZ2JhKDAsIDAsIDAsIDApKVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgLjUpLCByZ2JhKDAsIDAsIDAsIDApKVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGRpc3BsYXk6IG5vbmVcbn1cblxuLnN3aXBlci1jb250YWluZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnRcbn1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbC5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbC5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBzY3JvbGwtc25hcC10eXBlOiB5IG1hbmRhdG9yeVxufVxuXG46cm9vdCB7XG4gICAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiA0NHB4XG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogY2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDQ0ICogMjcpO1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gICAgbWFyZ2luLXRvcDogY2FsYygwIC0gKHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gMikpO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKVxufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjM1O1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZVxufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXZhcmlhbnQ6IGluaXRpYWw7XG4gICAgbGluZS1oZWlnaHQ6IDFcbn1cblxuLnN3aXBlci1idXR0b24tcHJldiwgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgcmlnaHQ6IGF1dG9cbn1cblxuLnN3aXBlci1idXR0b24tcHJldjphZnRlciwgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdwcmV2J1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LCAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgbGVmdDogYXV0b1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLCAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gICAgY29udGVudDogJ25leHQnXG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLXdoaXRlIHtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiAjZmZmZmZmXG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjaywgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWJsYWNrIHtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiAjMDAwMDAwXG59XG5cbi5zd2lwZXItYnV0dG9uLWxvY2sge1xuICAgIGRpc3BsYXk6IG5vbmVcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IC4zcyBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgei1pbmRleDogMTBcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsIC5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sIC5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbiB7XG4gICAgYm90dG9tOiAxMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBmb250LXNpemU6IDBcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4zMyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSlcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1tYWluIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguNjYpXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4zMylcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC42Nilcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjMzKVxufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICBvcGFjaXR5OiAuMlxufVxuXG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmVcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICBjdXJzb3I6IHBvaW50ZXJcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpXG59XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIG1hcmdpbjogNnB4IDA7XG4gICAgZGlzcGxheTogYmxvY2tcbn1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogOHB4XG59XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2l0aW9uOiAuMnMgdHJhbnNmb3JtLCAuMnMgdG9wXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICBtYXJnaW46IDAgNHB4XG59XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIHRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0sIC4ycyBsZWZ0XG59XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwuc3dpcGVyLWNvbnRhaW5lci1ydGwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIHRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0sIC4ycyByaWdodFxufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjI1KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGVcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wXG59XG5cbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLCAuc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDBcbn1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSwgLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcjogI2ZmZmZmZlxufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sge1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6ICMwMDAwMDBcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICAgIGRpc3BsYXk6IG5vbmVcbn1cblxuLnN3aXBlci1zY3JvbGxiYXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuMSlcbn1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMSU7XG4gICAgYm90dG9tOiAzcHg7XG4gICAgei1pbmRleDogNTA7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgd2lkdGg6IDk4JVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDNweDtcbiAgICB0b3A6IDElO1xuICAgIHotaW5kZXg6IDUwO1xuICAgIHdpZHRoOiA1cHg7XG4gICAgaGVpZ2h0OiA5OCVcbn1cblxuLnN3aXBlci1zY3JvbGxiYXItZHJhZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwXG59XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWN1cnNvci1kcmFnIHtcbiAgICBjdXJzb3I6IG1vdmVcbn1cblxuLnN3aXBlci1zY3JvbGxiYXItbG9jayB7XG4gICAgZGlzcGxheTogbm9uZVxufVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlclxufVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzLCAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gaW1nLCAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gc3ZnIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluXG59XG5cbi5zd2lwZXItc2xpZGUtem9vbWVkIHtcbiAgICBjdXJzb3I6IG1vdmVcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gICAgd2lkdGg6IDQycHg7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICAgIG1hcmdpbi10b3A6IC0yMXB4O1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgICBhbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnRcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZSB7XG4gICAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjZmZmXG59XG5cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItYmxhY2sge1xuICAgIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjogIzAwMFxufVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZylcbiAgICB9XG59XG5cbi5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItbm90aWZpY2F0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAtMTAwMFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHlcbn1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUsIC5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCVcbn1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1zbGlkZSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsIC5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsIC5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1uZXh0LCAuc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUsIC5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2IHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLCAuc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsIC5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsIC5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICB6LWluZGV4OiAwO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlblxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvcGFjaXR5OiAuNjtcbiAgICB6LWluZGV4OiAwXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cig1MHB4KTtcbiAgICBmaWx0ZXI6IGJsdXIoNTBweClcbn1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGVcbn1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogMVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmVcbn1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwgLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG9cbn1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sIC5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwgLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwgLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICAgIHotaW5kZXg6IDA7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuXG59XG5cbi5mb250SGVhZGVyTGFyZ2UsIC5zZWFyY2hfX2hlYWRpbmcsIC5pbXByZXNzdW1fX2hlYWRpbmcsIC5jb2x1bW5zVGV4dEltYWdlX19oZWFkaW5nLCAuc3RhdENoYXJ0X19oZWFkaW5nLCAuc3RvcnlDYXJvdXNlbF9faGVhZGluZywgLnRlc3RpbW9uaWFsc0Nhcm91c2VsX19oZWFkaW5nLCAubmV3c2xldHRlclN1YnNjcmliZV9faGVhZGluZywgLmV4dFRhYmxlX19oZWFkaW5nLCAuc3RhdGVDaG9vc2VyX19oZWFkaW5nLCAuZHJhd2VyX19oZWFkaW5nLCAuaGlzdG9yeUFydGljbGVfX2hlYWRpbmcsIC50d29JdGVtc0Nhcm91c2VsX19oZWFkaW5nLCAuc2VjdGlvbkhlYWRlcl9faGVhZGluZywgLmhlcm9DYXJvdXNlbF9faGVhZGluZywgLmFkdmFudGFnZXNTZWN0aW9uX19oZWFkaW5nIHtcbiAgICBmb250LWZhbWlseTogXCJrZXBsZXItc3RkLWRpc3BsYXlcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDMycHgsIGNhbGMoMWVtICsgMnZ3KSwgNTZweCk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoNzAgLyA1Nik7XG4gICAgZm9udC13ZWlnaHQ6IDMwMFxufVxuXG4uZm9udEhlYWRlclRleHRCbG9jaywgLmFwcGxpY2F0aW9uSW5mb19faGVhZGluZywgLmVtcGxveWVySW5mb19faGVhZGluZywgLmV2ZW50UmVnaXN0ZXJfX2hlYWRpbmcsIC5kb3dubG9hZHNfX2FjY29yZGlvbkhlYWRpbmcsIC5kb3dubG9hZHNfX2hlYWRpbmcsIC5kZXZlbG9wbWVudE92ZXJ2aWV3X19oZWFkaW5nLCAuY2FsY3VsYXRvciBoMywgLmFjY29yZGlvbnNfX2hlYWRpbmcsIC5lbWJlZERpYWxvZ3VlX19oZWFkbGluZSwgLmd1YXJhbnRlZU9wdGlvbkNhcmRfX2hlYWRpbmcsIC5mb3JtX19oZWFkaW5nLCAudGV4dEJsb2NrIGgyIHtcbiAgICBmb250LWZhbWlseTogXCJrZXBsZXItc3RkLWRpc3BsYXlcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDMycHgsIGNhbGMoMWVtICsgMnZ3KSwgNDBweCk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoNTAgLyA0MCk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMFxufVxuXG4uZm9udEhlYWRlclNlbWlMYXJnZSwgLmNvbHVtbnNUZXh0SW1hZ2VfX2ljb25IZWFkaW5nIHtcbiAgICBmb250LWZhbWlseTogXCJrZXBsZXItc3RkLWRpc3BsYXlcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHhcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZm9udEhlYWRlclNlbWlMYXJnZSwgLmNvbHVtbnNUZXh0SW1hZ2VfX2ljb25IZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDJweFxuICAgIH1cbn1cblxuLmZvbnRIZWFkZXJNZWRpdW0sIC5jb3VudGRvd25fX2hlYWRpbmcsIC5ldmVudFJlZ2lzdGVyX19ldmVudE5hbWUsIC5sb2NhdGlvbkluZm9fX2hlYWRpbmcsIC5leHRUYWJsZSB0YWJsZSwgLnRhYmxlIHRhYmxlLCAubW9kYWwgaDMsIC50ZXh0QmxvY2sgaDMsIC5zdG9yeUNhcmRfX3RpdGxlLCAuYXJ0aWNsZUNhcmRfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMjJweCwgY2FsYygxZW0gKyAydncpLCAyOHB4KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDM4IC8gMjgpXG59XG5cbi5mb250SGVhZGVyU21hbGwsIC5zZWFyY2hfX3RpdGxlLCAjZ2xpZ2h0Ym94LXNsaWRlciAuZ3NsaWRlLXRpdGxlLCAuZGV2ZWxvcG1lbnRPdmVydmlld19fbGlzdEludHJvLCAuYWR2YW50YWdlQXJ0aWNsZV9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBcImJyYW5kb24tZ3JvdGVzcXVlXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IGNsYW1wKDE0cHgsIGNhbGMoMWVtICsgMnZ3KSwgMjBweCk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMzIgLyAyMilcbn1cblxuLmZvbnRIZWFkaW5nVGlueSwgLnNlYXJjaF9fbGlua0Rpc2FibGUsIC5zZWFyY2hfX2xpbmtBY3RpdmUsIC5zZWFyY2hfX2xpbmssIC5zZWFyY2hfX3Jlc3VsdENvdW50LCAuY291bnRkb3duX19wcmVIZWFkaW5nLCAuZm9vdGVyX19saW5rc0xpc3RIZWFkZXIsIC5pbWFnZUdhbGxlcnlfX2hlYWRpbmcsIC5kb3dubG9hZExpbmssIC5jb21wYW55SW5mb19faGVhZGluZywgLmRvd25sb2Fkc0xpc3RfX2l0ZW1TaXplLCAubG9nb1dhbGxfX2hlYWRpbmcsIC5hZHZhbnRhZ2VzU2VjdGlvbl9fdGFiLCAuc3VibWVudV9faGVhZGluZywgLnBhZ2VCb3hfX2hlYWRpbmcge1xuICAgIGZvbnQtZmFtaWx5OiBcImJyYW5kb24tZ3JvdGVzcXVlXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMjYgLyAxNik7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZVxufVxuXG4uZm9udEhlYWRpbmdNaW5pLCAuc3RvcnlDYXJvdXNlbF9fcHJlSGVhZGluZywgLmZ1bmRpbmdQb3J0YWxTdGVwQ2FyZF9fY291bnRlciwgLmluZGV4UGFnaW5hdG9yLCAuYXJ0aWNsZUNhcmRfX3ByZUhlYWRlciwgLnNlY3Rpb25IZWFkZXJfX2FkZGl0aW9uYWxJbmZvLCAuc2VjdGlvbkhlYWRlcl9fc3RyYXBsaW5lLCAuaGVyb0Nhcm91c2VsX19wcmVIZWFkaW5nLCAubGFuZGluZ1BhZ2VOYXZfX29wZW4ge1xuICAgIGZvbnQtZmFtaWx5OiBcImJyYW5kb24tZ3JvdGVzcXVlXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZVxufVxuXG4uZm9udFBhcmFncmFwaCwgLnNlYXJjaF9fcGFyYWdyYXBoLCAuZXJyb3I0MDRfX3RleHQsIC5kZXZlbG9wbWVudE92ZXJ2aWV3SW52ZXJ0ZWRfX2xpc3RJdGVtLCAuZGV2ZWxvcG1lbnRPdmVydmlld19fbGlzdEl0ZW0sIC5lbWJlZERpYWxvZ3VlX190ZXh0LCAuZG93bmxvYWRzTGlzdF9faXRlbU5hbWUsIC5yZXByZXNlbnRhdGl2ZUNhcmRfX25hbWUsIC5hY2NvcmRpb25JbnZlcnRlZF9fY29udGVudCBwLCAuYWNjb3JkaW9uX19jb250ZW50IHAsIC5hcnRpY2xlQ2FyZF9fZXhjZXJwdCwgLmhlcm9DYXJvdXNlbF9fcGFyYWdyYXBoIHtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMThweCwgY2FsYygxZW0gKyAydncpLCAyMHB4KTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygyOCAvIDIwKVxufVxuXG4uZm9udElucHV0LCAuc2VhcmNoIGlucHV0W3R5cGU9dGV4dF0sIC5mb3JtIHRleHRhcmVhLCAuZm9ybSBpbnB1dFt0eXBlPXRleHRdLCAuZm9ybSBpbnB1dFt0eXBlPWVtYWlsXSwgLmZvcm0gaW5wdXRbdHlwZT10ZWxdIHtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjZweFxufVxuXG4uZm9udFBhcmFncmFwaDIsIC5iYWNrZ3JvdW5kV3JhcHBlcl9fYmx1ZSAudGV4dEJsb2NrIGEsIC5hcnRpY2xlSW50cm9fX2ltYWdlQ2FwdGlvbiwgLmJhY2tncm91bmRXcmFwcGVyX19ibHVlIC5jYWxjdWxhdG9yICNyZXN1bHQsIC5iYWNrZ3JvdW5kV3JhcHBlcl9fYmx1ZUxpZ2h0IC5jYWxjdWxhdG9yICNyZXN1bHQsIC5iYWNrZ3JvdW5kV3JhcHBlcl9fd2hpdGUgLmNhbGN1bGF0b3IgI3Jlc3VsdCwgLmdldEluVG91Y2hfX29wZW5Ib3VycywgLmV4dFRhYmxlIC50ZXh0QmxvY2sgYSwgYS5saW5rRXh0ZXJuYWxJY29uLCAubGlua0V4dGVybmFsX2ludmVydGVkLCAubGlua0V4dGVybmFsLCAudGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyIGEsIC5hY2NvcmRpb25JbnZlcnRlZF9fY29udGVudCBhLCAuYWNjb3JkaW9uSW52ZXJ0ZWRfX2NvbnRlbnQgYS5saW5rRXh0ZXJuYWxJY29uLCAuYWNjb3JkaW9uX19jb250ZW50IGEsIC5zdWJtZW51X19wYXJhZ3JhcGgsIC5wYWdlQm94X19leGNlcnB0IHtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjJweFxufVxuXG4uZm9udFBhcmFncmFwaDMsIC5hcnRpY2xlSW50cm9fX2FkZGl0aW9uYWxJbmZvVGV4dCwgLnJvdXRlUGxhbm5lcl9fb3BlbkhvdXJzLCAuZ2V0SW5Ub3VjaF9fcGFyYWdyYXBoLCAucGVyc29uRG9jdW1lbnRfX3RleHQgPiBwLCAuZm9ybV9fY2FwdGNoYSBhLCAuZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsLCAuZm9ybSBpbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsLCAucmVwcmVzZW50YXRpdmVDYXJkX19pbmZvLCAudGV4dEJsb2NrIHNwYW4udGV4dC1zbWFsbCwgLmZ1bmRpbmdQb3J0YWxTdGVwQ2FyZF9fZGVzY3JpcHRpb24sIC5zdG9yeUNhcmRfX2Fic3RyYWN0LCAuc2VjdGlvbkhlYWRlcl9faW50cm8sIC5hZHZhbnRhZ2VBcnRpY2xlX19kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1mYW1pbHk6IFwiYnJhbmRvbi1ncm90ZXNxdWVcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDE0cHgsIGNhbGMoMWVtICsgMnZ3KSwgMjBweCk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMjggLyAyMClcbn1cblxuLmZvbnRQYXJhZ3JhcGg0LCAubW9yZUNvbnRlbnRMaW5rIHAsIC5hcHBsaWNhdGlvbkluZm9fX2NvbHVtbiBwLCAuZW1wbG95ZXJJbmZvX19hc3NldERlc2NyaXB0aW9uIHAsIC5lbXBsb3llckluZm9fX2ludHJvLCAuYW5uaXZlcnNhcnlFeGNlcnB0X190ZXh0LCAuYW5uaXZlcnNhcnlFeGNlcnB0X190aXRsZSwgLmFubml2ZXJzYXJ5SW50cm9fX3RleHQsIC5zdGF0Q2hhcnRfX2ludHJvLCAuZXZlbnRSZWdpc3Rlcl9fZXZlbnREZXRhaWxzLCAubG9jYXRpb25JbmZvX19hZGRyZXNzLCAubG9jYXRpb25JbmZvX19vcGVuSG91cnMsIC5mdW5kaW5nUG9ydGFsU3RlcHNfX2ludHJvLCAuY2FsY3VsYXRvciwgLnN0b3J5Q2Fyb3VzZWxfX2ludHJvLCAuc3RhdGVDaG9vc2VyX19pbnRybywgLmhpc3RvcnlBcnRpY2xlX190ZXh0LCAuaGlzdG9yeUFydGljbGVfX2RhdGUsIC5oaXN0b3J5QXJ0aWNsZV9fdGl0bGUsIC5ndWFyYW50ZWVPcHRpb25DYXJkX19saXN0LCAudGV4dEJsb2NrIHVsLCAudGV4dEJsb2NrIG9sLCAudGV4dEJsb2NrIHAsIC5hY2NvcmRpb25JbnZlcnRlZF9fc3VtbWFyeSwgLmFjY29yZGlvbl9fc3VtbWFyeSwgLnF1b3RhdGlvbl9fYXV0aG9yIHtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDMyIC8gMjApXG59XG5cbi5mb250UGFyYWdyYXBoNCwgLm1vcmVDb250ZW50TGluayBwLCAuYXBwbGljYXRpb25JbmZvX19jb2x1bW4gcCwgLmVtcGxveWVySW5mb19fYXNzZXREZXNjcmlwdGlvbiBwLCAuZW1wbG95ZXJJbmZvX19pbnRybywgLmFubml2ZXJzYXJ5RXhjZXJwdF9fdGV4dCwgLmFubml2ZXJzYXJ5RXhjZXJwdF9fdGl0bGUsIC5hbm5pdmVyc2FyeUludHJvX190ZXh0LCAuc3RhdENoYXJ0X19pbnRybywgLmV2ZW50UmVnaXN0ZXJfX2V2ZW50RGV0YWlscywgLmxvY2F0aW9uSW5mb19fYWRkcmVzcywgLmxvY2F0aW9uSW5mb19fb3BlbkhvdXJzLCAuZnVuZGluZ1BvcnRhbFN0ZXBzX19pbnRybywgLmNhbGN1bGF0b3IsIC5zdG9yeUNhcm91c2VsX19pbnRybywgLnN0YXRlQ2hvb3Nlcl9faW50cm8sIC5oaXN0b3J5QXJ0aWNsZV9fdGV4dCwgLmhpc3RvcnlBcnRpY2xlX19kYXRlLCAuaGlzdG9yeUFydGljbGVfX3RpdGxlLCAuZ3VhcmFudGVlT3B0aW9uQ2FyZF9fbGlzdCwgLnRleHRCbG9jayB1bCwgLnRleHRCbG9jayBvbCwgLnRleHRCbG9jayBwLCAuYWNjb3JkaW9uSW52ZXJ0ZWRfX3N1bW1hcnksIC5hY2NvcmRpb25fX3N1bW1hcnksIC5xdW90YXRpb25fX2F1dGhvciB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxOHB4LCAwLjE2MzI2NTMwNjF2dyArIDE3LjM4Nzc1NTEwMnB4LCAyMHB4KVxufVxuXG4uZm9udENvcHlyaWdodCwgI2dsaWdodGJveC1zbGlkZXIgLmdzbGlkZS1kZXNjLCAuZ2FsbGVyeV9faW1hZ2VEZXNjcmlwdGlvbiwgLmZvb3Rlcl9fY29weXJpZ2h0LCAuZW1iZWREaWFsb2d1ZV9fcHJpdmFjeU5vdGUsIC5lbWJlZERpYWxvZ3VlX19hbGxvd1N3aXRjaFdyYXBwZXIgLmFsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2hMYWJlbCwgLmhpc3RvcnlBcnRpY2xlX19maWd1cmVEZXNjcmlwdGlvbiwgLmxhbmRpbmdQYWdlRm9vdGVyX19jb3B5cmlnaHQsIC5sYW5kaW5nUGFnZUZvb3Rlcl9fbmF2LWxpc3QgbGkgYSwgLmxhbmRpbmdQYWdlRm9vdGVyX19ib3R0b20td3JhcHBlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiYnJhbmRvbi1ncm90ZXNxdWVcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMjYgLyAxNilcbn1cblxuLmZvbnRMaW5rLCAubG9jYXRpb25JbmZvX19waG9uZSwgLmFydGljbGVJbnRyb19fYWRkaXRpb25hbEluZm9UaXRsZSwgLmRyYXdlcl9fc3ViSGVhZGluZywgLmZvcm0gbGVnZW5kLCAuZm9ybV9fc3VjY2Vzc0lucHV0TGFiZWwsIC5mb3JtX19pbnB1dExhYmVsLCAubGlua0ludmVydGVkLCAubGluayB7XG4gICAgZm9udC1mYW1pbHk6IFwiYnJhbmRvbi1ncm90ZXNxdWVcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4ycHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZVxufVxuXG4uZm9udExpbmsyLCAuc3VibWVudV9fbGluayB7XG4gICAgZm9udC1mYW1pbHk6IFwiYnJhbmRvbi1ncm90ZXNxdWVcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZVxufVxuXG4uZm9udFF1b3RhdGlvbiwgLnRleHRCbG9jayBibG9ja3F1b3RlLCAucXVvdGF0aW9uX190ZXh0IHtcbiAgICBmb250LWZhbWlseTogXCJrZXBsZXItc3RkLWRpc3BsYXlcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDI4cHgsIGNhbGMoMWVtICsgMnZ3KSwgNDBweCk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoNTIgLyA0MCk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljXG59XG5cbi5mb250SGVhZGVyRXh0VGFibGVCbG9jaywgLmV4dFRhYmxlIC50ZXh0QmxvY2sgc3Bhbi50ZXh0LXNlcmlmIHtcbiAgICBmb250LWZhbWlseTogXCJrZXBsZXItc3RkLWRpc3BsYXlcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDIwcHgsIGNhbGMoMWVtICsgMnZ3KSwgMjBweCk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMjggLyAyMClcbn1cblxuLmZvbnRIZWFkaW5nTGFyZywgLmNvdW50ZG93bl9faW50cm8ge1xuICAgIGZvbnQtZmFtaWx5OiBcImJyYW5kb24tZ3JvdGVzcXVlXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiBjbGFtcCgyNnB4LCBjYWxjKDFlbSArIDJ2dyksIDQycHgpXG59XG5cbi5sYXlvdXRXcmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDE1NDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICB3aWR0aDogMTAwJVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5sYXlvdXRXcmFwcGVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4XG4gICAgfVxufVxuXG4uY29sdW1uV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG59XG5cbi5yb3dXcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3dcbn1cblxuLmdyaWRSb3dXcmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZVxufVxuXG4uZ3JpZEJveFdyYXBwZXIsIC5ncmlkQm94LS14eGwtLWZyMTIsIC5ncmlkQm94LS14eGwtLWZyMTEsIC5ncmlkQm94LS14eGwtLWZyMTAsIC5ncmlkQm94LS14eGwtLWZyOSwgLmdyaWRCb3gtLXh4bC0tZnI4LCAuZ3JpZEJveC0teHhsLS1mcjcsIC5ncmlkQm94LS14eGwtLWZyNiwgLmdyaWRCb3gtLXh4bC0tZnI1LCAuZ3JpZEJveC0teHhsLS1mcjQsIC5ncmlkQm94LS14eGwtLWZyMywgLmdyaWRCb3gtLXh4bC0tZnIyLCAuZ3JpZEJveC0teHhsLS1mcjEsIC5ncmlkQm94LS14eGwtLWZyMCwgLmdyaWRCb3gtLXhsLS1mcjEyLCAuZ3JpZEJveC0teGwtLWZyMTEsIC5ncmlkQm94LS14bC0tZnIxMCwgLmdyaWRCb3gtLXhsLS1mcjksIC5ncmlkQm94LS14bC0tZnI4LCAuZ3JpZEJveC0teGwtLWZyNywgLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciA+IGJsb2NrcXVvdGUsIC5ncmlkQm94LS14bC0tZnI2LCAudGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyID4gKjpub3QoYmxvY2txdW90ZSksIC5ncmlkQm94LS14bC0tZnI1LCAuZ3JpZEJveC0teGwtLWZyNCwgLmdyaWRCb3gtLXhsLS1mcjMsIC5ncmlkQm94LS14bC0tZnIyLCAuZ3JpZEJveC0teGwtLWZyMSwgLmdyaWRCb3gtLXhsLS1mcjAsIC5ncmlkQm94LS1sZy0tZnIxMiwgLmdyaWRCb3gtLWxnLS1mcjExLCAuZ3JpZEJveC0tbGctLWZyMTAsIC5ncmlkQm94LS1sZy0tZnI5LCAuZ3JpZEJveC0tbGctLWZyOCwgLmdyaWRCb3gtLWxnLS1mcjcsIC5ncmlkQm94LS1sZy0tZnI2LCAuZ3JpZEJveC0tbGctLWZyNSwgLmdyaWRCb3gtLWxnLS1mcjQsIC5ncmlkQm94LS1sZy0tZnIzLCAuZ3JpZEJveC0tbGctLWZyMiwgLmNvbXBhbnlJbmZvLCAuZ3JpZEJveC0tbGctLWZyMSwgLmdyaWRCb3gtLWxnLS1mcjAsIC5ncmlkQm94LS1tZC0tZnIxMiwgLmdyaWRCb3gtLW1kLS1mcjExLCAuZ3JpZEJveC0tbWQtLWZyMTAsIC5ncmlkQm94LS1tZC0tZnI5LCAuZ3JpZEJveC0tbWQtLWZyOCwgLmdyaWRCb3gtLW1kLS1mcjcsIC5ncmlkQm94LS1tZC0tZnI2LCAuZ3JpZEJveC0tbWQtLWZyNSwgLmdyaWRCb3gtLW1kLS1mcjQsIC5ncmlkQm94LS1tZC0tZnIzLCAuZ3JpZEJveC0tbWQtLWZyMiwgLmdyaWRCb3gtLW1kLS1mcjEsIC5ncmlkQm94LS1tZC0tZnIwLCAuZ3JpZEJveC0tc20tLWZyMTIsIC5ncmlkQm94LS1zbS0tZnIxMSwgLmdyaWRCb3gtLXNtLS1mcjEwLCAuZ3JpZEJveC0tc20tLWZyOSwgLmdyaWRCb3gtLXNtLS1mcjgsIC5ncmlkQm94LS1zbS0tZnI3LCAuZ3JpZEJveC0tc20tLWZyNiwgLmdyaWRCb3gtLXNtLS1mcjUsIC5ncmlkQm94LS1zbS0tZnI0LCAuZ3JpZEJveC0tc20tLWZyMywgLmdyaWRCb3gtLXNtLS1mcjIsIC5ncmlkQm94LS1zbS0tZnIxLCAuZ3JpZEJveC0tc20tLWZyMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICAuZ3JpZEJveC0tc20tLWZyMCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDAgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgLmdyaWRNYXJnaW4tLXNtLS1mcjAge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkQm94LS1zbS0tZnIxIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICAuZ3JpZE1hcmdpbi0tc20tLWZyMSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgLmdyaWRCb3gtLXNtLS1mcjIge1xuICAgICAgICB3aWR0aDogY2FsYygyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkTWFyZ2luLS1zbS0tZnIyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICAuZ3JpZEJveC0tc20tLWZyMyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgLmdyaWRNYXJnaW4tLXNtLS1mcjMge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygzIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkQm94LS1zbS0tZnI0IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICAuZ3JpZE1hcmdpbi0tc20tLWZyNCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgLmdyaWRCb3gtLXNtLS1mcjUge1xuICAgICAgICB3aWR0aDogY2FsYyg1IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkTWFyZ2luLS1zbS0tZnI1IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoNSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICAuZ3JpZEJveC0tc20tLWZyNiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDYgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgLmdyaWRNYXJnaW4tLXNtLS1mcjYge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyg2IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkQm94LS1zbS0tZnI3IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNyAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICAuZ3JpZE1hcmdpbi0tc20tLWZyNyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDcgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgLmdyaWRCb3gtLXNtLS1mcjgge1xuICAgICAgICB3aWR0aDogY2FsYyg4IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkTWFyZ2luLS1zbS0tZnI4IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoOCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICAuZ3JpZEJveC0tc20tLWZyOSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDkgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgLmdyaWRNYXJnaW4tLXNtLS1mcjkge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyg5IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkQm94LS1zbS0tZnIxMCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkTWFyZ2luLS1zbS0tZnIxMCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkQm94LS1zbS0tZnIxMSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDExIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkTWFyZ2luLS1zbS0tZnIxMSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDExIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkQm94LS1zbS0tZnIxMiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkge1xuICAgIC5ncmlkTWFyZ2luLS1zbS0tZnIxMiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZEJveC0tbWQtLWZyMCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDAgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ncmlkTWFyZ2luLS1tZC0tZnIwIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRCb3gtLW1kLS1mcjEge1xuICAgICAgICB3aWR0aDogY2FsYygxIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbWQtLWZyMSwgLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciA+ICo6bm90KGJsb2NrcXVvdGUpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRCb3gtLW1kLS1mcjIge1xuICAgICAgICB3aWR0aDogY2FsYygyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbWQtLWZyMiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDIgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ncmlkQm94LS1tZC0tZnIzIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMyAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLW1kLS1mcjMge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygzIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZEJveC0tbWQtLWZyNCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDQgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ncmlkTWFyZ2luLS1tZC0tZnI0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoNCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRCb3gtLW1kLS1mcjUge1xuICAgICAgICB3aWR0aDogY2FsYyg1IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbWQtLWZyNSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ncmlkQm94LS1tZC0tZnI2IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLW1kLS1mcjYge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyg2IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZEJveC0tbWQtLWZyNyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDcgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ncmlkTWFyZ2luLS1tZC0tZnI3IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoNyAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRCb3gtLW1kLS1mcjgge1xuICAgICAgICB3aWR0aDogY2FsYyg4IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbWQtLWZyOCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDggLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ncmlkQm94LS1tZC0tZnI5IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoOSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLW1kLS1mcjkge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyg5IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZEJveC0tbWQtLWZyMTAsIC50ZXh0QmxvY2tfX2NvbHVtbldyYXBwZXIgPiAqOm5vdChibG9ja3F1b3RlKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbWQtLWZyMTAge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRCb3gtLW1kLS1mcjExLCAudGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyID4gYmxvY2txdW90ZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDExIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbWQtLWZyMTEge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmdyaWRCb3gtLW1kLS1mcjEyIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTIgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ncmlkTWFyZ2luLS1tZC0tZnIxMiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMXB4KSB7XG4gICAgLmdyaWRCb3gtLWxnLS1mcjAge1xuICAgICAgICB3aWR0aDogY2FsYygwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLWxnLS1mcjAge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMXB4KSB7XG4gICAgLmdyaWRCb3gtLWxnLS1mcjEge1xuICAgICAgICB3aWR0aDogY2FsYygxIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLWxnLS1mcjEsIC50ZXh0QmxvY2tfX2NvbHVtbldyYXBwZXIgPiBibG9ja3F1b3RlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDFweCkge1xuICAgIC5ncmlkQm94LS1sZy0tZnIyLCAuY29tcGFueUluZm8ge1xuICAgICAgICB3aWR0aDogY2FsYygyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLWxnLS1mcjIsIC50ZXh0QmxvY2tfX2NvbHVtbldyYXBwZXIgPiAqOm5vdChibG9ja3F1b3RlKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDIgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZEJveC0tbGctLWZyMyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbGctLWZyMyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZEJveC0tbGctLWZyNCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDQgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbGctLWZyNCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZEJveC0tbGctLWZyNSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbGctLWZyNSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZEJveC0tbGctLWZyNiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDYgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbGctLWZyNiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDYgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZEJveC0tbGctLWZyNyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDcgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbGctLWZyNyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDcgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZEJveC0tbGctLWZyOCwgLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciA+ICo6bm90KGJsb2NrcXVvdGUpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoOCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS1sZy0tZnI4IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoOCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDFweCkge1xuICAgIC5ncmlkQm94LS1sZy0tZnI5LCAudGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyID4gYmxvY2txdW90ZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDkgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbGctLWZyOSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZEJveC0tbGctLWZyMTAge1xuICAgICAgICB3aWR0aDogY2FsYygxMCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS1sZy0tZnIxMCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMXB4KSB7XG4gICAgLmdyaWRCb3gtLWxnLS1mcjExIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTEgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0tbGctLWZyMTEge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDFweCkge1xuICAgIC5ncmlkQm94LS1sZy0tZnIxMiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLWxnLS1mcjEyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTIgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyMCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDAgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyMCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyMSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyMSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyMiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDIgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyMiwgLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciA+IGJsb2NrcXVvdGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMXB4KSB7XG4gICAgLmdyaWRCb3gtLXhsLS1mcjMge1xuICAgICAgICB3aWR0aDogY2FsYygzIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLXhsLS1mcjMsIC50ZXh0QmxvY2tfX2NvbHVtbldyYXBwZXIgPiAqOm5vdChibG9ja3F1b3RlKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyNCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDQgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyNCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyNSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyNSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyNiwgLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciA+ICo6bm90KGJsb2NrcXVvdGUpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS14bC0tZnI2IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoNiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDFweCkge1xuICAgIC5ncmlkQm94LS14bC0tZnI3LCAudGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyID4gYmxvY2txdW90ZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDcgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyNyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDcgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyOCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDggLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyOCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDggLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyOSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDkgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyOSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZEJveC0teGwtLWZyMTAge1xuICAgICAgICB3aWR0aDogY2FsYygxMCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS14bC0tZnIxMCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMXB4KSB7XG4gICAgLmdyaWRCb3gtLXhsLS1mcjExIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTEgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teGwtLWZyMTEge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDFweCkge1xuICAgIC5ncmlkQm94LS14bC0tZnIxMiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEyIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLXhsLS1mcjEyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTIgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAxcHgpIHtcbiAgICAuZ3JpZEJveC0teHhsLS1mcjAge1xuICAgICAgICB3aWR0aDogY2FsYygwIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLXh4bC0tZnIwIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkQm94LS14eGwtLWZyMSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teHhsLS1mcjEge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgLmdyaWRCb3gtLXh4bC0tZnIyIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS14eGwtLWZyMiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDIgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAxcHgpIHtcbiAgICAuZ3JpZEJveC0teHhsLS1mcjMge1xuICAgICAgICB3aWR0aDogY2FsYygzIC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLXh4bC0tZnIzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMyAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkQm94LS14eGwtLWZyNCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDQgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teHhsLS1mcjQge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyg0IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgLmdyaWRCb3gtLXh4bC0tZnI1IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS14eGwtLWZyNSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAxcHgpIHtcbiAgICAuZ3JpZEJveC0teHhsLS1mcjYge1xuICAgICAgICB3aWR0aDogY2FsYyg2IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLXh4bC0tZnI2IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoNiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkQm94LS14eGwtLWZyNyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDcgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAxcHgpIHtcbiAgICAuZ3JpZE1hcmdpbi0teHhsLS1mcjcge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyg3IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgLmdyaWRCb3gtLXh4bC0tZnI4IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoOCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS14eGwtLWZyOCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDggLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAxcHgpIHtcbiAgICAuZ3JpZEJveC0teHhsLS1mcjkge1xuICAgICAgICB3aWR0aDogY2FsYyg5IC8gMTIgKiAxMDAlKVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgLmdyaWRNYXJnaW4tLXh4bC0tZnI5IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoOSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkQm94LS14eGwtLWZyMTAge1xuICAgICAgICB3aWR0aDogY2FsYygxMCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS14eGwtLWZyMTAge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkQm94LS14eGwtLWZyMTEge1xuICAgICAgICB3aWR0aDogY2FsYygxMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS14eGwtLWZyMTEge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkQm94LS14eGwtLWZyMTIge1xuICAgICAgICB3aWR0aDogY2FsYygxMiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgIC5ncmlkTWFyZ2luLS14eGwtLWZyMTIge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbi53cGNjLWNvbnRhaW5lciB7XG4gICAgZm9udC1mYW1pbHk6IFwiYnJhbmRvbi1ncm90ZXNxdWVcIiwgc2Fucy1zZXJpZlxufVxuXG4uaGVhZGVyIHtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGJveC1zaGFkb3c6IDAgNDBweCAzMHB4IHJnYmEoNCwgMjYsIDUwLCAuMTUpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAyXG59XG5cbi5oZWFkZXJfX2xvZ29XcmFwcGVyIHtcbiAgICBoZWlnaHQ6IDYwcHhcbn1cblxuLmhlYWRlcl9fbG9nb1dyYXBwZXIgaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG9cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlYWRlcl9fbG9nb1dyYXBwZXIge1xuICAgICAgICBoZWlnaHQ6IDUwcHhcbiAgICB9XG59XG5cbi5oZWFkZXJfX2xvZ29XcmFwcGVyOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweFxufVxuXG4uaGVhZGVyX19sb2dvV3JhcHBlcjplbXB0eSB7XG4gICAgbWFyZ2luLWxlZnQ6IDBweFxufVxuXG4uaGVhZGVyX19oaWRlTW9iaWxlIHtcbiAgICBkaXNwbGF5OiBibG9ja1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmhlYWRlcl9faGlkZU1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi5oZWFkZXJfX3dyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiAxMTBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXhcbn1cblxuLmhlYWRlcl9fd3JhcHBlciA+IC5sYXlvdXRXcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAuaGVhZGVyX193cmFwcGVyIHtcbiAgICAgICAgaGVpZ2h0OiA5MHB4XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaGVhZGVyX193cmFwcGVyIHtcbiAgICAgICAgaGVpZ2h0OiA3MHB4XG4gICAgfVxufVxuXG4uaGVhZGVyX19zZXBhcmF0b3Ige1xuICAgIGhlaWdodDogNTZweDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3MDcwNzA7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4XG59XG5cbi5oZWFkZXJfX2xvY2FsZUJ1dHRvbiB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyXG59XG5cbi5oZWFkZXIgLm5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvXG59XG5cbi5uYXZpZ2F0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCVcbn1cblxuLm5hdmlnYXRpb25fX21lbnVUb2dnbGVCdXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuLm5hdmlnYXRpb25fX21lbnVUb2dnbGVCdXR0b24gLmNsb3NlSWNvbiB7XG4gICAgZGlzcGxheTogbm9uZVxufVxuXG4ubmF2aWdhdGlvbl9fbWVudVRvZ2dsZUJ1dHRvbi5vcGVuIC5idXJnZXJJY29uIHtcbiAgICBkaXNwbGF5OiBub25lXG59XG5cbi5uYXZpZ2F0aW9uX19tZW51VG9nZ2xlQnV0dG9uLm9wZW4gLmNsb3NlSWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAubmF2aWdhdGlvbl9fbWVudVRvZ2dsZUJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXhcbiAgICB9XG59XG5cbi5uYXZpZ2F0aW9uX19tb2JpbGVXcmFwcGVyIHtcbiAgICBoZWlnaHQ6IDEwMCVcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5uYXZpZ2F0aW9uX19tb2JpbGVXcmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiA3MHB4O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgICAgIGhlaWdodDogYXV0b1xuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uX19tb2JpbGVXcmFwcGVyLm9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMClcbiAgICB9XG59XG5cbi5uYXZpZ2F0aW9uX19tb2JpbGVTcGVjaWFsQnV0dG9uc1dyYXBwZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjZTJlYWY1XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAubmF2aWdhdGlvbl9fbW9iaWxlU3BlY2lhbEJ1dHRvbnNXcmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleFxuICAgIH1cbn1cblxuLm5hdmlnYXRpb25fX2l0ZW1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgbWFyZ2luOiAwIC0xNXB4O1xuICAgIGhlaWdodDogMTAwJVxufVxuXG5AbWVkaWEgKGhvdmVyOiBob3ZlciksIG5vdCBhbGwgYW5kICgtbW96LXRvdWNoLWVuYWJsZWQpIHtcbiAgICAubmF2aWdhdGlvbl9faXRlbXM6bm90KC5ob3ZlckxvY2tlZCkgLm5hdmlnYXRpb25fX2l0ZW06aG92ZXIgLm5hdmlnYXRpb25fX2l0ZW1MYWJlbDo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uX19pdGVtczpub3QoLmhvdmVyTG9ja2VkKSAubmF2aWdhdGlvbl9faXRlbTpob3ZlciAubmF2aWdhdGlvbl9faXRlbVN1Ym1lbnUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNDBweCAzMHB4IHJnYmEoNCwgMjYsIDUwLCAuMTUpXG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLm5hdmlnYXRpb25fX2l0ZW1zIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbFxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm5hdmlnYXRpb25fX2l0ZW1zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweFxuICAgIH1cbn1cblxuLm5hdmlnYXRpb25fX2l0ZW0ge1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuLm5hdmlnYXRpb25fX2l0ZW0ubmF2aWdhdGlvbl9faXRlbS0tbW9iaWxlT25seSB7XG4gICAgZGlzcGxheTogbm9uZVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLm5hdmlnYXRpb25fX2l0ZW0ubmF2aWdhdGlvbl9faXRlbS0tbW9iaWxlT25seSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAubmF2aWdhdGlvbl9faXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZFxuICAgIH1cbn1cblxuLm5hdmlnYXRpb25fX3NlYXJjaCB7XG4gICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuLm5hdmlnYXRpb25fX3NlYXJjaCA+IHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDhweFxufVxuXG4ubmF2aWdhdGlvbl9faXRlbUxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMVxufVxuXG4ubmF2aWdhdGlvbl9faXRlbUxhYmVsIHN2ZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4yc1xufVxuXG4ubmF2aWdhdGlvbl9faXRlbUxhYmVsLmFjdGl2ZSBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZylcbn1cblxuLm5hdmlnYXRpb25fX2l0ZW1MYWJlbC5hY3RpdmU6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLm5hdmlnYXRpb25fX2l0ZW1MYWJlbCB7XG4gICAgICAgIGhlaWdodDogNTBweFxuICAgIH1cbn1cblxuLm5hdmlnYXRpb25fX2l0ZW1MYWJlbCA+IHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDZweFxufVxuXG4ubmF2aWdhdGlvbl9faXRlbUxhYmVsOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI0NjkzO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnNcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5uYXZpZ2F0aW9uX19pdGVtTGFiZWw6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuLm5hdmlnYXRpb25fX2l0ZW1TdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjElKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCB0cmFuc3BhcmVudDtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtXG59XG5cbi5uYXZpZ2F0aW9uX19pdGVtU3VibWVudS5vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgYm94LXNoYWRvdzogMCA0MHB4IDMwcHggcmdiYSg0LCAyNiwgNTAsIC4xNSlcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5uYXZpZ2F0aW9uX19pdGVtU3VibWVudSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb25fX2l0ZW1TdWJtZW51Lm9wZW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnRcbiAgICB9XG59XG5cbi5sYW5kaW5nUGFnZUZvb3RlciA+IGRpdiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAyNDY5M1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxhbmRpbmdQYWdlRm9vdGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyXG4gICAgfVxufVxuXG4ubGFuZGluZ1BhZ2VGb290ZXJfX2JvdHRvbSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMClhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGFuZGluZ1BhZ2VGb290ZXJfX2JvdHRvbSB7XG4gICAgICAgIHBhZGRpbmc6IDMycHggMTZweFxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5sYW5kaW5nUGFnZUZvb3Rlcl9fYm90dG9tIHtcbiAgICAgICAgcGFkZGluZzogMzJweCAwXG4gICAgfVxufVxuXG4ubGFuZGluZ1BhZ2VGb290ZXJfX2JvdHRvbS13cmFwcGVyIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMjIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LXdyYXA6IHdyYXBcbn1cblxuLmxhbmRpbmdQYWdlRm9vdGVyX19ib3R0b20td3JhcHBlcjphZnRlciwgLmxhbmRpbmdQYWdlRm9vdGVyX19ib3R0b20td3JhcHBlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGVcbn1cblxuLmxhbmRpbmdQYWdlRm9vdGVyX19ib3R0b20td3JhcHBlcjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGhcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKWFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5sYW5kaW5nUGFnZUZvb3Rlcl9fYm90dG9tLXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmxhbmRpbmdQYWdlRm9vdGVyX19ib3R0b20td3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzJweFxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKWFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5sYW5kaW5nUGFnZUZvb3Rlcl9fbmF2IHtcbiAgICAgICAgd2lkdGg6IDEwMCVcbiAgICB9XG59XG5cbi5sYW5kaW5nUGFnZUZvb3Rlcl9fbmF2LWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwXG59XG5cbi5sYW5kaW5nUGFnZUZvb3Rlcl9fbmF2LWxpc3QgYSB7XG4gICAgcGFkZGluZzogMFxufVxuXG4ubGFuZGluZ1BhZ2VGb290ZXJfX25hdi1saXN0IGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnRcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKWFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5sYW5kaW5nUGFnZUZvb3Rlcl9fbmF2LWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cblxuICAgIC5sYW5kaW5nUGFnZUZvb3Rlcl9fbmF2LWxpc3QgYSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMnB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9ja1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5sYW5kaW5nUGFnZUZvb3Rlcl9fbmF2LWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGVuZDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvXG4gICAgfVxuXG4gICAgLmxhbmRpbmdQYWdlRm9vdGVyX19uYXYtbGlzdCBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2tcbiAgICB9XG59XG5cbi5sYW5kaW5nUGFnZUZvb3Rlcl9fbmF2LWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMClhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGFuZGluZ1BhZ2VGb290ZXJfX25hdi1saW5rIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmxhbmRpbmdQYWdlRm9vdGVyX19uYXYtbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMnB4XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxhbmRpbmdQYWdlRm9vdGVyX19jb3B5cmlnaHQge1xuICAgICAgICAtbXMtZmxleC1vcmRlcjogMjtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmxhbmRpbmdQYWdlRm9vdGVyX19jb3B5cmlnaHQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwXG4gICAgfVxufVxuXG4ubGFuZGluZ1BhZ2VGb290ZXJfX2NvcHlyaWdodCwgLmxhbmRpbmdQYWdlRm9vdGVyX19uYXYtbGlzdCBsaSBhIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAxXG59XG5cbi5sYW5kaW5nUGFnZUhlYWRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDEwMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNnMgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjZzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNnMgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC42cyBlYXNlLW91dCwgLXdlYmtpdC10cmFuc2Zvcm0gLjZzIGVhc2Utb3V0XG59XG5cbi5sYW5kaW5nUGFnZUhlYWRlcl9fd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMTBweDtcbiAgICBtYXgtd2lkdGg6IDEyMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXRcbn1cblxuLmxhbmRpbmdQYWdlSGVhZGVyX193cmFwcGVyLnNjcm9sbGVkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRvcDogMHJlbVxufVxuXG4ubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdG9wOiAwcmVtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIGhlaWdodDogNjBweFxufVxuXG4ubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28gaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG9cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxhbmRpbmdQYWdlSGVhZGVyX19sb2dvIHtcbiAgICAgICAgaGVpZ2h0OiA1MHB4XG4gICAgfVxufVxuXG4ubGFuZGluZ1BhZ2VIZWFkZXJfX3dyYXBwZXI6YWZ0ZXIsIC5sYW5kaW5nUGFnZUhlYWRlcl9fd3JhcHBlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGVcbn1cblxuLmxhbmRpbmdQYWdlSGVhZGVyX193cmFwcGVyOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aFxufVxuXG4ubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28tbWJnIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tdG9wOiAtMi41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxufVxuXG4ubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28tbmV4dCB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW1cbn1cblxuLmxhbmRpbmdQYWdlSGVhZGVyX19sb2dvLWltYWdlIHtcbiAgICB3aWR0aDogOS41cmVtO1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgaGVpZ2h0OiAzcmVtICFpbXBvcnRhbnRcbn1cblxuLmxhbmRpbmdQYWdlSGVhZGVyX19maWd1cmUsIC5sYW5kaW5nUGFnZUhlYWRlcl9fZmlndXJlX25leHQge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IGF1dG9cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKWFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5sYW5kaW5nUGFnZUhlYWRlcl9fd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTZweFxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5sYW5kaW5nUGFnZUhlYWRlcl9fd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzJweFxuICAgIH1cbn1cblxuLmxhbmRpbmdQYWdlSGVhZGVyX19oZWFkaW5nIHtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmxhbmRpbmdQYWdlSGVhZGVyX19sb2dvIHtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE2cHhcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28ge1xuICAgICAgICAtbXMtZmxleDogMCAxIDAlO1xuICAgICAgICBmbGV4OiAwIDEgMCU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmxhbmRpbmdQYWdlSGVhZGVyX19sb2dvLWltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDVweFxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5sYW5kaW5nUGFnZUhlYWRlcl9fbG9nby1pbWFnZSB7XG4gICAgICAgIG1heC13aWR0aDogMTIwcHhcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubGFuZGluZ1BhZ2VIZWFkZXJfX25hdiB7XG4gICAgICAgIC1tcy1mbGV4OiAxIDEgMCU7XG4gICAgICAgIGZsZXg6IDEgMSAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2OHB4XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLmxhbmRpbmdQYWdlSGVhZGVyX19sb2dvLW1iZyBpbWcge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnRcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28tbWJnIGltZyB7XG4gICAgICAgIHdpZHRoOiA3cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA2LjVyZW1cbiAgICB9XG5cbiAgICAubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28taW1hZ2Uge1xuICAgICAgICB3aWR0aDogNnJlbSAhaW1wb3J0YW50XG4gICAgfVxuXG4gICAgLmxhbmRpbmdQYWdlSGVhZGVyIGEubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50XG4gICAgfVxuXG4gICAgLmxhbmRpbmdQYWdlSGVhZGVyX19sb2dvLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDhyZW07XG4gICAgICAgIGhlaWdodDogM3JlbSAhaW1wb3J0YW50XG4gICAgfVxuXG4gICAgLmxhbmRpbmdQYWdlSGVhZGVyIC5mbG9hdC1yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgdG9wOiAxLjY3NXJlbVxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3ODZweCkge1xuICAgIC5sYW5kaW5nUGFnZUhlYWRlcl9fd3JhcHBlci5zY3JvbGxlZCAuZmxvYXQtcmlnaHQge1xuICAgICAgICB0b3A6IC41cmVtXG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KWFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgLmxhbmRpbmdQYWdlSGVhZGVyX19sb2dvIHtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE2cHhcbiAgICB9XG59XG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28taW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IGF1dG9cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTk4cHgpIHtcbiAgICAubGFuZGluZ1BhZ2VIZWFkZXJfX2xvZ28tbWJnIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yLjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxuICAgIH1cblxuICAgIC5sYW5kaW5nUGFnZUhlYWRlcl9fbG9nby1tYmcgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEyLjVyZW07XG4gICAgICAgIGhlaWdodDogMy41cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMXJlbVxuICAgIH1cblxuICAgIC5sYW5kaW5nUGFnZUhlYWRlcl9fbmF2IHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cblxuICAgIC5sYW5kaW5nUGFnZUhlYWRlcl9fZmlndXJlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0b1xuICAgIH1cblxuICAgIC5sYW5kaW5nUGFnZUhlYWRlcl9fZmlndXJlIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG9cbiAgICB9XG5cbiAgICAubGFuZGluZ1BhZ2VIZWFkZXJfX3dyYXBwZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0XG4gICAgfVxufVxuXG4ubGFuZGluZ1BhZ2VIZWFkZXItLXBpbm5lZCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjRzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC40cyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNHMgZWFzZS1vdXQsIC13ZWJraXQtdHJhbnNmb3JtIC40cyBlYXNlLW91dFxufVxuXG4ubGFuZGluZ1BhZ2VOYXZfX29wZW4ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgIHdpZHRoOiAxNzBweDtcbiAgICBtYXJnaW4tdG9wOiAxLjNyZW07XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0XG59XG5cbi5sYW5kaW5nUGFnZU5hdl9fb3Blbjpob3ZlciB7XG4gICAgY29sb3I6ICMwMjQ2OTM7XG4gICAgY3Vyc29yOiBwb2ludGVyXG59XG5cbi5sYW5kaW5nUGFnZU5hdl9fb3BlbiBzcGFuIHN2ZyB7XG4gICAgd2lkdGg6IC42NzVyZW07XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgc3Ryb2tlOiAjMDAwO1xuICAgIHRvcDogLTFweDtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZVxufVxuXG4ubGFuZGluZ1BhZ2VOYXZfX29wZW4gc3BhbiBzdmc6aG92ZXIgc3BhbiBzdmcge1xuICAgIHN0cm9rZTogIzAyNDY5M1xufVxuXG4ubGFuZGluZ1BhZ2VOYXZfX29wZW4ub3BlbiBzcGFuIHN2ZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjY3NXJlbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpXG59XG5cbi5sYW5kaW5nUGFnZU5hdl9fb3Blbi5vcGVuIC5sYW5kaW5nUGFnZU5hdl9fbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyXG59XG5cbi5sYW5kaW5nUGFnZU5hdl9fY2xvc2UtYnV0dG9uLCAubGFuZGluZ1BhZ2VOYXZfX29wZW4tYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgc3Ryb2tlOiAjMDI0NjkzXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubGFuZGluZ1BhZ2VOYXZfX2Nsb3NlLWJ1dHRvbiwgLmxhbmRpbmdQYWdlTmF2X19vcGVuLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi5sYW5kaW5nUGFnZU5hdl9fY2xvc2UtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyNHB4O1xuICAgIHJpZ2h0OiAyNHB4XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubGFuZGluZ1BhZ2VOYXZfX2Nsb3NlLWJ1dHRvbiB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlblxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKWFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5sYW5kaW5nUGFnZU5hdi0tY2xvc2VkIC5sYW5kaW5nUGFnZU5hdl9fY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuXG4gICAgfVxufVxuXG4ubGFuZGluZ1BhZ2VOYXZfX2xpc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHRvcDogMnJlbTtcbiAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMzBweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTtcbiAgICBib3gtc2hhZG93OiAwIDAgMzBweCAwIHJnYmEoMCwgMCwgMCwgLjE1KTtcbiAgICBwYWRkaW5nOiAuMjVyZW0gMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMClhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAubGFuZGluZ1BhZ2VOYXYtLWNsb3NlZCAubGFuZGluZ1BhZ2VOYXZfX2xpc3Qge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW5cbiAgICB9XG59XG5cbi5sYW5kaW5nUGFnZU5hdl9faXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjEpO1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbi5sYW5kaW5nUGFnZU5hdl9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmVcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKWFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5sYW5kaW5nUGFnZU5hdl9faXRlbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlclxuICAgIH1cbn1cblxuLmxhbmRpbmdQYWdlTmF2X19saW5rIHtcbiAgICBmb250LXNpemU6IDEuMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDFyZW0gMHJlbSAxcmVtIDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMHJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTk4cHgpIHtcbiAgICAubGFuZGluZ1BhZ2VOYXZfX29wZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmxhbmRpbmdQYWdlTmF2X19saW5rIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43MTQyODU3MTtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBjb2xvcjogIzIyMlxuICAgIH1cblxuICAgIC5sYW5kaW5nUGFnZU5hdl9fbGluazpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICMyMjJcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMClhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAubGFuZGluZ1BhZ2VOYXZfX2J1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmxhbmRpbmdQYWdlTmF2X19idXR0b24ge1xuICAgICAgICB3aWR0aDogYXV0b1xuICAgIH1cbn1cblxuLmJ0biB7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjQ2OTM7XG4gICAgZm9udC1mYW1pbHk6IFwiYnJhbmRvbi1ncm90ZXNxdWVcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXRcbn1cblxuLmJ0bi5idG4tLXRyYW5zcGFyZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMDI0NjkzO1xuICAgIGNvbG9yOiAjMDI0NjkzXG59XG5cbi5idG4uYnRuLS10cmFuc3BhcmVudDpob3ZlciB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMTVweCAwICMwMjQ2OTM7XG4gICAgYm94LXNoYWRvdzogMCAwIDE1cHggMCAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjQ2OTM7XG4gICAgY29sb3I6ICNmZmZcbn1cblxuLmJ0bl93aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMDI0NjkzO1xuICAgIGNvbG9yOiAjMDI0NjkzXG59XG5cbi5idG46aG92ZXIge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDE1cHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDE1cHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMFxufVxuXG4uYnRuSW52ZXJ0ZWQge1xuICAgIGhlaWdodDogNjRweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGZvbnQtZmFtaWx5OiBcImJyYW5kb24tZ3JvdGVzcXVlXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzAyNDY5MztcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0XG59XG5cbi5idG5JbnZlcnRlZC5idG4tLXRyYW5zcGFyZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMDI0NjkzO1xuICAgIGNvbG9yOiAjMDI0NjkzXG59XG5cbi5idG5JbnZlcnRlZC5idG4tLXRyYW5zcGFyZW50OmhvdmVyIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAxNXB4IDAgIzAyNDY5MztcbiAgICBib3gtc2hhZG93OiAwIDAgMTVweCAwICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAyNDY5MztcbiAgICBjb2xvcjogI2ZmZlxufVxuXG4uYnRuSW52ZXJ0ZWQ6aG92ZXIge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDE1cHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDE1cHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA0MWEzMjtcbiAgICBjb2xvcjogI2ZmZlxufVxuXG4ucGFnZUJveF9fbGlzdCB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5wYWdlQm94X19saXN0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDBcbiAgICB9XG59XG5cbi5wYWdlQm94X193cmFwcGVyIHtcbiAgICB3aWR0aDogMjUlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAucGFnZUJveF9fd3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxufVxuXG4ucGFnZUJveF9faW1hZ2VXcmFwcGVyIHtcbiAgICBoZWlnaHQ6IDE0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweFxufVxuXG5AbWVkaWEgKGhvdmVyOiBob3ZlciksIG5vdCBhbGwgYW5kICgtbW96LXRvdWNoLWVuYWJsZWQpIHtcbiAgICAucGFnZUJveF9faW1hZ2VXcmFwcGVyOmhvdmVyIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5wYWdlQm94X19pbWFnZVdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgfVxufVxuXG4ucGFnZUJveF9faW1hZ2VXcmFwcGVyIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNnNcbn1cblxuLnBhZ2VCb3hfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5wYWdlQm94X19oZWFkaW5nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuLnBhZ2VCb3hfX2V4Y2VycHQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgY29sb3I6ICM4ZTkxOTVcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5wYWdlQm94X19leGNlcnB0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAgIC5wYWdlQm94X19leGNlcnB0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuLmFkdmFudGFnZUFydGljbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXBcbn1cblxuLmFkdmFudGFnZUFydGljbGVfX2Rlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW5cbn1cblxuLmFkdmFudGFnZUFydGljbGVfX3RpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHhcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYWR2YW50YWdlQXJ0aWNsZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4XG4gICAgfVxufVxuXG4uYWR2YW50YWdlQXJ0aWNsZV9faWxsdXN0cmF0aW9uV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDMwMHB4XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFkdmFudGFnZUFydGljbGVfX2lsbHVzdHJhdGlvbldyYXBwZXIge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byA0MHB4XG4gICAgfVxufVxuXG4uYWR2YW50YWdlQXJ0aWNsZV9faWxsdXN0cmF0aW9uV3JhcHBlciBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmFkdmFudGFnZUFydGljbGVfX2lsbHVzdHJhdGlvbldyYXBwZXIgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuLmFkdmFudGFnZUFydGljbGVfX2lsbHVzdHJhdGlvbldyYXBwZXIgc3ZnIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiBhdXRvXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFkdmFudGFnZUFydGljbGVfX2lsbHVzdHJhdGlvbldyYXBwZXIgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvXG4gICAgfVxufVxuXG4uYWR2YW50YWdlQXJ0aWNsZS5hZHZhbnRhZ2VBcnRpY2xlLS1yZXZlcnNlT3JkZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZVxufVxuXG4uc3VibWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjZTJlYWY1XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAuc3VibWVudSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweFxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5zdWJtZW51IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItdG9wOiBub25lXG4gICAgfVxufVxuXG4uc3VibWVudV9fYXNpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAgIC5zdWJtZW51X19hc2lkZSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4XG4gICAgfVxuXG4gICAgLnN1Ym1lbnVfX2FzaWRlIGRpdltjbGFzc149c3VibWVudV9fXSB7XG4gICAgICAgIHdpZHRoOiA1MCVcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzAwcHgpYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5zdWJtZW51X19hc2lkZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXJnaW4tdG9wOiAwXG4gICAgfVxuXG4gICAgLnN1Ym1lbnVfX2FzaWRlIGRpdltjbGFzc149c3VibWVudV9fXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxuXG4gICAgLnN1Ym1lbnVfX2FzaWRlIGRpdltjbGFzc149c3VibWVudV9fXTpudGgtY2hpbGQoMikge1xuICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgfVxuXG4gICAgLnN1Ym1lbnVfX2FzaWRlIC5zdWJtZW51X19oZWFkaW5nIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweFxuICAgIH1cblxuICAgIC5zdWJtZW51X19hc2lkZSAuc3VibWVudV9fbGlua3NMaXN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMFxuICAgIH1cblxuICAgIC5zdWJtZW51X19hc2lkZSAuc3VibWVudV9fbGlua1dyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBcbiAgICB9XG59XG5cbi5zdWJtZW51X19wYXJhZ3JhcGgge1xuICAgIGNvbG9yOiAjOGU5MTk1XG59XG5cbi5zdWJtZW51X19saW5rc0xpc3Qge1xuICAgIG1hcmdpbi10b3A6IDIwcHhcbn1cblxuLnN1Ym1lbnVfX2xpbmtXcmFwcGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweFxufVxuXG4uc3VibWVudV9fbGlua1dyYXBwZXIgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCVcbn1cblxuLnN1Ym1lbnVfX2xpbmtXcmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDEycHhcbn1cblxuLnN1Ym1lbnVfX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogIzAyNDY5MztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjdXJzb3I6IHBvaW50ZXJcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5zdWJtZW51X19saW5rIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZFxuICAgIH1cbn1cblxuLnN1Ym1lbnVfX2xpbmsgPiBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzXG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgbm90IGFsbCBhbmQgKC1tb3otdG91Y2gtZW5hYmxlZCkge1xuICAgIC5zdWJtZW51X19saW5rOmhvdmVyIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpXG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLnN1Ym1lbnVfX2xpbmsge1xuICAgICAgICBoZWlnaHQ6IDM4cHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuc3VibWVudV9fbGlua0xhYmVsRGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi5zdWJtZW51X19saW5rTGFiZWxNb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmVcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5zdWJtZW51X19saW5rTGFiZWxNb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmVcbiAgICB9XG59XG5cbi5zdWJtZW51X19kb3dubG9hZEJveCAuc3VibWVudV9fcGFyYWdyYXBoIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHhcbn1cblxuLnN1Ym1lbnVfX2J1dHRvbldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNlMmVhZjU7XG4gICAgcGFkZGluZy10b3A6IDQwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5zdWJtZW51X19idXR0b25XcmFwcGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHhcbiAgICB9XG59XG5cbi5zdWJtZW51X19saW5rc0NvbHVtbiB7XG4gICAgd2lkdGg6IDMzJVxufVxuXG4uc3VibWVudV9fbGlua3NDb2x1bW4gPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5zdWJtZW51X19saW5rc0NvbHVtbiA+ICoge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLnN1Ym1lbnVfX2xpbmtzQ29sdW1uID4gKiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuc3VibWVudV9fbGlua3NDb2x1bW4ge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5zdWJtZW51X19zcGVjaWFsQnV0dG9uV3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuc3VibWVudSAuZ3JpZFJvd1dyYXBwZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLnN1Ym1lbnUgPiAubGF5b3V0V3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmc6IDBcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuc3VibWVudSAuYWJvdXRVc1dyYXBwZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG4gICAgfVxuXG4gICAgLnN1Ym1lbnUgLmFib3V0VXNXcmFwcGVyIC5zdWJtZW51X19oZWFkaW5nIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweFxuICAgIH1cblxuICAgIC5zdWJtZW51IC5hYm91dFVzV3JhcHBlciAuc3VibWVudV9fbGlua1dyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHhcbiAgICB9XG5cbiAgICAuc3VibWVudSAuYWJvdXRVc1dyYXBwZXIgLnN1Ym1lbnVfX2xpbmtzTGlzdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDBcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5zdWJtZW51IC5hYm91dFVzV3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuc3VibWVudSAuZXh0cmFMaW5rIHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuLmFkdmFudGFnZXNTZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW5cbn1cblxuLmFkdmFudGFnZXNTZWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5hZHZhbnRhZ2VzU2VjdGlvbl9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweFxufVxuXG4uYWR2YW50YWdlc1NlY3Rpb25fX3RhYnMge1xuICAgIGRpc3BsYXk6IGZsZXhcbn1cblxuLmFkdmFudGFnZXNTZWN0aW9uX190YWJzIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjbGFtcCg0MHB4LCAzLjI2NTMwNjEyMjR2dyArIDI3Ljc1NTEwMjA0MDhweCwgODBweClcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYWR2YW50YWdlc1NlY3Rpb25fX3RhYnMge1xuICAgICAgICBkaXNwbGF5OiBibG9ja1xuICAgIH1cbn1cblxuLmFkdmFudGFnZXNTZWN0aW9uX190YWJXcmFwcGVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgZmxleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFkdmFudGFnZXNTZWN0aW9uX190YWJXcmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCVcbiAgICB9XG5cbiAgICAuYWR2YW50YWdlc1NlY3Rpb25fX3RhYldyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHhcbiAgICB9XG59XG5cbi5hZHZhbnRhZ2VzU2VjdGlvbl9fdGFiIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDE2cHhcbn1cblxuLmFkdmFudGFnZXNTZWN0aW9uX190YWI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0OTRkO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnNcbn1cblxuLmFkdmFudGFnZXNTZWN0aW9uX190YWI6aG92ZXI6OmFmdGVyLCAuYWR2YW50YWdlc1NlY3Rpb25fX3RhYi5hY3RpdmU6OmFmdGVyIHtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI0NjkzXG59XG5cbi5hZHZhbnRhZ2VzU2VjdGlvbl9fYnV0dG9uV3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxufVxuXG4uYWR2YW50YWdlc1NlY3Rpb24gLmFkdmFudGFnZUFydGljbGU6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFkdmFudGFnZXNTZWN0aW9uIC5hZHZhbnRhZ2VBcnRpY2xlOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4XG4gICAgfVxufVxuXG4uaGVyb0Nhcm91c2VsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzcwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaGVyb0Nhcm91c2VsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGluaXRpYWxcbiAgICB9XG59XG5cbi5oZXJvQ2Fyb3VzZWxfX2Nhcm91c2VsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCVcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaGVyb0Nhcm91c2VsX19jYXJvdXNlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweFxuICAgIH1cbn1cblxuLmhlcm9DYXJvdXNlbF9fc2xpZGVCYWNrZ3JvdW5kV3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5oZXJvQ2Fyb3VzZWxfX3NsaWRlQmFja2dyb3VuZFdyYXBwZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogMjIwcHhcbiAgICB9XG59XG5cbi5oZXJvQ2Fyb3VzZWxfX3NsaWRlQmFja2dyb3VuZCB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbi5oZXJvQ2Fyb3VzZWxfX3ByZUhlYWRpbmcge1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuLmhlcm9DYXJvdXNlbF9fcHJlSGVhZGluZyA+IHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNnB4XG59XG5cbi5oZXJvQ2Fyb3VzZWxfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHhcbn1cblxuLmhlcm9DYXJvdXNlbF9fcGFyYWdyYXBoIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyOHB4XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlcm9DYXJvdXNlbF9fcGFyYWdyYXBoIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweFxuICAgIH1cbn1cblxuLmhlcm9DYXJvdXNlbF9fc2xpZGVDb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAxMjBweFxufVxuXG4uaGVyb0Nhcm91c2VsX19zbGlkZUNvbnRlbnQgLmJ0biB7XG4gICAgbWFyZ2luLXRvcDogY2xhbXAoMzBweCwgMi40NDg5Nzk1OTE4dncgKyAyMC44MTYzMjY1MzA2cHgsIDYwcHgpXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlcm9DYXJvdXNlbF9fc2xpZGVDb250ZW50IC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLmhlcm9DYXJvdXNlbF9fc2xpZGVDb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogODBweFxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaGVyb0Nhcm91c2VsX19zbGlkZUNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4XG4gICAgfVxufVxuXG4uaGVyb0Nhcm91c2VsX19wYWdpbmF0aW9uV3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYm90dG9tOiAxODBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogMCBhdXRvXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC5oZXJvQ2Fyb3VzZWxfX3BhZ2luYXRpb25XcmFwcGVyIHtcbiAgICAgICAgYm90dG9tOiA4MHB4XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5oZXJvQ2Fyb3VzZWxfX3BhZ2luYXRpb25XcmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuLmhlcm9DYXJvdXNlbF9fcGFnaW5hdGlvbldyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJvdHRvbTogMTgwcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IDAgYXV0b1xufVxuXG4uaGVyb0Nhcm91c2VsX19wYWdpbmF0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3dcbn1cblxuLmhlcm9DYXJvdXNlbF9fYnVsbGV0IHtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHhcbn1cblxuLmhlcm9DYXJvdXNlbF9fYnVsbGV0LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjQ2OTNcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmhlcm9DYXJvdXNlbF9fYnVsbGV0IHtcbiAgICAgICAgd2lkdGg6IDYwcHhcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlcm9DYXJvdXNlbF9fYnVsbGV0IHtcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYmQ2ZjlcbiAgICB9XG59XG5cbi5oZXJvQ2Fyb3VzZWxfX2J0biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbWFyZ2luLXRvcDogLTI1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDFcbn1cblxuLmhlcm9DYXJvdXNlbF9fYnRuLmhlcm9DYXJvdXNlbF9fYnRuLS1wcmV2IHtcbiAgICBsZWZ0OiA0MHB4XG59XG5cbi5oZXJvQ2Fyb3VzZWxfX2J0bi5oZXJvQ2Fyb3VzZWxfX2J0bi0tbmV4dCB7XG4gICAgcmlnaHQ6IDQwcHhcbn1cblxuLmhlcm9DYXJvdXNlbF9fbmF2aWdhdGlvbldyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IDAgYXV0b1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuaGVyb0Nhcm91c2VsX19uYXZpZ2F0aW9uV3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi5oZXJvQ2Fyb3VzZWwgLnN3aXBlci1zbGlkZSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveFxufVxuXG4uaGVyb0Nhcm91c2VsIC5zd2lwZXItc2xpZGUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3hcbn1cblxuLmxvZ29XYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmOGZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyXG59XG5cbi5sb2dvV2FsbCB7XG4gICAgcGFkZGluZy10b3A6IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5sb2dvV2FsbF9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXJcbn1cblxuLmxvZ29XYWxsX19pbWFnZVdyYXBwZXIge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyXG59XG5cbi5sb2dvV2FsbF9faW1hZ2VXcmFwcGVyIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW5cbn1cblxuLmxvZ29XYWxsIC5sYXlvdXRXcmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJVxufVxuXG4ubG9nb1dhbGxfX3BhZ2luYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBtYXJnaW46IDUwcHggYXV0byAwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyXG59XG5cbi5sb2dvV2FsbF9fY2Fyb3VzZWxfX2J1bGxldCB7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYmQ2Zjk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweFxufVxuXG4ubG9nb1dhbGxfX2Nhcm91c2VsX19idWxsZXQuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAyNDY5M1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAubG9nb1dhbGxfX2Nhcm91c2VsX19idWxsZXQge1xuICAgICAgICB3aWR0aDogNjBweFxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubG9nb1dhbGxfX2Nhcm91c2VsX19idWxsZXQge1xuICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NiZDZmOVxuICAgIH1cbn1cblxuLnNlY3Rpb25IZWFkZXJfX3N0cmFwbGluZSB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHhcbn1cblxuLnNlY3Rpb25IZWFkZXJfX2hlYWRpbmc6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweFxufVxuXG4uc2VjdGlvbkhlYWRlcl9faGVhZGluZzpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjbGFtcCgzMHB4LCAxLjYzMjY1MzA2MTJ2dyArIDIzLjg3NzU1MTAyMDRweCwgNTBweClcbn1cblxuLnNlY3Rpb25IZWFkZXJfX2FkZGl0aW9uYWxJbmZvIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4ycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4XG59XG5cbi5zZWN0aW9uSGVhZGVyX19hZGRpdGlvbmFsSW5mb1NlcGFyYXRvciA+IHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4XG59XG5cbi5zZWN0aW9uSGVhZGVyX19hZGRpdGlvbmFsSW5mb0xvY2F0aW9uID4gc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHhcbn1cblxuLmxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICMwMjQ2OTNcbn1cblxuLmxpbmsgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzXG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgbm90IGFsbCBhbmQgKC1tb3otdG91Y2gtZW5hYmxlZCkge1xuICAgIC5saW5rOmhvdmVyIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpXG4gICAgfVxufVxuXG4ubGlua0ludmVydGVkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmXG59XG5cbi5saW5rSW52ZXJ0ZWQgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzXG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgbm90IGFsbCBhbmQgKC1tb3otdG91Y2gtZW5hYmxlZCkge1xuICAgIC5saW5rSW52ZXJ0ZWQ6aG92ZXIgc3ZnIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweClcbiAgICB9XG59XG5cbi5xdW90YXRpb25fX2F1dGhvciB7XG4gICAgbWFyZ2luLXRvcDogMTVweFxufVxuXG4uYXJ0aWNsZUNhcmRfX3ByZUhlYWRlciB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4XG59XG5cbi5hcnRpY2xlQ2FyZF9fcHJlSGVhZGVyID4gc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHhcbn1cblxuLmFydGljbGVDYXJkX19wcmVIZWFkZXJQaW4ge1xuICAgIG1hcmdpbi1yaWdodDogMTJweFxufVxuXG4uYXJ0aWNsZUNhcmRfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4XG59XG5cbi5hcnRpY2xlQ2FyZCAubGluayB7XG4gICAgbWFyZ2luLXRvcDogMzBweFxufVxuXG4udHdvSXRlbXNDYXJvdXNlbCB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweFxufVxuXG4udHdvSXRlbXNDYXJvdXNlbF9fY2Fyb3VzZWwge1xuICAgIG92ZXJmbG93OiBoaWRkZW5cbn1cblxuLnR3b0l0ZW1zQ2Fyb3VzZWxfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHhcbn1cblxuLnR3b0l0ZW1zQ2Fyb3VzZWxfX25hdldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlclxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLnR3b0l0ZW1zQ2Fyb3VzZWxfX25hdldyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgfVxufVxuXG4udHdvSXRlbXNDYXJvdXNlbCAuY2Fyb3VzZWxQYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiA0NnB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyXG59XG5cbi50d29JdGVtc0Nhcm91c2VsIC5idXR0b25zV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuLnR3b0l0ZW1zQ2Fyb3VzZWwgLmJ1dHRvbnNXcmFwcGVyID4gKiB7XG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgd2lkdGg6IDMwMHB4XG59XG5cbi5jYXJvdXNlbFBhZ2luYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC01cHhcbn1cblxuLmNhcm91c2VsUGFnaW5hdGlvbiA+ICoge1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBtaW4td2lkdGg6IDgwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcm91c2VsUGFnaW5hdGlvbiA+ICoge1xuICAgICAgICBtaW4td2lkdGg6IDI0cHg7XG4gICAgICAgIG1hcmdpbjogMCAzcHhcbiAgICB9XG59XG5cbi5jYXJvdXNlbFBhZ2luYXRpb24gPiAqLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjQ2OTNcbn1cblxuLmNhcm91c2VsUGFnaW5hdGlvbi5jYXJvdXNlbFBhZ2luYXRpb24tLW9uV2hpdGUgPiAqIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2JkNmY5XG59XG5cbi5jYXJvdXNlbFBhZ2luYXRpb24uY2Fyb3VzZWxQYWdpbmF0aW9uLS1vbldoaXRlID4gKi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI0NjkzXG59XG5cbi5jYXJvdXNlbE5hdkJ1dHRvbiB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXJcbn1cblxuLmluZGV4UGFnaW5hdG9yIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4ycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlclxufVxuXG4uaW5kZXhQYWdpbmF0b3JfX2N1cnJlbnRTbGlkZXJWaWV3SW5kZXgge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodFxufVxuXG4uaW5kZXhQYWdpbmF0b3JfX3RvdGFsU2xpZGVyVmlld3NOdW1iZXIge1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrXG59XG5cbi5pbmRleFBhZ2luYXRvciBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweFxufVxuXG4uc3RvcnlDYXJkIHtcbiAgICBoZWlnaHQ6IDYyMHB4XG59XG5cbi5zdG9yeUNhcmRfX3dpdGhvdXRJbWFnZSB7XG4gICAgbWF4LWhlaWdodDogMzYwcHggIWltcG9ydGFudFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gICAgLnN0b3J5Q2FyZCB7XG4gICAgICAgIGhlaWdodDogYXV0b1xuICAgIH1cbn1cblxuLnN0b3J5Q2FyZF9faW1hZ2VXcmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmOGZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiA2MiU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG59XG5cbi5zdG9yeUNhcmRfX2ltYWdlIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbi5zdG9yeUNhcmRfX3RleHRXcmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGhlaWdodDogMzIwcHg7XG4gICAgcGFkZGluZzogNDBweCA0MHB4IDAgNDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDQwcHg7XG4gICAgcmlnaHQ6IDBcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAgIC5zdG9yeUNhcmRfX3RleHRXcmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDAgMjBweFxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAgIC5zdG9yeUNhcmRfX3RleHRXcmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvXG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc3RvcnlDYXJkX190ZXh0V3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLnN0b3J5Q2FyZF9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIycHhcbiAgICB9XG59XG5cbi5zdG9yeUNhcmRfX2Fic3RyYWN0IHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5zdG9yeUNhcmRfX2Fic3RyYWN0IHtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlblxuICAgIH1cbn1cblxuLnN0b3J5Q2FyZF9fYWJzdHJhY3QgdWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMS4yZW1cbn1cblxuLnN0b3J5Q2FyZF9fYWJzdHJhY3QgdWwgbGk6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMFxufVxuXG4uc3RvcnlDYXJkSW52ZXJ0ZWQge1xuICAgIGNvbG9yOiAjMDQxYTMyXG59XG5cbi5hY2NvcmRpb24ge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjOGU5MTk1XG59XG5cbi5hY2NvcmRpb25fX3N1bW1hcnkge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnRcbn1cblxuLmFjY29yZGlvbl9fc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgZGlzcGxheTogbm9uZVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYWNjb3JkaW9uX19zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4XG4gICAgfVxufVxuXG4uYWNjb3JkaW9uX19tYXJrZXIge1xuICAgIGhlaWdodDogNDBweDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI0NjkzO1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMDI0NjkzO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZlxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYWNjb3JkaW9uX19tYXJrZXIge1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHhcbiAgICB9XG59XG5cbi5hY2NvcmRpb25fX21hcmtlcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiK1wiXG59XG5cbi5hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogNzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYWNjb3JkaW9uX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1NnB4XG4gICAgfVxufVxuXG4uYWNjb3JkaW9uX19jb250ZW50IHAgKyAubGlua0V4dGVybmFsIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4XG59XG5cbi5hY2NvcmRpb25fX2NvbnRlbnQgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvXG59XG5cbi5hY2NvcmRpb25fX2NvbnRlbnQgYSB7XG4gICAgY29sb3I6ICMwMjQ2OTM7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlclxufVxuXG4uYWNjb3JkaW9uW29wZW5dIC5hY2NvcmRpb25fX21hcmtlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICMwMjQ2OTNcbn1cblxuLmFjY29yZGlvbltvcGVuXSAuYWNjb3JkaW9uX19tYXJrZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIi1cIlxufVxuXG4uYWNjb3JkaW9uSW52ZXJ0ZWQge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZmZmXG59XG5cbi5hY2NvcmRpb25JbnZlcnRlZF9fc3VtbWFyeSB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudFxufVxuXG4uYWNjb3JkaW9uSW52ZXJ0ZWRfX3N1bW1hcnk6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICAgIGRpc3BsYXk6IG5vbmVcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFjY29yZGlvbkludmVydGVkX19zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4XG4gICAgfVxufVxuXG4uYWNjb3JkaW9uSW52ZXJ0ZWRfX21hcmtlciB7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNmZmY7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiAjMDI0NjkzXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5hY2NvcmRpb25JbnZlcnRlZF9fbWFya2VyIHtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4XG4gICAgfVxufVxuXG4uYWNjb3JkaW9uSW52ZXJ0ZWRfX21hcmtlcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiK1wiXG59XG5cbi5hY2NvcmRpb25JbnZlcnRlZF9fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiA3MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5hY2NvcmRpb25JbnZlcnRlZF9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNTZweFxuICAgIH1cbn1cblxuLmFjY29yZGlvbkludmVydGVkX19jb250ZW50IHAgfiAubGlua0V4dGVybmFsIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGNvbG9yOiAjZmZmXG59XG5cbi5hY2NvcmRpb25JbnZlcnRlZF9fY29udGVudCBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG9cbn1cblxuLmFjY29yZGlvbkludmVydGVkX19jb250ZW50IGEsIC5hY2NvcmRpb25JbnZlcnRlZF9fY29udGVudCBhLmxpbmtFeHRlcm5hbEljb24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZVxufVxuXG4uYWNjb3JkaW9uSW52ZXJ0ZWRfX2NvbnRlbnQgYSBzdmcgcGF0aCwgLmFjY29yZGlvbkludmVydGVkX19jb250ZW50IGEubGlua0V4dGVybmFsSWNvbiBzdmcgcGF0aCB7XG4gICAgc3Ryb2tlOiAjZmZmXG59XG5cbi5hY2NvcmRpb25JbnZlcnRlZFtvcGVuXSAuYWNjb3JkaW9uSW52ZXJ0ZWRfX21hcmtlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICNmZmZcbn1cblxuLmFjY29yZGlvbkludmVydGVkW29wZW5dIC5hY2NvcmRpb25JbnZlcnRlZF9fbWFya2VyOjphZnRlciB7XG4gICAgY29udGVudDogXCItXCJcbn1cblxuLmZ1bmRpbmdQb3J0YWxTdGVwQ2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG59XG5cbi5mdW5kaW5nUG9ydGFsU3RlcENhcmRfX2lsbHVzdHJhdGlvbldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZlxufVxuXG4uZnVuZGluZ1BvcnRhbFN0ZXBDYXJkX19kZXNjcmlwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0b3A6IGNhbGMoMTAwJSArIDMwcHgpXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mdW5kaW5nUG9ydGFsU3RlcENhcmRfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4XG4gICAgfVxufVxuXG4uZnVuZGluZ1BvcnRhbFN0ZXBDYXJkX19jb3VudGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4XG59XG5cbi50ZXh0QmxvY2sge1xuICAgIG1hcmdpbi10b3A6IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweClcbn1cblxuLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJVxufVxuXG4udGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyIGZpZ3VyZSB7XG4gICAgbWFyZ2luLXRvcDogMmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJlbVxufVxuXG4udGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyIGZpZ3VyZSBpbWcucmljaHRleHQtaW1hZ2Uge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG9cbn1cblxuLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciBmaWd1cmUgaW1nLnJpY2h0ZXh0LWltYWdlLmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMTBweCAxMHB4IDEwcHggMFxufVxuXG4udGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyIGZpZ3VyZSBpbWcucmljaHRleHQtaW1hZ2UucmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IDEwcHggMCAxMHB4IDEwcHhcbn1cblxuLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciBmaWd1cmUgaW1nLnJpY2h0ZXh0LWltYWdlLmZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHhcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICAudGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyIGZpZ3VyZSBpbWcucmljaHRleHQtaW1hZ2UubGVmdCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG9cbiAgICB9XG5cbiAgICAudGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyIGZpZ3VyZSBpbWcucmljaHRleHQtaW1hZ2UucmlnaHQge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMTBweCBhdXRvXG4gICAgfVxufVxuXG4udGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyIGEge1xuICAgIGNvbG9yOiAjMDI0NjkzO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuLnRleHRCbG9jayBoMiArIHAge1xuICAgIG1hcmdpbi10b3A6IGNsYW1wKDIwcHgsIDEuNjMyNjUzMDYxMnZ3ICsgMTMuODc3NTUxMDIwNHB4LCA0MHB4KVxufVxuXG4udGV4dEJsb2NrIGgzICsgcCB7XG4gICAgbWFyZ2luLXRvcDogMjBweFxufVxuXG4udGV4dEJsb2NrIHAge1xuICAgIG92ZXJmbG93OiBhdXRvXG59XG5cbi50ZXh0QmxvY2sgcCArIHAsIC50ZXh0QmxvY2sgcCArIHVsLCAudGV4dEJsb2NrIHAgKyBvbCB7XG4gICAgbWFyZ2luLXRvcDogY2xhbXAoMjRweCwgMS4zMDYxMjI0NDl2dyArIDE5LjEwMjA0MDgxNjNweCwgNDBweClcbn1cblxuLnRleHRCbG9jayBwICsgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luLXRvcDogY2xhbXAoMzBweCwgMS42MzI2NTMwNjEydncgKyAyMy44Nzc1NTEwMjA0cHgsIDUwcHgpXG59XG5cbi50ZXh0QmxvY2sgcCArIGgyIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4XG59XG5cbi50ZXh0QmxvY2sgcCArIGgyIHtcbiAgICBtYXJnaW4tdG9wOiBjbGFtcCg0MHB4LCAzLjI2NTMwNjEyMjR2dyArIDI3Ljc1NTEwMjA0MDhweCwgODBweClcbn1cblxuLnRleHRCbG9jayBwICsgaDMge1xuICAgIG1hcmdpbi10b3A6IGNsYW1wKDI0cHgsIDEuMzA2MTIyNDQ5dncgKyAxOS4xMDIwNDA4MTYzcHgsIDQwcHgpXG59XG5cbi50ZXh0QmxvY2sgdWwgKyBwLCAudGV4dEJsb2NrIG9sICsgcCB7XG4gICAgbWFyZ2luLXRvcDogY2xhbXAoMjRweCwgMS4zMDYxMjI0NDl2dyArIDE5LjEwMjA0MDgxNjNweCwgNDBweClcbn1cblxuLnRleHRCbG9jayB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlXG59XG5cbi50ZXh0QmxvY2sgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGF1dG9cbn1cblxuLnRleHRCbG9jayBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMzBweFxufVxuXG4udGV4dEJsb2NrIGxpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNS4xMDcnIGhlaWdodD0nMTMuODk1JyB2aWV3Qm94PScwIDAgMTUuMTA3IDEzLjg5NSclM0UlM0NnIGlkPSdHcnVwcGVfMTc4MicgZGF0YS1uYW1lPSdHcnVwcGUgMTc4MicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMi4xMDcgMi4xMDcpJyUzRSUzQ3BhdGggaWQ9J1BmYWRfMzQxNycgZGF0YS1uYW1lPSdQZmFkIDM0MTcnIGQ9J004NTUuNzQsMzA0Ny43NzJsMy40NTQsNC4zNTMsNy40MzktOS4zNzQnIHRyYW5zZm9ybT0ndHJhbnNsYXRlKC04NTUuNzQgLTMwNDIuNzUxKScgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwMjQ2OTMnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9nJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAxM3B4O1xuICAgIGhlaWdodDogMTNweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGVmdDogMHB4O1xuICAgIHRvcDogN3B4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxufVxuXG4udGV4dEJsb2NrIG9sIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlXG59XG5cbi50ZXh0QmxvY2sgYmxvY2txdW90ZSArIHAge1xuICAgIG1hcmdpbi10b3A6IDUwcHhcbn1cblxuLnRleHRCbG9jayBkaXYudGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlclxufVxuXG4udGV4dEJsb2NrIHNwYW4udGV4dC1zbWFsbCB7XG4gICAgZm9udC1zaXplOiAxNnB4XG59XG5cbi50ZXh0QmxvY2sgaHIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuXG59XG5cbi50ZXh0QmxvY2sgaHI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4ZTkxOTU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJVxufVxuXG4udGV4dEJsb2NrIC5yZXNwb25zaXZlLW9iamVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMFxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC50ZXh0QmxvY2sgLnJlc3BvbnNpdmUtb2JqZWN0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMSAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC50ZXh0QmxvY2sgLnJlc3BvbnNpdmUtb2JqZWN0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDU1JVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMXB4KWFuZCAobWF4LXdpZHRoOiAxMzAwcHgpIHtcbiAgICAudGV4dEJsb2NrIC5yZXNwb25zaXZlLW9iamVjdCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1NSU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0xMCVcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDFweCkge1xuICAgIC50ZXh0QmxvY2sgLnJlc3BvbnNpdmUtb2JqZWN0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDU1JTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTE2JVxuICAgIH1cbn1cblxuLnRleHRCbG9jayAucmVzcG9uc2l2ZS1vYmplY3QgaWZyYW1lLCAudGV4dEJsb2NrIC5yZXNwb25zaXZlLW9iamVjdCBvYmplY3QsIC50ZXh0QmxvY2sgLnJlc3BvbnNpdmUtb2JqZWN0IHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDBcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLnRleHRCbG9jayAucmVzcG9uc2l2ZS1vYmplY3QgaWZyYW1lLCAudGV4dEJsb2NrIC5yZXNwb25zaXZlLW9iamVjdCBvYmplY3QsIC50ZXh0QmxvY2sgLnJlc3BvbnNpdmUtb2JqZWN0IHZpZGVvIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwIC8gMTIgKiAxMDAlKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAgLyAxMiAqIDEwMCUpXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAxcHgpYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAgIC50ZXh0QmxvY2sgLnJlc3BvbnNpdmUtb2JqZWN0IGlmcmFtZSwgLnRleHRCbG9jayAucmVzcG9uc2l2ZS1vYmplY3Qgb2JqZWN0LCAudGV4dEJsb2NrIC5yZXNwb25zaXZlLW9iamVjdCB2aWRlbyB7XG4gICAgICAgIGhlaWdodDogY2FsYyg4IC8gMTIgKiAxMDAlKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoOCAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDFweCkge1xuICAgIC50ZXh0QmxvY2sgLnJlc3BvbnNpdmUtb2JqZWN0IGlmcmFtZSwgLnRleHRCbG9jayAucmVzcG9uc2l2ZS1vYmplY3Qgb2JqZWN0LCAudGV4dEJsb2NrIC5yZXNwb25zaXZlLW9iamVjdCB2aWRlbyB7XG4gICAgICAgIGhlaWdodDogY2FsYyg2IC8gMTIgKiAxMDAlKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoNiAvIDEyICogMTAwJSlcbiAgICB9XG59XG5cbi5yZXByZXNlbnRhdGl2ZUNhcmQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvd1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLnJlcHJlc2VudGF0aXZlQ2FyZCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW5cbiAgICB9XG59XG5cbi5yZXByZXNlbnRhdGl2ZUNhcmRfX2ltYWdlV3JhcHBlciB7XG4gICAgaGVpZ2h0OiAxMjBweDtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmxleC1zaHJpbms6IDBcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5yZXByZXNlbnRhdGl2ZUNhcmRfX2ltYWdlV3JhcHBlciB7XG4gICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgd2lkdGg6IDkwcHhcbiAgICB9XG59XG5cbi5yZXByZXNlbnRhdGl2ZUNhcmRfX2ltYWdlIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLnJlcHJlc2VudGF0aXZlQ2FyZF9faW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAucmVwcmVzZW50YXRpdmVDYXJkX19pbmZvIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHhcbiAgICB9XG59XG5cbi5yZXByZXNlbnRhdGl2ZUNhcmRfX2luZm8gPiAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyXG59XG5cbi5yZXByZXNlbnRhdGl2ZUNhcmRfX2luZm8gPiAqIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHhcbn1cblxuLnJlcHJlc2VudGF0aXZlQ2FyZF9fbmFtZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMFxufVxuXG4ucmVwcmVzZW50YXRpdmVDYXJkX19vcGVuSG91cnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDMwcHhcbn1cblxuLmJ1dHRvbldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuLmRvd25sb2Fkc0xpc3RfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4XG59XG5cbi5kb3dubG9hZHNMaXN0X19pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZDFkMWQxXG59XG5cbi5kb3dubG9hZHNMaXN0X19pdGVtTmFtZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB3aWR0aDogNzAlXG59XG5cbi5kb3dubG9hZHNMaXN0X19pdGVtU2l6ZSB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgIGNvbG9yOiAjMDI0NjkzO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0b1xufVxuXG4uZG93bmxvYWRzTGlzdF9fbGluayB7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxufVxuXG4uZG93bmxvYWRzTGlzdF9fbGluayBzdmcgLmFycm93IHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzXG59XG5cbi5kb3dubG9hZHNMaXN0X19saW5rOmhvdmVyIHN2ZyA+IC5hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweClcbn1cblxuLmRvd25sb2Fkc0xpc3RfX3dyYXBwZXIge1xuICAgIHdpZHRoOiAzMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5kb3dubG9hZHNMaXN0X193cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtblxuICAgIH1cblxuICAgIC5kb3dubG9hZHNMaXN0X19pdGVtTmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweCAhaW1wb3J0YW50O1xuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmRcbiAgICB9XG5cbiAgICAuZG93bmxvYWRzTGlzdF9faXRlbVNpemUge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50XG4gICAgfVxufVxuXG4ubGlua0V4dGVybmFsIHtcbiAgICBjb2xvcjogIzAyNDY5MztcbiAgICBkaXNwbGF5OiBpbmxpbmVcbn1cblxuLmxpbmtFeHRlcm5hbCBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yc1xufVxuXG4ubGlua0V4dGVybmFsOmhvdmVyIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnB4LCAtMnB4KVxufVxuXG4ubGlua0V4dGVybmFsX2ludmVydGVkIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBpbmxpbmVcbn1cblxuLmxpbmtFeHRlcm5hbF9pbnZlcnRlZCBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yc1xufVxuXG4ubGlua0V4dGVybmFsX2ludmVydGVkOmhvdmVyIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnB4LCAtMnB4KVxufVxuXG5hLmxpbmtFeHRlcm5hbEljb24ge1xuICAgIGNvbG9yOiAjMDI0NjkzO1xuICAgIGRpc3BsYXk6IGlubGluZVxufVxuXG5hLmxpbmtFeHRlcm5hbEljb24gc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDUuNHB4O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnNcbn1cblxuYS5saW5rRXh0ZXJuYWxJY29uOmhvdmVyIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnB4LCAtMnB4KVxufVxuXG4uZm9ybV9faW5wdXRXcmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mb3JtX19pbnB1dFdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4XG4gICAgfVxufVxuXG4uZm9ybV9faW5wdXRMYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBkaXNwbGF5OiBibG9ja1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZm9ybV9faW5wdXRMYWJlbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRweFxuICAgIH1cbn1cblxuLmZvcm1fX3N1Y2Nlc3NJbnB1dExhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjZDBlMDBlXG59XG5cbi5mb3JtX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIG1hcmdpbi10b3A6IDgwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmZvcm1fX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4XG4gICAgfVxufVxuXG4uZm9ybV9fY29udGVudFdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAtMTVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwXG59XG5cbi5mb3JtX19pdGVtV3JhcHBlciB7XG4gICAgcGFkZGluZzogMCAxNXB4XG59XG5cbi5mb3JtX19pdGVtV3JhcHBlci5mb3JtX19pdGVtV3JhcHBlci0taGFsZiB7XG4gICAgd2lkdGg6IDUwJVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZm9ybV9faXRlbVdyYXBwZXIuZm9ybV9faXRlbVdyYXBwZXItLWhhbGYge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuLmZvcm1fX3JhZGlvR3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvd1xufVxuXG4uZm9ybSBsZWdlbmQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZGlzcGxheTogYmxvY2tcbn1cblxuLmZvcm0gaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG59XG5cbi5mb3JtIGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICMwMjQ2OTM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4XG59XG5cbi5mb3JtIGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWw6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxNXB4O1xuICAgIHRvcDogMTVweDtcbiAgICBtYXJnaW4tbGVmdDogLTExcHg7XG4gICAgbWFyZ2luLXRvcDogLTExcHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAjMDI0NjkzO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4yc1xufVxuXG4uZm9ybSBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWw6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpXG59XG5cbi5mb3JtIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogMXB4XG59XG5cbi5mb3JtIGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmVcbn1cblxuLmZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF0gKyBsYWJlbCBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZVxufVxuXG4uZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDZweDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSBjdWJpYy1iZXppZXIoMC4yNSwgMC4xLCAwLjU3LCAxLjMzKSAuMnNcbn1cblxuLmZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF0gKyBsYWJlbDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMDI0NjkzO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBvcGFjaXR5OiAuMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycztcbiAgICBmbGV4LXNocmluazogMFxufVxuXG4uZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDFcbn1cblxuLmZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKVxufVxuXG4uZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMVxufVxuXG4uZm9ybSB0ZXh0YXJlYSwgLmZvcm0gaW5wdXRbdHlwZT10ZXh0XSwgLmZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sIC5mb3JtIGlucHV0W3R5cGU9dGVsXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggcmdiYSgyLCA3MCwgMTQ3LCAuMSk7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mb3JtIHRleHRhcmVhLCAuZm9ybSBpbnB1dFt0eXBlPXRleHRdLCAuZm9ybSBpbnB1dFt0eXBlPWVtYWlsXSwgLmZvcm0gaW5wdXRbdHlwZT10ZWxdIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHhcbiAgICB9XG59XG5cbi5mb3JtIHRleHRhcmVhOm5vdCg6cmVxdWlyZWQpICsgbGFiZWw6OmFmdGVyLCAuZm9ybSBpbnB1dFt0eXBlPXRleHRdOm5vdCg6cmVxdWlyZWQpICsgbGFiZWw6OmFmdGVyLCAuZm9ybSBpbnB1dFt0eXBlPWVtYWlsXTpub3QoOnJlcXVpcmVkKSArIGxhYmVsOjphZnRlciwgLmZvcm0gaW5wdXRbdHlwZT10ZWxdOm5vdCg6cmVxdWlyZWQpICsgbGFiZWw6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIm9wdGlvbmFsXCI7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzhlOTE5NTtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsZXR0ZXItc3BhY2luZzogMFxufVxuXG4uZm9ybSB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC5mb3JtIGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyLCAuZm9ybSBpbnB1dFt0eXBlPWVtYWlsXTo6cGxhY2Vob2xkZXIsIC5mb3JtIGlucHV0W3R5cGU9dGVsXTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjOGU5MTk1XG59XG5cbi5mb3JtIHRleHRhcmVhOmZvY3VzLCAuZm9ybSBpbnB1dFt0eXBlPXRleHRdOmZvY3VzLCAuZm9ybSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cywgLmZvcm0gaW5wdXRbdHlwZT10ZWxdOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwMjQ2OTNcbn1cblxuLmZvcm0gdGV4dGFyZWEge1xuICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxN3B4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mb3JtIHRleHRhcmVhIHtcbiAgICAgICAgbWluLWhlaWdodDogMTgwcHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mb3JtIC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuLmZvcm1fX2NhcHRjaGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgY29sdW1uLWdhcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4XG59XG5cbi5mb3JtX19jYXB0Y2hhIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvcmRlcjogMVxufVxuXG4uZm9ybV9fY2FwdGNoYSBpbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpICFpbXBvcnRhbnQ7XG4gICAgb3JkZXI6IDJcbn1cblxuLmZvcm1fX2NhcHRjaGEgaW1nIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3JkZXI6IDNcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmZvcm1fX2NhcHRjaGEgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiA1MHB4XG4gICAgfVxufVxuXG4uZm9ybV9fY2FwdGNoYSBhIHtcbiAgICBvcmRlcjogMztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZFxufVxuXG4uZm9ybV9fY2FwdGNoYSAuZXJyb3JsaXN0IHtcbiAgICBvcmRlcjogNFxufVxuXG4uZm9ybSAuZXJyb3JsaXN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgZm9udC1mYW1pbHk6IFwiYnJhbmRvbi1ncm90ZXNxdWVcIiwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogcmVkXG59XG5cbi5jb21wYW55SW5mbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuY29tcGFueUluZm8ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4XG4gICAgfVxufVxuXG4uY29tcGFueUluZm9fX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHhcbn1cblxuLmNvbXBhbnlJbmZvX19hZGRyZXNzIHtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjZweFxufVxuXG4uY29tcGFueUluZm9fX2FkZHJlc3MgYSB7XG4gICAgY29sb3I6ICMwMjQ2OTM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmVcbn1cblxuLmd1YXJhbnRlZU9wdGlvbnNMaXN0IHtcbiAgICBtYXJnaW46IDAgLTE1cHggLTQwcHggLTE1cHg7XG4gICAgZmxleC13cmFwOiB3cmFwXG59XG5cbi5ndWFyYW50ZWVPcHRpb25zTGlzdF9faXRlbVdyYXBwZXIge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmd1YXJhbnRlZU9wdGlvbnNMaXN0X19pdGVtV3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxufVxuXG4uZ3VhcmFudGVlT3B0aW9uQ2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY4ZmU7XG4gICAgcGFkZGluZzogNDBweCA2MHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5ndWFyYW50ZWVPcHRpb25DYXJkIHtcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4XG4gICAgfVxufVxuXG4uZ3VhcmFudGVlT3B0aW9uQ2FyZF9fc2lnbmV0V3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuZ3VhcmFudGVlT3B0aW9uQ2FyZF9fc2lnbmV0V3JhcHBlciBzdmcge1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvXG4gICAgfVxufVxuXG4uZ3VhcmFudGVlT3B0aW9uQ2FyZF9faGVhZGluZyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuZ3VhcmFudGVlT3B0aW9uQ2FyZF9faGVhZGluZyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuZ3VhcmFudGVlT3B0aW9uQ2FyZF9fbGlzdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweFxuICAgIH1cbn1cblxuLmd1YXJhbnRlZU9wdGlvbkNhcmRfX2xpc3RJdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjNDQ0OTRkXG59XG5cbi5ndWFyYW50ZWVPcHRpb25DYXJkX19saXN0SXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuZ3VhcmFudGVlT3B0aW9uQ2FyZF9fbGlzdEl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5ndWFyYW50ZWVPcHRpb25DYXJkX19saXN0SXRlbSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzJweFxuICAgIH1cbn1cblxuLmd1YXJhbnRlZU9wdGlvbkNhcmRfX2xpc3RCdWxsZXRXcmFwcGVyIHtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZ3VhcmFudGVlT3B0aW9uQ2FyZF9fbGlzdEJ1bGxldFdyYXBwZXIgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogYXV0b1xuICAgIH1cbn1cblxuLmd1YXJhbnRlZU9wdGlvbkNhcmRfX2J1dHRvbldyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogNDVweDtcbiAgICBtYXJnaW4tdG9wOiA2MHB4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuZ3VhcmFudGVlT3B0aW9uQ2FyZF9fYnV0dG9uV3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5ndWFyYW50ZWVPcHRpb25DYXJkX19idXR0b25XcmFwcGVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4XG4gICAgfVxufVxuXG4ucGVyc29uRG9jdW1lbnQge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveFxufVxuXG4ucGVyc29uRG9jdW1lbnRfX2ltYWdlV3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDExNSU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweFxufVxuXG4ucGVyc29uRG9jdW1lbnRfX2ltYWdlV3JhcHBlciBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXJcbn1cblxuLmRvd25sb2FkTGluayB7XG4gICAgY29sb3I6ICMwMjQ2OTM7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlclxufVxuXG4uZG93bmxvYWRMaW5rIHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHhcbn1cblxuLmRvd25sb2FkTGluayBzdmcgLmFycm93IHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzXG59XG5cbi5kb3dubG9hZExpbms6aG92ZXIgc3ZnID4gLmFycm93IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KVxufVxuXG4uaGlzdG9yeUFydGljbGUuaGlzdG9yeUFydGljbGUtLXJldmVyc2VPcmRlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuaGlzdG9yeUFydGljbGUge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnRcbiAgICB9XG59XG5cbi5oaXN0b3J5QXJ0aWNsZS5oaXN0b3J5QXJ0aWNsZS0tb25lQ29sIC5oaXN0b3J5QXJ0aWNsZV9fY29udGVudCwgLmhpc3RvcnlBcnRpY2xlLmhpc3RvcnlBcnRpY2xlLS1vbmVDb2wgLmhpc3RvcnlBcnRpY2xlX19maWd1cmUge1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbi5oaXN0b3J5QXJ0aWNsZV9fY29udGVudCwgLmhpc3RvcnlBcnRpY2xlX19maWd1cmVzIHtcbiAgICB3aWR0aDogNTAlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuaGlzdG9yeUFydGljbGVfX2NvbnRlbnQsIC5oaXN0b3J5QXJ0aWNsZV9fZmlndXJlcyB7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxufVxuXG4uaGlzdG9yeUFydGljbGVfX2NvbnRlbnQgLmxpbmssIC5oaXN0b3J5QXJ0aWNsZV9fZmlndXJlcyAubGluayB7XG4gICAgbWFyZ2luLXRvcDogMjBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmhpc3RvcnlBcnRpY2xlX19maWd1cmVzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweFxuICAgIH1cbn1cblxuLmhpc3RvcnlBcnRpY2xlX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4XG59XG5cbi5oaXN0b3J5QXJ0aWNsZV9fdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4XG59XG5cbi5oaXN0b3J5QXJ0aWNsZV9fZGF0ZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2tcbn1cblxuLmhpc3RvcnlBcnRpY2xlX190ZXh0IHAgKyBwLCAuaGlzdG9yeUFydGljbGVfX3RleHQgcCArIGVtLCAuaGlzdG9yeUFydGljbGVfX3RleHQgcCArIHVsIHtcbiAgICBtYXJnaW4tdG9wOiAxZW1cbn1cblxuLmhpc3RvcnlBcnRpY2xlX190ZXh0IGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lXG59XG5cbi5oaXN0b3J5QXJ0aWNsZV9fdGV4dCBlbSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogI2E2OGI0ZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrXG59XG5cbi5oaXN0b3J5QXJ0aWNsZV9fdGV4dCB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlXG59XG5cbi5oaXN0b3J5QXJ0aWNsZV9fdGV4dCB1bCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW1cbn1cblxuLmhpc3RvcnlBcnRpY2xlX190ZXh0ICsgLmhpc3RvcnlBcnRpY2xlX19kYXRlIHtcbiAgICBtYXJnaW4tdG9wOiAxZW1cbn1cblxuLmhpc3RvcnlBcnRpY2xlX19sb2dvc1dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLXRvcDogMjBweFxufVxuXG4uaGlzdG9yeUFydGljbGVfX2xvZ29JdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtaGVpZ2h0OiA5MHB4XG59XG5cbi5oaXN0b3J5QXJ0aWNsZV9fbG9nb0l0ZW0gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJVxufVxuXG4uaGlzdG9yeUFydGljbGVfX2ZpZ3VyZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtblxufVxuXG4uaGlzdG9yeUFydGljbGVfX2ZpZ3VyZXM6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweFxufVxuXG4uaGlzdG9yeUFydGljbGVfX2ltYWdlV3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuaGlzdG9yeUFydGljbGVfX2ltYWdlV3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxufVxuXG4uaGlzdG9yeUFydGljbGVfX2ltYWdlV3JhcHBlcjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogMzBweFxufVxuXG4uaGlzdG9yeUFydGljbGVfX2ltYWdlV3JhcHBlciBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9ja1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmhpc3RvcnlBcnRpY2xlX19pbWFnZVdyYXBwZXIgaW1nIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0b1xuICAgIH1cbn1cblxuLmhpc3RvcnlBcnRpY2xlX19maWd1cmVEZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMTBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmhpc3RvcnlBcnRpY2xlX19maWd1cmVEZXNjcmlwdGlvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlclxuICAgIH1cbn1cblxuLnRpbWVTdGFtcCB7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICAgIHdpZHRoOiA5MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2E2OGI0ZjtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgY29sb3I6ICNhNjhiNGY7XG4gICAgZm9udC1mYW1pbHk6IFwiYnJhbmRvbi1ncm90ZXNxdWVcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZVxufVxuXG4udGltZVN0YW1wLnRpbWVTdGFtcC0tdGFsbFR5cG8ge1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4XG59XG5cbi5kcmF3ZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAzNjBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAtNTAlKTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzXG59XG5cbi5kcmF3ZXI6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIGJveC1zaGFkb3c6IHJnYmEoNCwgMjYsIDUwLCAuMTUpIDAgMCAzMHB4IDBcbn1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gICAgLmRyYXdlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi5kcmF3ZXJfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmVcbn1cblxuLmRyYXdlcl9fY29udGVudC52aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9ja1xufVxuXG4uZHJhd2VyX19idXR0b25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCVcbn1cblxuLmRyYXdlcl9fYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAyNDY5MztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yc1xufVxuXG4uZHJhd2VyX19idXR0b24gc3ZnIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHhcbn1cblxuLmRyYXdlcl9fYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDFweFxufVxuXG5AbWVkaWEgKGhvdmVyOiBob3ZlciksIG5vdCBhbGwgYW5kICgtbW96LXRvdWNoLWVuYWJsZWQpIHtcbiAgICAuZHJhd2VyX19idXR0b246aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNlxuICAgIH1cbn1cblxuLmRyYXdlcl9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweFxufVxuXG4uZHJhd2VyX19zdWJIZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4XG59XG5cbi5kcmF3ZXIgLmJ0biArIC5kcmF3ZXJfX3N1YkhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6IDQwcHhcbn1cblxuLmRyYXdlcl9fYWRkcmVzcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweFxufVxuXG4uZHJhd2VyX19wYXJhZ3JhcGgge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweFxufVxuXG4uZHJhd2VyX19saW5rcyB7XG4gICAgbWFyZ2luLXRvcDogMTZweFxufVxuXG4uZHJhd2VyX19saW5rcyAubGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHhcbn1cblxuLmRyYXdlcl9fcmVxdWVzdFNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHggNDBweCA1MHB4O1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjZDFkMWQxXG59XG5cbi5kcmF3ZXJfX3BhZGRpbmdXcmFwcGVyIHtcbiAgICBwYWRkaW5nOiA1MHB4IDQwcHhcbn1cblxuLmRyYXdlcl9fbG9naW5TZWN0aW9uIHtcbiAgICBwYWRkaW5nOiA1MHB4IDQwcHggNDBweFxufVxuXG4uZHJhd2VyIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbi5zdGF0ZUNob29zZXIge1xuICAgIHBhZGRpbmc6IDNyZW0gMCA1cmVtIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAyNDY5MztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmZcbn1cblxuLnN0YXRlQ2hvb3Nlcl9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweFxufVxuXG4uc3RhdGVDaG9vc2VyX19pbnRybyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweFxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5zdGF0ZUNob29zZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxuICAgIH1cbn1cblxuLm1hcF9tb2JpbGUge1xuICAgIG1hcmdpbjogNXB4O1xuICAgIGRpc3BsYXk6IG5vbmVcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubWFwX21vYmlsZSB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICN2bWFwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuLm1vZGFsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuNClcbn1cblxuLm1vZGFsLWNvbnRlbnQuYnV0dG9ucyB7XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW0gIWltcG9ydGFudFxufVxuXG4ubW9kYWwtY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA3MHJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDRyZW0gNHJlbSA4cmVtIDRyZW0gIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQnJhbmRvbjtcbiAgICBmb250LXNpemU6IDEuMjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIGNvbG9yOiAjNDQ0OTRkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAxMCUgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50XG59XG5cbi5tb2RhbC1jb250ZW50IHNwYW4uY2xvc2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycmVtO1xuICAgIHJpZ2h0OiAtMnJlbTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMylcbn1cblxuLm1vZGFsLWJ1dHRvbnMtb3B0LWluIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNHJlbVxufVxuXG4ubW9kYWwtYnV0dG9ucyBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OThweCkge1xuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KWFuZCAobWF4LWRldmljZS13aWR0aDogNDgwcHgpIHtcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgICAgIG1hcmdpbjogMjAlIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM4ODg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgd2lkdGg6IDgwJVxuICAgIH1cblxuICAgIC5tb2RhbC10aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNlxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4tZGV2aWNlLXdpZHRoOiA0ODFweCkge1xuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICAgICAgbWFyZ2luOiAxMiUgYXV0bztcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzg4ODtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB3aWR0aDogNTAlXG4gICAgfVxuXG4gICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42XG4gICAgfVxufVxuXG4ubW9kYWwtYnV0dG9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtblxufVxuXG4uY2xvc2Uge1xuICAgIGNvbG9yOiAjYWFhO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRcbn1cblxuLmNsb3NlOmhvdmVyLCAuY2xvc2U6Zm9jdXMge1xuICAgIGNvbG9yOiAjMDQxYTMyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXJcbn1cblxuLmxhbmRpbmdQYWdlQnV0dG9uIHtcbiAgICBmb250LXNpemU6IDE0cHhcbn1cblxuLmxhbmRpbmdQYWdlQnV0dG9uIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9ja1xufVxuXG4ubGFuZGluZ1BhZ2VCdXR0b24gLm1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxhbmRpbmdQYWdlQnV0dG9uIC5tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2tcbiAgICB9XG5cbiAgICAubGFuZGluZ1BhZ2VCdXR0b24gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0XG59XG5cbi5idG4ge1xuICAgIGN1cnNvcjogcG9pbnRlclxufVxuXG4udGFibGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyXG59XG5cbi50YWJsZSB7XG4gICAgcGFkZGluZy10b3A6IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi50YWJsZV9fdGFibGVXcmFwcGVyIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvXG59XG5cbi50YWJsZSB0YWJsZSB7XG4gICAgYm9yZGVyOiBzb2xpZCB0aGluO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgICBmb250LXNpemU6IDEuMjc1cmVtO1xuICAgIGNvbG9yOiAjNDE0ODRmXG59XG5cbi50YWJsZSB0YWJsZSBmaWd1cmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDglO1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweFxufVxuXG4udGFibGUgdGFibGUgZmlndXJlIHN2ZyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiBhdXRvXG59XG5cbi50YWJsZSB0YWJsZSBjYXB0aW9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogLjVlbVxufVxuXG4udGFibGUgdGFibGUgdGgsIC50YWJsZSB0YWJsZSB0ZCB7XG4gICAgYm9yZGVyOiBzb2xpZCB0aGluO1xuICAgIGJvcmRlci1jb2xvcjogI2VlZTtcbiAgICBwYWRkaW5nOiAuNXJlbSAycmVtXG59XG5cbi50YWJsZSB0YWJsZSB0ZCB7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmRcbn1cblxuLnRhYmxlIHRhYmxlIHRoIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsXG59XG5cbi50YWJsZSB0YWJsZSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdFxufVxuXG4udGFibGUgdGFibGUgdGQge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXJcbn1cblxuLnRhYmxlIHRhYmxlIHRoIHtcbiAgICBwYWRkaW5nOiAuMmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG59XG5cbi50YWJsZSB0YWJsZSB0aDpmaXJzdC1jaGlsZCBpbWcge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbVxufVxuXG4udGFibGUgdGFibGUgdGg6Zmlyc3QtY2hpbGQgaW1nOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMFxufVxuXG4udGFibGUgdGFibGUgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmVcbn1cblxuLnRhYmxlIHRhYmxlIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4XG59XG5cbi50YWJsZSB0YWJsZSBsaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTUuMTA3JyBoZWlnaHQ9JzEzLjg5NScgdmlld0JveD0nMCAwIDE1LjEwNyAxMy44OTUnJTNFJTNDZyBpZD0nR3J1cHBlXzE3ODInIGRhdGEtbmFtZT0nR3J1cHBlIDE3ODInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDIuMTA3IDIuMTA3KSclM0UlM0NwYXRoIGlkPSdQZmFkXzM0MTcnIGRhdGEtbmFtZT0nUGZhZCAzNDE3JyBkPSdNODU1Ljc0LDMwNDcuNzcybDMuNDU0LDQuMzUzLDcuNDM5LTkuMzc0JyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtODU1Ljc0IC0zMDQyLjc1MSknIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMDI0NjkzJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPSczJy8lM0UlM0MvZyUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMTNweDtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxlZnQ6IDBweDtcbiAgICB0b3A6IDdweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGVcbn1cblxuLnRhYmxlICN0YWJsZSB0Ym9keSB0ZDpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGxlYWRlcihcIi4gXCIpXG59XG5cbi5pbWFnZUdhbGxlcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY4ZmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuLmltYWdlR2FsbGVyeSB7XG4gICAgcGFkZGluZy10b3A6IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5pbWFnZUdhbGxlcnlfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG59XG5cbi5pbWFnZUdhbGxlcnlfX2NhcmRzV3JhcHBlciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMS41cmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xuICAgIGdyaWQtYXV0by1yb3dzOiBtaW5tYXgoMTQwcHgsIDFmcik7XG4gICAgZ3JpZC1hdXRvLWZsb3c6IGRlbnNlO1xuICAgIHBhZGRpbmc6IDEuNXJlbVxufVxuXG4uaW1hZ2VHYWxsZXJ5X19jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuLmltYWdlR2FsbGVyeSAubGF5b3V0V3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLmV4dFRhYmxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlclxufVxuXG4uZXh0VGFibGUge1xuICAgIHBhZGRpbmctdG9wOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweCk7XG4gICAgcGFkZGluZy1ib3R0b206IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KVxufVxuXG4uZXh0VGFibGVfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG59XG5cbi5leHRUYWJsZV9fdGFibGVXcmFwcGVyIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvXG59XG5cbi5leHRUYWJsZSAubGF5b3V0V3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLmV4dFRhYmxlIHRhYmxlIHtcbiAgICBib3JkZXI6IHNvbGlkIHRoaW47XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDEuMjc1cmVtO1xuICAgIGNvbG9yOiAjNDE0ODRmO1xuICAgIG92ZXJmbG93LXg6IGF1dG9cbn1cblxuLmV4dFRhYmxlIHRhYmxlIGZpZ3VyZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogOCU7XG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4XG59XG5cbi5leHRUYWJsZSB0YWJsZSBmaWd1cmUgc3ZnIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IGF1dG9cbn1cblxuLmV4dFRhYmxlIHRhYmxlIGNhcHRpb24ge1xuICAgIHBhZGRpbmctYm90dG9tOiAuNWVtXG59XG5cbi5leHRUYWJsZSB0YWJsZSB0aCwgLmV4dFRhYmxlIHRhYmxlIHRkIHtcbiAgICBib3JkZXI6IHNvbGlkIHRoaW47XG4gICAgYm9yZGVyLWNvbG9yOiAjZWVlO1xuICAgIHBhZGRpbmc6IC41cmVtIDJyZW1cbn1cblxuLmV4dFRhYmxlIHRhYmxlIHRkIHtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZFxufVxuXG4uZXh0VGFibGUgdGFibGUgdGgge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWxcbn1cblxuLmV4dFRhYmxlIHRhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0XG59XG5cbi5leHRUYWJsZSB0YWJsZSB0ZCB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRleHQtYWxpZ246IGxlZnRcbn1cblxuLmV4dFRhYmxlIHRhYmxlIHRoIHtcbiAgICBwYWRkaW5nOiAuMmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG59XG5cbi5leHRUYWJsZSB0YWJsZSB0aDpmaXJzdC1jaGlsZCBpbWcge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbVxufVxuXG4uZXh0VGFibGUgdGFibGUgdGg6Zmlyc3QtY2hpbGQgaW1nOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMFxufVxuXG4uZXh0VGFibGUgdGFibGUgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmVcbn1cblxuLmV4dFRhYmxlIHRhYmxlIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4XG59XG5cbi5leHRUYWJsZSB0YWJsZSBsaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTUuMTA3JyBoZWlnaHQ9JzEzLjg5NScgdmlld0JveD0nMCAwIDE1LjEwNyAxMy44OTUnJTNFJTNDZyBpZD0nR3J1cHBlXzE3ODInIGRhdGEtbmFtZT0nR3J1cHBlIDE3ODInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDIuMTA3IDIuMTA3KSclM0UlM0NwYXRoIGlkPSdQZmFkXzM0MTcnIGRhdGEtbmFtZT0nUGZhZCAzNDE3JyBkPSdNODU1Ljc0LDMwNDcuNzcybDMuNDU0LDQuMzUzLDcuNDM5LTkuMzc0JyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtODU1Ljc0IC0zMDQyLjc1MSknIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMDI0NjkzJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPSczJy8lM0UlM0MvZyUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMTNweDtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxlZnQ6IDBweDtcbiAgICB0b3A6IDdweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGVcbn1cblxuLmV4dFRhYmxlIC50ZXh0QmxvY2sgc3Bhbi50ZXh0LXNtYWxsIHtcbiAgICBmb250LWZhbWlseTogXCJrZXBsZXItc3RkLWRpc3BsYXlcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE2cHhcbn1cblxuLmV4dFRhYmxlIC50ZXh0QmxvY2sgYSB7XG4gICAgY29sb3I6ICMwMjQ2OTM7XG4gICAgZGlzcGxheTogaW5saW5lXG59XG5cbi5leHRUYWJsZSAucm93QmFja2dyb3VuZF9fd2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICM0MTQ4NGZcbn1cblxuLmV4dFRhYmxlIC5yb3dCYWNrZ3JvdW5kX19ibHVlTGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY4ZmU7XG4gICAgY29sb3I6ICMwNDFhMzJcbn1cblxuLmV4dFRhYmxlIC5yb3dCYWNrZ3JvdW5kX19ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI0NjkzO1xuICAgIGNvbG9yOiAjZmZmXG59XG5cbi5leHRUYWJsZSAucm93QmFja2dyb3VuZF9fYmx1ZSAudGV4dEJsb2NrIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lXG59XG5cbi5leHRUYWJsZSAucm93QmFja2dyb3VuZF9fYmx1ZSAudGV4dEJsb2NrIGEgc3ZnIHBhdGgge1xuICAgIHN0cm9rZTogI2ZmZlxufVxuXG4jbmF2U2VhcmNoIHtcbiAgICB6LWluZGV4OiAzMFxufVxuXG4jbmF2U2VhcmNoIC5zZWFyY2hXcmFwcGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoKzUwJSAtIDIwcHgpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmVcbn1cblxuI25hdlNlYXJjaCAuYWJzb2x1dGVXcmFwcGVyIHtcbiAgICB6LWluZGV4OiAyMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiA0MHB4XG59XG5cbiNuYXZTZWFyY2ggLnNpbmdsZS1zZWFyY2gge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG87XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2Vcbn1cblxuI25hdlNlYXJjaCAuc2VhcmNoLWFyZWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuI25hdlNlYXJjaCAuYy1oZWlnaHQge1xuICAgIGhlaWdodDogMTAwJVxufVxuXG4jbmF2U2VhcmNoIC5jdXN0b20taW5wdXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIHRyYW5zaXRpb246IHdpZHRoIC40cyBsaW5lYXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmXG59XG5cbiNuYXZTZWFyY2ggaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzI2MjYyNjtcbiAgICBmb250LXNpemU6IDE5cHhcbn1cblxuI25hdlNlYXJjaCBpbnB1dCB7XG4gICAgZm9udC1zaXplOiAyMHB4XG59XG5cbiNuYXZTZWFyY2ggLmljb24tYXJlYSB7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyMCcgaGVpZ2h0PScyMCcgY2xhc3M9J2JpIGJpLXNlYXJjaCcgdmlld0JveD0nMCAwIDE2IDE2JyUzRSUzQ3BhdGggZD0nTTExLjc0MiAxMC4zNDRhNi41IDYuNSAwIDEgMC0xLjM5NyAxLjM5OGgtLjAwMWMuMDMuMDQuMDYyLjA3OC4wOTguMTE1bDMuODUgMy44NWExIDEgMCAwIDAgMS40MTUtMS40MTRsLTMuODUtMy44NWExLjAwNyAxLjAwNyAwIDAgMC0uMTE1LS4xek0xMiA2LjVhNS41IDUuNSAwIDEgMS0xMSAwIDUuNSA1LjUgMCAwIDEgMTEgMHonJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MXB4KSB7XG4gICAgI25hdlNlYXJjaCAuY3VzdG9tLWlucHV0LmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMDAwO1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgd2lkdGg6IDM1MHB4O1xuICAgICAgICBjYXJldC1jb2xvcjogIzI2MjYyNjtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjRzIGxpbmVhclxuICAgIH1cblxuICAgICNuYXZTZWFyY2ggLmljb24tYXJlYS5hY3RpdmUge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmXG4gICAgfVxufVxuXG4udkxpbmUge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzA0MWEzMjtcbiAgICBoZWlnaHQ6IDQwJTtcbiAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHhcbn1cblxuLmVtYmVkRGlhbG9ndWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMnB4IGRvdHRlZCAjZDFkMWQxO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4XG59XG5cbi5lbWJlZERpYWxvZ3VlX19oZWFkbGluZSB7XG4gICAgZGlzcGxheTogYmxvY2tcbn1cblxuLmVtYmVkRGlhbG9ndWVfX3RleHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogMTRweFxufVxuXG4uZW1iZWREaWFsb2d1ZV9fYWxsb3dTd2l0Y2hXcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcwcHgpIHtcbiAgICAuZW1iZWREaWFsb2d1ZV9fYWxsb3dTd2l0Y2hXcmFwcGVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtblxuICAgIH1cbn1cblxuLmVtYmVkRGlhbG9ndWVfX2FsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2hXcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcwcHgpIHtcbiAgICAuZW1iZWREaWFsb2d1ZV9fYWxsb3dTd2l0Y2hXcmFwcGVyIC5hbGxvd1N3aXRjaFdyYXBwZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2V0O1xuICAgICAgICBhbGlnbi1pdGVtczogdW5zZXQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHhcbiAgICB9XG59XG5cbi5lbWJlZERpYWxvZ3VlX19hbGxvd1N3aXRjaFdyYXBwZXIgLmFsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyXG59XG5cbi5lbWJlZERpYWxvZ3VlX19hbGxvd1N3aXRjaFdyYXBwZXIgLmFsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2ggaW5wdXQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwXG59XG5cbi5lbWJlZERpYWxvZ3VlX19hbGxvd1N3aXRjaFdyYXBwZXIgLmFsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTbGlkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMWQxZDE7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3M7XG4gICAgdHJhbnNpdGlvbjogLjNzO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHhcbn1cblxuLmVtYmVkRGlhbG9ndWVfX2FsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2hXcmFwcGVyIC5hbGxvd1NsaWRlcjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgYm90dG9tOiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zcztcbiAgICB0cmFuc2l0aW9uOiAuM3M7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlXG59XG5cbi5lbWJlZERpYWxvZ3VlX19hbGxvd1N3aXRjaFdyYXBwZXIgLmFsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2ggaW5wdXQ6Y2hlY2tlZCArIC5hbGxvd1NsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAyNDY5M1xufVxuXG4uZW1iZWREaWFsb2d1ZV9fYWxsb3dTd2l0Y2hXcmFwcGVyIC5hbGxvd1N3aXRjaFdyYXBwZXIgLmFsbG93U3dpdGNoIGlucHV0OmZvY3VzICsgLmFsbG93U2xpZGVyIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4ICMwMjQ2OTNcbn1cblxuLmVtYmVkRGlhbG9ndWVfX2FsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2hXcmFwcGVyIC5hbGxvd1N3aXRjaCBpbnB1dDpjaGVja2VkICsgLmFsbG93U2xpZGVyOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzJweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzJweClcbn1cblxuLmVtYmVkRGlhbG9ndWVfX2FsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2hXcmFwcGVyIC5hbGxvd1N3aXRjaExhYmVsIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyXG59XG5cbi5lbWJlZERpYWxvZ3VlX19hbGxvd1N3aXRjaFdyYXBwZXIgLnByaXZhY3lMaW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuLmVtYmVkRGlhbG9ndWVfX3ByaXZhY3lOb3RlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4XG59XG5cbi5lbWJlZERpYWxvZ3VlX19wcml2YWN5Tm90ZSBwIHtcbiAgICBmb250LXNpemU6IDE3cHhcbn1cblxuLmVtYmVkRGlhbG9ndWVfX3ByaXZhY3lOb3RlIHAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGZvbnQtc2l6ZTogMTdweFxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX2JsdWUgLmVtYmVkRGlhbG9ndWVfX2FsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2hXcmFwcGVyIC5hbGxvd1NsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QxZDFkMVxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX2JsdWUgLmVtYmVkRGlhbG9ndWVfX2FsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2hXcmFwcGVyIC5hbGxvd1NsaWRlcjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjQ2OTNcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlIC5lbWJlZERpYWxvZ3VlX19hbGxvd1N3aXRjaFdyYXBwZXIgLmFsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2ggaW5wdXQ6Y2hlY2tlZCArIC5hbGxvd1NsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZlxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX2JsdWUgLmVtYmVkRGlhbG9ndWVfX2FsbG93U3dpdGNoV3JhcHBlciAuYWxsb3dTd2l0Y2hXcmFwcGVyIC5hbGxvd1N3aXRjaCBpbnB1dDpmb2N1cyArIC5hbGxvd1NsaWRlciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDFweCAjZmZmXG59XG5cbi5iYWNrZ3JvdW5kV3JhcHBlcl9fYmx1ZSAuZW1iZWREaWFsb2d1ZV9fYWxsb3dTd2l0Y2hXcmFwcGVyIC5wcml2YWN5TGluayBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZVxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX2JsdWUgLmVtYmVkRGlhbG9ndWVfX3ByaXZhY3lOb3RlIHAgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmVcbn1cblxuLnJlc3BvbnNpdmVfdmlkZW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSVcbn1cblxuLnJlc3BvbnNpdmVfdmlkZW8gaWZyYW1lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IG5vbmVcbn1cblxuaWZyYW1lI3R3aXR0ZXItd2lkZ2V0LTEgKiwgaWZyYW1lI3R3aXR0ZXItd2lkZ2V0LTIgKiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnRcbn1cblxuLmdldEluVG91Y2gge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5nZXRJblRvdWNoIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweFxuICAgIH1cbn1cblxuLmdldEluVG91Y2hfX3BhcmFncmFwaCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweFxufVxuXG4uZ2V0SW5Ub3VjaF9fb3BlbkhvdXJzIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4XG59XG5cbi5nZXRJblRvdWNoIC5zZWN0aW9uSGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4XG59XG5cbi5nZXRJblRvdWNoLmdldEluVG91Y2gtLWJhY2tncm91bmRUcnVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmOGZlXG59XG5cbi5nZXRJblRvdWNoX19pbGx1c3RyYXRpb25XcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDE0MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG59XG5cbi5nZXRJblRvdWNoX19pbGx1c3RyYXRpb25XcmFwcGVyIHN2ZyB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZ2V0SW5Ub3VjaF9faWxsdXN0cmF0aW9uQmxvY2stLWRlc2t0b3Age1xuICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgfVxufVxuXG4uZ2V0SW5Ub3VjaF9faWxsdXN0cmF0aW9uQmxvY2stLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZVxufVxuXG4uZ2V0SW5Ub3VjaF9faWxsdXN0cmF0aW9uQmxvY2stLW1vYmlsZSAuZ2V0SW5Ub3VjaF9faWxsdXN0cmF0aW9uV3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogODAlXG59XG5cbi5nZXRJblRvdWNoX19pbGx1c3RyYXRpb25CbG9jay0tbW9iaWxlIHN2ZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiBhdXRvXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5nZXRJblRvdWNoX19pbGx1c3RyYXRpb25CbG9jay0tbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2tcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5nZXRJblRvdWNoIC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuLnJvdXRlUGxhbm5lciB7XG4gICAgcGFkZGluZy10b3A6IDE1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNTBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucm91dGVQbGFubmVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4XG4gICAgfVxufVxuXG4ucm91dGVQbGFubmVyX19zZXBhcmF0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4ZTkxOTU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTIwcHhcbn1cblxuLnJvdXRlUGxhbm5lcl9faWxsdXN0cmF0aW9uV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyXG59XG5cbi5yb3V0ZVBsYW5uZXJfX2lsbHVzdHJhdGlvbldyYXBwZXIgc3ZnIHtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucm91dGVQbGFubmVyX19pbGx1c3RyYXRpb25XcmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuLnJvdXRlUGxhbm5lcl9fY29sdW1uV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG59XG5cbi5yb3V0ZVBsYW5uZXJfX29wZW5Ib3VycyB7XG4gICAgbWFyZ2luLXRvcDogMjRweFxufVxuXG4ucm91dGVQbGFubmVyIC5saW5rIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4XG59XG5cbkBrZXlmcmFtZXMgdHJhY2UtaW4ge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAxJSwgMCwgMClcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyB0cmFjZS1vdXQge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApXG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMSUsIDAsIDApXG4gICAgfVxufVxuXG4uZm9vdGVyX19uYXZpZ2F0aW9uIHtcbiAgICBwYWRkaW5nOiAxMDBweCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjQ2OTM7XG4gICAgY29sb3I6ICNmZmZcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAgIC5mb290ZXJfX25hdmlnYXRpb24ge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHhcbiAgICB9XG59XG5cbi5mb290ZXJfX2Jhc2Uge1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQxYTMyO1xuICAgIGNvbG9yOiAjZmZmXG59XG5cbi5mb290ZXJfX2Jhc2UgLmdyaWRSb3dXcmFwcGVyIHtcbiAgICBoZWlnaHQ6IDEwMCVcbn1cblxuLmZvb3RlciAucm93V3JhcHBlciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyXG59XG5cbi5mb290ZXJfX2NvbHVtbiB7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweFxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgICAuZm9vdGVyX19jb2x1bW4ge1xuICAgICAgICB3aWR0aDogMjUlXG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmZvb3Rlcl9fY29sdW1uIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpXG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZm9vdGVyX19jb2x1bW4ge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cblxuICAgIC5mb290ZXJfX2NvbHVtbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZVxuICAgIH1cbn1cblxuLmZvb3Rlcl9fbGlua3NMaXN0Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHhcbn1cblxuLmZvb3Rlcl9fbmF2aWdhdGlvbkNvbnRlbnQgLmdyaWRSb3dXcmFwcGVyIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogLTY0cHhcbn1cblxuLmZvb3Rlcl9fbGlua3NMaXN0SGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4XG59XG5cbi5mb290ZXJfX2xpbmtzTGlzdEl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweFxufVxuXG4uZm9vdGVyX19zb2NpYWxNZWRpYUxpbmtzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3dcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmZvb3Rlcl9fc29jaWFsTWVkaWFMaW5rcyBzdmcge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwXG4gICAgfVxufVxuXG4uZm9vdGVyX19zb2NpYWxNZWRpYUl0ZW0ge1xuICAgIG1hcmdpbi1yaWdodDogMTRweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZm9vdGVyX19zb2NpYWxNZWRpYUl0ZW0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI3cHhcbiAgICB9XG59XG5cbi5mb290ZXJfX3NvY2lhbE1lZGlhTGluayB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLWluLW91dCAuMnNcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCBub3QgYWxsIGFuZCAoLW1vei10b3VjaC1lbmFibGVkKSB7XG4gICAgLmZvb3Rlcl9fc29jaWFsTWVkaWFMaW5rOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjZcbiAgICB9XG59XG5cbi5mb290ZXJfX2xvZ28ge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA1NHB4XG59XG5cbi5mb290ZXJfX2xvZ28gc3ZnIHtcbiAgICBoZWlnaHQ6IDEwMCVcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmZvb3Rlcl9fbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi5mb290ZXJfX2xpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9ja1xufVxuXG4uZm9vdGVyX19saW5rOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtMTAwJSAtIDAuMXJlbSkpO1xuICAgIGFuaW1hdGlvbjogLjI1cyBlYXNlLW91dCAwcyB0cmFjZS1vdXQgZm9yd2FyZHNcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCBub3QgYWxsIGFuZCAoLW1vei10b3VjaC1lbmFibGVkKSB7XG4gICAgLmZvb3Rlcl9fbGluazpob3Zlcjo6YWZ0ZXIge1xuICAgICAgICBhbmltYXRpb246IC4yNXMgZWFzZS1vdXQgMHMgdHJhY2UtaW4gZm9yd2FyZHNcbiAgICB9XG59XG5cbi5uZXdzbGV0dGVyU3Vic2NyaWJlIHtcbiAgICBtYXJnaW4tdG9wOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5uZXdzbGV0dGVyU3Vic2NyaWJlX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1NnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlclxufVxuXG4ubmV3c2xldHRlclN1YnNjcmliZV9faWxsdXN0cmF0aW9uV3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjYlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZVxufVxuXG4ubmV3c2xldHRlclN1YnNjcmliZV9faWxsdXN0cmF0aW9uV3JhcHBlciA+IHN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMFxufVxuXG4ubmV3c2xldHRlclN1YnNjcmliZSAuY29sdW1uV3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJVxufVxuXG4ubmV3c2xldHRlclN1YnNjcmliZSAuY29sdW1uV3JhcHBlciA+IHN2ZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweFxufVxuXG4udGVzdGltb25pYWxzQ2Fyb3VzZWwge1xuICAgIHBhZGRpbmctdG9wOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweCk7XG4gICAgcGFkZGluZy1ib3R0b206IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KVxufVxuXG4udGVzdGltb25pYWxzQ2Fyb3VzZWwudGVzdGltb25pYWxzQ2Fyb3VzZWwtLWJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY4ZmVcbn1cblxuLnRlc3RpbW9uaWFsc0Nhcm91c2VsX19jYXJvdXNlbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlblxufVxuXG4udGVzdGltb25pYWxzQ2Fyb3VzZWxfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHhcbn1cblxuLnRlc3RpbW9uaWFsc0Nhcm91c2VsX19uYXZXcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC50ZXN0aW1vbmlhbHNDYXJvdXNlbF9fbmF2V3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi50ZXN0aW1vbmlhbHNDYXJvdXNlbCAuaW5kZXhQYWdpbmF0b3Ige1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHhcbn1cblxuLnRlc3RpbW9uaWFsc0Nhcm91c2VsIC5jYXJvdXNlbFBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDQ2cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuLnRlc3RpbW9uaWFsc0Nhcm91c2VsIC5idXR0b25zV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuLnRlc3RpbW9uaWFsc0Nhcm91c2VsIC5idXR0b25zV3JhcHBlciA+ICoge1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIHdpZHRoOiAzMDBweFxufVxuXG4uc3RvcnlDYXJvdXNlbCB7XG4gICAgcGFkZGluZy10b3A6IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5zdG9yeUNhcm91c2VsIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDBcbn1cblxuLnN0b3J5Q2Fyb3VzZWwgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHhcbn1cblxuLnN0b3J5Q2Fyb3VzZWwgbGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzE2LjY4JyBoZWlnaHQ9JzE2LjcxNycgdmlld0JveD0nMCAwIDE2LjY4IDE2LjcxNyclM0UlM0NnIGlkPSdHcnVwcGVfNjYzMCcgZGF0YS1uYW1lPSdHcnVwcGUgNjYzMCcgdHJhbnNmb3JtPSd0cmFuc2xhdGUoLTM1OS4zMzEgLTM2MDMuMzc2KSclM0UlM0NyZWN0IGlkPSdSZWNodGVja18xMjI4JyBkYXRhLW5hbWU9J1JlY2h0ZWNrIDEyMjgnIHdpZHRoPSc5LjU3OScgaGVpZ2h0PSc5LjU3OScgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMzYzLjkwMyAzNjEwLjUxNCknIGZpbGw9JyUyM2Q3ZTI1MScvJTNFJTNDcGF0aCBpZD0nU3Ryb2tlXzEnIGRhdGEtbmFtZT0nU3Ryb2tlIDEnIGQ9J001LjY0NywxMC4zNTksOS43LDE0LDIwLjg3NywwJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgzNTQuMzUzIDM2MDQpJyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInLyUzRSUzQy9nJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGVmdDogMHB4O1xuICAgIHRvcDogNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxufVxuXG4uc3RvcnlDYXJvdXNlbCBsaS5ndWFyYW50ZWVPcHRpb25DYXJkX19saXN0SXRlbTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lXG59XG5cbi5zdG9yeUNhcm91c2VsX19jYXJvdXNlbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlblxufVxuXG4uc3RvcnlDYXJvdXNlbF9fcHJlSGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweFxufVxuXG4uc3RvcnlDYXJvdXNlbF9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweFxufVxuXG4uc3RvcnlDYXJvdXNlbF9faW50cm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHhcbn1cblxuLnN0b3J5Q2Fyb3VzZWxfX25hdldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlclxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLnN0b3J5Q2Fyb3VzZWxfX25hdldyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgfVxufVxuXG4uc3RvcnlDYXJvdXNlbCAuaW5kZXhQYWdpbmF0b3Ige1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHhcbn1cblxuLnN0b3J5Q2Fyb3VzZWwgLmhlcm9DYXJvdXNlbF9fcHJlSGVhZGluZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuLnN0b3J5Q2Fyb3VzZWwgLmNhcm91c2VsUGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gICAgLnN0b3J5Q2Fyb3VzZWwgLmNhcm91c2VsUGFnaW5hdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuc3RvcnlDYXJvdXNlbCAuc3RvcnlDYXJkIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvXG4gICAgfVxufVxuXG4uc3RvcnlDYXJvdXNlbCAuc2VjdGlvbkhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzVweFxufVxuXG4uc3RvcnlDYXJvdXNlbCAuYnV0dG9uV3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogODBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgLnN0b3J5Q2Fyb3VzZWwgLmJ1dHRvbldyYXBwZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4XG4gICAgfVxufVxuXG4uc3RvcnlDYXJvdXNlbCAuaGlkZVBhZ2luYXRpb24tbWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlblxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc3RvcnlDYXJvdXNlbCAuaGlkZVBhZ2luYXRpb24tbWQge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlXG4gICAgfVxufVxuXG4uYWNjb3JkaW9ucyB7XG4gICAgbWFyZ2luLXRvcDogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KVxufVxuXG4uYWNjb3JkaW9uc19faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2xhbXAoMjBweCwgMS42MzI2NTMwNjEydncgKyAxMy44Nzc1NTEwMjA0cHgsIDQwcHgpXG59XG5cbi5hY2NvcmRpb25zX19idXR0b25zV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiA4MHB4XG59XG5cbi5hY2NvcmRpb25zIC50ZXh0QmxvY2sge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50XG59XG5cbi5hY2NvcmRpb25zIC5ncmlkUm93V3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50XG59XG5cbi5jYWxjdWxhdG9yIHtcbiAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweFxufVxuXG4uY2FsY3VsYXRvciBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDJyZW0gMCAzcmVtO1xuICAgIHBhZGRpbmc6IC43NXJlbVxufVxuXG4uY2FsY3VsYXRvciBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2tcbn1cblxuLmNhbGN1bGF0b3IgLnJhZGlvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAycmVtIDJyZW0gMnJlbSAwO1xuICAgIHBhZGRpbmc6IC43NXJlbTtcbiAgICB3aWR0aDogNnJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAycHggc29saWQ7XG4gICAgY3Vyc29yOiBwb2ludGVyXG59XG5cbi5iYWNrZ3JvdW5kV3JhcHBlcl9fd2hpdGUgLmNhbGN1bGF0b3IgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwNDFhMzJcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX193aGl0ZSAuY2FsY3VsYXRvciBpbnB1dFt0eXBlPXRleHRdOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoNCwgMjYsIDUwLCAuNSlcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX193aGl0ZSAuY2FsY3VsYXRvciAjcmVzdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQxYTMyO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgY29sb3I6ICNmZmZcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX193aGl0ZSAuY2FsY3VsYXRvciBpbnB1dDpjaGVja2VkICsgLnJhZGlvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQxYTMyO1xuICAgIGJvcmRlci1jb2xvcjogIzA0MWEzMjtcbiAgICBjb2xvcjogI2ZmZlxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX3doaXRlIC5jYWxjdWxhdG9yIHAuZXJyb3Ige1xuICAgIGNvbG9yOiAjMDQxYTMyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnRcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlTGlnaHQgLmNhbGN1bGF0b3IgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwNDFhMzJcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlTGlnaHQgLmNhbGN1bGF0b3IgaW5wdXRbdHlwZT10ZXh0XTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KVxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX2JsdWVMaWdodCAuY2FsY3VsYXRvciAjcmVzdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgY29sb3I6ICMwNDFhMzJcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlTGlnaHQgLmNhbGN1bGF0b3IgaW5wdXQ6Y2hlY2tlZCArIC5yYWRpbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICMwNDFhMzJcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlTGlnaHQgLmNhbGN1bGF0b3IgcC5lcnJvciB7XG4gICAgY29sb3I6ICMwNDFhMzI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAuODc1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdFxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX2JsdWUgLmNhbGN1bGF0b3IgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmZcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlIC5jYWxjdWxhdG9yIGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSlcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlIC5jYWxjdWxhdG9yICNyZXN1bHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBjb2xvcjogIzA0MWEzMlxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX2JsdWUgLmNhbGN1bGF0b3IgaW5wdXQ6Y2hlY2tlZCArIC5yYWRpbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICMwNDFhMzJcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlIC5jYWxjdWxhdG9yIHAuZXJyb3Ige1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnRcbn1cblxuLmZ1bmRpbmdQb3J0YWxTdGVwcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjhmZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuXG59XG5cbi5mdW5kaW5nUG9ydGFsU3RlcHMge1xuICAgIHBhZGRpbmctdG9wOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweCk7XG4gICAgcGFkZGluZy1ib3R0b206IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KVxufVxuXG4uZnVuZGluZ1BvcnRhbFN0ZXBzX19pbnRybyB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4XG59XG5cbi5mdW5kaW5nUG9ydGFsU3RlcHNfX3N0ZXBzV3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmZ1bmRpbmdQb3J0YWxTdGVwc19fc3RlcHNXcmFwcGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mdW5kaW5nUG9ydGFsU3RlcHNfX3N0ZXBzV3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4XG4gICAgfVxufVxuXG4uZnVuZGluZ1BvcnRhbFN0ZXBzX19hcnJvd1dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZnVuZGluZ1BvcnRhbFN0ZXBzX19hcnJvd1dyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgfVxufVxuXG4uZnVuZGluZ1BvcnRhbFN0ZXBzX19idXR0b25XcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mdW5kaW5nUG9ydGFsU3RlcHMgLmZ1bmRpbmdQb3J0YWxTdGVwQ2FyZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHhcbiAgICB9XG59XG5cbi5oZXJvSW50cm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY4ZmU7XG4gICAgbWluLWhlaWdodDogNTYwcHg7XG4gICAgcGFkZGluZy10b3A6IDEyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmhlcm9JbnRybyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgICAgbWluLWhlaWdodDogYXV0b1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlcm9JbnRybyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweFxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlcm9JbnRyb19faW1hZ2VXcmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweFxuICAgIH1cbn1cblxuLmhlcm9JbnRyb19faW1hZ2VXcmFwcGVyIHN2ZyB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLmhlcm9Qb3N0ZXIge1xuICAgIGhlaWdodDogNzcwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW5cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlcm9Qb3N0ZXIge1xuICAgICAgICBoZWlnaHQ6IGF1dG9cbiAgICB9XG59XG5cbi5oZXJvUG9zdGVyX19jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHhcbn1cblxuLmhlcm9Qb3N0ZXJfX2NvbnRlbnQgLmJ0biB7XG4gICAgbWFyZ2luLXRvcDogMzBweFxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5oZXJvUG9zdGVyX19jb250ZW50IC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlcm9Qb3N0ZXJfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweFxuICAgIH1cbn1cblxuLmhlcm9Qb3N0ZXJfX2JhY2tncm91bmQge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGVcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlcm9Qb3N0ZXJfX2JhY2tncm91bmQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogMjIwcHhcbiAgICB9XG59XG5cbi5kZXZlbG9wbWVudE92ZXJ2aWV3IHtcbiAgICBtYXJnaW4tdG9wOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5kZXZlbG9wbWVudE92ZXJ2aWV3X19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4XG59XG5cbi5kZXZlbG9wbWVudE92ZXJ2aWV3X19saXN0SW50cm8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctYm90dG9tOiAyNHB4XG59XG5cbi5kZXZlbG9wbWVudE92ZXJ2aWV3X19saXN0SXRlbSB7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICMwNDFhMzI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG59XG5cbi5kZXZlbG9wbWVudE92ZXJ2aWV3X19saXN0SXRlbSB7XG4gICAgcGFkZGluZy10b3A6IGNsYW1wKDEycHgsIDAuOTc5NTkxODM2N3Z3ICsgOC4zMjY1MzA2MTIycHgsIDI0cHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjbGFtcCgxMnB4LCAwLjk3OTU5MTgzNjd2dyArIDguMzI2NTMwNjEyMnB4LCAyNHB4KVxufVxuXG4uZGV2ZWxvcG1lbnRPdmVydmlld19faXRlbU5hbWUge1xuICAgIG1heC13aWR0aDogMzAwcHhcbn1cblxuLmRldmVsb3BtZW50T3ZlcnZpZXdfX2l0ZW1WYWx1ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG9cbn1cblxuLmRldmVsb3BtZW50T3ZlcnZpZXdfX2NvbnRlbnRXcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLmRldmVsb3BtZW50T3ZlcnZpZXdfX3N1Ykxpc3Qge1xuICAgIHBhZGRpbmctbGVmdDogMzBweFxufVxuXG4uZGV2ZWxvcG1lbnRPdmVydmlld19fc3ViTGlzdEl0ZW0ge1xuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvd1xufVxuXG4uZGV2ZWxvcG1lbnRPdmVydmlld0ludmVydGVkX19saXN0SXRlbSB7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNmZmY7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG59XG5cbi5kZXZlbG9wbWVudE92ZXJ2aWV3SW52ZXJ0ZWRfX2xpc3RJdGVtIHtcbiAgICBwYWRkaW5nLXRvcDogY2xhbXAoMTJweCwgMC45Nzk1OTE4MzY3dncgKyA4LjMyNjUzMDYxMjJweCwgMjRweCk7XG4gICAgcGFkZGluZy1ib3R0b206IGNsYW1wKDEycHgsIDAuOTc5NTkxODM2N3Z3ICsgOC4zMjY1MzA2MTIycHgsIDI0cHgpXG59XG5cbi5yZXByZXNlbnRhdGl2ZXNMaXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwXG59XG5cbi5yZXByZXNlbnRhdGl2ZXNMaXN0X19pdGVtV3JhcHBlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveFxufVxuXG4ucmVwcmVzZW50YXRpdmVzTGlzdF9faXRlbVdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweFxufVxuXG4uc2VwYXJhdG9yIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHhcbn1cblxuLnNlcGFyYXRvcl9fbGluZSB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzhlOTE5NTtcbiAgICBkaXNwbGF5OiBibG9ja1xufVxuXG4uc2VwYXJhdG9ySW52ZXJ0ZWQge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweFxufVxuXG4uc2VwYXJhdG9ySW52ZXJ0ZWRfX2xpbmUge1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogYmxvY2tcbn1cblxuLmRvd25sb2FkcyB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHhcbn1cblxuLmRvd25sb2Fkc19faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweFxufVxuXG4uY29udGFjdEZvcm0ge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jb250YWN0Rm9ybSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweFxuICAgIH1cbn1cblxuLmFydGljbGVJbnRyb19fdGV4dENvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmOGZlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5hcnRpY2xlSW50cm9fX3RleHRDb250ZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4XG4gICAgfVxufVxuXG4uYXJ0aWNsZUludHJvX19ncmFwaGljQ29udGVudCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2Y1ZjhmZSAwIDUwJSwgdHJhbnNwYXJlbnQgNTAlKVxufVxuXG4uYXJ0aWNsZUludHJvX19pbWFnZVdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5hcnRpY2xlSW50cm9fX2ltYWdlV3JhcHBlciB7XG4gICAgICAgIGhlaWdodDogMjIwcHhcbiAgICB9XG59XG5cbi5hcnRpY2xlSW50cm9fX2ltYWdlV3JhcHBlciA+IGltZyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbi5hcnRpY2xlSW50cm9fX2ltYWdlQ2FwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMTBweFxufVxuXG4uYXJ0aWNsZUludHJvX19hZGRpdGlvbmFsSW5mbyB7XG4gICAgbWFyZ2luLXRvcDogYXV0b1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gICAgLmFydGljbGVJbnRyb19fYWRkaXRpb25hbEluZm8ge1xuICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgfVxufVxuXG4uYXJ0aWNsZUludHJvX19hZGRpdGlvbmFsSW5mb1RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4XG59XG5cbi5sb2NhdGlvbkluZm8ge1xuICAgIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxvY2F0aW9uSW5mbyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweFxuICAgIH1cbn1cblxuLmxvY2F0aW9uSW5mb19faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweFxufVxuXG4ubG9jYXRpb25JbmZvX19vcGVuSG91cnMge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHhcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxvY2F0aW9uSW5mb19fb3BlbkhvdXJzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweFxuICAgIH1cbn1cblxuLmxvY2F0aW9uSW5mb19fYWRkcmVzcyB7XG4gICAgbWFyZ2luLXRvcDogMjBweFxufVxuXG4ubG9jYXRpb25JbmZvX19waG9uZSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4XG59XG5cbi5sb2NhdGlvbkluZm9fX2lsbHVzdHJhdGlvbldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxufVxuXG4ubG9jYXRpb25JbmZvX19pbGx1c3RyYXRpb25XcmFwcGVyIHN2ZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW5cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxvY2F0aW9uSW5mb19faWxsdXN0cmF0aW9uV3JhcHBlciB7XG4gICAgICAgIGhlaWdodDogMjIwcHhcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5sb2NhdGlvbkluZm9fX3RleHRCbG9jayB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubG9jYXRpb25JbmZvX190ZXh0QmxvY2sgLmJ0biB7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubG9jYXRpb25JbmZvX19pbWFnZUJsb2NrIHtcbiAgICAgICAgb3JkZXI6IDJcbiAgICB9XG59XG5cbi5jdGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvd1xufVxuXG4uY3RhIHtcbiAgICBtYXJnaW4tdG9wOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5jdGFfX2J1dHRvbldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY3RhIC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuLmV2ZW50c0xpc3Qge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4XG59XG5cbi5ldmVudHNMaXN0X19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW5cbn1cblxuLmV2ZW50c0xpc3RfX2l0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IDgwcHhcbn1cblxuLmV2ZW50c0xpc3QgLmJ1dHRvbldyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDEyMHB4XG59XG5cbi5ldmVudFJlZ2lzdGVyX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4XG59XG5cbi5ldmVudFJlZ2lzdGVyX19ldmVudERldGFpbHMge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHhcbn1cblxuLmd1YXJhbnRlZU9wdGlvbnMge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4XG59XG5cbi5ndWFyYW50ZWVQcm9ncmFtSW50cm8ge1xuICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjhmZVxufVxuXG4uZ3VhcmFudGVlUHJvZ3JhbUludHJvIC5ndWFyYW50ZWVPcHRpb25DYXJkX19saXN0IHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4XG59XG5cbi5jb250YWN0UGVyc29uIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHhcbn1cblxuLmNvbnRhY3RQZXJzb24gLnJlcHJlc2VudGF0aXZlQ2FyZCB7XG4gICAgbWFyZ2luLXRvcDogNDBweFxufVxuXG4uc3RhdENoYXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdlZmRlO1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweFxufVxuXG4uc3RhdENoYXJ0LnN0YXRDaGFydC0tbm9CZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDBcbn1cblxuLnN0YXRDaGFydF9faW1hZ2VzV3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4XG59XG5cbi5zdGF0Q2hhcnRfX2ltYWdlc1dyYXBwZXIgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvXG59XG5cbi5zdGF0Q2hhcnRfX2ludHJvIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4XG59XG5cbi5zdGF0Q2hhcnRfX3RleHQge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHhcbn1cblxuLmFubml2ZXJzYXJ5SW50cm8ge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4XG59XG5cbi5hbm5pdmVyc2FyeUludHJvX19sb2dvV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuYW5uaXZlcnNhcnlJbnRyb19fbG9nb1dyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4XG4gICAgfVxufVxuXG4uYW5uaXZlcnNhcnlJbnRybyAuZ3JpZFJvd1dyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuLmFubml2ZXJzYXJ5RXhjZXJwdF9faW1hZ2VXcmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjYlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuYW5uaXZlcnNhcnlFeGNlcnB0X19pbWFnZVdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4XG4gICAgfVxufVxuXG4uYW5uaXZlcnNhcnlFeGNlcnB0X19pbWFnZVdyYXBwZXIgaW1nIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlXG59XG5cbi5hbm5pdmVyc2FyeUV4Y2VycHRfX3RpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMFxufVxuXG4uYW5uaXZlcnNhcnlFeGNlcnB0X190ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4XG59XG5cbi5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRSb3dXcmFwcGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkUm93V3JhcHBlciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50XG4gICAgfVxufVxuXG4uYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94V3JhcHBlciwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyMCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyMywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyNCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyNSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyNiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyNywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyOCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyOSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyMTAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjExLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS1zbS0tZnIxMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyMCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyMywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyNCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyNSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyNiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyNywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyOCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyOSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyMTAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjExLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS1tZC0tZnIxMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyMCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyMywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyNCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyNSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyNiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyNywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyOCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyOSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyMTAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjExLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS1sZy0tZnIxMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyMCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyMywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyNCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyNSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyNiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyNywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyOCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyOSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyMTAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjExLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14bC0tZnIxMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnIxLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14eGwtLWZyMiwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjMsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnI0LCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14eGwtLWZyNSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjYsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnI3LCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14eGwtLWZyOCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjksIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnIxMCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjExLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14eGwtLWZyMTIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLnRleHRCbG9ja19fY29sdW1uV3JhcHBlciA+ICo6bm90KGJsb2NrcXVvdGUpLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC50ZXh0QmxvY2tfX2NvbHVtbldyYXBwZXIgPiBibG9ja3F1b3RlLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5jb21wYW55SW5mbyB7XG4gICAgd2lkdGg6IDUwJVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveFdyYXBwZXIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjEsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjMsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjQsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjUsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjYsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjcsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjgsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjksIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXNtLS1mcjEwLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS1zbS0tZnIxMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tc20tLWZyMTIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjEsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjMsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjQsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjUsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjYsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjcsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjgsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjksIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLW1kLS1mcjEwLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS1tZC0tZnIxMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbWQtLWZyMTIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjEsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjMsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjQsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjUsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjYsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjcsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjgsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjksIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLWxnLS1mcjEwLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS1sZy0tZnIxMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0tbGctLWZyMTIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjEsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjMsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjQsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjUsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjYsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjcsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjgsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjksIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXhsLS1mcjEwLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14bC0tZnIxMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teGwtLWZyMTIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnIwLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14eGwtLWZyMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjIsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnIzLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14eGwtLWZyNCwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjUsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnI2LCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14eGwtLWZyNywgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjgsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnI5LCAuYW5uaXZlcnNhcnlFeGNlcnB0IC5ncmlkQm94LS14eGwtLWZyMTAsIC5hbm5pdmVyc2FyeUV4Y2VycHQgLmdyaWRCb3gtLXh4bC0tZnIxMSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuZ3JpZEJveC0teHhsLS1mcjEyLCAuYW5uaXZlcnNhcnlFeGNlcnB0IC50ZXh0QmxvY2tfX2NvbHVtbldyYXBwZXIgPiAqOm5vdChibG9ja3F1b3RlKSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAudGV4dEJsb2NrX19jb2x1bW5XcmFwcGVyID4gYmxvY2txdW90ZSwgLmFubml2ZXJzYXJ5RXhjZXJwdCAuY29tcGFueUluZm8ge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuLmFubml2ZXJzYXJ5RXhjZXJwdC5hbm5pdmVyc2FyeUV4Y2VycHQtLXJldmVyc2VPcmRlciAuZ3JpZFJvd1dyYXBwZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZVxufVxuXG4uYW5uaXZlcnNhcnlTZWN0aW9uc0xpbmtzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtNDBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmFubml2ZXJzYXJ5U2VjdGlvbnNMaW5rcyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0yMHB4XG4gICAgfVxufVxuXG4uYW5uaXZlcnNhcnlTZWN0aW9uc0xpbmtzX19pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMjBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmFubml2ZXJzYXJ5U2VjdGlvbnNMaW5rc19faXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHhcbiAgICB9XG59XG5cbi5oaXN0b3J5IHtcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweFxufVxuXG4uaGlzdG9yeV9fcGVyaW9kIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW5cbn1cblxuLmhpc3RvcnlfX3BlcmlvZDpmaXJzdC1jaGlsZCAudGltZVN0YW1wIHtcbiAgICBtYXJnaW4tdG9wOiAwXG59XG5cbi5oaXN0b3J5X19wZXJpb2Q6Zmlyc3QtY2hpbGQgLnRpbWVTdGFtcDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lXG59XG5cbi5oaXN0b3J5X19zZXBhcmF0b3Ige1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4XG59XG5cbi5oaXN0b3J5IC50aW1lU3RhbXAge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgIG1hcmdpbi10b3A6IDcwcHhcbn1cblxuLmhpc3RvcnkuaGlzdG9yeS0tdGltZWxpbmUgLnRpbWVTdGFtcDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMzBweDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjhiNGY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTAwJVxufVxuXG4uaGlzdG9yeS5oaXN0b3J5LS10aW1lbGluZSAudGltZVN0YW1wOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTY4YjRmO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCVcbn1cblxuLmhpc3RvcnlUaW1lbGluZSB7XG4gICAgbWFyZ2luLXRvcDogODBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmhpc3RvcnlUaW1lbGluZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG59XG5cbi5oaXN0b3J5VGltZWxpbmVfX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHhcbn1cblxuLmhpc3RvcnlUaW1lbGluZV9fd3JhcHBlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjhiNGY7XG4gICAgcG9zaXRpb246IGFic29sdXRlXG59XG5cbi5oaXN0b3J5VGltZWxpbmUgLnRpbWVTdGFtcDpsYXN0LWNoaWxkIHtcbiAgICBsaW5lLWhlaWdodDogMjRweFxufVxuXG4uaGlzdG9yeVRpbWVsaW5lX19pdGVtRGVzY3JpcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoMTAwJSArIDE2cHgpO1xuICAgIGxlZnQ6IDA7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgIGNvbG9yOiAjMDQxYTMyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwXG59XG5cbi5nYWxsZXJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtNjBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmdhbGxlcnkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMzBweFxuICAgIH1cbn1cblxuLmdhbGxlcnlfX2l0ZW0ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmdhbGxlcnlfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZ2FsbGVyeV9faXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgfVxufVxuXG4uZ2FsbGVyeV9faW1hZ2VGaXRGcmFtZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDY4JTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlblxufVxuXG4uZ2FsbGVyeV9faW1hZ2VGaXRGcmFtZSBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLmdhbGxlcnlfX2ltYWdlRGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDEwcHhcbn1cblxuLmVtcGxveWVySW5mb19faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweFxufVxuXG4uZW1wbG95ZXJJbmZvX19hc3NldEluZm8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBtYXJnaW4tdG9wOiA1MHB4XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5lbXBsb3llckluZm9fX2Fzc2V0SW5mbyB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcFxuICAgIH1cbn1cblxuLmVtcGxveWVySW5mb19fYXNzZXREZXNjcmlwdGlvbiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4XG59XG5cbi5lbXBsb3llckluZm9fX2Fzc2V0RGVzY3JpcHRpb24gLmxpbmtFeHRlcm5hbCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMFxufVxuXG4uZW1wbG95ZXJJbmZvX19hc3NldEltYWdlV3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5lbXBsb3llckluZm9fX2Fzc2V0SW1hZ2VXcmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweFxuICAgIH1cbn1cblxuLmVtcGxveWVySW5mb19fYXNzZXRJbWFnZVdyYXBwZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9ja1xufVxuXG4uZW1wbG95ZXJJbmZvX19hc3NldEltYWdlV3JhcHBlciBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJVxufVxuXG4uYXBwbGljYXRpb25JbmZvIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHhcbn1cblxuLmFwcGxpY2F0aW9uSW5mb19faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweFxufVxuXG4uYXBwbGljYXRpb25JbmZvX19jb2x1bW4gcCArIHAsIC5hcHBsaWNhdGlvbkluZm9fX2NvbHVtbiBwICsgYSB7XG4gICAgbWFyZ2luLXRvcDogMjBweFxufVxuXG4ubW9yZUNvbnRlbnRMaW5rIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHhcbn1cblxuLm1vcmVDb250ZW50TGluayBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlclxufVxuXG4uZXJyb3I0MDQge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDkwcHgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyXG59XG5cbi5lcnJvcjQwNF9fZXJyb3JDb2RlIHtcbiAgICBmb250LWZhbWlseTogXCJicmFuZG9uLWdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxMDBweDtcbiAgICBsaW5lLWhlaWdodDogMVxufVxuXG4uZXJyb3I0MDRfX2hlYWRpbmcge1xuICAgIGZvbnQtZmFtaWx5OiBcImtlcGxlci1zdGQtZGlzcGxheVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMzJweCwgY2FsYygxZW0gKyAydncpLCA2MHB4KTtcbiAgICBtYXJnaW46IDQwcHggMjBweCA2MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG59XG5cbi5lcnJvcjQwNF9fdGV4dCBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZVxufVxuXG4uYW5jaG9yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMTEwcHhcbn1cblxuaHRtbCB7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGhcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogY2xhbXAoMXB4LCAwdncgKyAxcHgsIDFweCk7XG4gICAgcGFkZGluZy1ib3R0b206IGNsYW1wKDFweCwgMHZ3ICsgMXB4LCAxcHgpXG59XG5cbi5iYWNrZ3JvdW5kV3JhcHBlcl9fd2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICMwNDFhMzJcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlTGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY4ZmU7XG4gICAgY29sb3I6ICMwNDFhMzJcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI0NjkzO1xuICAgIGNvbG9yOiAjZmZmXG59XG5cbi5iYWNrZ3JvdW5kV3JhcHBlcl9fYmx1ZSAudGV4dEJsb2NrIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZVxufVxuXG4uYmFja2dyb3VuZFdyYXBwZXJfX2JsdWUgLnRleHRCbG9jayBhIHN2ZyBwYXRoIHtcbiAgICBzdHJva2U6ICNmZmZcbn1cblxuLmJhY2tncm91bmRXcmFwcGVyX19ibHVlIC50ZXh0QmxvY2sgaHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50XG59XG5cbi5iYWNrZ3JvdW5kV3JhcHBlcl9fYmx1ZSAudGV4dEJsb2NrIGhyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZlxufVxuXG4uY29sdW1uc1RleHRJbWFnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG59XG5cbi5jb2x1bW5zVGV4dEltYWdlIHtcbiAgICBtYXJnaW4tdG9wOiBjbGFtcCg1MHB4LCA0LjA4MTYzMjY1MzF2dyArIDM0LjY5Mzg3NzU1MXB4LCAxMDBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5jb2x1bW5zVGV4dEltYWdlIC50ZXh0QmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMFxufVxuXG4uY29sdW1uc1RleHRJbWFnZSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZVxufVxuXG4uY29sdW1uc1RleHRJbWFnZSBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweFxufVxuXG4uY29sdW1uc1RleHRJbWFnZSBsaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTYuNjgnIGhlaWdodD0nMTYuNzE3JyB2aWV3Qm94PScwIDAgMTYuNjggMTYuNzE3JyUzRSUzQ2cgaWQ9J0dydXBwZV82NjMwJyBkYXRhLW5hbWU9J0dydXBwZSA2NjMwJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtMzU5LjMzMSAtMzYwMy4zNzYpJyUzRSUzQ3JlY3QgaWQ9J1JlY2h0ZWNrXzEyMjgnIGRhdGEtbmFtZT0nUmVjaHRlY2sgMTIyOCcgd2lkdGg9JzkuNTc5JyBoZWlnaHQ9JzkuNTc5JyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgzNjMuOTAzIDM2MTAuNTE0KScgZmlsbD0nJTIzZDdlMjUxJy8lM0UlM0NwYXRoIGlkPSdTdHJva2VfMScgZGF0YS1uYW1lPSdTdHJva2UgMScgZD0nTTUuNjQ3LDEwLjM1OSw5LjcsMTQsMjAuODc3LDAnIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDM1NC4zNTMgMzYwNCknIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMDAwJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsZWZ0OiAwcHg7XG4gICAgdG9wOiA0cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlXG59XG5cbi5jb2x1bW5zVGV4dEltYWdlIC5tYXJnaW5TZWNvbmRDb2x1bW4ge1xuICAgIG1hcmdpbi10b3A6IDBcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY29sdW1uc1RleHRJbWFnZSAubWFyZ2luU2Vjb25kQ29sdW1uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweFxuICAgIH1cbn1cblxuLmNvbHVtbnNUZXh0SW1hZ2VfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHhcbn1cblxuLmNvbHVtbnNUZXh0SW1hZ2VfX2J0biB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4XG59XG5cbi5jb2x1bW5zVGV4dEltYWdlX19idG4gLmJ0biB7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLmNvbHVtbnNUZXh0SW1hZ2VfX2lsbHVzdHJhdGlvbkljb25XcmFwcGVyIHtcbiAgICB3aWR0aDogOHJlbTtcbiAgICBoZWlnaHQ6IGF1dG9cbn1cblxuLmNvbHVtbnNUZXh0SW1hZ2VfX2ljb25IZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICBtYXJnaW4tdG9wOiAxNnB4XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNvbHVtbnNUZXh0SW1hZ2VfX2ljb25IZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4XG4gICAgfVxufVxuXG4uY29sdW1uc1RleHRJbWFnZV9faWxsdXN0cmF0aW9uV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDMwMHB4XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNvbHVtbnNUZXh0SW1hZ2VfX2lsbHVzdHJhdGlvbldyYXBwZXIge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byA0MHB4XG4gICAgfVxufVxuXG4uY29sdW1uc1RleHRJbWFnZV9faWxsdXN0cmF0aW9uV3JhcHBlciBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmNvbHVtbnNUZXh0SW1hZ2VfX2lsbHVzdHJhdGlvbldyYXBwZXIgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn1cblxuLmNvbHVtbnNUZXh0SW1hZ2VfX2lsbHVzdHJhdGlvbldyYXBwZXIgc3ZnIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiBhdXRvXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNvbHVtbnNUZXh0SW1hZ2VfX2lsbHVzdHJhdGlvbldyYXBwZXIgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvXG4gICAgfVxufVxuXG4uY291bnRkb3duIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmOGZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW5cbn1cblxuLmNvdW50ZG93biB7XG4gICAgcGFkZGluZy10b3A6IGNsYW1wKDUwcHgsIDQuMDgxNjMyNjUzMXZ3ICsgMzQuNjkzODc3NTUxcHgsIDEwMHB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoNTBweCwgNC4wODE2MzI2NTMxdncgKyAzNC42OTM4Nzc1NTFweCwgMTAwcHgpXG59XG5cbi5jb3VudGRvd25fX3ByZUhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHhcbn1cblxuLmNvdW50ZG93bl9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweFxufVxuXG4uY291bnRkb3duX19pbnRybyB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4XG59XG5cbi5jb3VudGRvd25fX2J1dHRvbldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXJcbn1cblxuLmNvdW50ZG93biBbaWRePWhpZGRlbi1dIHtcbiAgICBkaXNwbGF5OiBub25lXG59XG5cbi5pbXByZXNzdW0ge1xuICAgIHBhZGRpbmctdG9wOiAxMDBweFxufVxuXG4uc2VhcmNoIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgbWluLWhlaWdodDogMTAwdmhcbn1cblxuLnNlYXJjaF9fcmVzdWx0Q291bnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICMwMjQ2OTM7XG4gICAgbWFyZ2luLXRvcDogMzhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzOHB4XG59XG5cbi5zZWFyY2hfX2l0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMiwgNzAsIDE0NywgLjEpO1xuICAgIHBhZGRpbmctYm90dG9tOiA4cHhcbn1cblxuLnNlYXJjaCBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IHNvbGlkIDFweCByZ2JhKDIsIDcwLCAxNDcsIC4xKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgbWFyZ2luLXRvcDogMTBweFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc2VhcmNoIGlucHV0W3R5cGU9dGV4dF0ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgICAgIGhlaWdodDogNTBweFxuICAgIH1cbn1cblxuLnNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOm5vdCg6cmVxdWlyZWQpICsgbGFiZWw6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIm9wdGlvbmFsXCI7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzhlOTE5NTtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsZXR0ZXItc3BhY2luZzogMFxufVxuXG4uc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzhlOTE5NVxufVxuXG4uc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzAyNDY5M1xufVxuXG4uc2VhcmNoX19saW5rIHtcbiAgICBjb2xvcjogIzAyNDY5M1xufVxuXG4uc2VhcmNoX19saW5rOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzA0MWEzMlxufVxuXG4uc2VhcmNoX19saW5rQWN0aXZlIHtcbiAgICBjb2xvcjogIzA0MWEzMlxufVxuXG4uc2VhcmNoX19saW5rRGlzYWJsZSB7XG4gICAgb3BhY2l0eTogLjQ7XG4gICAgY29sb3I6ICMwMjQ2OTNcbn1cblxuLnNlYXJjaF9fcGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDIwcHhcbn1cblxuLnNlYXJjaF9fcGFnaW5hdGlvbiA+IGEge1xuICAgIG1hcmdpbjogMTRweFxufVxuIiwiLmhlYWRlci1jb250ZW50IHtcbiAgcGFkZGluZzogMjBweCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDUwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgaDEge1xuICAgIGZvbnQtZmFtaWx5OiBcImtlcGxlci1zdGQtZGlzcGxheVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMzJweCwgY2FsYygxZW0gKyAydncpLCA1NnB4KTtcbiAgICBsaW5lLWhlaWdodDogY2FsYyg3MCAvIDU2KTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG59XG5cbiNtZXNzYWdlIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAyNDY5MztcbiAgdGV4dC13cmFwOiB3cmFwO1xufVxuIiwiLmhlYWRlci1jb250ZW50IHtcbiAgcGFkZGluZzogMjBweCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDUwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaGVhZGVyLWNvbnRlbnQgaDEge1xuICBmb250LWZhbWlseTogXCJrZXBsZXItc3RkLWRpc3BsYXlcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiBjbGFtcCgzMnB4LCAxZW0gKyAydncsIDU2cHgpO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuI21lc3NhZ2Uge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDI0NjkzO1xuICB0ZXh0LXdyYXA6IHdyYXA7XG59Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/