/*!
 * Bootstrap v5.0.0-beta3 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */

@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300;600;700;800&display=swap");
:root {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-primary: blue;
    --bs-dark: #000000;
    --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
}

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

@media (prefers-reduced-motion: no-preference) {
     :root {
        scroll-behavior: smooth;
    }
}

body {
    margin: 0;
    font-family: var(--bs-font-sans-serif);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
    margin: 1rem 0;
    color: inherit;
    background-color: currentColor;
    border: 0;
    opacity: 0.25;
}

hr:not([size]) {
    height: 1px;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-weight: 500;
    line-height: 1.2;
}

h1,
.h1 {
    font-size: calc(1.375rem + 1.5vw);
}

@media (min-width: 1200px) {
    h1,
    .h1 {
        font-size: 2.5rem;
    }
}

h2,
.h2 {
    font-size: calc(1.325rem + 0.9vw);
}

@media (min-width: 1200px) {
    h2,
    .h2 {
        font-size: 2rem;
    }
}

h3,
.h3 {
    font-size: calc(1.3rem + 0.6vw);
}

@media (min-width: 1200px) {
    h3,
    .h3 {
        font-size: 1.75rem;
    }
}

h4,
.h4 {
    font-size: calc(1.275rem + 0.3vw);
}

@media (min-width: 1200px) {
    h4,
    .h4 {
        font-size: 1.5rem;
    }
}

h5,
.h5 {
    font-size: 1.25rem;
}

h6,
.h6 {
    font-size: 1rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

abbr[title],
abbr[data-bs-original-title] {
    text-decoration: underline dotted;
    cursor: help;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

ol,
ul {
    padding-left: 2rem;
}

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0;
}

dt {
    font-weight: 700;
}

dd {
    margin-bottom: .5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small,
.small {
    font-size: 0.875em;
}

mark,
.mark {
    padding: 0.2em;
    background-color: #fcf8e3;
}

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

sub {
    bottom: -.25em;
}

sup {
    top: -.5em;
}

a {
    color: #0d6efd;
    text-decoration: underline;
}

a:hover {
    color: #0a58ca;
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}

pre,
code,
kbd,
samp {
    font-family: var(--bs-font-monospace);
    font-size: 1em;
    direction: ltr/* rtl:ignore */
    ;
    unicode-bidi: bidi-override;
}

pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: 0.875em;
}

pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal;
}

code {
    font-size: 0.875em;
    color: #d63384;
    word-wrap: break-word;
}

a>code {
    color: inherit;
}

kbd {
    padding: 0.2rem 0.4rem;
    font-size: 0.875em;
    color: #fff;
    background-color: #212529;
    border-radius: 0.2rem;
}

kbd kbd {
    padding: 0;
    font-size: 1em;
    font-weight: 700;
}

figure {
    margin: 0 0 1rem;
}

img,
svg {
    vertical-align: middle;
}

table {
    caption-side: bottom;
    border-collapse: collapse;
}

caption {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: #6c757d;
    text-align: left;
}

th {
    text-align: inherit;
    text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
    border-color: inherit;
    border-style: solid;
    border-width: 0;
}

label {
    display: inline-block;
}

button {
    border-radius: 0;
}

button:focus:not(:focus-visible) {
    outline: 0;
}

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

button,
select {
    text-transform: none;
}

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

select {
    word-wrap: normal;
}

select:disabled {
    opacity: 1;
}

[list]::-webkit-calendar-picker-indicator {
    display: none;
}

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

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
    cursor: pointer;
}

::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

textarea {
    resize: vertical;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: 0.5rem;
    font-size: calc(1.275rem + 0.3vw);
    line-height: inherit;
}

@media (min-width: 1200px) {
    legend {
        font-size: 1.5rem;
    }
}

legend+* {
    clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
    padding: 0;
}

::-webkit-inner-spin-button {
    height: auto;
}

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


/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/

::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
    padding: 0;
}

::file-selector-button {
    font: inherit;
}

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

output {
    display: inline-block;
}

iframe {
    border: 0;
}

summary {
    display: list-item;
    cursor: pointer;
}

progress {
    vertical-align: baseline;
}

[hidden] {
    display: none !important;
}

.lead {
    font-size: 1.25rem;
    font-weight: 300;
}

.display-1 {
    font-size: calc(1.625rem + 4.5vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-1 {
        font-size: 5rem;
    }
}

.display-2 {
    font-size: calc(1.575rem + 3.9vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-2 {
        font-size: 4.5rem;
    }
}

.display-3 {
    font-size: calc(1.525rem + 3.3vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-3 {
        font-size: 4rem;
    }
}

.display-4 {
    font-size: calc(1.475rem + 2.7vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-4 {
        font-size: 3.5rem;
    }
}

.display-5 {
    font-size: calc(1.425rem + 2.1vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-5 {
        font-size: 3rem;
    }
}

.display-6 {
    font-size: calc(1.375rem + 1.5vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-6 {
        font-size: 2.5rem;
    }
}

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

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

.list-inline-item {
    display: inline-block;
}

.list-inline-item:not(:last-child) {
    margin-right: 0.5rem;
}

.initialism {
    font-size: 0.875em;
    text-transform: uppercase;
}

.blockquote {
    margin-bottom: 1rem;
    font-size: 1.25rem;
}

.blockquote> :last-child {
    margin-bottom: 0;
}

.blockquote-footer {
    margin-top: -1rem;
    margin-bottom: 1rem;
    font-size: 0.875em;
    color: #6c757d;
}

.blockquote-footer::before {
    content: "\2014\00A0";
}

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

.img-thumbnail {
    padding: 0.25rem;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: 0.25rem;
    max-width: 100%;
    height: auto;
}

.figure {
    display: inline-block;
}

.figure-img {
    margin-bottom: 0.5rem;
    line-height: 1;
}

.figure-caption {
    font-size: 0.875em;
    color: #6c757d;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl {
    width: 100%;
    padding-right: var(--bs-gutter-x, 0.75rem);
    padding-left: var(--bs-gutter-x, 0.75rem);
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .container,
    .container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container,
    .container-sm,
    .container-md {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container,
    .container-sm,
    .container-md,
    .container-lg {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container,
    .container-sm,
    .container-md,
    .container-lg,
    .container-xl {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .container,
    .container-sm,
    .container-md,
    .container-lg,
    .container-xl,
    .container-xxl {
        max-width: 1320px;
    }
}

.row {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(var(--bs-gutter-y) * -1);
    margin-right: calc(var(--bs-gutter-x) / -2);
    margin-left: calc(var(--bs-gutter-x) / -2);
}

.row>* {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) / 2);
    padding-left: calc(var(--bs-gutter-x) / 2);
    margin-top: var(--bs-gutter-y);
}

.col {
    flex: 1 0 0%;
}

.row-cols-auto>* {
    flex: 0 0 auto;
    width: auto;
}

.row-cols-1>* {
    flex: 0 0 auto;
    width: 100%;
}

.row-cols-2>* {
    flex: 0 0 auto;
    width: 50%;
}

.row-cols-3>* {
    flex: 0 0 auto;
    width: 33.33333%;
}

.row-cols-4>* {
    flex: 0 0 auto;
    width: 25%;
}

.row-cols-5>* {
    flex: 0 0 auto;
    width: 20%;
}

.row-cols-6>* {
    flex: 0 0 auto;
    width: 16.66667%;
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
}

.col-1 {
    flex: 0 0 auto;
    width: 8.33333%;
}

.col-2 {
    flex: 0 0 auto;
    width: 16.66667%;
}

.col-3 {
    flex: 0 0 auto;
    width: 25%;
}

.col-4 {
    flex: 0 0 auto;
    width: 33.33333%;
}

.col-5 {
    flex: 0 0 auto;
    width: 41.66667%;
}

.col-6 {
    flex: 0 0 auto;
    width: 50%;
}

.col-7 {
    flex: 0 0 auto;
    width: 58.33333%;
}

.col-8 {
    flex: 0 0 auto;
    width: 66.66667%;
}

.col-9 {
    flex: 0 0 auto;
    width: 75%;
}

.col-10 {
    flex: 0 0 auto;
    width: 83.33333%;
}

.col-11 {
    flex: 0 0 auto;
    width: 91.66667%;
}

.col-12 {
    flex: 0 0 auto;
    width: 100%;
}

.offset-1 {
    margin-left: 8.33333%;
}

.offset-2 {
    margin-left: 16.66667%;
}

.offset-3 {
    margin-left: 25%;
}

.offset-4 {
    margin-left: 33.33333%;
}

.offset-5 {
    margin-left: 41.66667%;
}

.offset-6 {
    margin-left: 50%;
}

.offset-7 {
    margin-left: 58.33333%;
}

.offset-8 {
    margin-left: 66.66667%;
}

.offset-9 {
    margin-left: 75%;
}

.offset-10 {
    margin-left: 83.33333%;
}

.offset-11 {
    margin-left: 91.66667%;
}

.g-0,
.gx-0 {
    --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
    --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
    --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
    --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
    --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
    --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
    --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
    --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
    --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
    --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
    --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
    --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
    .col-sm {
        flex: 1 0 0%;
    }
    .row-cols-sm-auto>* {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-sm-1>* {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-sm-2>* {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-sm-3>* {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .row-cols-sm-4>* {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-sm-5>* {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-sm-6>* {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-sm-1 {
        flex: 0 0 auto;
        width: 8.33333%;
    }
    .col-sm-2 {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-sm-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-sm-4 {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .col-sm-5 {
        flex: 0 0 auto;
        width: 41.66667%;
    }
    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-sm-7 {
        flex: 0 0 auto;
        width: 58.33333%;
    }
    .col-sm-8 {
        flex: 0 0 auto;
        width: 66.66667%;
    }
    .col-sm-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-sm-10 {
        flex: 0 0 auto;
        width: 83.33333%;
    }
    .col-sm-11 {
        flex: 0 0 auto;
        width: 91.66667%;
    }
    .col-sm-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-sm-0 {
        margin-left: 0;
    }
    .offset-sm-1 {
        margin-left: 8.33333%;
    }
    .offset-sm-2 {
        margin-left: 16.66667%;
    }
    .offset-sm-3 {
        margin-left: 25%;
    }
    .offset-sm-4 {
        margin-left: 33.33333%;
    }
    .offset-sm-5 {
        margin-left: 41.66667%;
    }
    .offset-sm-6 {
        margin-left: 50%;
    }
    .offset-sm-7 {
        margin-left: 58.33333%;
    }
    .offset-sm-8 {
        margin-left: 66.66667%;
    }
    .offset-sm-9 {
        margin-left: 75%;
    }
    .offset-sm-10 {
        margin-left: 83.33333%;
    }
    .offset-sm-11 {
        margin-left: 91.66667%;
    }
    .g-sm-0,
    .gx-sm-0 {
        --bs-gutter-x: 0;
    }
    .g-sm-0,
    .gy-sm-0 {
        --bs-gutter-y: 0;
    }
    .g-sm-1,
    .gx-sm-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-sm-1,
    .gy-sm-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-sm-2,
    .gx-sm-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-sm-2,
    .gy-sm-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-sm-3,
    .gx-sm-3 {
        --bs-gutter-x: 1rem;
    }
    .g-sm-3,
    .gy-sm-3 {
        --bs-gutter-y: 1rem;
    }
    .g-sm-4,
    .gx-sm-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-sm-4,
    .gy-sm-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-sm-5,
    .gx-sm-5 {
        --bs-gutter-x: 3rem;
    }
    .g-sm-5,
    .gy-sm-5 {
        --bs-gutter-y: 3rem;
    }
}

@media (min-width: 768px) {
    .col-md {
        flex: 1 0 0%;
    }
    .row-cols-md-auto>* {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-md-1>* {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-md-2>* {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-md-3>* {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .row-cols-md-4>* {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-md-5>* {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-md-6>* {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-md-1 {
        flex: 0 0 auto;
        width: 8.33333%;
    }
    .col-md-2 {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-md-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-md-4 {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .col-md-5 {
        flex: 0 0 auto;
        width: 41.66667%;
    }
    .col-md-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-md-7 {
        flex: 0 0 auto;
        width: 58.33333%;
    }
    .col-md-8 {
        flex: 0 0 auto;
        width: 66.66667%;
    }
    .col-md-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-md-10 {
        flex: 0 0 auto;
        width: 83.33333%;
    }
    .col-md-11 {
        flex: 0 0 auto;
        width: 91.66667%;
    }
    .col-md-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-md-0 {
        margin-left: 0;
    }
    .offset-md-1 {
        margin-left: 8.33333%;
    }
    .offset-md-2 {
        margin-left: 16.66667%;
    }
    .offset-md-3 {
        margin-left: 25%;
    }
    .offset-md-4 {
        margin-left: 33.33333%;
    }
    .offset-md-5 {
        margin-left: 41.66667%;
    }
    .offset-md-6 {
        margin-left: 50%;
    }
    .offset-md-7 {
        margin-left: 58.33333%;
    }
    .offset-md-8 {
        margin-left: 66.66667%;
    }
    .offset-md-9 {
        margin-left: 75%;
    }
    .offset-md-10 {
        margin-left: 83.33333%;
    }
    .offset-md-11 {
        margin-left: 91.66667%;
    }
    .g-md-0,
    .gx-md-0 {
        --bs-gutter-x: 0;
    }
    .g-md-0,
    .gy-md-0 {
        --bs-gutter-y: 0;
    }
    .g-md-1,
    .gx-md-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-md-1,
    .gy-md-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-md-2,
    .gx-md-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-md-2,
    .gy-md-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-md-3,
    .gx-md-3 {
        --bs-gutter-x: 1rem;
    }
    .g-md-3,
    .gy-md-3 {
        --bs-gutter-y: 1rem;
    }
    .g-md-4,
    .gx-md-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-md-4,
    .gy-md-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-md-5,
    .gx-md-5 {
        --bs-gutter-x: 3rem;
    }
    .g-md-5,
    .gy-md-5 {
        --bs-gutter-y: 3rem;
    }
}

@media (min-width: 992px) {
    .col-lg {
        flex: 1 0 0%;
    }
    .row-cols-lg-auto>* {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-lg-1>* {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-lg-2>* {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-lg-3>* {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .row-cols-lg-4>* {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-lg-5>* {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-lg-6>* {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-lg-1 {
        flex: 0 0 auto;
        width: 8.33333%;
    }
    .col-lg-2 {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-lg-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .col-lg-5 {
        flex: 0 0 auto;
        width: 41.66667%;
    }
    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-lg-7 {
        flex: 0 0 auto;
        width: 58.33333%;
    }
    .col-lg-8 {
        flex: 0 0 auto;
        width: 66.66667%;
    }
    .col-lg-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-lg-10 {
        flex: 0 0 auto;
        width: 83.33333%;
    }
    .col-lg-11 {
        flex: 0 0 auto;
        width: 91.66667%;
    }
    .col-lg-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-lg-0 {
        margin-left: 0;
    }
    .offset-lg-1 {
        margin-left: 8.33333%;
    }
    .offset-lg-2 {
        margin-left: 16.66667%;
    }
    .offset-lg-3 {
        margin-left: 25%;
    }
    .offset-lg-4 {
        margin-left: 33.33333%;
    }
    .offset-lg-5 {
        margin-left: 41.66667%;
    }
    .offset-lg-6 {
        margin-left: 50%;
    }
    .offset-lg-7 {
        margin-left: 58.33333%;
    }
    .offset-lg-8 {
        margin-left: 66.66667%;
    }
    .offset-lg-9 {
        margin-left: 75%;
    }
    .offset-lg-10 {
        margin-left: 83.33333%;
    }
    .offset-lg-11 {
        margin-left: 91.66667%;
    }
    .g-lg-0,
    .gx-lg-0 {
        --bs-gutter-x: 0;
    }
    .g-lg-0,
    .gy-lg-0 {
        --bs-gutter-y: 0;
    }
    .g-lg-1,
    .gx-lg-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-lg-1,
    .gy-lg-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-lg-2,
    .gx-lg-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-lg-2,
    .gy-lg-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-lg-3,
    .gx-lg-3 {
        --bs-gutter-x: 1rem;
    }
    .g-lg-3,
    .gy-lg-3 {
        --bs-gutter-y: 1rem;
    }
    .g-lg-4,
    .gx-lg-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-lg-4,
    .gy-lg-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-lg-5,
    .gx-lg-5 {
        --bs-gutter-x: 3rem;
    }
    .g-lg-5,
    .gy-lg-5 {
        --bs-gutter-y: 3rem;
    }
}

@media (min-width: 1200px) {
    .col-xl {
        flex: 1 0 0%;
    }
    .row-cols-xl-auto>* {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-xl-1>* {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-xl-2>* {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-xl-3>* {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .row-cols-xl-4>* {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-xl-5>* {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-xl-6>* {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-xl-1 {
        flex: 0 0 auto;
        width: 8.33333%;
    }
    .col-xl-2 {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-xl-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-xl-4 {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .col-xl-5 {
        flex: 0 0 auto;
        width: 41.66667%;
    }
    .col-xl-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-xl-7 {
        flex: 0 0 auto;
        width: 58.33333%;
    }
    .col-xl-8 {
        flex: 0 0 auto;
        width: 66.66667%;
    }
    .col-xl-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-xl-10 {
        flex: 0 0 auto;
        width: 83.33333%;
    }
    .col-xl-11 {
        flex: 0 0 auto;
        width: 91.66667%;
    }
    .col-xl-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-xl-0 {
        margin-left: 0;
    }
    .offset-xl-1 {
        margin-left: 8.33333%;
    }
    .offset-xl-2 {
        margin-left: 16.66667%;
    }
    .offset-xl-3 {
        margin-left: 25%;
    }
    .offset-xl-4 {
        margin-left: 33.33333%;
    }
    .offset-xl-5 {
        margin-left: 41.66667%;
    }
    .offset-xl-6 {
        margin-left: 50%;
    }
    .offset-xl-7 {
        margin-left: 58.33333%;
    }
    .offset-xl-8 {
        margin-left: 66.66667%;
    }
    .offset-xl-9 {
        margin-left: 75%;
    }
    .offset-xl-10 {
        margin-left: 83.33333%;
    }
    .offset-xl-11 {
        margin-left: 91.66667%;
    }
    .g-xl-0,
    .gx-xl-0 {
        --bs-gutter-x: 0;
    }
    .g-xl-0,
    .gy-xl-0 {
        --bs-gutter-y: 0;
    }
    .g-xl-1,
    .gx-xl-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-xl-1,
    .gy-xl-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-xl-2,
    .gx-xl-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-xl-2,
    .gy-xl-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-xl-3,
    .gx-xl-3 {
        --bs-gutter-x: 1rem;
    }
    .g-xl-3,
    .gy-xl-3 {
        --bs-gutter-y: 1rem;
    }
    .g-xl-4,
    .gx-xl-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-xl-4,
    .gy-xl-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-xl-5,
    .gx-xl-5 {
        --bs-gutter-x: 3rem;
    }
    .g-xl-5,
    .gy-xl-5 {
        --bs-gutter-y: 3rem;
    }
}

@media (min-width: 1400px) {
    .col-xxl {
        flex: 1 0 0%;
    }
    .row-cols-xxl-auto>* {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-xxl-1>* {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-xxl-2>* {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-xxl-3>* {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .row-cols-xxl-4>* {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-xxl-5>* {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-xxl-6>* {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-xxl-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-xxl-1 {
        flex: 0 0 auto;
        width: 8.33333%;
    }
    .col-xxl-2 {
        flex: 0 0 auto;
        width: 16.66667%;
    }
    .col-xxl-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-xxl-4 {
        flex: 0 0 auto;
        width: 33.33333%;
    }
    .col-xxl-5 {
        flex: 0 0 auto;
        width: 41.66667%;
    }
    .col-xxl-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-xxl-7 {
        flex: 0 0 auto;
        width: 58.33333%;
    }
    .col-xxl-8 {
        flex: 0 0 auto;
        width: 66.66667%;
    }
    .col-xxl-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-xxl-10 {
        flex: 0 0 auto;
        width: 83.33333%;
    }
    .col-xxl-11 {
        flex: 0 0 auto;
        width: 91.66667%;
    }
    .col-xxl-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-xxl-0 {
        margin-left: 0;
    }
    .offset-xxl-1 {
        margin-left: 8.33333%;
    }
    .offset-xxl-2 {
        margin-left: 16.66667%;
    }
    .offset-xxl-3 {
        margin-left: 25%;
    }
    .offset-xxl-4 {
        margin-left: 33.33333%;
    }
    .offset-xxl-5 {
        margin-left: 41.66667%;
    }
    .offset-xxl-6 {
        margin-left: 50%;
    }
    .offset-xxl-7 {
        margin-left: 58.33333%;
    }
    .offset-xxl-8 {
        margin-left: 66.66667%;
    }
    .offset-xxl-9 {
        margin-left: 75%;
    }
    .offset-xxl-10 {
        margin-left: 83.33333%;
    }
    .offset-xxl-11 {
        margin-left: 91.66667%;
    }
    .g-xxl-0,
    .gx-xxl-0 {
        --bs-gutter-x: 0;
    }
    .g-xxl-0,
    .gy-xxl-0 {
        --bs-gutter-y: 0;
    }
    .g-xxl-1,
    .gx-xxl-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-xxl-1,
    .gy-xxl-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-xxl-2,
    .gx-xxl-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-xxl-2,
    .gy-xxl-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-xxl-3,
    .gx-xxl-3 {
        --bs-gutter-x: 1rem;
    }
    .g-xxl-3,
    .gy-xxl-3 {
        --bs-gutter-y: 1rem;
    }
    .g-xxl-4,
    .gx-xxl-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-xxl-4,
    .gy-xxl-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-xxl-5,
    .gx-xxl-5 {
        --bs-gutter-x: 3rem;
    }
    .g-xxl-5,
    .gy-xxl-5 {
        --bs-gutter-y: 3rem;
    }
}

.table {
    --bs-table-bg: transparent;
    --bs-table-striped-color: #212529;
    --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
    --bs-table-active-color: #212529;
    --bs-table-active-bg: rgba(0, 0, 0, 0.1);
    --bs-table-hover-color: #212529;
    --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
    width: 100%;
    margin-bottom: 1rem;
    color: #212529;
    vertical-align: top;
    border-color: #dee2e6;
}

.table> :not(caption)>*>* {
    padding: 0.5rem 0.5rem;
    background-color: var(--bs-table-bg);
    border-bottom-width: 1px;
    box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}

.table>tbody {
    vertical-align: inherit;
}

.table>thead {
    vertical-align: bottom;
}

.table> :not(:last-child)> :last-child>* {
    border-bottom-color: currentColor;
}

.caption-top {
    caption-side: top;
}

.table-sm> :not(caption)>*>* {
    padding: 0.25rem 0.25rem;
}

.table-bordered> :not(caption)>* {
    border-width: 1px 0;
}

.table-bordered> :not(caption)>*>* {
    border-width: 0 1px;
}

.table-borderless> :not(caption)>*>* {
    border-bottom-width: 0;
}

.table-striped>tbody>tr:nth-of-type(odd) {
    --bs-table-accent-bg: var(--bs-table-striped-bg);
    color: var(--bs-table-striped-color);
}

.table-active {
    --bs-table-accent-bg: var(--bs-table-active-bg);
    color: var(--bs-table-active-color);
}

.table-hover>tbody>tr:hover {
    --bs-table-accent-bg: var(--bs-table-hover-bg);
    color: var(--bs-table-hover-color);
}

.table-primary {
    --bs-table-bg: #cfe2ff;
    --bs-table-striped-bg: #c5d7f2;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #bacbe6;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #bfd1ec;
    --bs-table-hover-color: #000;
    color: #000;
    border-color: #bacbe6;
}

.table-secondary {
    --bs-table-bg: #e2e3e5;
    --bs-table-striped-bg: #d7d8da;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #cbccce;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #d1d2d4;
    --bs-table-hover-color: #000;
    color: #000;
    border-color: #cbccce;
}

.table-success {
    --bs-table-bg: #d1e7dd;
    --bs-table-striped-bg: #c7dbd2;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #bcd0c7;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #c1d6cc;
    --bs-table-hover-color: #000;
    color: #000;
    border-color: #bcd0c7;
}

.table-info {
    --bs-table-bg: #cff4fc;
    --bs-table-striped-bg: #c5e8ef;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #badce3;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #bfe2e9;
    --bs-table-hover-color: #000;
    color: #000;
    border-color: #badce3;
}

.table-warning {
    --bs-table-bg: #fff3cd;
    --bs-table-striped-bg: #f2e7c3;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #e6dbb9;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #ece1be;
    --bs-table-hover-color: #000;
    color: #000;
    border-color: #e6dbb9;
}

.table-danger {
    --bs-table-bg: #f8d7da;
    --bs-table-striped-bg: #eccccf;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #dfc2c4;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #e5c7ca;
    --bs-table-hover-color: #000;
    color: #000;
    border-color: #dfc2c4;
}

.table-light {
    --bs-table-bg: #f8f9fa;
    --bs-table-striped-bg: #ecedee;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #dfe0e1;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #e5e6e7;
    --bs-table-hover-color: #000;
    color: #000;
    border-color: #dfe0e1;
}

.table-dark {
    --bs-table-bg: #212529;
    --bs-table-striped-bg: #2c3034;
    --bs-table-striped-color: #fff;
    --bs-table-active-bg: #373b3e;
    --bs-table-active-color: #fff;
    --bs-table-hover-bg: #323539;
    --bs-table-hover-color: #fff;
    color: #fff;
    border-color: #373b3e;
}

.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 575.98px) {
    .table-responsive-sm {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 767.98px) {
    .table-responsive-md {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 991.98px) {
    .table-responsive-lg {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 1199.98px) {
    .table-responsive-xl {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 1399.98px) {
    .table-responsive-xxl {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

.form-label {
    margin-bottom: 0.5rem;
}

.col-form-label {
    padding-top: calc(0.375rem + 1px);
    padding-bottom: calc(0.375rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
}

.col-form-label-lg {
    padding-top: calc(0.5rem + 1px);
    padding-bottom: calc(0.5rem + 1px);
    font-size: 1.25rem;
}

.col-form-label-sm {
    padding-top: calc(0.25rem + 1px);
    padding-bottom: calc(0.25rem + 1px);
    font-size: 0.875rem;
}

.form-text {
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: #6c757d;
}

.form-control {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    appearance: none;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control {
        transition: none;
    }
}

.form-control[type="file"] {
    overflow: hidden;
}

.form-control[type="file"]:not(:disabled):not([readonly]) {
    cursor: pointer;
}

.form-control:focus {
    color: #212529;
    background-color: #fff;
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-control::-webkit-date-and-time-value {
    height: 1.5em;
}

.form-control::placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1;
}

.form-control::file-selector-button {
    padding: 0.375rem 0.75rem;
    margin: -0.375rem -0.75rem;
    margin-inline-end: 0.75rem;
    color: #212529;
    background-color: #e9ecef;
    pointer-events: none;
    border-color: inherit;
    border-style: solid;
    border-width: 0;
    border-inline-end-width: 1px;
    border-radius: 0;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control::file-selector-button {
        transition: none;
    }
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
    background-color: #dde0e3;
}

.form-control::-webkit-file-upload-button {
    padding: 0.375rem 0.75rem;
    margin: -0.375rem -0.75rem;
    margin-inline-end: 0.75rem;
    color: #212529;
    background-color: #e9ecef;
    pointer-events: none;
    border-color: inherit;
    border-style: solid;
    border-width: 0;
    border-inline-end-width: 1px;
    border-radius: 0;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control::-webkit-file-upload-button {
        transition: none;
    }
}

.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
    background-color: #dde0e3;
}

.form-control-plaintext {
    display: block;
    width: 100%;
    padding: 0.375rem 0;
    margin-bottom: 0;
    line-height: 1.5;
    color: #212529;
    background-color: transparent;
    border: solid transparent;
    border-width: 1px 0;
}

.form-control-plaintext.form-control-sm,
.form-control-plaintext.form-control-lg {
    padding-right: 0;
    padding-left: 0;
}

.form-control-sm {
    min-height: calc(1.5em + 0.5rem + 2px);
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    border-radius: 0.2rem;
}

.form-control-sm::file-selector-button {
    padding: 0.25rem 0.5rem;
    margin: -0.25rem -0.5rem;
    margin-inline-end: 0.5rem;
}

.form-control-sm::-webkit-file-upload-button {
    padding: 0.25rem 0.5rem;
    margin: -0.25rem -0.5rem;
    margin-inline-end: 0.5rem;
}

.form-control-lg {
    min-height: calc(1.5em + 1rem + 2px);
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: 0.3rem;
}

.form-control-lg::file-selector-button {
    padding: 0.5rem 1rem;
    margin: -0.5rem -1rem;
    margin-inline-end: 1rem;
}

.form-control-lg::-webkit-file-upload-button {
    padding: 0.5rem 1rem;
    margin: -0.5rem -1rem;
    margin-inline-end: 1rem;
}

textarea.form-control {
    min-height: calc(1.5em + 0.75rem + 2px);
}

textarea.form-control-sm {
    min-height: calc(1.5em + 0.5rem + 2px);
}

textarea.form-control-lg {
    min-height: calc(1.5em + 1rem + 2px);
}

.form-control-color {
    max-width: 3rem;
    height: auto;
    padding: 0.375rem;
}

.form-control-color:not(:disabled):not([readonly]) {
    cursor: pointer;
}

.form-control-color::-moz-color-swatch {
    height: 1.5em;
    border-radius: 0.25rem;
}

.form-control-color::-webkit-color-swatch {
    height: 1.5em;
    border-radius: 0.25rem;
}

.form-select {
    display: block;
    width: 100%;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    appearance: none;
}

.form-select:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-select[multiple],
.form-select[size]:not([size="1"]) {
    padding-right: 0.75rem;
    background-image: none;
}

.form-select:disabled {
    background-color: #e9ecef;
}

.form-select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #212529;
}

.form-select-sm {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-left: 0.5rem;
    font-size: 0.875rem;
}

.form-select-lg {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1rem;
    font-size: 1.25rem;
}

.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: 0.125rem;
}

.form-check .form-check-input {
    float: left;
    margin-left: -1.5em;
}

.form-check-input {
    width: 1em;
    height: 1em;
    margin-top: 0.25em;
    vertical-align: top;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid rgba(0, 0, 0, 0.25);
    appearance: none;
    color-adjust: exact;
}

.form-check-input[type="checkbox"] {
    border-radius: 0.25em;
}

.form-check-input[type="radio"] {
    border-radius: 50%;
}

.form-check-input:active {
    filter: brightness(90%);
}

.form-check-input:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-check-input:checked {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.form-check-input:checked[type="checkbox"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

.form-check-input:checked[type="radio"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}

.form-check-input[type="checkbox"]:indeterminate {
    background-color: #0d6efd;
    border-color: #0d6efd;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}

.form-check-input:disabled {
    pointer-events: none;
    filter: none;
    opacity: 0.5;
}

.form-check-input[disabled]~.form-check-label,
.form-check-input:disabled~.form-check-label {
    opacity: 0.5;
}

.form-switch {
    padding-left: 2.5em;
}

.form-switch .form-check-input {
    width: 2em;
    margin-left: -2.5em;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
    background-position: left center;
    border-radius: 2em;
    transition: background-position 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-switch .form-check-input {
        transition: none;
    }
}

.form-switch .form-check-input:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
}

.form-switch .form-check-input:checked {
    background-position: right center;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.form-check-inline {
    display: inline-block;
    margin-right: 1rem;
}

.btn-check {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}

.btn-check[disabled]+.btn,
.btn-check:disabled+.btn {
    pointer-events: none;
    filter: none;
    opacity: 0.65;
}

.form-range {
    width: 100%;
    height: 1.5rem;
    padding: 0;
    background-color: transparent;
    appearance: none;
}

.form-range:focus {
    outline: 0;
}

.form-range:focus::-webkit-slider-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-range:focus::-moz-range-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-range::-moz-focus-outer {
    border: 0;
}

.form-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #0d6efd;
    border: 0;
    border-radius: 1rem;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-range::-webkit-slider-thumb {
        transition: none;
    }
}

.form-range::-webkit-slider-thumb:active {
    background-color: #b6d4fe;
}

.form-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem;
}

.form-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #0d6efd;
    border: 0;
    border-radius: 1rem;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-range::-moz-range-thumb {
        transition: none;
    }
}

.form-range::-moz-range-thumb:active {
    background-color: #b6d4fe;
}

.form-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem;
}

.form-range:disabled {
    pointer-events: none;
}

.form-range:disabled::-webkit-slider-thumb {
    background-color: #adb5bd;
}

.form-range:disabled::-moz-range-thumb {
    background-color: #adb5bd;
}

.form-floating {
    position: relative;
}

.form-floating>.form-control,
.form-floating>.form-select {
    height: calc(3.5rem + 2px);
    padding: 1rem 0.75rem;
}

.form-floating>label {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    padding: 1rem 0.75rem;
    pointer-events: none;
    border: 1px solid transparent;
    transform-origin: 0 0;
    transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-floating>label {
        transition: none;
    }
}

.form-floating>.form-control::placeholder {
    color: transparent;
}

.form-floating>.form-control:focus,
.form-floating>.form-control:not(:placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-control:-webkit-autofill {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-select {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-control:focus~label,
.form-floating>.form-control:not(:placeholder-shown)~label,
.form-floating>.form-select~label {
    opacity: 0.65;
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating>.form-control:-webkit-autofill~label {
    opacity: 0.65;
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}

.input-group>.form-control,
.input-group>.form-select {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}

.input-group>.form-control:focus,
.input-group>.form-select:focus {
    z-index: 3;
}

.input-group .btn {
    position: relative;
    z-index: 2;
}

.input-group .btn:focus {
    z-index: 3;
}

.input-group-text {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
}

.input-group-lg>.form-control,
.input-group-lg>.form-select,
.input-group-lg>.input-group-text,
.input-group-lg>.btn {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: 0.3rem;
}

.input-group-sm>.form-control,
.input-group-sm>.form-select,
.input-group-sm>.input-group-text,
.input-group-sm>.btn {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    border-radius: 0.2rem;
}

.input-group-lg>.form-select,
.input-group-sm>.form-select {
    padding-right: 3rem;
}

.input-group:not(.has-validation)> :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),
.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group.has-validation> :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),
.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group> :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    margin-left: -1px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.valid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: #198754;
}

.valid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: .1rem;
    font-size: 0.875rem;
    color: #fff;
    background-color: rgba(25, 135, 84, 0.9);
    border-radius: 0.25rem;
}

.was-validated :valid~.valid-feedback,
.was-validated :valid~.valid-tooltip,
.is-valid~.valid-feedback,
.is-valid~.valid-tooltip {
    display: block;
}

.was-validated .form-control:valid,
.form-control.is-valid {
    border-color: #198754;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus,
.form-control.is-valid:focus {
    border-color: #198754;
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.was-validated textarea.form-control:valid,
textarea.form-control.is-valid {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .form-select:valid,
.form-select.is-valid {
    border-color: #198754;
    padding-right: 4.125rem;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-position: right 0.75rem center, center right 2.25rem;
    background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-select:valid:focus,
.form-select.is-valid:focus {
    border-color: #198754;
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.was-validated .form-check-input:valid,
.form-check-input.is-valid {
    border-color: #198754;
}

.was-validated .form-check-input:valid:checked,
.form-check-input.is-valid:checked {
    background-color: #198754;
}

.was-validated .form-check-input:valid:focus,
.form-check-input.is-valid:focus {
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.was-validated .form-check-input:valid~.form-check-label,
.form-check-input.is-valid~.form-check-label {
    color: #198754;
}

.form-check-inline .form-check-input~.valid-feedback {
    margin-left: .5em;
}

.was-validated .input-group .form-control:valid,
.input-group .form-control.is-valid,
.was-validated .input-group .form-select:valid,
.input-group .form-select.is-valid {
    z-index: 3;
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: #dc3545;
}

.invalid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: .1rem;
    font-size: 0.875rem;
    color: #fff;
    background-color: rgba(220, 53, 69, 0.9);
    border-radius: 0.25rem;
}

.was-validated :invalid~.invalid-feedback,
.was-validated :invalid~.invalid-tooltip,
.is-invalid~.invalid-feedback,
.is-invalid~.invalid-tooltip {
    display: block;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
    border-color: #dc3545;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:invalid:focus,
.form-control.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

.was-validated textarea.form-control:invalid,
textarea.form-control.is-invalid {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .form-select:invalid,
.form-select.is-invalid {
    border-color: #dc3545;
    padding-right: 4.125rem;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-position: right 0.75rem center, center right 2.25rem;
    background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-select:invalid:focus,
.form-select.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-check-input:invalid,
.form-check-input.is-invalid {
    border-color: #dc3545;
}

.was-validated .form-check-input:invalid:checked,
.form-check-input.is-invalid:checked {
    background-color: #dc3545;
}

.was-validated .form-check-input:invalid:focus,
.form-check-input.is-invalid:focus {
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-check-input:invalid~.form-check-label,
.form-check-input.is-invalid~.form-check-label {
    color: #dc3545;
}

.form-check-inline .form-check-input~.invalid-feedback {
    margin-left: .5em;
}

.was-validated .input-group .form-control:invalid,
.input-group .form-control.is-invalid,
.was-validated .input-group .form-select:invalid,
.input-group .form-select.is-invalid {
    z-index: 3;
}

.btn {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    border-radius: 0.25rem;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .btn {
        transition: none;
    }
}

.btn:hover {
    color: #212529;
}

.btn-check:focus+.btn,
.btn:focus {
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.btn:disabled,
.btn.disabled,
fieldset:disabled .btn {
    pointer-events: none;
    opacity: 0.65;
}

.btn-primary {
    color: #fff;
    background-color: blue;
    border-color: blue;
}

.btn-primary:hover {
    color: #fff;
    background-color: #0000d9;
    border-color: #0000cc;
}

.btn-check:focus+.btn-primary,
.btn-primary:focus {
    color: #fff;
    background-color: #0000d9;
    border-color: #0000cc;
    box-shadow: 0 0 0 0.25rem rgba(38, 38, 255, 0.5);
}

.btn-check:checked+.btn-primary,
.btn-check:active+.btn-primary,
.btn-primary:active,
.btn-primary.active,
.show>.btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #0000cc;
    border-color: #0000bf;
}

.btn-check:checked+.btn-primary:focus,
.btn-check:active+.btn-primary:focus,
.btn-primary:active:focus,
.btn-primary.active:focus,
.show>.btn-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.25rem rgba(38, 38, 255, 0.5);
}

.btn-primary:disabled,
.btn-primary.disabled {
    color: #fff;
    background-color: blue;
    border-color: blue;
}

.btn-dark {
    color: #fff;
    background-color: #000000;
    border-color: #000000;
}

.btn-dark:hover {
    color: #fff;
    background-color: black;
    border-color: black;
}

.btn-check:focus+.btn-dark,
.btn-dark:focus {
    color: #fff;
    background-color: black;
    border-color: black;
    box-shadow: 0 0 0 0.25rem rgba(38, 38, 38, 0.5);
}

.btn-check:checked+.btn-dark,
.btn-check:active+.btn-dark,
.btn-dark:active,
.btn-dark.active,
.show>.btn-dark.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black;
}

.btn-check:checked+.btn-dark:focus,
.btn-check:active+.btn-dark:focus,
.btn-dark:active:focus,
.btn-dark.active:focus,
.show>.btn-dark.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.25rem rgba(38, 38, 38, 0.5);
}

.btn-dark:disabled,
.btn-dark.disabled {
    color: #fff;
    background-color: #000000;
    border-color: #000000;
}

.btn-outline-primary {
    color: blue;
    border-color: blue;
}

.btn-outline-primary:hover {
    color: #fff;
    background-color: blue;
    border-color: blue;
}

.btn-check:focus+.btn-outline-primary,
.btn-outline-primary:focus {
    box-shadow: 0 0 0 0.25rem rgba(0, 0, 255, 0.5);
}

.btn-check:checked+.btn-outline-primary,
.btn-check:active+.btn-outline-primary,
.btn-outline-primary:active,
.btn-outline-primary.active,
.btn-outline-primary.dropdown-toggle.show {
    color: #fff;
    background-color: blue;
    border-color: blue;
}

.btn-check:checked+.btn-outline-primary:focus,
.btn-check:active+.btn-outline-primary:focus,
.btn-outline-primary:active:focus,
.btn-outline-primary.active:focus,
.btn-outline-primary.dropdown-toggle.show:focus {
    box-shadow: 0 0 0 0.25rem rgba(0, 0, 255, 0.5);
}

.btn-outline-primary:disabled,
.btn-outline-primary.disabled {
    color: blue;
    background-color: transparent;
}

.btn-outline-dark {
    color: #000000;
    border-color: #000000;
}

.btn-outline-dark:hover {
    color: #fff;
    background-color: #000000;
    border-color: #000000;
}

.btn-check:focus+.btn-outline-dark,
.btn-outline-dark:focus {
    box-shadow: 0 0 0 0.25rem rgba(0, 0, 0, 0.5);
}

.btn-check:checked+.btn-outline-dark,
.btn-check:active+.btn-outline-dark,
.btn-outline-dark:active,
.btn-outline-dark.active,
.btn-outline-dark.dropdown-toggle.show {
    color: #fff;
    background-color: #000000;
    border-color: #000000;
}

.btn-check:checked+.btn-outline-dark:focus,
.btn-check:active+.btn-outline-dark:focus,
.btn-outline-dark:active:focus,
.btn-outline-dark.active:focus,
.btn-outline-dark.dropdown-toggle.show:focus {
    box-shadow: 0 0 0 0.25rem rgba(0, 0, 0, 0.5);
}

.btn-outline-dark:disabled,
.btn-outline-dark.disabled {
    color: #000000;
    background-color: transparent;
}

.btn-link {
    font-weight: 400;
    color: #0d6efd;
    text-decoration: underline;
}

.btn-link:hover {
    color: #0a58ca;
}

.btn-link:disabled,
.btn-link.disabled {
    color: #6c757d;
}

.btn-lg,
.btn-group-lg>.btn {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: 0.3rem;
}

.btn-sm,
.btn-group-sm>.btn {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    border-radius: 0.2rem;
}

.fade {
    transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
    .fade {
        transition: none;
    }
}

.fade:not(.show) {
    opacity: 0;
}

.collapse:not(.show) {
    display: none;
}

.collapsing {
    height: 0;
    overflow: hidden;
    transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
    .collapsing {
        transition: none;
    }
}

.dropup,
.dropend,
.dropdown,
.dropstart {
    position: relative;
}

.dropdown-toggle {
    white-space: nowrap;
}

.dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    z-index: 1000;
    display: none;
    min-width: 10rem;
    padding: 0.5rem 0;
    margin: 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 0.25rem;
}

.dropdown-menu[data-bs-popper] {
    left: 0;
    margin-top: 0.125rem;
}

.dropdown-menu-start {
    --bs-position: start;
}

.dropdown-menu-start[data-bs-popper] {
    right: auto/* rtl:ignore */
    ;
    left: 0/* rtl:ignore */
    ;
}

.dropdown-menu-end {
    --bs-position: end;
}

.dropdown-menu-end[data-bs-popper] {
    right: 0/* rtl:ignore */
    ;
    left: auto/* rtl:ignore */
    ;
}

@media (min-width: 576px) {
    .dropdown-menu-sm-start {
        --bs-position: start;
    }
    .dropdown-menu-sm-start[data-bs-popper] {
        right: auto/* rtl:ignore */
        ;
        left: 0/* rtl:ignore */
        ;
    }
    .dropdown-menu-sm-end {
        --bs-position: end;
    }
    .dropdown-menu-sm-end[data-bs-popper] {
        right: 0/* rtl:ignore */
        ;
        left: auto/* rtl:ignore */
        ;
    }
}

@media (min-width: 768px) {
    .dropdown-menu-md-start {
        --bs-position: start;
    }
    .dropdown-menu-md-start[data-bs-popper] {
        right: auto/* rtl:ignore */
        ;
        left: 0/* rtl:ignore */
        ;
    }
    .dropdown-menu-md-end {
        --bs-position: end;
    }
    .dropdown-menu-md-end[data-bs-popper] {
        right: 0/* rtl:ignore */
        ;
        left: auto/* rtl:ignore */
        ;
    }
}

@media (min-width: 992px) {
    .dropdown-menu-lg-start {
        --bs-position: start;
    }
    .dropdown-menu-lg-start[data-bs-popper] {
        right: auto/* rtl:ignore */
        ;
        left: 0/* rtl:ignore */
        ;
    }
    .dropdown-menu-lg-end {
        --bs-position: end;
    }
    .dropdown-menu-lg-end[data-bs-popper] {
        right: 0/* rtl:ignore */
        ;
        left: auto/* rtl:ignore */
        ;
    }
}

@media (min-width: 1200px) {
    .dropdown-menu-xl-start {
        --bs-position: start;
    }
    .dropdown-menu-xl-start[data-bs-popper] {
        right: auto/* rtl:ignore */
        ;
        left: 0/* rtl:ignore */
        ;
    }
    .dropdown-menu-xl-end {
        --bs-position: end;
    }
    .dropdown-menu-xl-end[data-bs-popper] {
        right: 0/* rtl:ignore */
        ;
        left: auto/* rtl:ignore */
        ;
    }
}

@media (min-width: 1400px) {
    .dropdown-menu-xxl-start {
        --bs-position: start;
    }
    .dropdown-menu-xxl-start[data-bs-popper] {
        right: auto/* rtl:ignore */
        ;
        left: 0/* rtl:ignore */
        ;
    }
    .dropdown-menu-xxl-end {
        --bs-position: end;
    }
    .dropdown-menu-xxl-end[data-bs-popper] {
        right: 0/* rtl:ignore */
        ;
        left: auto/* rtl:ignore */
        ;
    }
}

.dropup .dropdown-menu[data-bs-popper] {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: 0.125rem;
}

.dropup .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0;
    border-right: 0.3em solid transparent;
    border-bottom: 0.3em solid;
    border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropend .dropdown-menu {
    top: 0;
    right: auto;
    left: 100%;
}

.dropend .dropdown-menu[data-bs-popper] {
    margin-top: 0;
    margin-left: 0.125rem;
}

.dropend .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0;
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid;
}

.dropend .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropend .dropdown-toggle::after {
    vertical-align: 0;
}

.dropstart .dropdown-menu {
    top: 0;
    right: 100%;
    left: auto;
}

.dropstart .dropdown-menu[data-bs-popper] {
    margin-top: 0;
    margin-right: 0.125rem;
}

.dropstart .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
}

.dropstart .dropdown-toggle::after {
    display: none;
}

.dropstart .dropdown-toggle::before {
    display: inline-block;
    margin-right: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0.3em solid;
    border-bottom: 0.3em solid transparent;
}

.dropstart .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropstart .dropdown-toggle::before {
    vertical-align: 0;
}

.dropdown-divider {
    height: 0;
    margin: 0.5rem 0;
    overflow: hidden;
    border-top: 1px solid rgba(0, 0, 0, 0.15);
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: 0.25rem 1rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

.dropdown-item:hover,
.dropdown-item:focus {
    color: #1e2125;
    background-color: #e9ecef;
}

.dropdown-item.active,
.dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #0d6efd;
}

.dropdown-item.disabled,
.dropdown-item:disabled {
    color: #adb5bd;
    pointer-events: none;
    background-color: transparent;
}

.dropdown-menu.show {
    display: block;
}

.dropdown-header {
    display: block;
    padding: 0.5rem 1rem;
    margin-bottom: 0;
    font-size: 0.875rem;
    color: #6c757d;
    white-space: nowrap;
}

.dropdown-item-text {
    display: block;
    padding: 0.25rem 1rem;
    color: #212529;
}

.dropdown-menu-dark {
    color: #dee2e6;
    background-color: #343a40;
    border-color: rgba(0, 0, 0, 0.15);
}

.dropdown-menu-dark .dropdown-item {
    color: #dee2e6;
}

.dropdown-menu-dark .dropdown-item:hover,
.dropdown-menu-dark .dropdown-item:focus {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.15);
}

.dropdown-menu-dark .dropdown-item.active,
.dropdown-menu-dark .dropdown-item:active {
    color: #fff;
    background-color: #0d6efd;
}

.dropdown-menu-dark .dropdown-item.disabled,
.dropdown-menu-dark .dropdown-item:disabled {
    color: #adb5bd;
}

.dropdown-menu-dark .dropdown-divider {
    border-color: rgba(0, 0, 0, 0.15);
}

.dropdown-menu-dark .dropdown-item-text {
    color: #dee2e6;
}

.dropdown-menu-dark .dropdown-header {
    color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
}

.btn-group>.btn,
.btn-group-vertical>.btn {
    position: relative;
    flex: 1 1 auto;
}

.btn-group>.btn-check:checked+.btn,
.btn-group>.btn-check:focus+.btn,
.btn-group>.btn:hover,
.btn-group>.btn:focus,
.btn-group>.btn:active,
.btn-group>.btn.active,
.btn-group-vertical>.btn-check:checked+.btn,
.btn-group-vertical>.btn-check:focus+.btn,
.btn-group-vertical>.btn:hover,
.btn-group-vertical>.btn:focus,
.btn-group-vertical>.btn:active,
.btn-group-vertical>.btn.active {
    z-index: 1;
}

.btn-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.btn-toolbar .input-group {
    width: auto;
}

.btn-group>.btn:not(:first-child),
.btn-group>.btn-group:not(:first-child) {
    margin-left: -1px;
}

.btn-group>.btn:not(:last-child):not(.dropdown-toggle),
.btn-group>.btn-group:not(:last-child)>.btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group>.btn:nth-child(n+3),
.btn-group> :not(.btn-check)+.btn,
.btn-group>.btn-group:not(:first-child)>.btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
    padding-right: 0.5625rem;
    padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropend .dropdown-toggle-split::after {
    margin-left: 0;
}

.dropstart .dropdown-toggle-split::before {
    margin-right: 0;
}

.btn-sm+.dropdown-toggle-split,
.btn-group-sm>.btn+.dropdown-toggle-split {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
}

.btn-lg+.dropdown-toggle-split,
.btn-group-lg>.btn+.dropdown-toggle-split {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
}

.btn-group-vertical {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.btn-group-vertical>.btn,
.btn-group-vertical>.btn-group {
    width: 100%;
}

.btn-group-vertical>.btn:not(:first-child),
.btn-group-vertical>.btn-group:not(:first-child) {
    margin-top: -1px;
}

.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical>.btn-group:not(:last-child)>.btn {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group-vertical>.btn~.btn,
.btn-group-vertical>.btn-group:not(:first-child)>.btn {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.nav {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.nav-link {
    display: block;
    padding: 0.5rem 1rem;
    text-decoration: none;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .nav-link {
        transition: none;
    }
}

.nav-link.disabled {
    color: #6c757d;
    pointer-events: none;
    cursor: default;
}

.nav-tabs {
    border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-link {
    margin-bottom: -1px;
    background: none;
    border: 1px solid transparent;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
    border-color: #e9ecef #e9ecef #dee2e6;
    isolation: isolate;
}

.nav-tabs .nav-link.disabled {
    color: #6c757d;
    background-color: transparent;
    border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff;
}

.nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.nav-pills .nav-link {
    background: none;
    border: 0;
    border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    color: #fff;
    background-color: #0d6efd;
}

.nav-fill>.nav-link,
.nav-fill .nav-item {
    flex: 1 1 auto;
    text-align: center;
}

.nav-justified>.nav-link,
.nav-justified .nav-item {
    flex-basis: 0;
    flex-grow: 1;
    text-align: center;
}

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
    width: 100%;
}

.tab-content>.tab-pane {
    display: none;
}

.tab-content>.active {
    display: block;
}

.navbar {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.navbar>.container,
.navbar>.container-fluid,
.navbar>.container-sm,
.navbar>.container-md,
.navbar>.container-lg,
.navbar>.container-xl,
.navbar>.container-xxl {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between;
}

.navbar-brand {
    padding-top: 0.3125rem;
    padding-bottom: 0.3125rem;
    margin-right: 1rem;
    font-size: 1.25rem;
    text-decoration: none;
    white-space: nowrap;
}

.navbar-nav {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0;
}

.navbar-nav .dropdown-menu {
    position: static;
}

.navbar-text {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.navbar-collapse {
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
}

.navbar-toggler {
    padding: 0.25rem 0.75rem;
    font-size: 1.25rem;
    line-height: 1;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: 0.25rem;
    transition: box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .navbar-toggler {
        transition: none;
    }
}

.navbar-toggler:hover {
    text-decoration: none;
}

.navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: 0 0 0 0.25rem;
}

.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
}

.navbar-nav-scroll {
    max-height: var(--bs-scroll-height, 75vh);
    overflow-y: auto;
}

@media (min-width: 576px) {
    .navbar-expand-sm {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
    .navbar-expand-sm .navbar-nav {
        flex-direction: row;
    }
    .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute;
    }
    .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }
    .navbar-expand-sm .navbar-nav-scroll {
        overflow: visible;
    }
    .navbar-expand-sm .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }
    .navbar-expand-sm .navbar-toggler {
        display: none;
    }
}

@media (min-width: 768px) {
    .navbar-expand-md {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
    .navbar-expand-md .navbar-nav {
        flex-direction: row;
    }
    .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute;
    }
    .navbar-expand-md .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }
    .navbar-expand-md .navbar-nav-scroll {
        overflow: visible;
    }
    .navbar-expand-md .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }
    .navbar-expand-md .navbar-toggler {
        display: none;
    }
}

@media (min-width: 992px) {
    .navbar-expand-lg {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
    .navbar-expand-lg .navbar-nav {
        flex-direction: row;
    }
    .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute;
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }
    .navbar-expand-lg .navbar-nav-scroll {
        overflow: visible;
    }
    .navbar-expand-lg .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }
    .navbar-expand-lg .navbar-toggler {
        display: none;
    }
}

@media (min-width: 1200px) {
    .navbar-expand-xl {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
    .navbar-expand-xl .navbar-nav {
        flex-direction: row;
    }
    .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute;
    }
    .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }
    .navbar-expand-xl .navbar-nav-scroll {
        overflow: visible;
    }
    .navbar-expand-xl .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }
    .navbar-expand-xl .navbar-toggler {
        display: none;
    }
}

@media (min-width: 1400px) {
    .navbar-expand-xxl {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
    .navbar-expand-xxl .navbar-nav {
        flex-direction: row;
    }
    .navbar-expand-xxl .navbar-nav .dropdown-menu {
        position: absolute;
    }
    .navbar-expand-xxl .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }
    .navbar-expand-xxl .navbar-nav-scroll {
        overflow: visible;
    }
    .navbar-expand-xxl .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }
    .navbar-expand-xxl .navbar-toggler {
        display: none;
    }
}

.navbar-expand {
    flex-wrap: nowrap;
    justify-content: flex-start;
}

.navbar-expand .navbar-nav {
    flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
    position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
}

.navbar-expand .navbar-nav-scroll {
    overflow: visible;
}

.navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
}

.navbar-expand .navbar-toggler {
    display: none;
}

.navbar-light .navbar-brand {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover,
.navbar-light .navbar-brand:focus {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
    color: rgba(0, 0, 0, 0.55);
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
    color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
    color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show>.nav-link,
.navbar-light .navbar-nav .nav-link.active {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
    color: rgba(0, 0, 0, 0.55);
    border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
    color: rgba(0, 0, 0, 0.55);
}

.navbar-light .navbar-text a,
.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
    color: #fff;
}

.navbar-dark .navbar-brand:hover,
.navbar-dark .navbar-brand:focus {
    color: #fff;
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.55);
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
    color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show>.nav-link,
.navbar-dark .navbar-nav .nav-link.active {
    color: #fff;
}

.navbar-dark .navbar-toggler {
    color: rgba(255, 255, 255, 0.55);
    border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
    color: rgba(255, 255, 255, 0.55);
}

.navbar-dark .navbar-text a,
.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
    color: #fff;
}

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 0.25rem;
}

.card>hr {
    margin-right: 0;
    margin-left: 0;
}

.card>.list-group {
    border-top: inherit;
    border-bottom: inherit;
}

.card>.list-group:first-child {
    border-top-width: 0;
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.card>.list-group:last-child {
    border-bottom-width: 0;
    border-bottom-right-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px);
}

.card>.card-header+.list-group,
.card>.list-group+.card-footer {
    border-top: 0;
}

.card-body {
    flex: 1 1 auto;
    padding: 1rem 1rem;
}

.card-title {
    margin-bottom: 0.5rem;
}

.card-subtitle {
    margin-top: -0.25rem;
    margin-bottom: 0;
}

.card-text:last-child {
    margin-bottom: 0;
}

.card-link:hover {
    text-decoration: none;
}

.card-link+.card-link {
    margin-left: 1rem;
}

.card-header {
    padding: 0.5rem 1rem;
    margin-bottom: 0;
    background-color: rgba(0, 0, 0, 0.03);
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
    border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
    padding: 0.5rem 1rem;
    background-color: rgba(0, 0, 0, 0.03);
    border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
    border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
    margin-right: -0.5rem;
    margin-bottom: -0.5rem;
    margin-left: -0.5rem;
    border-bottom: 0;
}

.card-header-pills {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
}

.card-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1rem;
    border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
    width: 100%;
}

.card-img,
.card-img-top {
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
    border-bottom-right-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-group>.card {
    margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
    .card-group {
        display: flex;
        flex-flow: row wrap;
    }
    .card-group>.card {
        flex: 1 0 0%;
        margin-bottom: 0;
    }
    .card-group>.card+.card {
        margin-left: 0;
        border-left: 0;
    }
    .card-group>.card:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }
    .card-group>.card:not(:last-child) .card-img-top,
    .card-group>.card:not(:last-child) .card-header {
        border-top-right-radius: 0;
    }
    .card-group>.card:not(:last-child) .card-img-bottom,
    .card-group>.card:not(:last-child) .card-footer {
        border-bottom-right-radius: 0;
    }
    .card-group>.card:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }
    .card-group>.card:not(:first-child) .card-img-top,
    .card-group>.card:not(:first-child) .card-header {
        border-top-left-radius: 0;
    }
    .card-group>.card:not(:first-child) .card-img-bottom,
    .card-group>.card:not(:first-child) .card-footer {
        border-bottom-left-radius: 0;
    }
}

.accordion-button {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 1rem 1.25rem;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    background-color: #fff;
    border: 0;
    border-radius: 0;
    overflow-anchor: none;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
    .accordion-button {
        transition: none;
    }
}

.accordion-button:not(.collapsed) {
    color: #0c63e4;
    background-color: #e7f1ff;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    transform: rotate(180deg);
}

.accordion-button::after {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-left: auto;
    content: "";
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: 1.25rem;
    transition: transform 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .accordion-button::after {
        transition: none;
    }
}

.accordion-button:hover {
    z-index: 2;
}

.accordion-button:focus {
    z-index: 3;
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.accordion-header {
    margin-bottom: 0;
}

.accordion-item {
    margin-bottom: -1px;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.125);
}

.accordion-item:first-of-type {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
}

.accordion-item:first-of-type .accordion-button {
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.accordion-item:last-of-type {
    margin-bottom: 0;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.accordion-item:last-of-type .accordion-button.collapsed {
    border-bottom-right-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px);
}

.accordion-item:last-of-type .accordion-collapse {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.accordion-body {
    padding: 1rem 1.25rem;
}

.accordion-flush .accordion-collapse {
    border-width: 0;
}

.accordion-flush .accordion-item {
    border-right: 0;
    border-left: 0;
    border-radius: 0;
}

.accordion-flush .accordion-item:first-child {
    border-top: 0;
}

.accordion-flush .accordion-item:last-child {
    border-bottom: 0;
}

.accordion-flush .accordion-item .accordion-button {
    border-radius: 0;
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0;
    margin-bottom: 1rem;
    list-style: none;
}

.breadcrumb-item+.breadcrumb-item {
    padding-left: 0.5rem;
}

.breadcrumb-item+.breadcrumb-item::before {
    float: left;
    padding-right: 0.5rem;
    color: #6c757d;
    content: var(--bs-breadcrumb-divider, "/")/* rtl: var(--bs-breadcrumb-divider, "/") */
    ;
}

.breadcrumb-item.active {
    color: #6c757d;
}

.pagination {
    display: flex;
    padding-left: 0;
    list-style: none;
}

.page-link {
    position: relative;
    display: block;
    color: #0d6efd;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #dee2e6;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .page-link {
        transition: none;
    }
}

.page-link:hover {
    z-index: 2;
    color: #0a58ca;
    background-color: #e9ecef;
    border-color: #dee2e6;
}

.page-link:focus {
    z-index: 3;
    color: #0a58ca;
    background-color: #e9ecef;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.page-item:not(:first-child) .page-link {
    margin-left: -1px;
}

.page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.page-item.disabled .page-link {
    color: #6c757d;
    pointer-events: none;
    background-color: #fff;
    border-color: #dee2e6;
}

.page-link {
    padding: 0.375rem 0.75rem;
}

.page-item:first-child .page-link {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}

.pagination-lg .page-link {
    padding: 0.75rem 1.5rem;
    font-size: 1.25rem;
}

.pagination-lg .page-item:first-child .page-link {
    border-top-left-radius: 0.3rem;
    border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
    border-top-right-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
}

.pagination-sm .page-item:first-child .page-link {
    border-top-left-radius: 0.2rem;
    border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
    border-top-right-radius: 0.2rem;
    border-bottom-right-radius: 0.2rem;
}

.badge {
    display: inline-block;
    padding: 0.35em 0.65em;
    font-size: 0.75em;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25rem;
}

.badge:empty {
    display: none;
}

.btn .badge {
    position: relative;
    top: -1px;
}

.alert {
    position: relative;
    padding: 1rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.25rem;
}

.alert-heading {
    color: inherit;
}

.alert-link {
    font-weight: 700;
}

.alert-dismissible {
    padding-right: 3rem;
}

.alert-dismissible .btn-close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    padding: 1.25rem 1rem;
}

.alert-primary {
    color: #000099;
    background-color: #ccccff;
    border-color: #b3b3ff;
}

.alert-primary .alert-link {
    color: #00007a;
}

.alert-dark {
    color: black;
    background-color: #cccccc;
    border-color: #b3b3b3;
}

.alert-dark .alert-link {
    color: black;
}

@keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem;
    }
}

.progress {
    display: flex;
    height: 1rem;
    overflow: hidden;
    font-size: 0.75rem;
    background-color: #e9ecef;
    border-radius: 0.25rem;
}

.progress-bar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #0d6efd;
    transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar {
        transition: none;
    }
}

.progress-bar-striped {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-size: 1rem 1rem;
}

.progress-bar-animated {
    animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
        animation: none;
    }
}

.list-group {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    border-radius: 0.25rem;
}

.list-group-numbered {
    list-style-type: none;
    counter-reset: section;
}

.list-group-numbered>li::before {
    content: counters(section, ".") ". ";
    counter-increment: section;
}

.list-group-item-action {
    width: 100%;
    color: #495057;
    text-align: inherit;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
    z-index: 1;
    color: #495057;
    text-decoration: none;
    background-color: #f8f9fa;
}

.list-group-item-action:active {
    color: #212529;
    background-color: #e9ecef;
}

.list-group-item {
    position: relative;
    display: block;
    padding: 0.5rem 1rem;
    color: #212529;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}

.list-group-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit;
}

.list-group-item.disabled,
.list-group-item:disabled {
    color: #6c757d;
    pointer-events: none;
    background-color: #fff;
}

.list-group-item.active {
    z-index: 2;
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.list-group-item+.list-group-item {
    border-top-width: 0;
}

.list-group-item+.list-group-item.active {
    margin-top: -1px;
    border-top-width: 1px;
}

.list-group-horizontal {
    flex-direction: row;
}

.list-group-horizontal>.list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
}

.list-group-horizontal>.list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
}

.list-group-horizontal>.list-group-item.active {
    margin-top: 0;
}

.list-group-horizontal>.list-group-item+.list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
}

.list-group-horizontal>.list-group-item+.list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
}

@media (min-width: 576px) {
    .list-group-horizontal-sm {
        flex-direction: row;
    }
    .list-group-horizontal-sm>.list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }
    .list-group-horizontal-sm>.list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }
    .list-group-horizontal-sm>.list-group-item.active {
        margin-top: 0;
    }
    .list-group-horizontal-sm>.list-group-item+.list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }
    .list-group-horizontal-sm>.list-group-item+.list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

@media (min-width: 768px) {
    .list-group-horizontal-md {
        flex-direction: row;
    }
    .list-group-horizontal-md>.list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }
    .list-group-horizontal-md>.list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }
    .list-group-horizontal-md>.list-group-item.active {
        margin-top: 0;
    }
    .list-group-horizontal-md>.list-group-item+.list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }
    .list-group-horizontal-md>.list-group-item+.list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

@media (min-width: 992px) {
    .list-group-horizontal-lg {
        flex-direction: row;
    }
    .list-group-horizontal-lg>.list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }
    .list-group-horizontal-lg>.list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }
    .list-group-horizontal-lg>.list-group-item.active {
        margin-top: 0;
    }
    .list-group-horizontal-lg>.list-group-item+.list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }
    .list-group-horizontal-lg>.list-group-item+.list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

@media (min-width: 1200px) {
    .list-group-horizontal-xl {
        flex-direction: row;
    }
    .list-group-horizontal-xl>.list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }
    .list-group-horizontal-xl>.list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }
    .list-group-horizontal-xl>.list-group-item.active {
        margin-top: 0;
    }
    .list-group-horizontal-xl>.list-group-item+.list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }
    .list-group-horizontal-xl>.list-group-item+.list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

@media (min-width: 1400px) {
    .list-group-horizontal-xxl {
        flex-direction: row;
    }
    .list-group-horizontal-xxl>.list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }
    .list-group-horizontal-xxl>.list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }
    .list-group-horizontal-xxl>.list-group-item.active {
        margin-top: 0;
    }
    .list-group-horizontal-xxl>.list-group-item+.list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }
    .list-group-horizontal-xxl>.list-group-item+.list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

.list-group-flush {
    border-radius: 0;
}

.list-group-flush>.list-group-item {
    border-width: 0 0 1px;
}

.list-group-flush>.list-group-item:last-child {
    border-bottom-width: 0;
}

.list-group-item-primary {
    color: #000099;
    background-color: #ccccff;
}

.list-group-item-primary.list-group-item-action:hover,
.list-group-item-primary.list-group-item-action:focus {
    color: #000099;
    background-color: #b8b8e6;
}

.list-group-item-primary.list-group-item-action.active {
    color: #fff;
    background-color: #000099;
    border-color: #000099;
}

.list-group-item-dark {
    color: black;
    background-color: #cccccc;
}

.list-group-item-dark.list-group-item-action:hover,
.list-group-item-dark.list-group-item-action:focus {
    color: black;
    background-color: #b8b8b8;
}

.list-group-item-dark.list-group-item-action.active {
    color: #fff;
    background-color: black;
    border-color: black;
}

.btn-close {
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: 0.25em 0.25em;
    color: #000;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    border: 0;
    border-radius: 0.25rem;
    opacity: 0.5;
}

.btn-close:hover {
    color: #000;
    text-decoration: none;
    opacity: 0.75;
}

.btn-close:focus {
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    opacity: 1;
}

.btn-close:disabled,
.btn-close.disabled {
    pointer-events: none;
    user-select: none;
    opacity: 0.25;
}

.btn-close-white {
    filter: invert(1) grayscale(100%) brightness(200%);
}

.toast {
    width: 350px;
    max-width: 100%;
    font-size: 0.875rem;
    pointer-events: auto;
    background-color: rgba(255, 255, 255, 0.85);
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    border-radius: 0.25rem;
}

.toast:not(.showing):not(.show) {
    opacity: 0;
}

.toast.hide {
    display: none;
}

.toast-container {
    width: max-content;
    max-width: 100%;
    pointer-events: none;
}

.toast-container> :not(:last-child) {
    margin-bottom: 0.75rem;
}

.toast-header {
    display: flex;
    align-items: center;
    padding: 0.5rem 0.75rem;
    color: #6c757d;
    background-color: rgba(255, 255, 255, 0.85);
    background-clip: padding-box;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.toast-header .btn-close {
    margin-right: -0.375rem;
    margin-left: 0.75rem;
}

.toast-body {
    padding: 0.75rem;
    word-wrap: break-word;
}

.modal-open {
    overflow: hidden;
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto;
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1060;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: 0.5rem;
    pointer-events: none;
}

.modal.fade .modal-dialog {
    transition: transform 0.3s ease-out;
    transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
    .modal.fade .modal-dialog {
        transition: none;
    }
}

.modal.show .modal-dialog {
    transform: none;
}

.modal.modal-static .modal-dialog {
    transform: scale(1.02);
}

.modal-dialog-scrollable {
    height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
    max-height: 100%;
    overflow: hidden;
}

.modal-dialog-scrollable .modal-body {
    overflow-y: auto;
}

.modal-dialog-centered {
    display: flex;
    align-items: center;
    min-height: calc(100% - 1rem);
}

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 0.3rem;
    outline: 0;
}

.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    width: 100vw;
    height: 100vh;
    background-color: #000;
}

.modal-backdrop.fade {
    opacity: 0;
}

.modal-backdrop.show {
    opacity: 0.5;
}

.modal-header {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: calc(0.3rem - 1px);
    border-top-right-radius: calc(0.3rem - 1px);
}

.modal-header .btn-close {
    padding: 0.5rem 0.5rem;
    margin: -0.5rem -0.5rem -0.5rem auto;
}

.modal-title {
    margin-bottom: 0;
    line-height: 1.5;
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem;
}

.modal-footer {
    display: flex;
    flex-wrap: wrap;
    flex-shrink: 0;
    align-items: center;
    justify-content: flex-end;
    padding: 0.75rem;
    border-top: 1px solid #dee2e6;
    border-bottom-right-radius: calc(0.3rem - 1px);
    border-bottom-left-radius: calc(0.3rem - 1px);
}

.modal-footer>* {
    margin: 0.25rem;
}

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll;
}

@media (min-width: 576px) {
    .modal-dialog {
        max-width: 500px;
        margin: 1.75rem auto;
    }
    .modal-dialog-scrollable {
        height: calc(100% - 3.5rem);
    }
    .modal-dialog-centered {
        min-height: calc(100% - 3.5rem);
    }
    .modal-sm {
        max-width: 300px;
    }
}

@media (min-width: 992px) {
    .modal-lg,
    .modal-xl {
        max-width: 800px;
    }
}

@media (min-width: 1200px) {
    .modal-xl {
        max-width: 1140px;
    }
}

.modal-fullscreen {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
}

.modal-fullscreen .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
}

.modal-fullscreen .modal-header {
    border-radius: 0;
}

.modal-fullscreen .modal-body {
    overflow-y: auto;
}

.modal-fullscreen .modal-footer {
    border-radius: 0;
}

@media (max-width: 575.98px) {
    .modal-fullscreen-sm-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }
    .modal-fullscreen-sm-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }
    .modal-fullscreen-sm-down .modal-header {
        border-radius: 0;
    }
    .modal-fullscreen-sm-down .modal-body {
        overflow-y: auto;
    }
    .modal-fullscreen-sm-down .modal-footer {
        border-radius: 0;
    }
}

@media (max-width: 767.98px) {
    .modal-fullscreen-md-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }
    .modal-fullscreen-md-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }
    .modal-fullscreen-md-down .modal-header {
        border-radius: 0;
    }
    .modal-fullscreen-md-down .modal-body {
        overflow-y: auto;
    }
    .modal-fullscreen-md-down .modal-footer {
        border-radius: 0;
    }
}

@media (max-width: 991.98px) {
    .modal-fullscreen-lg-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }
    .modal-fullscreen-lg-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }
    .modal-fullscreen-lg-down .modal-header {
        border-radius: 0;
    }
    .modal-fullscreen-lg-down .modal-body {
        overflow-y: auto;
    }
    .modal-fullscreen-lg-down .modal-footer {
        border-radius: 0;
    }
}

@media (max-width: 1199.98px) {
    .modal-fullscreen-xl-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }
    .modal-fullscreen-xl-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }
    .modal-fullscreen-xl-down .modal-header {
        border-radius: 0;
    }
    .modal-fullscreen-xl-down .modal-body {
        overflow-y: auto;
    }
    .modal-fullscreen-xl-down .modal-footer {
        border-radius: 0;
    }
}

@media (max-width: 1399.98px) {
    .modal-fullscreen-xxl-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }
    .modal-fullscreen-xxl-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }
    .modal-fullscreen-xxl-down .modal-header {
        border-radius: 0;
    }
    .modal-fullscreen-xxl-down .modal-body {
        overflow-y: auto;
    }
    .modal-fullscreen-xxl-down .modal-footer {
        border-radius: 0;
    }
}

.tooltip {
    position: absolute;
    z-index: 1080;
    display: block;
    margin: 0;
    font-family: var(--bs-font-sans-serif);
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    word-spacing: normal;
    white-space: normal;
    line-break: auto;
    font-size: 0.875rem;
    word-wrap: break-word;
    opacity: 0;
}

.tooltip.show {
    opacity: 0.9;
}

.tooltip .tooltip-arrow {
    position: absolute;
    display: block;
    width: 0.8rem;
    height: 0.4rem;
}

.tooltip .tooltip-arrow::before {
    position: absolute;
    content: "";
    border-color: transparent;
    border-style: solid;
}

.bs-tooltip-top,
.bs-tooltip-auto[data-popper-placement^="top"] {
    padding: 0.4rem 0;
}

.bs-tooltip-top .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow {
    bottom: 0;
}

.bs-tooltip-top .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before {
    top: -1px;
    border-width: 0.4rem 0.4rem 0;
    border-top-color: #000;
}

.bs-tooltip-end,
.bs-tooltip-auto[data-popper-placement^="right"] {
    padding: 0 0.4rem;
}

.bs-tooltip-end .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow {
    left: 0;
    width: 0.4rem;
    height: 0.8rem;
}

.bs-tooltip-end .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before {
    right: -1px;
    border-width: 0.4rem 0.4rem 0.4rem 0;
    border-right-color: #000;
}

.bs-tooltip-bottom,
.bs-tooltip-auto[data-popper-placement^="bottom"] {
    padding: 0.4rem 0;
}

.bs-tooltip-bottom .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow {
    top: 0;
}

.bs-tooltip-bottom .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before {
    bottom: -1px;
    border-width: 0 0.4rem 0.4rem;
    border-bottom-color: #000;
}

.bs-tooltip-start,
.bs-tooltip-auto[data-popper-placement^="left"] {
    padding: 0 0.4rem;
}

.bs-tooltip-start .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow {
    right: 0;
    width: 0.4rem;
    height: 0.8rem;
}

.bs-tooltip-start .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before {
    left: -1px;
    border-width: 0.4rem 0 0.4rem 0.4rem;
    border-left-color: #000;
}

.tooltip-inner {
    max-width: 200px;
    padding: 0.25rem 0.5rem;
    color: #fff;
    text-align: center;
    background-color: #000;
    border-radius: 0.25rem;
}

.popover {
    position: absolute;
    top: 0;
    left: 0/* rtl:ignore */
    ;
    z-index: 1070;
    display: block;
    max-width: 276px;
    font-family: var(--bs-font-sans-serif);
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    word-spacing: normal;
    white-space: normal;
    line-break: auto;
    font-size: 0.875rem;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 0.3rem;
}

.popover .popover-arrow {
    position: absolute;
    display: block;
    width: 1rem;
    height: 0.5rem;
}

.popover .popover-arrow::before,
.popover .popover-arrow::after {
    position: absolute;
    display: block;
    content: "";
    border-color: transparent;
    border-style: solid;
}

.bs-popover-top>.popover-arrow,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow {
    bottom: calc(-0.5rem - 1px);
}

.bs-popover-top>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before {
    bottom: 0;
    border-width: 0.5rem 0.5rem 0;
    border-top-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-top>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after {
    bottom: 1px;
    border-width: 0.5rem 0.5rem 0;
    border-top-color: #fff;
}

.bs-popover-end>.popover-arrow,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow {
    left: calc(-0.5rem - 1px);
    width: 0.5rem;
    height: 1rem;
}

.bs-popover-end>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before {
    left: 0;
    border-width: 0.5rem 0.5rem 0.5rem 0;
    border-right-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-end>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after {
    left: 1px;
    border-width: 0.5rem 0.5rem 0.5rem 0;
    border-right-color: #fff;
}

.bs-popover-bottom>.popover-arrow,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow {
    top: calc(-0.5rem - 1px);
}

.bs-popover-bottom>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before {
    top: 0;
    border-width: 0 0.5rem 0.5rem 0.5rem;
    border-bottom-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-bottom>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after {
    top: 1px;
    border-width: 0 0.5rem 0.5rem 0.5rem;
    border-bottom-color: #fff;
}

.bs-popover-bottom .popover-header::before,
.bs-popover-auto[data-popper-placement^="bottom"] .popover-header::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1rem;
    margin-left: -0.5rem;
    content: "";
    border-bottom: 1px solid #f0f0f0;
}

.bs-popover-start>.popover-arrow,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow {
    right: calc(-0.5rem - 1px);
    width: 0.5rem;
    height: 1rem;
}

.bs-popover-start>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before {
    right: 0;
    border-width: 0.5rem 0 0.5rem 0.5rem;
    border-left-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-start>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after {
    right: 1px;
    border-width: 0.5rem 0 0.5rem 0.5rem;
    border-left-color: #fff;
}

.popover-header {
    padding: 0.5rem 1rem;
    margin-bottom: 0;
    font-size: 1rem;
    background-color: #f0f0f0;
    border-bottom: 1px solid #d8d8d8;
    border-top-left-radius: calc(0.3rem - 1px);
    border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
    display: none;
}

.popover-body {
    padding: 1rem 1rem;
    color: #212529;
}

.carousel {
    position: relative;
}

.carousel.pointer-event {
    touch-action: pan-y;
}

.carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.carousel-inner::after {
    display: block;
    clear: both;
    content: "";
}

.carousel-item {
    position: relative;
    display: none;
    float: left;
    width: 100%;
    margin-right: -100%;
    backface-visibility: hidden;
    transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-item {
        transition: none;
    }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
    display: block;
}


/* rtl:begin:ignore */

.carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end {
    transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-end),
.active.carousel-item-start {
    transform: translateX(-100%);
}


/* rtl:end:ignore */

.carousel-fade .carousel-item {
    opacity: 0;
    transition-property: opacity;
    transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
    z-index: 1;
    opacity: 1;
}

.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
    z-index: 0;
    opacity: 0;
    transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-fade .active.carousel-item-start,
    .carousel-fade .active.carousel-item-end {
        transition: none;
    }
}

.carousel-control-prev,
.carousel-control-next {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 15%;
    padding: 0;
    color: #fff;
    text-align: center;
    background: none;
    border: 0;
    opacity: 0.5;
    transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-control-prev,
    .carousel-control-next {
        transition: none;
    }
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: 0.9;
}

.carousel-control-prev {
    left: 0;
}

.carousel-control-next {
    right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 100% 100%;
}


/* rtl:options: {
  "autoRename": true,
  "stringMap":[ {
    "name"    : "prev-next",
    "search"  : "prev",
    "replace" : "next"
  } ]
} */

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    padding: 0;
    margin-right: 15%;
    margin-bottom: 1rem;
    margin-left: 15%;
    list-style: none;
}

.carousel-indicators [data-bs-target] {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: 30px;
    height: 3px;
    padding: 0;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #fff;
    background-clip: padding-box;
    border: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    opacity: 0.5;
    transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-indicators [data-bs-target] {
        transition: none;
    }
}

.carousel-indicators .active {
    opacity: 1;
}

.carousel-caption {
    position: absolute;
    right: 15%;
    bottom: 1.25rem;
    left: 15%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    color: #fff;
    text-align: center;
}

.carousel-dark .carousel-control-prev-icon,
.carousel-dark .carousel-control-next-icon {
    filter: invert(1) grayscale(100);
}

.carousel-dark .carousel-indicators [data-bs-target] {
    background-color: #000;
}

.carousel-dark .carousel-caption {
    color: #000;
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg)/* rtl:ignore */
        ;
    }
}

.spinner-border {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    border: 0.25em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
    width: 1rem;
    height: 1rem;
    border-width: 0.2em;
}

@keyframes spinner-grow {
    0% {
        transform: scale(0);
    }
    50% {
        opacity: 1;
        transform: none;
    }
}

.spinner-grow {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    background-color: currentColor;
    border-radius: 50%;
    opacity: 0;
    animation: 0.75s linear infinite spinner-grow;
}

.spinner-grow-sm {
    width: 1rem;
    height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
    .spinner-border,
    .spinner-grow {
        animation-duration: 1.5s;
    }
}

.offcanvas {
    position: fixed;
    bottom: 0;
    z-index: 1040;
    display: flex;
    flex-direction: column;
    max-width: 100%;
    visibility: hidden;
    background-color: #fff;
    background-clip: padding-box;
    outline: 0;
    transition: transform 0.3s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .offcanvas {
        transition: none;
    }
}

.offcanvas-header {
    display: flex;
    justify-content: space-between;
    padding: 1rem 1rem;
}

.offcanvas-header .btn-close {
    padding: 0.5rem 0.5rem;
    margin: -0.5rem -0.5rem -0.5rem auto;
}

.offcanvas-title {
    margin-bottom: 0;
    line-height: 1.5;
}

.offcanvas-body {
    flex-grow: 1;
    padding: 1rem 1rem;
    overflow-y: auto;
}

.offcanvas-start {
    top: 0;
    left: 0;
    width: 400px;
    border-right: 1px solid rgba(0, 0, 0, 0.2);
    transform: translateX(-100%);
}

.offcanvas-end {
    top: 0;
    right: 0;
    width: 400px;
    border-left: 1px solid rgba(0, 0, 0, 0.2);
    transform: translateX(100%);
}

.offcanvas-bottom {
    right: 0;
    left: 0;
    height: 30vh;
    max-height: 100%;
    border-top: 1px solid rgba(0, 0, 0, 0.2);
    transform: translateY(100%);
}

.offcanvas.show {
    transform: none;
}

.offcanvas-backdrop::before {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1039;
    width: 100vw;
    height: 100vh;
    content: "";
    background-color: rgba(0, 0, 0, 0.5);
}

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

.link-primary {
    color: blue;
}

.link-primary:hover,
.link-primary:focus {
    color: #0000cc;
}

.link-dark {
    color: #000000;
}

.link-dark:hover,
.link-dark:focus {
    color: black;
}

.ratio {
    position: relative;
    width: 100%;
}

.ratio::before {
    display: block;
    padding-top: var(--bs-aspect-ratio);
    content: "";
}

.ratio>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ratio-1x1 {
    --bs-aspect-ratio: 100%;
}

.ratio-4x3 {
    --bs-aspect-ratio: calc(3 / 4 * 100%);
}

.ratio-16x9 {
    --bs-aspect-ratio: calc(9 / 16 * 100%);
}

.ratio-21x9 {
    --bs-aspect-ratio: calc(9 / 21 * 100%);
}

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}

.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
}

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

@media (min-width: 576px) {
    .sticky-sm-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }
}

@media (min-width: 768px) {
    .sticky-md-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }
}

@media (min-width: 992px) {
    .sticky-lg-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }
}

@media (min-width: 1200px) {
    .sticky-xl-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }
}

@media (min-width: 1400px) {
    .sticky-xxl-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.stretched-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: "";
}

.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.align-baseline {
    vertical-align: baseline !important;
}

.align-top {
    vertical-align: top !important;
}

.align-middle {
    vertical-align: middle !important;
}

.align-bottom {
    vertical-align: bottom !important;
}

.align-text-bottom {
    vertical-align: text-bottom !important;
}

.align-text-top {
    vertical-align: text-top !important;
}

.float-start {
    float: left !important;
}

.float-end {
    float: right !important;
}

.float-none {
    float: none !important;
}

.overflow-auto {
    overflow: auto !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.overflow-visible {
    overflow: visible !important;
}

.overflow-scroll {
    overflow: scroll !important;
}

.d-inline {
    display: inline !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-block {
    display: block !important;
}

.d-grid {
    display: grid !important;
}

.d-table {
    display: table !important;
}

.d-table-row {
    display: table-row !important;
}

.d-table-cell {
    display: table-cell !important;
}

.d-flex {
    display: flex !important;
}

.d-inline-flex {
    display: inline-flex !important;
}

.d-none {
    display: none !important;
}

.shadow {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-sm {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow-lg {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
    box-shadow: none !important;
}

.position-static {
    position: static !important;
}

.position-relative {
    position: relative !important;
}

.position-absolute {
    position: absolute !important;
}

.position-fixed {
    position: fixed !important;
}

.position-sticky {
    position: sticky !important;
}

.top-0 {
    top: 0 !important;
}

.top-50 {
    top: 50% !important;
}

.top-100 {
    top: 100% !important;
}

.bottom-0 {
    bottom: 0 !important;
}

.bottom-50 {
    bottom: 50% !important;
}

.bottom-100 {
    bottom: 100% !important;
}

.start-0 {
    left: 0 !important;
}

.start-50 {
    left: 50% !important;
}

.start-100 {
    left: 100% !important;
}

.end-0 {
    right: 0 !important;
}

.end-50 {
    right: 50% !important;
}

.end-100 {
    right: 100% !important;
}

.translate-middle {
    transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
    transform: translateX(-50%) !important;
}

.translate-middle-y {
    transform: translateY(-50%) !important;
}

.border {
    border: 1px solid #dee2e6 !important;
}

.border-0 {
    border: 0 !important;
}

.border-top {
    border-top: 1px solid #dee2e6 !important;
}

.border-top-0 {
    border-top: 0 !important;
}

.border-end {
    border-right: 1px solid #dee2e6 !important;
}

.border-end-0 {
    border-right: 0 !important;
}

.border-bottom {
    border-bottom: 1px solid #dee2e6 !important;
}

.border-bottom-0 {
    border-bottom: 0 !important;
}

.border-start {
    border-left: 1px solid #dee2e6 !important;
}

.border-start-0 {
    border-left: 0 !important;
}

.border-primary {
    border-color: blue !important;
}

.border-dark {
    border-color: #000000 !important;
}

.border-white {
    border-color: #fff !important;
}

.border-1 {
    border-width: 1px !important;
}

.border-2 {
    border-width: 2px !important;
}

.border-3 {
    border-width: 3px !important;
}

.border-4 {
    border-width: 4px !important;
}

.border-5 {
    border-width: 5px !important;
}

.w-25 {
    width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-75 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}

.w-auto {
    width: auto !important;
}

.mw-100 {
    max-width: 100% !important;
}

.vw-100 {
    width: 100vw !important;
}

.min-vw-100 {
    min-width: 100vw !important;
}

.h-25 {
    height: 25% !important;
}

.h-50 {
    height: 50% !important;
}

.h-75 {
    height: 75% !important;
}

.h-100 {
    height: 100% !important;
}

.h-auto {
    height: auto !important;
}

.mh-100 {
    max-height: 100% !important;
}

.vh-100 {
    height: 100vh !important;
}

.min-vh-100 {
    min-height: 100vh !important;
}

.flex-fill {
    flex: 1 1 auto !important;
}

.flex-row {
    flex-direction: row !important;
}

.flex-column {
    flex-direction: column !important;
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

.flex-column-reverse {
    flex-direction: column-reverse !important;
}

.flex-grow-0 {
    flex-grow: 0 !important;
}

.flex-grow-1 {
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    flex-shrink: 0 !important;
}

.flex-shrink-1 {
    flex-shrink: 1 !important;
}

.flex-wrap {
    flex-wrap: wrap !important;
}

.flex-nowrap {
    flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important;
}

.gap-0 {
    gap: 0 !important;
}

.gap-1 {
    gap: 0.25rem !important;
}

.gap-2 {
    gap: 0.5rem !important;
}

.gap-3 {
    gap: 1rem !important;
}

.gap-4 {
    gap: 1.5rem !important;
}

.gap-5 {
    gap: 3rem !important;
}

.justify-content-start {
    justify-content: flex-start !important;
}

.justify-content-end {
    justify-content: flex-end !important;
}

.justify-content-center {
    justify-content: center !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.justify-content-around {
    justify-content: space-around !important;
}

.justify-content-evenly {
    justify-content: space-evenly !important;
}

.align-items-start {
    align-items: flex-start !important;
}

.align-items-end {
    align-items: flex-end !important;
}

.align-items-center {
    align-items: center !important;
}

.align-items-baseline {
    align-items: baseline !important;
}

.align-items-stretch {
    align-items: stretch !important;
}

.align-content-start {
    align-content: flex-start !important;
}

.align-content-end {
    align-content: flex-end !important;
}

.align-content-center {
    align-content: center !important;
}

.align-content-between {
    align-content: space-between !important;
}

.align-content-around {
    align-content: space-around !important;
}

.align-content-stretch {
    align-content: stretch !important;
}

.align-self-auto {
    align-self: auto !important;
}

.align-self-start {
    align-self: flex-start !important;
}

.align-self-end {
    align-self: flex-end !important;
}

.align-self-center {
    align-self: center !important;
}

.align-self-baseline {
    align-self: baseline !important;
}

.align-self-stretch {
    align-self: stretch !important;
}

.order-first {
    order: -1 !important;
}

.order-0 {
    order: 0 !important;
}

.order-1 {
    order: 1 !important;
}

.order-2 {
    order: 2 !important;
}

.order-3 {
    order: 3 !important;
}

.order-4 {
    order: 4 !important;
}

.order-5 {
    order: 5 !important;
}

.order-last {
    order: 6 !important;
}

.m-0 {
    margin: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.m-auto {
    margin: auto !important;
}

.mx-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.mx-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
}

.mx-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
}

.mx-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
}

.mx-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
}

.mx-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
}

.mx-auto {
    margin-right: auto !important;
    margin-left: auto !important;
}

.my-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.my-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
}

.my-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}

.my-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}

.my-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

.my-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
}

.my-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt-1 {
    margin-top: 0.25rem !important;
}

.mt-2 {
    margin-top: 0.5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mt-5 {
    margin-top: 3rem !important;
}

.mt-auto {
    margin-top: auto !important;
}

.me-0 {
    margin-right: 0 !important;
}

.me-1 {
    margin-right: 0.25rem !important;
}

.me-2 {
    margin-right: 0.5rem !important;
}

.me-3 {
    margin-right: 1rem !important;
}

.me-4 {
    margin-right: 1.5rem !important;
}

.me-5 {
    margin-right: 3rem !important;
}

.me-auto {
    margin-right: auto !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-1 {
    margin-bottom: 0.25rem !important;
}

.mb-2 {
    margin-bottom: 0.5rem !important;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

.mb-4 {
    margin-bottom: 1.5rem !important;
}

.mb-5 {
    margin-bottom: 3rem !important;
}

.mb-auto {
    margin-bottom: auto !important;
}

.ms-0 {
    margin-left: 0 !important;
}

.ms-1 {
    margin-left: 0.25rem !important;
}

.ms-2 {
    margin-left: 0.5rem !important;
}

.ms-3 {
    margin-left: 1rem !important;
}

.ms-4 {
    margin-left: 1.5rem !important;
}

.ms-5 {
    margin-left: 3rem !important;
}

.ms-auto {
    margin-left: auto !important;
}

.p-0 {
    padding: 0 !important;
}

.p-1 {
    padding: 0.25rem !important;
}

.p-2 {
    padding: 0.5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.p-5 {
    padding: 3rem !important;
}

.px-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.px-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
}

.px-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
}

.px-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
}

.px-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
}

.px-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
}

.py-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.py-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
}

.py-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

.py-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

.py-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
}

.py-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pt-1 {
    padding-top: 0.25rem !important;
}

.pt-2 {
    padding-top: 0.5rem !important;
}

.pt-3 {
    padding-top: 1rem !important;
}

.pt-4 {
    padding-top: 1.5rem !important;
}

.pt-5 {
    padding-top: 3rem !important;
}

.pe-0 {
    padding-right: 0 !important;
}

.pe-1 {
    padding-right: 0.25rem !important;
}

.pe-2 {
    padding-right: 0.5rem !important;
}

.pe-3 {
    padding-right: 1rem !important;
}

.pe-4 {
    padding-right: 1.5rem !important;
}

.pe-5 {
    padding-right: 3rem !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pb-1 {
    padding-bottom: 0.25rem !important;
}

.pb-2 {
    padding-bottom: 0.5rem !important;
}

.pb-3 {
    padding-bottom: 1rem !important;
}

.pb-4 {
    padding-bottom: 1.5rem !important;
}

.pb-5 {
    padding-bottom: 3rem !important;
}

.ps-0 {
    padding-left: 0 !important;
}

.ps-1 {
    padding-left: 0.25rem !important;
}

.ps-2 {
    padding-left: 0.5rem !important;
}

.ps-3 {
    padding-left: 1rem !important;
}

.ps-4 {
    padding-left: 1.5rem !important;
}

.ps-5 {
    padding-left: 3rem !important;
}

.font-monospace {
    font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
    font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
    font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
    font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
    font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
    font-size: 1.25rem !important;
}

.fs-6 {
    font-size: 1rem !important;
}

.fst-italic {
    font-style: italic !important;
}

.fst-normal {
    font-style: normal !important;
}

.fw-light {
    font-weight: 300 !important;
}

.fw-lighter {
    font-weight: lighter !important;
}

.fw-normal {
    font-weight: 400 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-bolder {
    font-weight: bolder !important;
}

.lh-1 {
    line-height: 1 !important;
}

.lh-sm {
    line-height: 1.25 !important;
}

.lh-base {
    line-height: 1.5 !important;
}

.lh-lg {
    line-height: 2 !important;
}

.text-start {
    text-align: left !important;
}

.text-end {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

.text-decoration-none {
    text-decoration: none !important;
}

.text-decoration-underline {
    text-decoration: underline !important;
}

.text-decoration-line-through {
    text-decoration: line-through !important;
}

.text-lowercase {
    text-transform: lowercase !important;
}

.text-uppercase {
    text-transform: uppercase !important;
}

.text-capitalize {
    text-transform: capitalize !important;
}

.text-wrap {
    white-space: normal !important;
}

.text-nowrap {
    white-space: nowrap !important;
}


/* rtl:begin:remove */

.text-break {
    word-wrap: break-word !important;
    word-break: break-word !important;
}


/* rtl:end:remove */

.text-primary {
    color: blue !important;
}

.text-dark {
    color: #000000 !important;
}

.text-white {
    color: #fff !important;
}

.text-body {
    color: #212529 !important;
}

.text-muted {
    color: #6c757d !important;
}

.text-black-50 {
    color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
    color: rgba(255, 255, 255, 0.5) !important;
}

.text-reset {
    color: inherit !important;
}

.bg-primary {
    background-color: blue !important;
}

.bg-dark {
    background-color: #000000 !important;
}

.bg-body {
    background-color: #fff !important;
}

.bg-white {
    background-color: #fff !important;
}

.bg-transparent {
    background-color: transparent !important;
}

.bg-gradient {
    background-image: var(--bs-gradient) !important;
}

.user-select-all {
    user-select: all !important;
}

.user-select-auto {
    user-select: auto !important;
}

.user-select-none {
    user-select: none !important;
}

.pe-none {
    pointer-events: none !important;
}

.pe-auto {
    pointer-events: auto !important;
}

.rounded {
    border-radius: 0.25rem !important;
}

.rounded-0 {
    border-radius: 0 !important;
}

.rounded-1 {
    border-radius: 0.2rem !important;
}

.rounded-2 {
    border-radius: 0.25rem !important;
}

.rounded-3 {
    border-radius: 0.3rem !important;
}

.rounded-circle {
    border-radius: 50% !important;
}

.rounded-pill {
    border-radius: 50rem !important;
}

.rounded-top {
    border-top-left-radius: 0.25rem !important;
    border-top-right-radius: 0.25rem !important;
}

.rounded-end {
    border-top-right-radius: 0.25rem !important;
    border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
    border-bottom-right-radius: 0.25rem !important;
    border-bottom-left-radius: 0.25rem !important;
}

.rounded-start {
    border-bottom-left-radius: 0.25rem !important;
    border-top-left-radius: 0.25rem !important;
}

.visible {
    visibility: visible !important;
}

.invisible {
    visibility: hidden !important;
}

@media (min-width: 576px) {
    .float-sm-start {
        float: left !important;
    }
    .float-sm-end {
        float: right !important;
    }
    .float-sm-none {
        float: none !important;
    }
    .d-sm-inline {
        display: inline !important;
    }
    .d-sm-inline-block {
        display: inline-block !important;
    }
    .d-sm-block {
        display: block !important;
    }
    .d-sm-grid {
        display: grid !important;
    }
    .d-sm-table {
        display: table !important;
    }
    .d-sm-table-row {
        display: table-row !important;
    }
    .d-sm-table-cell {
        display: table-cell !important;
    }
    .d-sm-flex {
        display: flex !important;
    }
    .d-sm-inline-flex {
        display: inline-flex !important;
    }
    .d-sm-none {
        display: none !important;
    }
    .flex-sm-fill {
        flex: 1 1 auto !important;
    }
    .flex-sm-row {
        flex-direction: row !important;
    }
    .flex-sm-column {
        flex-direction: column !important;
    }
    .flex-sm-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-sm-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-sm-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-sm-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-sm-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-sm-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-sm-wrap {
        flex-wrap: wrap !important;
    }
    .flex-sm-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .gap-sm-0 {
        gap: 0 !important;
    }
    .gap-sm-1 {
        gap: 0.25rem !important;
    }
    .gap-sm-2 {
        gap: 0.5rem !important;
    }
    .gap-sm-3 {
        gap: 1rem !important;
    }
    .gap-sm-4 {
        gap: 1.5rem !important;
    }
    .gap-sm-5 {
        gap: 3rem !important;
    }
    .justify-content-sm-start {
        justify-content: flex-start !important;
    }
    .justify-content-sm-end {
        justify-content: flex-end !important;
    }
    .justify-content-sm-center {
        justify-content: center !important;
    }
    .justify-content-sm-between {
        justify-content: space-between !important;
    }
    .justify-content-sm-around {
        justify-content: space-around !important;
    }
    .justify-content-sm-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-sm-start {
        align-items: flex-start !important;
    }
    .align-items-sm-end {
        align-items: flex-end !important;
    }
    .align-items-sm-center {
        align-items: center !important;
    }
    .align-items-sm-baseline {
        align-items: baseline !important;
    }
    .align-items-sm-stretch {
        align-items: stretch !important;
    }
    .align-content-sm-start {
        align-content: flex-start !important;
    }
    .align-content-sm-end {
        align-content: flex-end !important;
    }
    .align-content-sm-center {
        align-content: center !important;
    }
    .align-content-sm-between {
        align-content: space-between !important;
    }
    .align-content-sm-around {
        align-content: space-around !important;
    }
    .align-content-sm-stretch {
        align-content: stretch !important;
    }
    .align-self-sm-auto {
        align-self: auto !important;
    }
    .align-self-sm-start {
        align-self: flex-start !important;
    }
    .align-self-sm-end {
        align-self: flex-end !important;
    }
    .align-self-sm-center {
        align-self: center !important;
    }
    .align-self-sm-baseline {
        align-self: baseline !important;
    }
    .align-self-sm-stretch {
        align-self: stretch !important;
    }
    .order-sm-first {
        order: -1 !important;
    }
    .order-sm-0 {
        order: 0 !important;
    }
    .order-sm-1 {
        order: 1 !important;
    }
    .order-sm-2 {
        order: 2 !important;
    }
    .order-sm-3 {
        order: 3 !important;
    }
    .order-sm-4 {
        order: 4 !important;
    }
    .order-sm-5 {
        order: 5 !important;
    }
    .order-sm-last {
        order: 6 !important;
    }
    .m-sm-0 {
        margin: 0 !important;
    }
    .m-sm-1 {
        margin: 0.25rem !important;
    }
    .m-sm-2 {
        margin: 0.5rem !important;
    }
    .m-sm-3 {
        margin: 1rem !important;
    }
    .m-sm-4 {
        margin: 1.5rem !important;
    }
    .m-sm-5 {
        margin: 3rem !important;
    }
    .m-sm-auto {
        margin: auto !important;
    }
    .mx-sm-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-sm-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-sm-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-sm-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-sm-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-sm-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-sm-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-sm-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-sm-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-sm-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-sm-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-sm-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-sm-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-sm-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-sm-0 {
        margin-top: 0 !important;
    }
    .mt-sm-1 {
        margin-top: 0.25rem !important;
    }
    .mt-sm-2 {
        margin-top: 0.5rem !important;
    }
    .mt-sm-3 {
        margin-top: 1rem !important;
    }
    .mt-sm-4 {
        margin-top: 1.5rem !important;
    }
    .mt-sm-5 {
        margin-top: 3rem !important;
    }
    .mt-sm-auto {
        margin-top: auto !important;
    }
    .me-sm-0 {
        margin-right: 0 !important;
    }
    .me-sm-1 {
        margin-right: 0.25rem !important;
    }
    .me-sm-2 {
        margin-right: 0.5rem !important;
    }
    .me-sm-3 {
        margin-right: 1rem !important;
    }
    .me-sm-4 {
        margin-right: 1.5rem !important;
    }
    .me-sm-5 {
        margin-right: 3rem !important;
    }
    .me-sm-auto {
        margin-right: auto !important;
    }
    .mb-sm-0 {
        margin-bottom: 0 !important;
    }
    .mb-sm-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-sm-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-sm-3 {
        margin-bottom: 1rem !important;
    }
    .mb-sm-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-sm-5 {
        margin-bottom: 3rem !important;
    }
    .mb-sm-auto {
        margin-bottom: auto !important;
    }
    .ms-sm-0 {
        margin-left: 0 !important;
    }
    .ms-sm-1 {
        margin-left: 0.25rem !important;
    }
    .ms-sm-2 {
        margin-left: 0.5rem !important;
    }
    .ms-sm-3 {
        margin-left: 1rem !important;
    }
    .ms-sm-4 {
        margin-left: 1.5rem !important;
    }
    .ms-sm-5 {
        margin-left: 3rem !important;
    }
    .ms-sm-auto {
        margin-left: auto !important;
    }
    .p-sm-0 {
        padding: 0 !important;
    }
    .p-sm-1 {
        padding: 0.25rem !important;
    }
    .p-sm-2 {
        padding: 0.5rem !important;
    }
    .p-sm-3 {
        padding: 1rem !important;
    }
    .p-sm-4 {
        padding: 1.5rem !important;
    }
    .p-sm-5 {
        padding: 3rem !important;
    }
    .px-sm-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    .px-sm-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }
    .px-sm-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }
    .px-sm-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }
    .px-sm-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }
    .px-sm-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }
    .py-sm-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    .py-sm-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }
    .py-sm-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }
    .py-sm-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }
    .py-sm-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
    .py-sm-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }
    .pt-sm-0 {
        padding-top: 0 !important;
    }
    .pt-sm-1 {
        padding-top: 0.25rem !important;
    }
    .pt-sm-2 {
        padding-top: 0.5rem !important;
    }
    .pt-sm-3 {
        padding-top: 1rem !important;
    }
    .pt-sm-4 {
        padding-top: 1.5rem !important;
    }
    .pt-sm-5 {
        padding-top: 3rem !important;
    }
    .pe-sm-0 {
        padding-right: 0 !important;
    }
    .pe-sm-1 {
        padding-right: 0.25rem !important;
    }
    .pe-sm-2 {
        padding-right: 0.5rem !important;
    }
    .pe-sm-3 {
        padding-right: 1rem !important;
    }
    .pe-sm-4 {
        padding-right: 1.5rem !important;
    }
    .pe-sm-5 {
        padding-right: 3rem !important;
    }
    .pb-sm-0 {
        padding-bottom: 0 !important;
    }
    .pb-sm-1 {
        padding-bottom: 0.25rem !important;
    }
    .pb-sm-2 {
        padding-bottom: 0.5rem !important;
    }
    .pb-sm-3 {
        padding-bottom: 1rem !important;
    }
    .pb-sm-4 {
        padding-bottom: 1.5rem !important;
    }
    .pb-sm-5 {
        padding-bottom: 3rem !important;
    }
    .ps-sm-0 {
        padding-left: 0 !important;
    }
    .ps-sm-1 {
        padding-left: 0.25rem !important;
    }
    .ps-sm-2 {
        padding-left: 0.5rem !important;
    }
    .ps-sm-3 {
        padding-left: 1rem !important;
    }
    .ps-sm-4 {
        padding-left: 1.5rem !important;
    }
    .ps-sm-5 {
        padding-left: 3rem !important;
    }
    .text-sm-start {
        text-align: left !important;
    }
    .text-sm-end {
        text-align: right !important;
    }
    .text-sm-center {
        text-align: center !important;
    }
}

@media (min-width: 768px) {
    .float-md-start {
        float: left !important;
    }
    .float-md-end {
        float: right !important;
    }
    .float-md-none {
        float: none !important;
    }
    .d-md-inline {
        display: inline !important;
    }
    .d-md-inline-block {
        display: inline-block !important;
    }
    .d-md-block {
        display: block !important;
    }
    .d-md-grid {
        display: grid !important;
    }
    .d-md-table {
        display: table !important;
    }
    .d-md-table-row {
        display: table-row !important;
    }
    .d-md-table-cell {
        display: table-cell !important;
    }
    .d-md-flex {
        display: flex !important;
    }
    .d-md-inline-flex {
        display: inline-flex !important;
    }
    .d-md-none {
        display: none !important;
    }
    .flex-md-fill {
        flex: 1 1 auto !important;
    }
    .flex-md-row {
        flex-direction: row !important;
    }
    .flex-md-column {
        flex-direction: column !important;
    }
    .flex-md-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-md-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-md-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-md-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-md-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-md-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-md-wrap {
        flex-wrap: wrap !important;
    }
    .flex-md-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .gap-md-0 {
        gap: 0 !important;
    }
    .gap-md-1 {
        gap: 0.25rem !important;
    }
    .gap-md-2 {
        gap: 0.5rem !important;
    }
    .gap-md-3 {
        gap: 1rem !important;
    }
    .gap-md-4 {
        gap: 1.5rem !important;
    }
    .gap-md-5 {
        gap: 3rem !important;
    }
    .justify-content-md-start {
        justify-content: flex-start !important;
    }
    .justify-content-md-end {
        justify-content: flex-end !important;
    }
    .justify-content-md-center {
        justify-content: center !important;
    }
    .justify-content-md-between {
        justify-content: space-between !important;
    }
    .justify-content-md-around {
        justify-content: space-around !important;
    }
    .justify-content-md-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-md-start {
        align-items: flex-start !important;
    }
    .align-items-md-end {
        align-items: flex-end !important;
    }
    .align-items-md-center {
        align-items: center !important;
    }
    .align-items-md-baseline {
        align-items: baseline !important;
    }
    .align-items-md-stretch {
        align-items: stretch !important;
    }
    .align-content-md-start {
        align-content: flex-start !important;
    }
    .align-content-md-end {
        align-content: flex-end !important;
    }
    .align-content-md-center {
        align-content: center !important;
    }
    .align-content-md-between {
        align-content: space-between !important;
    }
    .align-content-md-around {
        align-content: space-around !important;
    }
    .align-content-md-stretch {
        align-content: stretch !important;
    }
    .align-self-md-auto {
        align-self: auto !important;
    }
    .align-self-md-start {
        align-self: flex-start !important;
    }
    .align-self-md-end {
        align-self: flex-end !important;
    }
    .align-self-md-center {
        align-self: center !important;
    }
    .align-self-md-baseline {
        align-self: baseline !important;
    }
    .align-self-md-stretch {
        align-self: stretch !important;
    }
    .order-md-first {
        order: -1 !important;
    }
    .order-md-0 {
        order: 0 !important;
    }
    .order-md-1 {
        order: 1 !important;
    }
    .order-md-2 {
        order: 2 !important;
    }
    .order-md-3 {
        order: 3 !important;
    }
    .order-md-4 {
        order: 4 !important;
    }
    .order-md-5 {
        order: 5 !important;
    }
    .order-md-last {
        order: 6 !important;
    }
    .m-md-0 {
        margin: 0 !important;
    }
    .m-md-1 {
        margin: 0.25rem !important;
    }
    .m-md-2 {
        margin: 0.5rem !important;
    }
    .m-md-3 {
        margin: 1rem !important;
    }
    .m-md-4 {
        margin: 1.5rem !important;
    }
    .m-md-5 {
        margin: 3rem !important;
    }
    .m-md-auto {
        margin: auto !important;
    }
    .mx-md-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-md-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-md-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-md-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-md-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-md-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-md-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-md-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-md-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-md-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-md-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-md-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-md-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-md-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-md-0 {
        margin-top: 0 !important;
    }
    .mt-md-1 {
        margin-top: 0.25rem !important;
    }
    .mt-md-2 {
        margin-top: 0.5rem !important;
    }
    .mt-md-3 {
        margin-top: 1rem !important;
    }
    .mt-md-4 {
        margin-top: 1.5rem !important;
    }
    .mt-md-5 {
        margin-top: 3rem !important;
    }
    .mt-md-auto {
        margin-top: auto !important;
    }
    .me-md-0 {
        margin-right: 0 !important;
    }
    .me-md-1 {
        margin-right: 0.25rem !important;
    }
    .me-md-2 {
        margin-right: 0.5rem !important;
    }
    .me-md-3 {
        margin-right: 1rem !important;
    }
    .me-md-4 {
        margin-right: 1.5rem !important;
    }
    .me-md-5 {
        margin-right: 3rem !important;
    }
    .me-md-auto {
        margin-right: auto !important;
    }
    .mb-md-0 {
        margin-bottom: 0 !important;
    }
    .mb-md-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-md-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-md-3 {
        margin-bottom: 1rem !important;
    }
    .mb-md-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-md-5 {
        margin-bottom: 3rem !important;
    }
    .mb-md-auto {
        margin-bottom: auto !important;
    }
    .ms-md-0 {
        margin-left: 0 !important;
    }
    .ms-md-1 {
        margin-left: 0.25rem !important;
    }
    .ms-md-2 {
        margin-left: 0.5rem !important;
    }
    .ms-md-3 {
        margin-left: 1rem !important;
    }
    .ms-md-4 {
        margin-left: 1.5rem !important;
    }
    .ms-md-5 {
        margin-left: 3rem !important;
    }
    .ms-md-auto {
        margin-left: auto !important;
    }
    .p-md-0 {
        padding: 0 !important;
    }
    .p-md-1 {
        padding: 0.25rem !important;
    }
    .p-md-2 {
        padding: 0.5rem !important;
    }
    .p-md-3 {
        padding: 1rem !important;
    }
    .p-md-4 {
        padding: 1.5rem !important;
    }
    .p-md-5 {
        padding: 3rem !important;
    }
    .px-md-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    .px-md-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }
    .px-md-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }
    .px-md-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }
    .px-md-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }
    .px-md-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }
    .py-md-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    .py-md-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }
    .py-md-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }
    .py-md-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }
    .py-md-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
    .py-md-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }
    .pt-md-0 {
        padding-top: 0 !important;
    }
    .pt-md-1 {
        padding-top: 0.25rem !important;
    }
    .pt-md-2 {
        padding-top: 0.5rem !important;
    }
    .pt-md-3 {
        padding-top: 1rem !important;
    }
    .pt-md-4 {
        padding-top: 1.5rem !important;
    }
    .pt-md-5 {
        padding-top: 3rem !important;
    }
    .pe-md-0 {
        padding-right: 0 !important;
    }
    .pe-md-1 {
        padding-right: 0.25rem !important;
    }
    .pe-md-2 {
        padding-right: 0.5rem !important;
    }
    .pe-md-3 {
        padding-right: 1rem !important;
    }
    .pe-md-4 {
        padding-right: 1.5rem !important;
    }
    .pe-md-5 {
        padding-right: 3rem !important;
    }
    .pb-md-0 {
        padding-bottom: 0 !important;
    }
    .pb-md-1 {
        padding-bottom: 0.25rem !important;
    }
    .pb-md-2 {
        padding-bottom: 0.5rem !important;
    }
    .pb-md-3 {
        padding-bottom: 1rem !important;
    }
    .pb-md-4 {
        padding-bottom: 1.5rem !important;
    }
    .pb-md-5 {
        padding-bottom: 3rem !important;
    }
    .ps-md-0 {
        padding-left: 0 !important;
    }
    .ps-md-1 {
        padding-left: 0.25rem !important;
    }
    .ps-md-2 {
        padding-left: 0.5rem !important;
    }
    .ps-md-3 {
        padding-left: 1rem !important;
    }
    .ps-md-4 {
        padding-left: 1.5rem !important;
    }
    .ps-md-5 {
        padding-left: 3rem !important;
    }
    .text-md-start {
        text-align: left !important;
    }
    .text-md-end {
        text-align: right !important;
    }
    .text-md-center {
        text-align: center !important;
    }
}

@media (min-width: 992px) {
    .float-lg-start {
        float: left !important;
    }
    .float-lg-end {
        float: right !important;
    }
    .float-lg-none {
        float: none !important;
    }
    .d-lg-inline {
        display: inline !important;
    }
    .d-lg-inline-block {
        display: inline-block !important;
    }
    .d-lg-block {
        display: block !important;
    }
    .d-lg-grid {
        display: grid !important;
    }
    .d-lg-table {
        display: table !important;
    }
    .d-lg-table-row {
        display: table-row !important;
    }
    .d-lg-table-cell {
        display: table-cell !important;
    }
    .d-lg-flex {
        display: flex !important;
    }
    .d-lg-inline-flex {
        display: inline-flex !important;
    }
    .d-lg-none {
        display: none !important;
    }
    .flex-lg-fill {
        flex: 1 1 auto !important;
    }
    .flex-lg-row {
        flex-direction: row !important;
    }
    .flex-lg-column {
        flex-direction: column !important;
    }
    .flex-lg-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-lg-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-lg-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-lg-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-lg-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-lg-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-lg-wrap {
        flex-wrap: wrap !important;
    }
    .flex-lg-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .gap-lg-0 {
        gap: 0 !important;
    }
    .gap-lg-1 {
        gap: 0.25rem !important;
    }
    .gap-lg-2 {
        gap: 0.5rem !important;
    }
    .gap-lg-3 {
        gap: 1rem !important;
    }
    .gap-lg-4 {
        gap: 1.5rem !important;
    }
    .gap-lg-5 {
        gap: 3rem !important;
    }
    .justify-content-lg-start {
        justify-content: flex-start !important;
    }
    .justify-content-lg-end {
        justify-content: flex-end !important;
    }
    .justify-content-lg-center {
        justify-content: center !important;
    }
    .justify-content-lg-between {
        justify-content: space-between !important;
    }
    .justify-content-lg-around {
        justify-content: space-around !important;
    }
    .justify-content-lg-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-lg-start {
        align-items: flex-start !important;
    }
    .align-items-lg-end {
        align-items: flex-end !important;
    }
    .align-items-lg-center {
        align-items: center !important;
    }
    .align-items-lg-baseline {
        align-items: baseline !important;
    }
    .align-items-lg-stretch {
        align-items: stretch !important;
    }
    .align-content-lg-start {
        align-content: flex-start !important;
    }
    .align-content-lg-end {
        align-content: flex-end !important;
    }
    .align-content-lg-center {
        align-content: center !important;
    }
    .align-content-lg-between {
        align-content: space-between !important;
    }
    .align-content-lg-around {
        align-content: space-around !important;
    }
    .align-content-lg-stretch {
        align-content: stretch !important;
    }
    .align-self-lg-auto {
        align-self: auto !important;
    }
    .align-self-lg-start {
        align-self: flex-start !important;
    }
    .align-self-lg-end {
        align-self: flex-end !important;
    }
    .align-self-lg-center {
        align-self: center !important;
    }
    .align-self-lg-baseline {
        align-self: baseline !important;
    }
    .align-self-lg-stretch {
        align-self: stretch !important;
    }
    .order-lg-first {
        order: -1 !important;
    }
    .order-lg-0 {
        order: 0 !important;
    }
    .order-lg-1 {
        order: 1 !important;
    }
    .order-lg-2 {
        order: 2 !important;
    }
    .order-lg-3 {
        order: 3 !important;
    }
    .order-lg-4 {
        order: 4 !important;
    }
    .order-lg-5 {
        order: 5 !important;
    }
    .order-lg-last {
        order: 6 !important;
    }
    .m-lg-0 {
        margin: 0 !important;
    }
    .m-lg-1 {
        margin: 0.25rem !important;
    }
    .m-lg-2 {
        margin: 0.5rem !important;
    }
    .m-lg-3 {
        margin: 1rem !important;
    }
    .m-lg-4 {
        margin: 1.5rem !important;
    }
    .m-lg-5 {
        margin: 3rem !important;
    }
    .m-lg-auto {
        margin: auto !important;
    }
    .mx-lg-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-lg-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-lg-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-lg-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-lg-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-lg-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-lg-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-lg-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-lg-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-lg-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-lg-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-lg-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-lg-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-lg-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-lg-0 {
        margin-top: 0 !important;
    }
    .mt-lg-1 {
        margin-top: 0.25rem !important;
    }
    .mt-lg-2 {
        margin-top: 0.5rem !important;
    }
    .mt-lg-3 {
        margin-top: 1rem !important;
    }
    .mt-lg-4 {
        margin-top: 1.5rem !important;
    }
    .mt-lg-5 {
        margin-top: 3rem !important;
    }
    .mt-lg-auto {
        margin-top: auto !important;
    }
    .me-lg-0 {
        margin-right: 0 !important;
    }
    .me-lg-1 {
        margin-right: 0.25rem !important;
    }
    .me-lg-2 {
        margin-right: 0.5rem !important;
    }
    .me-lg-3 {
        margin-right: 1rem !important;
    }
    .me-lg-4 {
        margin-right: 1.5rem !important;
    }
    .me-lg-5 {
        margin-right: 3rem !important;
    }
    .me-lg-auto {
        margin-right: auto !important;
    }
    .mb-lg-0 {
        margin-bottom: 0 !important;
    }
    .mb-lg-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-lg-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-lg-3 {
        margin-bottom: 1rem !important;
    }
    .mb-lg-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-lg-5 {
        margin-bottom: 3rem !important;
    }
    .mb-lg-auto {
        margin-bottom: auto !important;
    }
    .ms-lg-0 {
        margin-left: 0 !important;
    }
    .ms-lg-1 {
        margin-left: 0.25rem !important;
    }
    .ms-lg-2 {
        margin-left: 0.5rem !important;
    }
    .ms-lg-3 {
        margin-left: 1rem !important;
    }
    .ms-lg-4 {
        margin-left: 1.5rem !important;
    }
    .ms-lg-5 {
        margin-left: 3rem !important;
    }
    .ms-lg-auto {
        margin-left: auto !important;
    }
    .p-lg-0 {
        padding: 0 !important;
    }
    .p-lg-1 {
        padding: 0.25rem !important;
    }
    .p-lg-2 {
        padding: 0.5rem !important;
    }
    .p-lg-3 {
        padding: 1rem !important;
    }
    .p-lg-4 {
        padding: 1.5rem !important;
    }
    .p-lg-5 {
        padding: 3rem !important;
    }
    .px-lg-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    .px-lg-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }
    .px-lg-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }
    .px-lg-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }
    .px-lg-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }
    .px-lg-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }
    .py-lg-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    .py-lg-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }
    .py-lg-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }
    .py-lg-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }
    .py-lg-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
    .py-lg-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }
    .pt-lg-0 {
        padding-top: 0 !important;
    }
    .pt-lg-1 {
        padding-top: 0.25rem !important;
    }
    .pt-lg-2 {
        padding-top: 0.5rem !important;
    }
    .pt-lg-3 {
        padding-top: 1rem !important;
    }
    .pt-lg-4 {
        padding-top: 1.5rem !important;
    }
    .pt-lg-5 {
        padding-top: 3rem !important;
    }
    .pe-lg-0 {
        padding-right: 0 !important;
    }
    .pe-lg-1 {
        padding-right: 0.25rem !important;
    }
    .pe-lg-2 {
        padding-right: 0.5rem !important;
    }
    .pe-lg-3 {
        padding-right: 1rem !important;
    }
    .pe-lg-4 {
        padding-right: 1.5rem !important;
    }
    .pe-lg-5 {
        padding-right: 3rem !important;
    }
    .pb-lg-0 {
        padding-bottom: 0 !important;
    }
    .pb-lg-1 {
        padding-bottom: 0.25rem !important;
    }
    .pb-lg-2 {
        padding-bottom: 0.5rem !important;
    }
    .pb-lg-3 {
        padding-bottom: 1rem !important;
    }
    .pb-lg-4 {
        padding-bottom: 1.5rem !important;
    }
    .pb-lg-5 {
        padding-bottom: 3rem !important;
    }
    .ps-lg-0 {
        padding-left: 0 !important;
    }
    .ps-lg-1 {
        padding-left: 0.25rem !important;
    }
    .ps-lg-2 {
        padding-left: 0.5rem !important;
    }
    .ps-lg-3 {
        padding-left: 1rem !important;
    }
    .ps-lg-4 {
        padding-left: 1.5rem !important;
    }
    .ps-lg-5 {
        padding-left: 3rem !important;
    }
    .text-lg-start {
        text-align: left !important;
    }
    .text-lg-end {
        text-align: right !important;
    }
    .text-lg-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .float-xl-start {
        float: left !important;
    }
    .float-xl-end {
        float: right !important;
    }
    .float-xl-none {
        float: none !important;
    }
    .d-xl-inline {
        display: inline !important;
    }
    .d-xl-inline-block {
        display: inline-block !important;
    }
    .d-xl-block {
        display: block !important;
    }
    .d-xl-grid {
        display: grid !important;
    }
    .d-xl-table {
        display: table !important;
    }
    .d-xl-table-row {
        display: table-row !important;
    }
    .d-xl-table-cell {
        display: table-cell !important;
    }
    .d-xl-flex {
        display: flex !important;
    }
    .d-xl-inline-flex {
        display: inline-flex !important;
    }
    .d-xl-none {
        display: none !important;
    }
    .flex-xl-fill {
        flex: 1 1 auto !important;
    }
    .flex-xl-row {
        flex-direction: row !important;
    }
    .flex-xl-column {
        flex-direction: column !important;
    }
    .flex-xl-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-xl-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-xl-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-xl-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-xl-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-xl-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-xl-wrap {
        flex-wrap: wrap !important;
    }
    .flex-xl-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .gap-xl-0 {
        gap: 0 !important;
    }
    .gap-xl-1 {
        gap: 0.25rem !important;
    }
    .gap-xl-2 {
        gap: 0.5rem !important;
    }
    .gap-xl-3 {
        gap: 1rem !important;
    }
    .gap-xl-4 {
        gap: 1.5rem !important;
    }
    .gap-xl-5 {
        gap: 3rem !important;
    }
    .justify-content-xl-start {
        justify-content: flex-start !important;
    }
    .justify-content-xl-end {
        justify-content: flex-end !important;
    }
    .justify-content-xl-center {
        justify-content: center !important;
    }
    .justify-content-xl-between {
        justify-content: space-between !important;
    }
    .justify-content-xl-around {
        justify-content: space-around !important;
    }
    .justify-content-xl-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-xl-start {
        align-items: flex-start !important;
    }
    .align-items-xl-end {
        align-items: flex-end !important;
    }
    .align-items-xl-center {
        align-items: center !important;
    }
    .align-items-xl-baseline {
        align-items: baseline !important;
    }
    .align-items-xl-stretch {
        align-items: stretch !important;
    }
    .align-content-xl-start {
        align-content: flex-start !important;
    }
    .align-content-xl-end {
        align-content: flex-end !important;
    }
    .align-content-xl-center {
        align-content: center !important;
    }
    .align-content-xl-between {
        align-content: space-between !important;
    }
    .align-content-xl-around {
        align-content: space-around !important;
    }
    .align-content-xl-stretch {
        align-content: stretch !important;
    }
    .align-self-xl-auto {
        align-self: auto !important;
    }
    .align-self-xl-start {
        align-self: flex-start !important;
    }
    .align-self-xl-end {
        align-self: flex-end !important;
    }
    .align-self-xl-center {
        align-self: center !important;
    }
    .align-self-xl-baseline {
        align-self: baseline !important;
    }
    .align-self-xl-stretch {
        align-self: stretch !important;
    }
    .order-xl-first {
        order: -1 !important;
    }
    .order-xl-0 {
        order: 0 !important;
    }
    .order-xl-1 {
        order: 1 !important;
    }
    .order-xl-2 {
        order: 2 !important;
    }
    .order-xl-3 {
        order: 3 !important;
    }
    .order-xl-4 {
        order: 4 !important;
    }
    .order-xl-5 {
        order: 5 !important;
    }
    .order-xl-last {
        order: 6 !important;
    }
    .m-xl-0 {
        margin: 0 !important;
    }
    .m-xl-1 {
        margin: 0.25rem !important;
    }
    .m-xl-2 {
        margin: 0.5rem !important;
    }
    .m-xl-3 {
        margin: 1rem !important;
    }
    .m-xl-4 {
        margin: 1.5rem !important;
    }
    .m-xl-5 {
        margin: 3rem !important;
    }
    .m-xl-auto {
        margin: auto !important;
    }
    .mx-xl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-xl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-xl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-xl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-xl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-xl-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-xl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-xl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-xl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-xl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-xl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-xl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-xl-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-xl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-xl-0 {
        margin-top: 0 !important;
    }
    .mt-xl-1 {
        margin-top: 0.25rem !important;
    }
    .mt-xl-2 {
        margin-top: 0.5rem !important;
    }
    .mt-xl-3 {
        margin-top: 1rem !important;
    }
    .mt-xl-4 {
        margin-top: 1.5rem !important;
    }
    .mt-xl-5 {
        margin-top: 3rem !important;
    }
    .mt-xl-auto {
        margin-top: auto !important;
    }
    .me-xl-0 {
        margin-right: 0 !important;
    }
    .me-xl-1 {
        margin-right: 0.25rem !important;
    }
    .me-xl-2 {
        margin-right: 0.5rem !important;
    }
    .me-xl-3 {
        margin-right: 1rem !important;
    }
    .me-xl-4 {
        margin-right: 1.5rem !important;
    }
    .me-xl-5 {
        margin-right: 3rem !important;
    }
    .me-xl-auto {
        margin-right: auto !important;
    }
    .mb-xl-0 {
        margin-bottom: 0 !important;
    }
    .mb-xl-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-xl-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-xl-3 {
        margin-bottom: 1rem !important;
    }
    .mb-xl-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-xl-5 {
        margin-bottom: 3rem !important;
    }
    .mb-xl-auto {
        margin-bottom: auto !important;
    }
    .ms-xl-0 {
        margin-left: 0 !important;
    }
    .ms-xl-1 {
        margin-left: 0.25rem !important;
    }
    .ms-xl-2 {
        margin-left: 0.5rem !important;
    }
    .ms-xl-3 {
        margin-left: 1rem !important;
    }
    .ms-xl-4 {
        margin-left: 1.5rem !important;
    }
    .ms-xl-5 {
        margin-left: 3rem !important;
    }
    .ms-xl-auto {
        margin-left: auto !important;
    }
    .p-xl-0 {
        padding: 0 !important;
    }
    .p-xl-1 {
        padding: 0.25rem !important;
    }
    .p-xl-2 {
        padding: 0.5rem !important;
    }
    .p-xl-3 {
        padding: 1rem !important;
    }
    .p-xl-4 {
        padding: 1.5rem !important;
    }
    .p-xl-5 {
        padding: 3rem !important;
    }
    .px-xl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    .px-xl-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }
    .px-xl-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }
    .px-xl-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }
    .px-xl-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }
    .px-xl-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }
    .py-xl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    .py-xl-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }
    .py-xl-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }
    .py-xl-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }
    .py-xl-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
    .py-xl-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }
    .pt-xl-0 {
        padding-top: 0 !important;
    }
    .pt-xl-1 {
        padding-top: 0.25rem !important;
    }
    .pt-xl-2 {
        padding-top: 0.5rem !important;
    }
    .pt-xl-3 {
        padding-top: 1rem !important;
    }
    .pt-xl-4 {
        padding-top: 1.5rem !important;
    }
    .pt-xl-5 {
        padding-top: 3rem !important;
    }
    .pe-xl-0 {
        padding-right: 0 !important;
    }
    .pe-xl-1 {
        padding-right: 0.25rem !important;
    }
    .pe-xl-2 {
        padding-right: 0.5rem !important;
    }
    .pe-xl-3 {
        padding-right: 1rem !important;
    }
    .pe-xl-4 {
        padding-right: 1.5rem !important;
    }
    .pe-xl-5 {
        padding-right: 3rem !important;
    }
    .pb-xl-0 {
        padding-bottom: 0 !important;
    }
    .pb-xl-1 {
        padding-bottom: 0.25rem !important;
    }
    .pb-xl-2 {
        padding-bottom: 0.5rem !important;
    }
    .pb-xl-3 {
        padding-bottom: 1rem !important;
    }
    .pb-xl-4 {
        padding-bottom: 1.5rem !important;
    }
    .pb-xl-5 {
        padding-bottom: 3rem !important;
    }
    .ps-xl-0 {
        padding-left: 0 !important;
    }
    .ps-xl-1 {
        padding-left: 0.25rem !important;
    }
    .ps-xl-2 {
        padding-left: 0.5rem !important;
    }
    .ps-xl-3 {
        padding-left: 1rem !important;
    }
    .ps-xl-4 {
        padding-left: 1.5rem !important;
    }
    .ps-xl-5 {
        padding-left: 3rem !important;
    }
    .text-xl-start {
        text-align: left !important;
    }
    .text-xl-end {
        text-align: right !important;
    }
    .text-xl-center {
        text-align: center !important;
    }
}

@media (min-width: 1400px) {
    .float-xxl-start {
        float: left !important;
    }
    .float-xxl-end {
        float: right !important;
    }
    .float-xxl-none {
        float: none !important;
    }
    .d-xxl-inline {
        display: inline !important;
    }
    .d-xxl-inline-block {
        display: inline-block !important;
    }
    .d-xxl-block {
        display: block !important;
    }
    .d-xxl-grid {
        display: grid !important;
    }
    .d-xxl-table {
        display: table !important;
    }
    .d-xxl-table-row {
        display: table-row !important;
    }
    .d-xxl-table-cell {
        display: table-cell !important;
    }
    .d-xxl-flex {
        display: flex !important;
    }
    .d-xxl-inline-flex {
        display: inline-flex !important;
    }
    .d-xxl-none {
        display: none !important;
    }
    .flex-xxl-fill {
        flex: 1 1 auto !important;
    }
    .flex-xxl-row {
        flex-direction: row !important;
    }
    .flex-xxl-column {
        flex-direction: column !important;
    }
    .flex-xxl-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-xxl-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-xxl-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-xxl-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-xxl-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-xxl-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-xxl-wrap {
        flex-wrap: wrap !important;
    }
    .flex-xxl-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-xxl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .gap-xxl-0 {
        gap: 0 !important;
    }
    .gap-xxl-1 {
        gap: 0.25rem !important;
    }
    .gap-xxl-2 {
        gap: 0.5rem !important;
    }
    .gap-xxl-3 {
        gap: 1rem !important;
    }
    .gap-xxl-4 {
        gap: 1.5rem !important;
    }
    .gap-xxl-5 {
        gap: 3rem !important;
    }
    .justify-content-xxl-start {
        justify-content: flex-start !important;
    }
    .justify-content-xxl-end {
        justify-content: flex-end !important;
    }
    .justify-content-xxl-center {
        justify-content: center !important;
    }
    .justify-content-xxl-between {
        justify-content: space-between !important;
    }
    .justify-content-xxl-around {
        justify-content: space-around !important;
    }
    .justify-content-xxl-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-xxl-start {
        align-items: flex-start !important;
    }
    .align-items-xxl-end {
        align-items: flex-end !important;
    }
    .align-items-xxl-center {
        align-items: center !important;
    }
    .align-items-xxl-baseline {
        align-items: baseline !important;
    }
    .align-items-xxl-stretch {
        align-items: stretch !important;
    }
    .align-content-xxl-start {
        align-content: flex-start !important;
    }
    .align-content-xxl-end {
        align-content: flex-end !important;
    }
    .align-content-xxl-center {
        align-content: center !important;
    }
    .align-content-xxl-between {
        align-content: space-between !important;
    }
    .align-content-xxl-around {
        align-content: space-around !important;
    }
    .align-content-xxl-stretch {
        align-content: stretch !important;
    }
    .align-self-xxl-auto {
        align-self: auto !important;
    }
    .align-self-xxl-start {
        align-self: flex-start !important;
    }
    .align-self-xxl-end {
        align-self: flex-end !important;
    }
    .align-self-xxl-center {
        align-self: center !important;
    }
    .align-self-xxl-baseline {
        align-self: baseline !important;
    }
    .align-self-xxl-stretch {
        align-self: stretch !important;
    }
    .order-xxl-first {
        order: -1 !important;
    }
    .order-xxl-0 {
        order: 0 !important;
    }
    .order-xxl-1 {
        order: 1 !important;
    }
    .order-xxl-2 {
        order: 2 !important;
    }
    .order-xxl-3 {
        order: 3 !important;
    }
    .order-xxl-4 {
        order: 4 !important;
    }
    .order-xxl-5 {
        order: 5 !important;
    }
    .order-xxl-last {
        order: 6 !important;
    }
    .m-xxl-0 {
        margin: 0 !important;
    }
    .m-xxl-1 {
        margin: 0.25rem !important;
    }
    .m-xxl-2 {
        margin: 0.5rem !important;
    }
    .m-xxl-3 {
        margin: 1rem !important;
    }
    .m-xxl-4 {
        margin: 1.5rem !important;
    }
    .m-xxl-5 {
        margin: 3rem !important;
    }
    .m-xxl-auto {
        margin: auto !important;
    }
    .mx-xxl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-xxl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-xxl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-xxl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-xxl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-xxl-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-xxl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-xxl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-xxl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-xxl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-xxl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-xxl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-xxl-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-xxl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-xxl-0 {
        margin-top: 0 !important;
    }
    .mt-xxl-1 {
        margin-top: 0.25rem !important;
    }
    .mt-xxl-2 {
        margin-top: 0.5rem !important;
    }
    .mt-xxl-3 {
        margin-top: 1rem !important;
    }
    .mt-xxl-4 {
        margin-top: 1.5rem !important;
    }
    .mt-xxl-5 {
        margin-top: 3rem !important;
    }
    .mt-xxl-auto {
        margin-top: auto !important;
    }
    .me-xxl-0 {
        margin-right: 0 !important;
    }
    .me-xxl-1 {
        margin-right: 0.25rem !important;
    }
    .me-xxl-2 {
        margin-right: 0.5rem !important;
    }
    .me-xxl-3 {
        margin-right: 1rem !important;
    }
    .me-xxl-4 {
        margin-right: 1.5rem !important;
    }
    .me-xxl-5 {
        margin-right: 3rem !important;
    }
    .me-xxl-auto {
        margin-right: auto !important;
    }
    .mb-xxl-0 {
        margin-bottom: 0 !important;
    }
    .mb-xxl-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-xxl-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-xxl-3 {
        margin-bottom: 1rem !important;
    }
    .mb-xxl-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-xxl-5 {
        margin-bottom: 3rem !important;
    }
    .mb-xxl-auto {
        margin-bottom: auto !important;
    }
    .ms-xxl-0 {
        margin-left: 0 !important;
    }
    .ms-xxl-1 {
        margin-left: 0.25rem !important;
    }
    .ms-xxl-2 {
        margin-left: 0.5rem !important;
    }
    .ms-xxl-3 {
        margin-left: 1rem !important;
    }
    .ms-xxl-4 {
        margin-left: 1.5rem !important;
    }
    .ms-xxl-5 {
        margin-left: 3rem !important;
    }
    .ms-xxl-auto {
        margin-left: auto !important;
    }
    .p-xxl-0 {
        padding: 0 !important;
    }
    .p-xxl-1 {
        padding: 0.25rem !important;
    }
    .p-xxl-2 {
        padding: 0.5rem !important;
    }
    .p-xxl-3 {
        padding: 1rem !important;
    }
    .p-xxl-4 {
        padding: 1.5rem !important;
    }
    .p-xxl-5 {
        padding: 3rem !important;
    }
    .px-xxl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    .px-xxl-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }
    .px-xxl-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }
    .px-xxl-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }
    .px-xxl-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }
    .px-xxl-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }
    .py-xxl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    .py-xxl-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }
    .py-xxl-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }
    .py-xxl-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }
    .py-xxl-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
    .py-xxl-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }
    .pt-xxl-0 {
        padding-top: 0 !important;
    }
    .pt-xxl-1 {
        padding-top: 0.25rem !important;
    }
    .pt-xxl-2 {
        padding-top: 0.5rem !important;
    }
    .pt-xxl-3 {
        padding-top: 1rem !important;
    }
    .pt-xxl-4 {
        padding-top: 1.5rem !important;
    }
    .pt-xxl-5 {
        padding-top: 3rem !important;
    }
    .pe-xxl-0 {
        padding-right: 0 !important;
    }
    .pe-xxl-1 {
        padding-right: 0.25rem !important;
    }
    .pe-xxl-2 {
        padding-right: 0.5rem !important;
    }
    .pe-xxl-3 {
        padding-right: 1rem !important;
    }
    .pe-xxl-4 {
        padding-right: 1.5rem !important;
    }
    .pe-xxl-5 {
        padding-right: 3rem !important;
    }
    .pb-xxl-0 {
        padding-bottom: 0 !important;
    }
    .pb-xxl-1 {
        padding-bottom: 0.25rem !important;
    }
    .pb-xxl-2 {
        padding-bottom: 0.5rem !important;
    }
    .pb-xxl-3 {
        padding-bottom: 1rem !important;
    }
    .pb-xxl-4 {
        padding-bottom: 1.5rem !important;
    }
    .pb-xxl-5 {
        padding-bottom: 3rem !important;
    }
    .ps-xxl-0 {
        padding-left: 0 !important;
    }
    .ps-xxl-1 {
        padding-left: 0.25rem !important;
    }
    .ps-xxl-2 {
        padding-left: 0.5rem !important;
    }
    .ps-xxl-3 {
        padding-left: 1rem !important;
    }
    .ps-xxl-4 {
        padding-left: 1.5rem !important;
    }
    .ps-xxl-5 {
        padding-left: 3rem !important;
    }
    .text-xxl-start {
        text-align: left !important;
    }
    .text-xxl-end {
        text-align: right !important;
    }
    .text-xxl-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .fs-1 {
        font-size: 2.5rem !important;
    }
    .fs-2 {
        font-size: 2rem !important;
    }
    .fs-3 {
        font-size: 1.75rem !important;
    }
    .fs-4 {
        font-size: 1.5rem !important;
    }
}

@media print {
    .d-print-inline {
        display: inline !important;
    }
    .d-print-inline-block {
        display: inline-block !important;
    }
    .d-print-block {
        display: block !important;
    }
    .d-print-grid {
        display: grid !important;
    }
    .d-print-table {
        display: table !important;
    }
    .d-print-table-row {
        display: table-row !important;
    }
    .d-print-table-cell {
        display: table-cell !important;
    }
    .d-print-flex {
        display: flex !important;
    }
    .d-print-inline-flex {
        display: inline-flex !important;
    }
    .d-print-none {
        display: none !important;
    }
}

body {
    padding-top: 56px;
}

html * {
    font-family: 'Montserrat', sans-serif;
}

body {
    background: rgb(131, 187, 65);
    background: -moz-radial-gradient(circle, rgba(131, 187, 65, 1) 0%, rgba(28, 64, 3, 1) 100%);
    background: -webkit-radial-gradient(circle, rgba(131, 187, 65, 1) 0%, rgba(28, 64, 3, 1) 100%);
    background: radial-gradient(circle, rgba(131, 187, 65, 1) 0%, rgba(28, 64, 3, 1) 100%);
    background-repeat: no-repeat;
    min-height: 110vh;
}

.logo {
    height: 60px;
}

h1,
.h1 {
    font-size: 3rem;
    color: #fff;
    font-weight: 700;
}

p {
    color: #fff;
    font-size: 20px;
    font-weight: 300;
    margin: 30px 0;
}

a {
    font-weight: 600;
    color: #fff;
}

a:hover {
    color: #C1F586;
}

footer {
    color: #C1F586;
    padding: 20px 0;
}


/* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */

@media (min-width: 992px) {
    footer {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1030;
    }
}


/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mdW5jdGlvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19kZXByZWNhdGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzaXplLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3gtc2hhZG93LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdXRpbGl0aWVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvbnRhaW5lcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fbGFiZWxzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tdGV4dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1zZWxlY3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zsb2F0aW5nLWxhYmVscy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL192YWxpZGF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hY2NvcmRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19vZmZjYW52YXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faGVscGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3JhdGlvLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcG9zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19zdHJldGNoZWQtbGluay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3RleHQtdHJ1bmNhdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYXBpLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiJHRoZW1lLWNvbG9yczogKFxyXG4gICAgXCJwcmltYXJ5XCI6IGJsdWUsXHJcbiAgICBcImRhcmtcIjogIzAwMDAwMFxyXG4pO1xyXG5cclxuQGltcG9ydCBcIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXBcIjtcclxuXHJcbmJvZHkge1xyXG4gICAgcGFkZGluZy10b3A6NTZweDtcclxufVxyXG5cclxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9TW9udHNlcnJhdDp3Z2h0QDMwMDs2MDA7NzAwOzgwMCZkaXNwbGF5PXN3YXAnKTtcclxuXHJcblxyXG5odG1sICoge1xyXG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbn1cclxuYm9keSB7XHJcblxyXG4gIGJhY2tncm91bmQ6IHJnYigyLDExOCw3MSk7XHJcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyLDExOCw3MSwxKSAwJSwgcmdiYSgxMSwzMiw2MywxKSA4MCUpIGZpeGVkO1xyXG59XHJcbi5sb2dvIHtcclxuICBoZWlnaHQ6IDYwcHg7XHJcbn1cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogM3JlbTtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcbnAge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGZvbnQtc2l6ZTogMjBweDtcclxuICBmb250LXdlaWdodDogMzAwO1xyXG4gIG1hcmdpbjogMzBweCAwO1xyXG59XHJcbmEge1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuYTpob3ZlciB7XHJcbiAgY29sb3I6ICM5M2JlZTk7XHJcbn1cclxuZm9vdGVyIHtcclxuICBjb2xvcjogIzkzYmVlOTtcclxuICBwYWRkaW5nOiAyMHB4IDA7XHJcbn1cclxuXHJcbi8qIE1lZGl1bSBkZXZpY2VzICh0YWJsZXRzLCA3NjhweCBhbmQgdXApIFRoZSBuYXZiYXIgdG9nZ2xlIGFwcGVhcnMgYXQgdGhpcyBicmVha3BvaW50ICovXHJcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgeyAgXHJcbiBcclxuXHJcbiAgZm9vdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTAzMDtcclxuICB9XHJcbn0iLCIvKiFcbiAqIEJvb3RzdHJhcCB2NS4wLjAtYmV0YTMgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAqL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW1wb3J0LXN0YWNrXG4vLyBDb25maWd1cmF0aW9uXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5cbi8vIExheW91dCAmIGNvbXBvbmVudHNcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvbnRhaW5lcnNcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJhY2NvcmRpb25cIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcInRvYXN0c1wiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwidG9vbHRpcFwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJjYXJvdXNlbFwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwib2ZmY2FudmFzXCI7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgXCJoZWxwZXJzXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcInV0aWxpdGllcy9hcGlcIjtcbi8vIHNjc3MtZG9jcy1lbmQgaW1wb3J0LXN0YWNrXG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgQm9vdHN0cmFwIGZ1bmN0aW9uIHRvIHR1cm4gbWFwcyBpbnRvIGl0cyBuZWdhdGl2ZSB2YXJpYW50LlxuLy8gSXQgcHJlZml4ZXMgdGhlIGtleXMgd2l0aCBgbmAgYW5kIG1ha2VzIHRoZSB2YWx1ZSBuZWdhdGl2ZS5cbkBmdW5jdGlvbiBuZWdhdGl2aWZ5LW1hcCgkbWFwKSB7XG4gICRyZXN1bHQ6ICgpO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgQGlmICRrZXkgIT0gMCB7XG4gICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKFwiblwiICsgJGtleTogKC0kdmFsdWUpKSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gR2V0IG11bHRpcGxlIGtleXMgZnJvbSBhIHNhc3MgbWFwXG5AZnVuY3Rpb24gbWFwLWdldC1tdWx0aXBsZSgkbWFwLCAkdmFsdWVzKSB7XG4gICRyZXN1bHQ6ICgpO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgQGlmIChpbmRleCgkdmFsdWVzLCAka2V5KSAhPSBudWxsKSB7XG4gICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKCRrZXk6ICR2YWx1ZSkpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xuLy9cbi8vIFJlcXVpcmVzIHRoZSB1c2Ugb2YgcXVvdGVzIGFyb3VuZCBkYXRhIFVSSXMuXG5cbkBmdW5jdGlvbiBlc2NhcGUtc3ZnKCRzdHJpbmcpIHtcbiAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcImRhdGE6aW1hZ2Uvc3ZnK3htbFwiKSB7XG4gICAgQGVhY2ggJGNoYXIsICRlbmNvZGVkIGluICRlc2NhcGVkLWNoYXJhY3RlcnMge1xuICAgICAgLy8gRG8gbm90IGVzY2FwZSB0aGUgdXJsIGJyYWNrZXRzXG4gICAgICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwidXJsKFwiKSA9PSAxIHtcbiAgICAgICAgJHN0cmluZzogdXJsKFwiI3tzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgNiwgLTMpLCAkY2hhciwgJGVuY29kZWQpfVwiKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkc3RyaW5nOiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkY2hhciwgJGVuY29kZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3Rcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDE2OFxuXG4vLyBBIGxpc3Qgb2YgcHJlLWNhbGN1bGF0ZWQgbnVtYmVycyBvZiBwb3coKCR2YWx1ZSAvIDI1NSArIC4wNTUpIC8gMS4wNTUsIDIuNCkuIChmcm9tIDAgdG8gMjU1KVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHQsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbiRfbHVtaW5hbmNlLWxpc3Q6IC4wMDA4IC4wMDEgLjAwMTEgLjAwMTMgLjAwMTUgLjAwMTcgLjAwMiAuMDAyMiAuMDAyNSAuMDAyNyAuMDAzIC4wMDMzIC4wMDM3IC4wMDQgLjAwNDQgLjAwNDggLjAwNTIgLjAwNTYgLjAwNiAuMDA2NSAuMDA3IC4wMDc1IC4wMDggLjAwODYgLjAwOTEgLjAwOTcgLjAxMDMgLjAxMSAuMDExNiAuMDEyMyAuMDEzIC4wMTM3IC4wMTQ0IC4wMTUyIC4wMTYgLjAxNjggLjAxNzYgLjAxODUgLjAxOTQgLjAyMDMgLjAyMTIgLjAyMjIgLjAyMzIgLjAyNDIgLjAyNTIgLjAyNjIgLjAyNzMgLjAyODQgLjAyOTYgLjAzMDcgLjAzMTkgLjAzMzEgLjAzNDMgLjAzNTYgLjAzNjkgLjAzODIgLjAzOTUgLjA0MDkgLjA0MjMgLjA0MzcgLjA0NTIgLjA0NjcgLjA0ODIgLjA0OTcgLjA1MTMgLjA1MjkgLjA1NDUgLjA1NjEgLjA1NzggLjA1OTUgLjA2MTIgLjA2MyAuMDY0OCAuMDY2NiAuMDY4NSAuMDcwNCAuMDcyMyAuMDc0MiAuMDc2MiAuMDc4MiAuMDgwMiAuMDgyMyAuMDg0NCAuMDg2NSAuMDg4NyAuMDkwOCAuMDkzMSAuMDk1MyAuMDk3NiAuMDk5OSAuMTAyMiAuMTA0NiAuMTA3IC4xMDk1IC4xMTE5IC4xMTQ0IC4xMTcgLjExOTUgLjEyMjEgLjEyNDggLjEyNzQgLjEzMDEgLjEzMjkgLjEzNTYgLjEzODQgLjE0MTMgLjE0NDEgLjE0NyAuMTUgLjE1MjkgLjE1NTkgLjE1OSAuMTYyIC4xNjUxIC4xNjgzIC4xNzE0IC4xNzQ2IC4xNzc5IC4xODEyIC4xODQ1IC4xODc4IC4xOTEyIC4xOTQ2IC4xOTgxIC4yMDE2IC4yMDUxIC4yMDg2IC4yMTIyIC4yMTU5IC4yMTk1IC4yMjMyIC4yMjcgLjIzMDcgLjIzNDYgLjIzODQgLjI0MjMgLjI0NjIgLjI1MDIgLjI1NDIgLjI1ODIgLjI2MjMgLjI2NjQgLjI3MDUgLjI3NDcgLjI3ODkgLjI4MzEgLjI4NzQgLjI5MTggLjI5NjEgLjMwMDUgLjMwNSAuMzA5NSAuMzE0IC4zMTg1IC4zMjMxIC4zMjc4IC4zMzI1IC4zMzcyIC4zNDE5IC4zNDY3IC4zNTE1IC4zNTY0IC4zNjEzIC4zNjYzIC4zNzEyIC4zNzYzIC4zODEzIC4zODY0IC4zOTE2IC4zOTY4IC40MDIgLjQwNzIgLjQxMjUgLjQxNzkgLjQyMzMgLjQyODcgLjQzNDIgLjQzOTcgLjQ0NTIgLjQ1MDggLjQ1NjQgLjQ2MjEgLjQ2NzggLjQ3MzUgLjQ3OTMgLjQ4NTEgLjQ5MSAuNDk2OSAuNTAyOSAuNTA4OSAuNTE0OSAuNTIxIC41MjcxIC41MzMzIC41Mzk1IC41NDU3IC41NTIgLjU1ODMgLjU2NDcgLjU3MTEgLjU3NzYgLjU4NDEgLjU5MDYgLjU5NzIgLjYwMzggLjYxMDUgLjYxNzIgLjYyNCAuNjMwOCAuNjM3NiAuNjQ0NSAuNjUxNCAuNjU4NCAuNjY1NCAuNjcyNCAuNjc5NSAuNjg2NyAuNjkzOSAuNzAxMSAuNzA4NCAuNzE1NyAuNzIzMSAuNzMwNSAuNzM3OSAuNzQ1NCAuNzUyOSAuNzYwNSAuNzY4MiAuNzc1OCAuNzgzNSAuNzkxMyAuNzk5MSAuODA3IC44MTQ4IC44MjI4IC44MzA4IC44Mzg4IC44NDY5IC44NTUgLjg2MzIgLjg3MTQgLjg3OTYgLjg4NzkgLjg5NjMgLjkwNDcgLjkxMzEgLjkyMTYgLjkzMDEgLjkzODcgLjk0NzMgLjk1NiAuOTY0NyAuOTczNCAuOTgyMyAuOTkxMSAxO1xuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQsICRjb2xvci1jb250cmFzdC1kYXJrOiAkY29sb3ItY29udHJhc3QtZGFyaywgJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAkY29sb3ItY29udHJhc3QtbGlnaHQsICRtaW4tY29udHJhc3QtcmF0aW86ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcbiAgJGZvcmVncm91bmRzOiAkY29sb3ItY29udHJhc3QtbGlnaHQsICRjb2xvci1jb250cmFzdC1kYXJrLCAkd2hpdGUsICRibGFjaztcbiAgJG1heC1yYXRpbzogMDtcbiAgJG1heC1yYXRpby1jb2xvcjogbnVsbDtcblxuICBAZWFjaCAkY29sb3IgaW4gJGZvcmVncm91bmRzIHtcbiAgICAkY29udHJhc3QtcmF0aW86IGNvbnRyYXN0LXJhdGlvKCRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICAgIEBpZiAkY29udHJhc3QtcmF0aW8gPiAkbWluLWNvbnRyYXN0LXJhdGlvIHtcbiAgICAgIEByZXR1cm4gJGNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1heC1yYXRpbyB7XG4gICAgICAkbWF4LXJhdGlvOiAkY29udHJhc3QtcmF0aW87XG4gICAgICAkbWF4LXJhdGlvLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG5cbiAgQHdhcm4gXCJGb3VuZCBubyBjb2xvciBsZWFkaW5nIHRvICN7JG1pbi1jb250cmFzdC1yYXRpb306MSBjb250cmFzdCByYXRpbyBhZ2FpbnN0ICN7JGJhY2tncm91bmR9Li4uXCI7XG5cbiAgQHJldHVybiAkbWF4LXJhdGlvLWNvbG9yO1xufVxuXG5AZnVuY3Rpb24gY29udHJhc3QtcmF0aW8oJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kOiAkY29sb3ItY29udHJhc3QtbGlnaHQpIHtcbiAgJGwxOiBsdW1pbmFuY2UoJGJhY2tncm91bmQpO1xuICAkbDI6IGx1bWluYW5jZShvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSk7XG5cbiAgQHJldHVybiBpZigkbDEgPiAkbDIsICgkbDEgKyAuMDUpIC8gKCRsMiArIC4wNSksICgkbDIgKyAuMDUpIC8gKCRsMSArIC4wNSkpO1xufVxuXG4vLyBSZXR1cm4gV0NBRzIuMCByZWxhdGl2ZSBsdW1pbmFuY2Vcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvV0FJL0dML3dpa2kvUmVsYXRpdmVfbHVtaW5hbmNlXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC1URUNIUy9HMTcuaHRtbCNHMTctdGVzdHNcbkBmdW5jdGlvbiBsdW1pbmFuY2UoJGNvbG9yKSB7XG4gICRyZ2I6IChcbiAgICBcInJcIjogcmVkKCRjb2xvciksXG4gICAgXCJnXCI6IGdyZWVuKCRjb2xvciksXG4gICAgXCJiXCI6IGJsdWUoJGNvbG9yKVxuICApO1xuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJHJnYiB7XG4gICAgJHZhbHVlOiBpZigkdmFsdWUgLyAyNTUgPCAuMDM5MjgsICR2YWx1ZSAvIDI1NSAvIDEyLjkyLCBudGgoJF9sdW1pbmFuY2UtbGlzdCwgJHZhbHVlICsgMSkpO1xuICAgICRyZ2I6IG1hcC1tZXJnZSgkcmdiLCAoJG5hbWU6ICR2YWx1ZSkpO1xuICB9XG5cbiAgQHJldHVybiAobWFwLWdldCgkcmdiLCBcInJcIikgKiAuMjEyNikgKyAobWFwLWdldCgkcmdiLCBcImdcIikgKiAuNzE1MikgKyAobWFwLWdldCgkcmdiLCBcImJcIikgKiAuMDcyMik7XG59XG5cbi8vIFJldHVybiBvcGFxdWUgY29sb3Jcbi8vIG9wYXF1ZSgjZmZmLCByZ2JhKDAsIDAsIDAsIC41KSkgPT4gIzgwODA4MFxuQGZ1bmN0aW9uIG9wYXF1ZSgkYmFja2dyb3VuZCwgJGZvcmVncm91bmQpIHtcbiAgQHJldHVybiBtaXgocmdiYSgkZm9yZWdyb3VuZCwgMSksICRiYWNrZ3JvdW5kLCBvcGFjaXR5KCRmb3JlZ3JvdW5kKSAqIDEwMCk7XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci1mdW5jdGlvbnNcbi8vIFRpbnQgYSBjb2xvcjogbWl4IGEgY29sb3Igd2l0aCB3aGl0ZVxuQGZ1bmN0aW9uIHRpbnQtY29sb3IoJGNvbG9yLCAkd2VpZ2h0KSB7XG4gIEByZXR1cm4gbWl4KHdoaXRlLCAkY29sb3IsICR3ZWlnaHQpO1xufVxuXG4vLyBTaGFkZSBhIGNvbG9yOiBtaXggYSBjb2xvciB3aXRoIGJsYWNrXG5AZnVuY3Rpb24gc2hhZGUtY29sb3IoJGNvbG9yLCAkd2VpZ2h0KSB7XG4gIEByZXR1cm4gbWl4KGJsYWNrLCAkY29sb3IsICR3ZWlnaHQpO1xufVxuXG4vLyBTaGFkZSB0aGUgY29sb3IgaWYgdGhlIHdlaWdodCBpcyBwb3NpdGl2ZSwgZWxzZSB0aW50IGl0XG5AZnVuY3Rpb24gc2hpZnQtY29sb3IoJGNvbG9yLCAkd2VpZ2h0KSB7XG4gIEByZXR1cm4gaWYoJHdlaWdodCA+IDAsIHNoYWRlLWNvbG9yKCRjb2xvciwgJHdlaWdodCksIHRpbnQtY29sb3IoJGNvbG9yLCAtJHdlaWdodCkpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci1mdW5jdGlvbnNcblxuLy8gUmV0dXJuIHZhbGlkIGNhbGNcbkBmdW5jdGlvbiBhZGQoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSArICR2YWx1ZTI7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gKyAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgKyBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIHN1YnRyYWN0KCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIGFuZCAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xuICAgIEByZXR1cm4gLSR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgLSAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9IC0gI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiIC0gXCIpICsgJHZhbHVlMik7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7XG5cbi8vIEdyYWRpZW50XG4vL1xuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcbi8vIFRoaXMgZ3JhZGllbnQgaXMgYWxzbyBhZGRlZCB0byBlbGVtZW50cyB3aXRoIGAuYmctZ3JhZGllbnRgXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZhcmlhYmxlLWdyYWRpZW50XG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAvIDQsXG4gIDI6ICRzcGFjZXIgLyAyLFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMS41LFxuICA1OiAkc3BhY2VyICogMyxcbikgIWRlZmF1bHQ7XG5cbiRuZWdhdGl2ZS1zcGFjZXJzOiBpZigkZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnMsIG5lZ2F0aXZpZnktbWFwKCRzcGFjZXJzKSwgbnVsbCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwYWNlci12YXJpYWJsZXMtbWFwc1xuXG4vLyBQb3NpdGlvblxuLy9cbi8vIERlZmluZSB0aGUgZWRnZSBwb3NpdGlvbmluZyBhbmNob3JzIG9mIHRoZSBwb3NpdGlvbiB1dGlsaXRpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3NpdGlvbi1tYXBcbiRwb3NpdGlvbi12YWx1ZXM6IChcbiAgMDogMCxcbiAgNTA6IDUwJSxcbiAgMTAwOiAxMDAlXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3NpdGlvbi1tYXBcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4kbGluay1zaGFkZS1wZXJjZW50YWdlOiAgICAgICAgICAgICAgICAgICAyMCUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvciwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnQ6ICAgICAgICAgICBhZnRlciAhZGVmYXVsdDtcbiRzdHJldGNoZWQtbGluay16LWluZGV4OiAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuJGd1dHRlcnM6ICRzcGFjZXJzICFkZWZhdWx0O1xuXG4vLyBDb250YWluZXIgcGFkZGluZ1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aHM6IChcbiAgMTogMXB4LFxuICAyOiAycHgsXG4gIDM6IDNweCxcbiAgNDogNHB4LFxuICA1OiA1cHhcbikgIWRlZmF1bHQ7XG5cbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBlZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncyBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGVmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtc3R5bGU6ICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGhlYWRpbmdzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZGlzcGxheS1oZWFkaW5nc1xuJGRpc3BsYXktZm9udC1zaXplczogKFxuICAxOiA1cmVtLFxuICAyOiA0LjVyZW0sXG4gIDM6IDRyZW0sXG4gIDQ6IDMuNXJlbSxcbiAgNTogM3JlbSxcbiAgNjogMi41cmVtXG4pICFkZWZhdWx0O1xuXG4kZGlzcGxheS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdHlwZS12YXJpYWJsZXNcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHN1Yi1zdXAtZm9udC1zaXplOiAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGluaXRpYWxpc20tZm9udC1zaXplOiAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGhyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaHItb3BhY2l0eTogICAgICAgICAgICAgICAgICAuMjUgIWRlZmF1bHQ7XG5cbiRsZWdlbmQtbWFyZ2luLWJvdHRvbTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXNpemU6ICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXdlaWdodDogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdHlwZS12YXJpYWJsZXNcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYWJsZXNcbiR0YWJsZS1jZWxsLXBhZGRpbmcteTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXktc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXgtc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduOiAgIHRvcCAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Q29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYmx1cjogICAgICAgICAgMCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogICAgMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYWJsZXNcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1jb2xvcjogICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgLyAyKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1pbnB1dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tY2hlY2stdmFyaWFibGVzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI6ICAgICAgICAgIGJyaWdodG5lc3MoOTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBsMyAzbDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1yYW5nZS12YXJpYWJsZXNcbiRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBFZGdlXG4kZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNzAlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1maWxlLXZhcmlhYmxlc1xuJGZvcm0tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogICAgICAgc2hhZGUtY29sb3IoJGZvcm0tZmlsZS1idXR0b24tYmcsIDUlKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1maWxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcbiRmb3JtLWZsb2F0aW5nLWhlaWdodDogICAgICAgICAgICBhZGQoMy41cmVtLCAkaW5wdXQtaGVpZ2h0LWJvcmRlcikgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg6ICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10OiAgIDEuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iOiAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5OiAgICAgLjY1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtOiAgIHNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIC4xcyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJGZvcm0tdGV4dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXN0eWxlOiAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc3R5bGUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICAkc3VjY2VzcyAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICRkYW5nZXIgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IChcbiAgXCJ2YWxpZFwiOiAoXG4gICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICApLFxuICBcImludmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhczogICAgICAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA4MCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LXN0YWNrXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LXZhcmlhYmxlc1xuXG5cbi8vIE5hdmJhclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXZhcmlhYmxlc1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAgICAgICAgJGJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXRoZW1lLXZhcmlhYmxlc1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci10aGVtZS12YXJpYWJsZXNcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi12YXJpYWJsZXNcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgc2hhZGUtY29sb3IoJGdyYXktOTAwLCAxMCUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgLyA0ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcbiRkcm9wZG93bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3c6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWNvbG9yOiAgICAgICAgICAkZHJvcGRvd24tZGFyay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmc6ICAgICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3I6ICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yOiAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tdmFyaWFibGVzXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0OiAgICAgICAgICAgLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteCAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmQtdmFyaWFibGVzXG5cbi8vIEFjY29yZGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLXZhcmlhYmxlc1xuJGFjY29yZGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgc3VidHJhY3QoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzLCAkYWNjb3JkaW9uLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy15ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteTogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy15ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy14OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAgJGFjY29yZGlvbi1iZyAhZGVmYXVsdDtcbiRhY2NvcmRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiwgYm9yZGVyLXJhZGl1cyAuMTVzIGVhc2UgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA5MCUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDEwJSkgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcjogICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24taWNvbi13aWR0aDogICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgxODBkZWcpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1pY29uOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1jb2xvcn0nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcn0nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLXZhcmlhYmxlc1xuXG4vLyBUb29sdGlwc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC12YXJpYWJsZXNcbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyIC8gNCAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgc2hhZGUtY29sb3IoJHBvcG92ZXItYmcsIDYlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLXZhcmlhYmxlc1xuXG5cbi8vIFRvYXN0c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9hc3QtdmFyaWFibGVzXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtdmFyaWFibGVzXG5cblxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS12YXJpYWJsZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJhZGdlLXZhcmlhYmxlc1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtdmFyaWFibGVzXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC12YXJpYWJsZXNcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LXZhcmlhYmxlc1xuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXNjYWxlOiAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgIDQwJSAhZGVmYXVsdDtcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhYmxlc1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLXZhcmlhYmxlc1xuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy12YXJpYWJsZXNcblxuXG4vLyBMaXN0IGdyb3VwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAgICAgICAgICAtODAlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogICAgICAgNDAlICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC12YXJpYWJsZXNcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aHVtYm5haWwtdmFyaWFibGVzXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgICRib3gtc2hhZG93LXNtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aHVtYm5haWwtdmFyaWFibGVzXG5cblxuLy8gRmlndXJlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZmlndXJlLXZhcmlhYmxlc1xuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZmlndXJlLXZhcmlhYmxlc1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLXZhcmlhYmxlc1xuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZDogICAgICAgICRicmVhZGNydW1iLWRpdmlkZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLXZhcmlhYmxlc1xuXG4vLyBDYXJvdXNlbFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtdmFyaWFibGVzXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk6ICAxICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6ICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG4kY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjogICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLXZhcmlhYmxlc1xuXG5cbi8vIFNwaW5uZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLXZhcmlhYmxlc1xuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IC43NXMgIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItdmFyaWFibGVzXG5cblxuLy8gQ2xvc2VcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLXZhcmlhYmxlc1xuJGJ0bi1jbG9zZS13aWR0aDogICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhlaWdodDogICAgICAgICAgICRidG4tY2xvc2Utd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteDogICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXk6ICAgICAgICAkYnRuLWNsb3NlLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtY29sb3I6ICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1iZzogICAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYnRuLWNsb3NlLWNvbG9yfSc+PHBhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAxMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMTExLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwMTAtMS40MTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1iZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWNvbG9yICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib2R5LWJhY2tkcm9wLWNvbG9yOiAgICAgcmdiYSgkbW9kYWwtYmFja2Ryb3AtYmcsICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy12YXJpYWJsZXNcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4iLCIvLyBUb2dnbGVzXG4vL1xuLy8gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIGNlcnRhaW4gdGhlbWUgZmVhdHVyZXMuXG5cbi8vIFZlbmRvclxuQGltcG9ydCBcInZlbmRvci9yZnNcIjtcblxuLy8gRGVwcmVjYXRlXG5AaW1wb3J0IFwibWl4aW5zL2RlcHJlY2F0ZVwiO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy92aXN1YWxseS1oaWRkZW5cIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy91dGlsaXRpZXNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydFwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NhcmV0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS12YXJpYW50c1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbnRhaW5lclwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21hc3Rlci9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgdmFsdWVcbiRyZnMtYmFzZS12YWx1ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy11bml0ICE9IHJlbSBhbmQgJHJmcy11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSB2YWx1ZXMgc3RhcnQgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgdmFsdWVzIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gbnVtYmVyIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gTW9kZS4gUG9zc2liaWxpdGllczogXCJtaW4tbWVkaWEtcXVlcnlcIiwgXCJtYXgtbWVkaWEtcXVlcnlcIlxuJHJmcy1tb2RlOiBtaW4tbWVkaWEtcXVlcnkgIWRlZmF1bHQ7XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZnMgdG8gZmFsc2VcbiRlbmFibGUtcmZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtdmFsdWUgdW5pdFxuJHJmcy1iYXNlLXZhbHVlLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLXZhbHVlKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHB4IHtcbiAgJHJmcy1iYXNlLXZhbHVlOiAkcmZzLWJhc2UtdmFsdWUgLyAoJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiAkcmZzLWJhc2UtdmFsdWUgLyAoJHJmcy1iYXNlLXZhbHVlICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHJlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FsY3VsYXRlIHRoZSBtZWRpYSBxdWVyeSB2YWx1ZVxuJHJmcy1tcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAjeyRyZnMtYnJlYWtwb2ludCAvICRyZnMtcmVtLXZhbHVlfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6ICcnO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBweCB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcmVtIGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3skdmFsdWUgLyAoJHZhbHVlICogMCArICRyZnMtcmVtLXZhbHVlKX1yZW0sICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkdW5pdCA9PSByZW0ge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHB4IGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgaWYoJHJmcy11bml0ID09IHB4LCAjeyR2YWx1ZSAvICgkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSByZXNwb25zaXZlIHZhbHVlIGNhbGN1bGF0ZWQgYnkgUkZTXG5AZnVuY3Rpb24gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogJyc7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyAnIDAnO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgIEBpZiBub3QgJHVuaXQgb3IgJHVuaXQgIT0gcHggYW5kICR1bml0ICE9IHJlbSB7XG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6ICR2YWx1ZSAvICgkdmFsdWUgKiAwICsgaWYoJHVuaXQgPT0gcHgsIDEsIDEgLyAkcmZzLXJlbS12YWx1ZSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7JHZhbHVlIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyR2YWx1ZX1weCk7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1taW46ICRyZnMtYmFzZS12YWx1ZSArIChhYnMoJHZhbHVlKSAtICRyZnMtYmFzZS12YWx1ZSkgLyAkcmZzLWZhY3RvcjtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJHZhbHVlIGFuZCB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1kaWZmOiBhYnMoJHZhbHVlKSAtICR2YWx1ZS1taW47XG5cbiAgICAgICAgICAvLyBCYXNlIHZhbHVlIGZvcm1hdHRpbmdcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkcmZzLXVuaXQgPT0gcmVtLCAjeyR2YWx1ZS1taW4gLyAkcmZzLXJlbS12YWx1ZX1yZW0sICN7JHZhbHVlLW1pbn1weCk7XG5cbiAgICAgICAgICAvLyBVc2UgbmVnYXRpdmUgdmFsdWUgaWYgbmVlZGVkXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHZhbHVlIDwgMCwgLSRtaW4td2lkdGgsICRtaW4td2lkdGgpO1xuXG4gICAgICAgICAgLy8gVXNlIGB2bWluYCBpZiB0d28tZGltZW5zaW9uYWwgaXMgZW5hYmxlZFxuICAgICAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgICAgICR2YXJpYWJsZS13aWR0aDogI3skdmFsdWUtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyAnIGNhbGMoJyArICRtaW4td2lkdGggKyBpZigkdmFsdWUgPCAwLCAnIC0gJywgJyArICcpICsgJHZhcmlhYmxlLXdpZHRoICsgJyknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBSRlMgbWl4aW5cbkBtaXhpbiByZnMoJHZhbHVlcywgJHByb3BlcnR5OiBmb250LXNpemUpIHtcbiAgQGlmICR2YWx1ZXMgIT0gbnVsbCB7XG4gICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZXMpO1xuICAgICRmbHVpZFZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZFZhbCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIF9yZnMtcnVsZSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJHZhbCwgJGZsdWlkVmFsKTtcblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJGZsdWlkVmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBEZXByZWNhdGUgbWl4aW5cbi8vXG4vLyBUaGlzIG1peGluIGNhbiBiZSB1c2VkIHRvIGRlcHJlY2F0ZSBtaXhpbnMgb3IgZnVuY3Rpb25zLlxuLy8gYCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXNgIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCBgJGlnbm9yZS13YXJuaW5nYCBpcyBhIHZhcmlhYmxlIHRoYXQgY2FuIGJlIHBhc3NlZCB0b1xuLy8gc29tZSBkZXByZWNhdGVkIG1peGlucyB0byBzdXBwcmVzcyB0aGUgd2FybmluZyAoZm9yIGV4YW1wbGUgaWYgdGhlIG1peGluIGlzIHN0aWxsIGJlIHVzZWQgaW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBCb290c3RyYXApXG5AbWl4aW4gZGVwcmVjYXRlKCRuYW1lLCAkZGVwcmVjYXRlLXZlcnNpb24sICRyZW1vdmUtdmVyc2lvbiwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBAaWYgKCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXMgIT0gZmFsc2UgYW5kICRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XG4gICAgQHdhcm4gXCIjeyRuYW1lfSBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mICN7JGRlcHJlY2F0ZS12ZXJzaW9ufS4gSXQgd2lsbCBiZSByZW1vdmVkIGVudGlyZWx5IGluICN7JHJlbW92ZS12ZXJzaW9ufS5cIjtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gSGlkZSBjb250ZW50IHZpc3VhbGx5IHdoaWxlIGtlZXBpbmcgaXQgYWNjZXNzaWJsZSB0byBhc3Npc3RpdmUgdGVjaG5vbG9naWVzXG4vL1xuLy8gU2VlOiBodHRwczovL3d3dy5hMTF5cHJvamVjdC5jb20vcG9zdHMvMjAxMy0wMS0xMS1ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIG92ZXJmbG93LXdyYXAgLyB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIFV0aWxpdHkgZ2VuZXJhdG9yXG4vLyBVc2VkIHRvIGdlbmVyYXRlIHV0aWxpdGllcyAmIHByaW50IHV0aWxpdGllc1xuQG1peGluIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCwgJGlzLXJmcy1tZWRpYS1xdWVyeTogZmFsc2UpIHtcbiAgJHZhbHVlczogbWFwLWdldCgkdXRpbGl0eSwgdmFsdWVzKTtcblxuICAvLyBJZiB0aGUgdmFsdWVzIGFyZSBhIGxpc3Qgb3Igc3RyaW5nLCBjb252ZXJ0IGl0IGludG8gYSBtYXBcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gXCJzdHJpbmdcIiBvciB0eXBlLW9mKG50aCgkdmFsdWVzLCAxKSkgIT0gXCJsaXN0XCIge1xuICAgICR2YWx1ZXM6IHppcCgkdmFsdWVzLCAkdmFsdWVzKTtcbiAgfVxuXG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICAkcHJvcGVydGllczogbWFwLWdldCgkdXRpbGl0eSwgcHJvcGVydHkpO1xuXG4gICAgLy8gTXVsdGlwbGUgcHJvcGVydGllcyBhcmUgcG9zc2libGUsIGZvciBleGFtcGxlIHdpdGggdmVydGljYWwgb3IgaG9yaXpvbnRhbCBtYXJnaW5zIG9yIHBhZGRpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHByb3BlcnRpZXMpID09IFwic3RyaW5nXCIge1xuICAgICAgJHByb3BlcnRpZXM6IGFwcGVuZCgoKSwgJHByb3BlcnRpZXMpO1xuICAgIH1cblxuICAgIC8vIFVzZSBjdXN0b20gY2xhc3MgaWYgcHJlc2VudFxuICAgICRwcm9wZXJ0eS1jbGFzczogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNsYXNzKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpLCBudGgoJHByb3BlcnRpZXMsIDEpKTtcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBudWxsLCBcIlwiLCAkcHJvcGVydHktY2xhc3MpO1xuXG4gICAgLy8gU3RhdGUgcGFyYW1zIHRvIGdlbmVyYXRlIHBzZXVkby1jbGFzc2VzXG4gICAgJHN0YXRlOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgc3RhdGUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBzdGF0ZSksICgpKTtcblxuICAgICRpbmZpeDogaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kIHN0ci1zbGljZSgkaW5maXgsIDEsIDEpID09IFwiLVwiLCBzdHItc2xpY2UoJGluZml4LCAyKSwgJGluZml4KTtcblxuICAgIC8vIERvbid0IHByZWZpeCBpZiB2YWx1ZSBrZXkgaXMgbnVsbCAoZWcuIHdpdGggc2hhZG93IGNsYXNzKVxuICAgICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcjogaWYoJGtleSwgaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kICRpbmZpeCA9PSBcIlwiLCBcIlwiLCBcIi1cIikgKyAka2V5LCBcIlwiKTtcblxuICAgIEBpZiBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIHtcbiAgICAgIC8vIEluc2lkZSB0aGUgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiAkaXMtcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZSk7XG5cbiAgICAgICAgLy8gRG8gbm90IHJlbmRlciBhbnl0aGluZyBpZiBmbHVpZCBhbmQgbm9uIGZsdWlkIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICAgICAgJHZhbHVlOiBpZigkdmFsID09IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpLCBudWxsLCAkdmFsKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHZhbHVlOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkaXMtcnRsOiBtYXAtZ2V0KCR1dGlsaXR5LCBydGwpO1xuXG4gICAgQGlmICR2YWx1ZSAhPSBudWxsIHtcbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xuICAgICAgfVxuICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC12YXJpYW50LW1peGluXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogc2hhZGUtY29sb3IoJGNvbG9yLCAyMCUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhbnQtbWl4aW5cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKSxcbiAgJGRpc2FibGVkLWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLFxuICAkZGlzYWJsZWQtYm9yZGVyOiAkYm9yZGVyLFxuICAkZGlzYWJsZWQtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRkaXNhYmxlZC1iYWNrZ3JvdW5kKVxuKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRob3Zlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cyArICYsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peCgkY29sb3IsICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkLWJvcmRlcjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzICsgJixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICYuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xuICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi1zaXplLW1peGluXG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtbWl4aW5zXG5AbWl4aW4gY2FyZXQtZG93biB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1lbmQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtc3RhcnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWVuZCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1zdGFydCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC1taXhpbnNcbiIsIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgIEBpZiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQgPT0gKC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGgpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vQWRkIGJvcmRlci1yYWRpdXMgdG8gYWxsIHBhZ2VMaW5rcyBpbiBjYXNlIHRoZXkgaGF2ZSBsZWZ0IG1hcmdpblxuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtbWl4aW5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1peGluXG4iLCIvLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGUsXG4gICRjb2xvcixcbiAgJGljb24sXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXG4gICRmb2N1cy1ib3gtc2hhZG93OiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KVxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpLCBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZSwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cCAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbiIsIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHN0cmlwZWQtYmd9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJHN0cmlwZWQtYmcpfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iZ307XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skaG92ZXItYmd9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRob3Zlci1iZyl9O1xuXG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkc2hhZG93IHtcbiAgICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAkdmFsdWUsIFwiY29tbWFcIik7XG4gICAgICB9XG4gICAgICBAaWYgJHZhbHVlID09IG5vbmUgYW5kIGxlbmd0aCgkc2hhZG93KSA+IDEge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmIChsZW5ndGgoJHJlc3VsdCkgPiAwKSB7XG4gICAgICBib3gtc2hhZG93OiAkcmVzdWx0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxuIiwiLy8gQ29udGFpbmVyIG1peGluc1xuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGNvbnRhaW5lci1wYWRkaW5nLXgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCwgI3skZ3V0dGVyfSk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14LCAjeyRndXR0ZXJ9KTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXkpICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAvIC0yKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAvIC0yKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAvIDIpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAvIDIpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tdG9wOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXkpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCUgLyAkY291bnQ7XG4gIH1cbn1cblxuLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXg6IDEgMCAwJTsgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICB9XG5cbiAgICAgIC5yb3ctY29scyN7JGluZml4fS1hdXRvID4gKiB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gR3V0dGVyc1xuICAgICAgLy9cbiAgICAgIC8vIE1ha2UgdXNlIG9mIGAuZy0qYCwgYC5neC0qYCBvciBgLmd5LSpgIHV0aWxpdGllcyB0byBjaGFuZ2Ugc3BhY2luZyBiZXR3ZWVuIHRoZSBjb2x1bW5zLlxuICAgICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRndXR0ZXJzIHtcbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd4I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3kjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXk6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgaW5kZW50YXRpb25cblxuLy8gVXRpbGl0aWVzXG5cbiR1dGlsaXRpZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR1dGlsaXRpZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy12ZXJ0aWNhbC1hbGlnblxuICAgIFwiYWxpZ25cIjogKFxuICAgICAgcHJvcGVydHk6IHZlcnRpY2FsLWFsaWduLFxuICAgICAgY2xhc3M6IGFsaWduLFxuICAgICAgdmFsdWVzOiBiYXNlbGluZSB0b3AgbWlkZGxlIGJvdHRvbSB0ZXh0LWJvdHRvbSB0ZXh0LXRvcFxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy12ZXJ0aWNhbC1hbGlnblxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1mbG9hdFxuICAgIFwiZmxvYXRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbG9hdCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogbGVmdCxcbiAgICAgICAgZW5kOiByaWdodCxcbiAgICAgICAgbm9uZTogbm9uZSxcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtZmxvYXRcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtb3ZlcmZsb3dcbiAgICBcIm92ZXJmbG93XCI6IChcbiAgICAgIHByb3BlcnR5OiBvdmVyZmxvdyxcbiAgICAgIHZhbHVlczogYXV0byBoaWRkZW4gdmlzaWJsZSBzY3JvbGwsXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLW92ZXJmbG93XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWRpc3BsYXlcbiAgICBcImRpc3BsYXlcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByaW50OiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGRpc3BsYXksXG4gICAgICBjbGFzczogZCxcbiAgICAgIHZhbHVlczogaW5saW5lIGlubGluZS1ibG9jayBibG9jayBncmlkIHRhYmxlIHRhYmxlLXJvdyB0YWJsZS1jZWxsIGZsZXggaW5saW5lLWZsZXggbm9uZVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1kaXNwbGF5XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXNoYWRvd1xuICAgIFwic2hhZG93XCI6IChcbiAgICAgIHByb3BlcnR5OiBib3gtc2hhZG93LFxuICAgICAgY2xhc3M6IHNoYWRvdyxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiAkYm94LXNoYWRvdyxcbiAgICAgICAgc206ICRib3gtc2hhZG93LXNtLFxuICAgICAgICBsZzogJGJveC1zaGFkb3ctbGcsXG4gICAgICAgIG5vbmU6IG5vbmUsXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXNoYWRvd1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1wb3NpdGlvblxuICAgIFwicG9zaXRpb25cIjogKFxuICAgICAgcHJvcGVydHk6IHBvc2l0aW9uLFxuICAgICAgdmFsdWVzOiBzdGF0aWMgcmVsYXRpdmUgYWJzb2x1dGUgZml4ZWQgc3RpY2t5XG4gICAgKSxcbiAgICBcInRvcFwiOiAoXG4gICAgICBwcm9wZXJ0eTogdG9wLFxuICAgICAgdmFsdWVzOiAkcG9zaXRpb24tdmFsdWVzXG4gICAgKSxcbiAgICBcImJvdHRvbVwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm90dG9tLFxuICAgICAgdmFsdWVzOiAkcG9zaXRpb24tdmFsdWVzXG4gICAgKSxcbiAgICBcInN0YXJ0XCI6IChcbiAgICAgIHByb3BlcnR5OiBsZWZ0LFxuICAgICAgY2xhc3M6IHN0YXJ0LFxuICAgICAgdmFsdWVzOiAkcG9zaXRpb24tdmFsdWVzXG4gICAgKSxcbiAgICBcImVuZFwiOiAoXG4gICAgICBwcm9wZXJ0eTogcmlnaHQsXG4gICAgICBjbGFzczogZW5kLFxuICAgICAgdmFsdWVzOiAkcG9zaXRpb24tdmFsdWVzXG4gICAgKSxcbiAgICBcInRyYW5zbGF0ZS1taWRkbGVcIjogKFxuICAgICAgcHJvcGVydHk6IHRyYW5zZm9ybSxcbiAgICAgIGNsYXNzOiB0cmFuc2xhdGUtbWlkZGxlLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSxcbiAgICAgICAgeDogdHJhbnNsYXRlWCgtNTAlKSxcbiAgICAgICAgeTogdHJhbnNsYXRlWSgtNTAlKSxcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtcG9zaXRpb25cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtYm9yZGVyc1xuICAgIFwiYm9yZGVyXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXIsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yLFxuICAgICAgICAwOiAwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJib3JkZXItdG9wXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItdG9wLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcixcbiAgICAgICAgMDogMCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYm9yZGVyLWVuZFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLXJpZ2h0LFxuICAgICAgY2xhc3M6IGJvcmRlci1lbmQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yLFxuICAgICAgICAwOiAwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJib3JkZXItYm90dG9tXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItYm90dG9tLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcixcbiAgICAgICAgMDogMCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYm9yZGVyLXN0YXJ0XCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItbGVmdCxcbiAgICAgIGNsYXNzOiBib3JkZXItc3RhcnQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yLFxuICAgICAgICAwOiAwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJib3JkZXItY29sb3JcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1jb2xvcixcbiAgICAgIGNsYXNzOiBib3JkZXIsXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkdGhlbWUtY29sb3JzLCAoXCJ3aGl0ZVwiOiAkd2hpdGUpKVxuICAgICksXG4gICAgXCJib3JkZXItd2lkdGhcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci13aWR0aCxcbiAgICAgIGNsYXNzOiBib3JkZXIsXG4gICAgICB2YWx1ZXM6ICRib3JkZXItd2lkdGhzXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWJvcmRlcnNcbiAgICAvLyBTaXppbmcgdXRpbGl0aWVzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXNpemluZ1xuICAgIFwid2lkdGhcIjogKFxuICAgICAgcHJvcGVydHk6IHdpZHRoLFxuICAgICAgY2xhc3M6IHcsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMjU6IDI1JSxcbiAgICAgICAgNTA6IDUwJSxcbiAgICAgICAgNzU6IDc1JSxcbiAgICAgICAgMTAwOiAxMDAlLFxuICAgICAgICBhdXRvOiBhdXRvXG4gICAgICApXG4gICAgKSxcbiAgICBcIm1heC13aWR0aFwiOiAoXG4gICAgICBwcm9wZXJ0eTogbWF4LXdpZHRoLFxuICAgICAgY2xhc3M6IG13LFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDAlKVxuICAgICksXG4gICAgXCJ2aWV3cG9ydC13aWR0aFwiOiAoXG4gICAgICBwcm9wZXJ0eTogd2lkdGgsXG4gICAgICBjbGFzczogdncsXG4gICAgICB2YWx1ZXM6ICgxMDA6IDEwMHZ3KVxuICAgICksXG4gICAgXCJtaW4tdmlld3BvcnQtd2lkdGhcIjogKFxuICAgICAgcHJvcGVydHk6IG1pbi13aWR0aCxcbiAgICAgIGNsYXNzOiBtaW4tdncsXG4gICAgICB2YWx1ZXM6ICgxMDA6IDEwMHZ3KVxuICAgICksXG4gICAgXCJoZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IGhlaWdodCxcbiAgICAgIGNsYXNzOiBoLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDI1OiAyNSUsXG4gICAgICAgIDUwOiA1MCUsXG4gICAgICAgIDc1OiA3NSUsXG4gICAgICAgIDEwMDogMTAwJSxcbiAgICAgICAgYXV0bzogYXV0b1xuICAgICAgKVxuICAgICksXG4gICAgXCJtYXgtaGVpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBtYXgtaGVpZ2h0LFxuICAgICAgY2xhc3M6IG1oLFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDAlKVxuICAgICksXG4gICAgXCJ2aWV3cG9ydC1oZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IGhlaWdodCxcbiAgICAgIGNsYXNzOiB2aCxcbiAgICAgIHZhbHVlczogKDEwMDogMTAwdmgpXG4gICAgKSxcbiAgICBcIm1pbi12aWV3cG9ydC1oZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IG1pbi1oZWlnaHQsXG4gICAgICBjbGFzczogbWluLXZoLFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDB2aClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtc2l6aW5nXG4gICAgLy8gRmxleCB1dGlsaXRpZXNcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtZmxleFxuICAgIFwiZmxleFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsZXgsXG4gICAgICB2YWx1ZXM6IChmaWxsOiAxIDEgYXV0bylcbiAgICApLFxuICAgIFwiZmxleC1kaXJlY3Rpb25cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbGV4LWRpcmVjdGlvbixcbiAgICAgIGNsYXNzOiBmbGV4LFxuICAgICAgdmFsdWVzOiByb3cgY29sdW1uIHJvdy1yZXZlcnNlIGNvbHVtbi1yZXZlcnNlXG4gICAgKSxcbiAgICBcImZsZXgtZ3Jvd1wiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsZXgtZ3JvdyxcbiAgICAgIGNsYXNzOiBmbGV4LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIGdyb3ctMDogMCxcbiAgICAgICAgZ3Jvdy0xOiAxLFxuICAgICAgKVxuICAgICksXG4gICAgXCJmbGV4LXNocmlua1wiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsZXgtc2hyaW5rLFxuICAgICAgY2xhc3M6IGZsZXgsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgc2hyaW5rLTA6IDAsXG4gICAgICAgIHNocmluay0xOiAxLFxuICAgICAgKVxuICAgICksXG4gICAgXCJmbGV4LXdyYXBcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbGV4LXdyYXAsXG4gICAgICBjbGFzczogZmxleCxcbiAgICAgIHZhbHVlczogd3JhcCBub3dyYXAgd3JhcC1yZXZlcnNlXG4gICAgKSxcbiAgICBcImdhcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGdhcCxcbiAgICAgIGNsYXNzOiBnYXAsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcImp1c3RpZnktY29udGVudFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGp1c3RpZnktY29udGVudCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogZmxleC1zdGFydCxcbiAgICAgICAgZW5kOiBmbGV4LWVuZCxcbiAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICAgIGJldHdlZW46IHNwYWNlLWJldHdlZW4sXG4gICAgICAgIGFyb3VuZDogc3BhY2UtYXJvdW5kLFxuICAgICAgICBldmVubHk6IHNwYWNlLWV2ZW5seSxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYWxpZ24taXRlbXNcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBhbGlnbi1pdGVtcyxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogZmxleC1zdGFydCxcbiAgICAgICAgZW5kOiBmbGV4LWVuZCxcbiAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICAgIGJhc2VsaW5lOiBiYXNlbGluZSxcbiAgICAgICAgc3RyZXRjaDogc3RyZXRjaCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYWxpZ24tY29udGVudFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGFsaWduLWNvbnRlbnQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgc3RhcnQ6IGZsZXgtc3RhcnQsXG4gICAgICAgIGVuZDogZmxleC1lbmQsXG4gICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICBiZXR3ZWVuOiBzcGFjZS1iZXR3ZWVuLFxuICAgICAgICBhcm91bmQ6IHNwYWNlLWFyb3VuZCxcbiAgICAgICAgc3RyZXRjaDogc3RyZXRjaCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYWxpZ24tc2VsZlwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGFsaWduLXNlbGYsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgYXV0bzogYXV0byxcbiAgICAgICAgc3RhcnQ6IGZsZXgtc3RhcnQsXG4gICAgICAgIGVuZDogZmxleC1lbmQsXG4gICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICBiYXNlbGluZTogYmFzZWxpbmUsXG4gICAgICAgIHN0cmV0Y2g6IHN0cmV0Y2gsXG4gICAgICApXG4gICAgKSxcbiAgICBcIm9yZGVyXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogb3JkZXIsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgZmlyc3Q6IC0xLFxuICAgICAgICAwOiAwLFxuICAgICAgICAxOiAxLFxuICAgICAgICAyOiAyLFxuICAgICAgICAzOiAzLFxuICAgICAgICA0OiA0LFxuICAgICAgICA1OiA1LFxuICAgICAgICBsYXN0OiA2LFxuICAgICAgKSxcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtZmxleFxuICAgIC8vIE1hcmdpbiB1dGlsaXRpZXNcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtc3BhY2luZ1xuICAgIFwibWFyZ2luXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLFxuICAgICAgY2xhc3M6IG0sXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4teFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1yaWdodCBtYXJnaW4tbGVmdCxcbiAgICAgIGNsYXNzOiBteCxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICBcIm1hcmdpbi15XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXRvcCBtYXJnaW4tYm90dG9tLFxuICAgICAgY2xhc3M6IG15LFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIFwibWFyZ2luLXRvcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi10b3AsXG4gICAgICBjbGFzczogbXQsXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4tZW5kXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXJpZ2h0LFxuICAgICAgY2xhc3M6IG1lLFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIFwibWFyZ2luLWJvdHRvbVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1ib3R0b20sXG4gICAgICBjbGFzczogbWIsXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4tc3RhcnRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tbGVmdCxcbiAgICAgIGNsYXNzOiBtcyxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gdXRpbGl0aWVzXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW5cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4sXG4gICAgICBjbGFzczogbSxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLXhcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tcmlnaHQgbWFyZ2luLWxlZnQsXG4gICAgICBjbGFzczogbXgsXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICBcIm5lZ2F0aXZlLW1hcmdpbi15XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXRvcCBtYXJnaW4tYm90dG9tLFxuICAgICAgY2xhc3M6IG15LFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW4tdG9wXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXRvcCxcbiAgICAgIGNsYXNzOiBtdCxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLWVuZFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1yaWdodCxcbiAgICAgIGNsYXNzOiBtZSxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLWJvdHRvbVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1ib3R0b20sXG4gICAgICBjbGFzczogbWIsXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICBcIm5lZ2F0aXZlLW1hcmdpbi1zdGFydFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1sZWZ0LFxuICAgICAgY2xhc3M6IG1zLFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgLy8gUGFkZGluZyB1dGlsaXRpZXNcbiAgICBcInBhZGRpbmdcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLFxuICAgICAgY2xhc3M6IHAsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcInBhZGRpbmcteFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmctcmlnaHQgcGFkZGluZy1sZWZ0LFxuICAgICAgY2xhc3M6IHB4LFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLXlcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLXRvcCBwYWRkaW5nLWJvdHRvbSxcbiAgICAgIGNsYXNzOiBweSxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicGFkZGluZy10b3BcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLXRvcCxcbiAgICAgIGNsYXNzOiBwdCxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicGFkZGluZy1lbmRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLXJpZ2h0LFxuICAgICAgY2xhc3M6IHBlLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLWJvdHRvbVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmctYm90dG9tLFxuICAgICAgY2xhc3M6IHBiLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLXN0YXJ0XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcGFkZGluZy1sZWZ0LFxuICAgICAgY2xhc3M6IHBzLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1zcGFjaW5nXG4gICAgLy8gVGV4dFxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy10ZXh0XG4gICAgXCJmb250LWZhbWlseVwiOiAoXG4gICAgICBwcm9wZXJ0eTogZm9udC1mYW1pbHksXG4gICAgICBjbGFzczogZm9udCxcbiAgICAgIHZhbHVlczogKG1vbm9zcGFjZTogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtbW9ub3NwYWNlKSlcbiAgICApLFxuICAgIFwiZm9udC1zaXplXCI6IChcbiAgICAgIHJmczogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmb250LXNpemUsXG4gICAgICBjbGFzczogZnMsXG4gICAgICB2YWx1ZXM6ICRmb250LXNpemVzXG4gICAgKSxcbiAgICBcImZvbnQtc3R5bGVcIjogKFxuICAgICAgcHJvcGVydHk6IGZvbnQtc3R5bGUsXG4gICAgICBjbGFzczogZnN0LFxuICAgICAgdmFsdWVzOiBpdGFsaWMgbm9ybWFsXG4gICAgKSxcbiAgICBcImZvbnQtd2VpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBmb250LXdlaWdodCxcbiAgICAgIGNsYXNzOiBmdyxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBsaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0LFxuICAgICAgICBsaWdodGVyOiAkZm9udC13ZWlnaHQtbGlnaHRlcixcbiAgICAgICAgbm9ybWFsOiAkZm9udC13ZWlnaHQtbm9ybWFsLFxuICAgICAgICBib2xkOiAkZm9udC13ZWlnaHQtYm9sZCxcbiAgICAgICAgYm9sZGVyOiAkZm9udC13ZWlnaHQtYm9sZGVyXG4gICAgICApXG4gICAgKSxcbiAgICBcImxpbmUtaGVpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBsaW5lLWhlaWdodCxcbiAgICAgIGNsYXNzOiBsaCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAxOiAxLFxuICAgICAgICBzbTogJGxpbmUtaGVpZ2h0LXNtLFxuICAgICAgICBiYXNlOiAkbGluZS1oZWlnaHQtYmFzZSxcbiAgICAgICAgbGc6ICRsaW5lLWhlaWdodC1sZyxcbiAgICAgIClcbiAgICApLFxuICAgIFwidGV4dC1hbGlnblwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHRleHQtYWxpZ24sXG4gICAgICBjbGFzczogdGV4dCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogbGVmdCxcbiAgICAgICAgZW5kOiByaWdodCxcbiAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICApXG4gICAgKSxcbiAgICBcInRleHQtZGVjb3JhdGlvblwiOiAoXG4gICAgICBwcm9wZXJ0eTogdGV4dC1kZWNvcmF0aW9uLFxuICAgICAgdmFsdWVzOiBub25lIHVuZGVybGluZSBsaW5lLXRocm91Z2hcbiAgICApLFxuICAgIFwidGV4dC10cmFuc2Zvcm1cIjogKFxuICAgICAgcHJvcGVydHk6IHRleHQtdHJhbnNmb3JtLFxuICAgICAgY2xhc3M6IHRleHQsXG4gICAgICB2YWx1ZXM6IGxvd2VyY2FzZSB1cHBlcmNhc2UgY2FwaXRhbGl6ZVxuICAgICksXG4gICAgXCJ3aGl0ZS1zcGFjZVwiOiAoXG4gICAgICBwcm9wZXJ0eTogd2hpdGUtc3BhY2UsXG4gICAgICBjbGFzczogdGV4dCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICB3cmFwOiBub3JtYWwsXG4gICAgICAgIG5vd3JhcDogbm93cmFwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJ3b3JkLXdyYXBcIjogKFxuICAgICAgcHJvcGVydHk6IHdvcmQtd3JhcCB3b3JkLWJyZWFrLFxuICAgICAgY2xhc3M6IHRleHQsXG4gICAgICB2YWx1ZXM6IChicmVhazogYnJlYWstd29yZCksXG4gICAgICBydGw6IGZhbHNlXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXRleHRcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtY29sb3JcbiAgICBcImNvbG9yXCI6IChcbiAgICAgIHByb3BlcnR5OiBjb2xvcixcbiAgICAgIGNsYXNzOiB0ZXh0LFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoXG4gICAgICAgICR0aGVtZS1jb2xvcnMsXG4gICAgICAgIChcbiAgICAgICAgICBcIndoaXRlXCI6ICR3aGl0ZSxcbiAgICAgICAgICBcImJvZHlcIjogJGJvZHktY29sb3IsXG4gICAgICAgICAgXCJtdXRlZFwiOiAkdGV4dC1tdXRlZCxcbiAgICAgICAgICBcImJsYWNrLTUwXCI6IHJnYmEoJGJsYWNrLCAuNSksXG4gICAgICAgICAgXCJ3aGl0ZS01MFwiOiByZ2JhKCR3aGl0ZSwgLjUpLFxuICAgICAgICAgIFwicmVzZXRcIjogaW5oZXJpdCxcbiAgICAgICAgKVxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1jb2xvclxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1iZy1jb2xvclxuICAgIFwiYmFja2dyb3VuZC1jb2xvclwiOiAoXG4gICAgICBwcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvcixcbiAgICAgIGNsYXNzOiBiZyxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKFxuICAgICAgICAkdGhlbWUtY29sb3JzLFxuICAgICAgICAoXG4gICAgICAgICAgXCJib2R5XCI6ICRib2R5LWJnLFxuICAgICAgICAgIFwid2hpdGVcIjogJHdoaXRlLFxuICAgICAgICAgIFwidHJhbnNwYXJlbnRcIjogdHJhbnNwYXJlbnRcbiAgICAgICAgKVxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1iZy1jb2xvclxuICAgIFwiZ3JhZGllbnRcIjogKFxuICAgICAgcHJvcGVydHk6IGJhY2tncm91bmQtaW1hZ2UsXG4gICAgICBjbGFzczogYmcsXG4gICAgICB2YWx1ZXM6IChncmFkaWVudDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KSlcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1pbnRlcmFjdGlvblxuICAgIFwidXNlci1zZWxlY3RcIjogKFxuICAgICAgcHJvcGVydHk6IHVzZXItc2VsZWN0LFxuICAgICAgdmFsdWVzOiBhbGwgYXV0byBub25lXG4gICAgKSxcbiAgICBcInBvaW50ZXItZXZlbnRzXCI6IChcbiAgICAgIHByb3BlcnR5OiBwb2ludGVyLWV2ZW50cyxcbiAgICAgIGNsYXNzOiBwZSxcbiAgICAgIHZhbHVlczogbm9uZSBhdXRvLFxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1pbnRlcmFjdGlvblxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1ib3JkZXItcmFkaXVzXG4gICAgXCJyb3VuZGVkXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItcmFkaXVzLFxuICAgICAgY2xhc3M6IHJvdW5kZWQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogJGJvcmRlci1yYWRpdXMsXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDE6ICRib3JkZXItcmFkaXVzLXNtLFxuICAgICAgICAyOiAkYm9yZGVyLXJhZGl1cyxcbiAgICAgICAgMzogJGJvcmRlci1yYWRpdXMtbGcsXG4gICAgICAgIGNpcmNsZTogNTAlLFxuICAgICAgICBwaWxsOiAkYm9yZGVyLXJhZGl1cy1waWxsXG4gICAgICApXG4gICAgKSxcbiAgICBcInJvdW5kZWQtdG9wXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItdG9wLWxlZnQtcmFkaXVzIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzLFxuICAgICAgY2xhc3M6IHJvdW5kZWQtdG9wLFxuICAgICAgdmFsdWVzOiAobnVsbDogJGJvcmRlci1yYWRpdXMpXG4gICAgKSxcbiAgICBcInJvdW5kZWQtZW5kXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cyBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cyxcbiAgICAgIGNsYXNzOiByb3VuZGVkLWVuZCxcbiAgICAgIHZhbHVlczogKG51bGw6ICRib3JkZXItcmFkaXVzKVxuICAgICksXG4gICAgXCJyb3VuZGVkLWJvdHRvbVwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cyxcbiAgICAgIGNsYXNzOiByb3VuZGVkLWJvdHRvbSxcbiAgICAgIHZhbHVlczogKG51bGw6ICRib3JkZXItcmFkaXVzKVxuICAgICksXG4gICAgXCJyb3VuZGVkLXN0YXJ0XCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzIGJvcmRlci10b3AtbGVmdC1yYWRpdXMsXG4gICAgICBjbGFzczogcm91bmRlZC1zdGFydCxcbiAgICAgIHZhbHVlczogKG51bGw6ICRib3JkZXItcmFkaXVzKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1ib3JkZXItcmFkaXVzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXZpc2liaWxpdHlcbiAgICBcInZpc2liaWxpdHlcIjogKFxuICAgICAgcHJvcGVydHk6IHZpc2liaWxpdHksXG4gICAgICBjbGFzczogbnVsbCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICB2aXNpYmxlOiB2aXNpYmxlLFxuICAgICAgICBpbnZpc2libGU6IGhpZGRlbixcbiAgICAgIClcbiAgICApXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy12aXNpYmlsaXR5XG4gICksXG4gICR1dGlsaXRpZXNcbik7XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudDogI3skZ3JhZGllbnR9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8vIFJvb3Rcbi8vXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yb290O1xuXG4gIEBpZiAkZW5hYmxlLXNtb290aC1zY3JvbGwge1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuLy8gNC4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogJGJvZHktdGV4dC1hbGlnbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA0XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIFJlc2V0IEZpcmVmb3gncyBncmF5IGNvbG9yXG4vLyAyLiBTZXQgY29ycmVjdCBoZWlnaHQgYW5kIHByZXZlbnQgdGhlIGBzaXplYCBhdHRyaWJ1dGUgdG8gbWFrZSB0aGUgYGhyYCBsb29rIGxpa2UgYW4gaW5wdXQgZmllbGRcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuaHI6bm90KFtzaXplXSkge1xuICBoZWlnaHQ6ICRoci1oZWlnaHQ7IC8vIDJcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtYnMtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLWJzLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDRcbn1cblxuXG4vLyBBZGRyZXNzXG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5cbi8vIExpc3RzXG5cbm9sLFxudWwge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG4vLyAxLiBVbmRvIGJyb3dzZXIgZGVmYXVsdFxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gMVxufVxuXG5cbi8vIEJsb2NrcXVvdGVcblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gU3Ryb25nXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7XG59XG5cblxuLy8gU21hbGxcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbn1cblxuXG4vLyBNYXJrXG5cbm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vLyBTdWIgYW5kIFN1cFxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc3ViLXN1cC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vIExpbmtzXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgJixcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ29kZVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgZGlyZWN0aW9uOiBsdHIgI3tcIi8qIHJ0bDppZ25vcmUgKi9cIn07XG4gIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTtcbn1cblxuLy8gMS4gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4vLyAyLiBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuLy8gMy4gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206IDFyZW07IC8vIDJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG5cbmltZyxcbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xuXG50YWJsZSB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcblxudGgge1xuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290LFxudHIsXG50ZCxcbnRoIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cblxuLy8gRm9ybXNcbi8vXG4vLyAxLiBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbiAgd29yZC13cmFwOiBub3JtYWw7XG5cbiAgLy8gVW5kbyB0aGUgb3BhY2l0eSBjaGFuZ2UgZnJvbSBDaHJvbWVcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLyBSZW1vdmUgdGhlIGRyb3Bkb3duIGFycm93IGluIENocm9tZSBmcm9tIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cy5cbi8vIFNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNTQ5OTcxMThcblxuW2xpc3RdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAzLiBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcblxuICBAaWYgJGVuYWJsZS1idXR0b24tcG9pbnRlcnMge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vLyAxLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLy8gMVxufVxuXG4vLyAxLiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuLy8gICAgdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4vLyAgICBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuLy8gICAgYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuLy8gMi4gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAyXG4gIGJvcmRlcjogMDsgLy8gMlxufVxuXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50LlxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXG4vLyAyLiBGaXggd3JhcHBpbmcgYnVnLlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcblxubGVnZW5kIHtcbiAgZmxvYXQ6IGxlZnQ7IC8vIDFcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsZWdlbmQtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWdlbmQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICsgKiB7XG4gICAgY2xlYXI6IGxlZnQ7IC8vIDJcbiAgfVxufVxuXG4vLyBGaXggaGVpZ2h0IG9mIGlucHV0cyB3aXRoIGEgdHlwZSBvZiBkYXRldGltZS1sb2NhbCwgZGF0ZSwgbW9udGgsIHdlZWssIG9yIHRpbWVcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4ODQyXG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuLy8gMi4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAyXG59XG5cbi8vIDEuIEEgZmV3IGlucHV0IHR5cGVzIHNob3VsZCBzdGF5IExUUlxuLy8gU2VlIGh0dHBzOi8vcnRsc3R5bGluZy5jb20vcG9zdHMvcnRsLXN0eWxpbmcjZm9ybS1pbnB1dHNcbi8vIDIuIFJUTCBvbmx5IG91dHB1dFxuLy8gU2VlIGh0dHBzOi8vcnRsY3NzLmNvbS9sZWFybi91c2FnZS1ndWlkZS9jb250cm9sLWRpcmVjdGl2ZXMvI3Jhd1xuXG4vKiBydGw6cmF3OlxuW3R5cGU9XCJ0ZWxcIl0sXG5bdHlwZT1cInVybFwiXSxcblt0eXBlPVwiZW1haWxcIl0sXG5bdHlwZT1cIm51bWJlclwiXSB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuKi9cblxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFJlbW92ZSBwYWRkaW5nIGFyb3VuZCBjb2xvciBwaWNrZXJzIGluIHdlYmtpdCBicm93c2Vyc1xuXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG5cbi8vIEluaGVyaXQgZm9udCBmYW1pbHkgYW5kIGxpbmUgaGVpZ2h0IGZvciBmaWxlIGlucHV0IGJ1dHRvbnNcblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbi8vIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMVxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBSZW1vdmUgYm9yZGVyIGZyb20gaWZyYW1lXG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gU3VtbWFyeVxuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyAxXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG4vLyBQcm9ncmVzc1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5cbi8vIEhpZGRlbiBhdHRyaWJ1dGVcbi8vXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlLlxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vXG4vLyBIZWFkaW5nc1xuLy9cbi5oMSB7XG4gIEBleHRlbmQgaDE7XG59XG5cbi5oMiB7XG4gIEBleHRlbmQgaDI7XG59XG5cbi5oMyB7XG4gIEBleHRlbmQgaDM7XG59XG5cbi5oNCB7XG4gIEBleHRlbmQgaDQ7XG59XG5cbi5oNSB7XG4gIEBleHRlbmQgaDU7XG59XG5cbi5oNiB7XG4gIEBleHRlbmQgaDY7XG59XG5cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuQGVhY2ggJGRpc3BsYXksICRmb250LXNpemUgaW4gJGRpc3BsYXktZm9udC1zaXplcyB7XG4gIC5kaXNwbGF5LSN7JGRpc3BsYXl9IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgfVxufVxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG4uc21hbGwge1xuICBAZXh0ZW5kIHNtYWxsO1xufVxuXG4ubWFyayB7XG4gIEBleHRlbmQgbWFyaztcbn1cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5pdGlhbGlzbS1mb250LXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAvIDI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1iZzogI3skdGFibGUtYmd9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICAvLyBUYXJnZXQgdGggJiB0ZFxuICAvLyBXZSBuZWVkIHRoZSBjaGlsZCBjb21iaW5hdG9yIHRvIHByZXZlbnQgc3R5bGVzIGxlYWtpbmcgdG8gbmVzdGVkIHRhYmxlcyB3aGljaCBkb2Vzbid0IGhhdmUgYSBgLnRhYmxlYCBjbGFzcy5cbiAgLy8gV2UgdXNlIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3JzIGhlcmUgdG8gc2ltcGxpZnkgdGhlIHNlbGVjdG9yIChlbHNlIHdlIHdvdWxkIG5lZWQgNiBkaWZmZXJlbnQgc2VsZWN0b3JzKS5cbiAgLy8gQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGlzIGdlbmVyYXRlcyBsZXNzIGNvZGUgYW5kIG1ha2VzIHRoZSBzZWxlY3RvciBsZXNzIHNwZWNpZmljIG1ha2luZyBpdCBlYXNpZXIgdG8gb3ZlcnJpZGUuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXkgJHRhYmxlLWNlbGwtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZyk7XG4gIH1cblxuICA+IHRib2R5IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgfVxuXG4gID4gdGhlYWQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cblxuICAvLyBIaWdobGlnaHQgYm9yZGVyIGNvbG9yIGJldHdlZW4gdGhlYWQsIHRib2R5IGFuZCB0Zm9vdC5cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSA+IDpsYXN0LWNoaWxkID4gKiB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDaGFuZ2UgcGxhY2VtZW50IG9mIGNhcHRpb25zIHdpdGggYSBjbGFzc1xuLy9cblxuLmNhcHRpb24tdG9wIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXktc20gJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cbi8vXG4vLyBXaGVuIGJvcmRlcnMgYXJlIGFkZGVkIG9uIGFsbCBzaWRlcyBvZiB0aGUgY2VsbHMsIHRoZSBjb3JuZXJzIGNhbiByZW5kZXIgb2RkIHdoZW5cbi8vIHRoZXNlIGJvcmRlcnMgZG8gbm90IGhhdmUgdGhlIHNhbWUgY29sb3Igb3IgaWYgdGhleSBhcmUgc2VtaS10cmFuc3BhcmVudC5cbi8vIFRoZXJlZm9yIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aCAwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgICA+ICoge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cbn1cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1iZyk7XG4gIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbn1cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIHZhcmlhbnRzXG4vL1xuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXG4vLyBhbmQgdGhlIGNvbG9ycyBvZiB0aGUgc3RyaXBlZCwgaG92ZXJlZCAmIGFjdGl2ZSB0YWJsZXNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcbiAgQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLnRhYmxlLXJlc3BvbnNpdmUjeyRpbmZpeH0ge1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJmb3Jtcy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLXRleHRcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLWNvbnRyb2xcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLXNlbGVjdFwiO1xuQGltcG9ydCBcImZvcm1zL2Zvcm0tY2hlY2tcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLXJhbmdlXCI7XG5AaW1wb3J0IFwiZm9ybXMvZmxvYXRpbmctbGFiZWxzXCI7XG5AaW1wb3J0IFwiZm9ybXMvaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJmb3Jtcy92YWxpZGF0aW9uXCI7XG4iLCIvL1xuLy8gTGFiZWxzXG4vL1xuXG4uZm9ybS1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1sYWJlbC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbn1cbiIsIi8vXG4vLyBGb3JtIHRleHRcbi8vXG5cbi5mb3JtLXRleHQge1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS10ZXh0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLXRleHQtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXRleHQtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS10ZXh0LWNvbG9yO1xufVxuIiwiLy9cbi8vIEdlbmVyYWwgZm9ybSBjb250cm9scyAocGx1cyBhIGZldyBzcGVjaWZpYyBoaWdoLWxldmVsIGludGVydmVudGlvbnMpXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImZpbGVcIl0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIHByZXZlbnQgcHNldWRvIGVsZW1lbnQgYnV0dG9uIG92ZXJsYXBcblxuICAgICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgLy8gQWRkIHNvbWUgaGVpZ2h0IHRvIGRhdGUgaW5wdXRzIG9uIGlPU1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzIzMzA3XG4gIC8vIFRPRE86IHdlIGNhbiByZW1vdmUgdGhpcyB3b3JrYXJvdW5kIG9uY2UgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk1OSBpcyByZXNvbHZlZFxuICAmOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xuICAgIC8vIE11bHRpcGx5IGxpbmUtaGVpZ2h0IGJ5IDFlbSBpZiBpdCBoYXMgbm8gdW5pdFxuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIEZpbGUgaW5wdXQgYnV0dG9ucyB0aGVtaW5nXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXkpICgtJGlucHV0LXBhZGRpbmcteCk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG4gIH1cblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cbn1cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxuXG4gICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktc20pICgtJGlucHV0LXBhZGRpbmcteC1zbSk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1sZykgKC0kaW5wdXQtcGFkZGluZy14LWxnKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1sZztcbiAgfVxufVxuXG4vLyBNYWtlIHN1cmUgdGV4dGFyZWFzIGRvbid0IHNocmluayB0b28gbXVjaCB3aGVuIHJlc2l6ZWRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI5MTI0XG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbnRleHRhcmVhIHtcbiAgJi5mb3JtLWNvbnRyb2wge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICB9XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgbWF4LXdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IGF1dG87IC8vIE92ZXJyaWRlIGZpeGVkIGJyb3dzZXIgaGVpZ2h0XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXk7XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6Oi1tb3otY29sb3Itc3dhdGNoIHtcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRmb3JtLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tc2VsZWN0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjtcbiAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZTtcbiAgYm9yZGVyOiAkZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbn1cblxuLmZvcm0tc2VsZWN0LWxnIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cbiIsIi8vXG4vLyBDaGVjay9yYWRpb1xuLy9cblxuLmZvcm0tY2hlY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvcm0tY2hlY2stbWluLWhlaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tO1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgd2lkdGg6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBoZWlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCkgLyAyOyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtYmc7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6ICRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1jaGVjay10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcblxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAkZm9ybS1jaGVjay1sYWJlbC1jb2xvcjtcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XG59XG5cbi8vXG4vLyBTd2l0Y2hcbi8vXG5cbi5mb3JtLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHdpZHRoOiAkZm9ybS1zd2l0Y2gtd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc3dpdGNoLXRyYW5zaXRpb24pO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSk7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uO1xuXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKSwgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kO1xufVxuXG4uYnRuLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgKyAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5mb3JtLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCwgJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQgLSAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQpIC8gMjsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIuZm9ybS1mbG9hdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuICB9XG5cbiAgPiBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTsgLy8gYWxsb3cgdGV4dGFyZWFzXG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIFJlcXVpcmVkIGZvciBhbGlnbmluZyBsYWJlbCdzIHRleHQgd2l0aCB0aGUgaW5wdXQgYXMgaXQgYWZmZWN0cyBpbm5lciBib3ggbW9kZWxcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gICAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIH4gbGFiZWwge1xuICAgICAgb3BhY2l0eTogJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cbiAgLy8gc3R5bGVsaW50LWVuYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXkgJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmlucHV0LWdyb3VwIHtcbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gOm50aC1sYXN0LWNoaWxkKG4gKyAzKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDQpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiBcIlwiO1xuICBAZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMpIHtcbiAgICAkdmFsaWRhdGlvbi1tZXNzYWdlczogJHZhbGlkYXRpb24tbWVzc2FnZXMgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItdG9vbHRpcClcIiArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi1mZWVkYmFjaylcIjtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSkjeyR2YWxpZGF0aW9uLW1lc3NhZ2VzfSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyLXNpZGUgdmFsaWRhdGlvbi5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMtbG9vcFxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRkYXRhLi4uKTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLXN0YXRlcy1sb29wXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRidG4tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IGlmKCRlbmFibGUtYnV0dG9uLXBvaW50ZXJzLCBwb2ludGVyLCBudWxsKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cyArICYsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LWxvb3BzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGJ0bi1saW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRidG4tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS1jbGFzc2VzXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS1jbGFzc2VzXG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcbi8vIHRoaXMgY3VzdG9tIHByb3BlcnR5IGluIEpTIHRvIGRldGVybWluZSBQb3BwZXIncyBwb3NpdGlvbmluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1zdGFydCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogYXV0byAje1wiLyogcnRsOmlnbm9yZSAqL1wifTtcbiAgICAgICAgbGVmdDogMCAje1wiLyogcnRsOmlnbm9yZSAqL1wifTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xuICAgICAgLS1icy1wb3NpdGlvbjogZW5kO1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiAwICN7XCIvKiBydGw6aWdub3JlICovXCJ9O1xuICAgICAgICBsZWZ0OiBhdXRvICN7XCIvKiBydGw6aWdub3JlICovXCJ9O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3BlbmQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG5cbiAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQoZW5kKTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BzdGFydCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcblxuICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQoc3RhcnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkcm9wZG93bi1kaXZpZGVyLWJnO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuXG4vLyBEYXJrIGRyb3Bkb3duc1xuLmRyb3Bkb3duLW1lbnUtZGFyayB7XG4gIGNvbG9yOiAkZHJvcGRvd24tZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWRhcmstYmc7XG4gIGJvcmRlci1jb2xvcjogJGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3cpO1xuXG4gIC5kcm9wZG93bi1pdGVtIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmcpO1xuICAgIH1cblxuICAgICYuYWN0aXZlLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnKTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLWRpdmlkZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZztcbiAgfVxuXG4gIC5kcm9wZG93bi1pdGVtLXRleHQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjtcbiAgfVxufVxuIiwiLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxuICA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLFxuICA+IC5idG46aG92ZXIsXG4gID4gLmJ0bjpmb2N1cyxcbiAgPiAuYnRuOmFjdGl2ZSxcbiAgPiAuYnRuLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgfVxuXG4gIC8vIFRoZSBsZWZ0IHJhZGl1cyBzaG91bGQgYmUgMCBpZiB0aGUgYnV0dG9uIGlzOlxuICAvLyAtIHRoZSBcInRoaXJkIG9yIG1vcmVcIiBjaGlsZFxuICAvLyAtIHRoZSBzZWNvbmQgY2hpbGQgYW5kIHRoZSBwcmV2aW91cyBlbGVtZW50IGlzbid0IGAuYnRuLWNoZWNrYCAobWFraW5nIGl0IHRoZSBmaXJzdCBjaGlsZCB2aXN1YWxseSlcbiAgLy8gLSBwYXJ0IG9mIGEgYnRuLWdyb3VwIHdoaWNoIGlzbid0IHRoZSBmaXJzdCBjaGlsZFxuICA+IC5idG46bnRoLWNoaWxkKG4gKyAzKSxcbiAgPiA6bm90KC5idG4tY2hlY2spICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3BlbmQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BzdGFydCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuIH4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcywgYDx1bD5gcyBvciBgPG9sPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2LWxpbmstZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRuYXYtbGluay1mb250LXdlaWdodDtcbiAgY29sb3I6ICRuYXYtbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRuYXYtbGluay10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1maWxsLFxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gTWFrZSBzdXJlIGJ1dHRvbiB3aWxsIGdyb3dcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZy10b3A6ICRuYXZiYXItcGFkZGluZy15O1xuICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDsgLy8gZGVmYXVsdDogbnVsbFxuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1wYWRkaW5nLXk7XG4gIHBhZGRpbmctbGVmdDogJG5hdmJhci1wYWRkaW5nLXg7IC8vIGRlZmF1bHQ6IG51bGxcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gIC8vIFRoZSBgZmxleC13cmFwYCBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGFuZGVkIG5hdmJhcnNcbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBpbmhlcml0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgPiAuY29udGFpbmVyLFxuICA+IC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1zY3JvbGwtaGVpZ2h0LCA3NXZoKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1leHBhbmQtbG9vcFxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3Mvc2VsZWN0b3Itbm8tdW5pb24tY2xhc3MtbmFtZVxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1leHBhbmQtbG9vcFxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgYSxcbiAgICBhOmhvdmVyLFxuICAgIGE6Zm9jdXMgIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEsXG4gICAgYTpob3ZlcixcbiAgICBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC10aXRsZS1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtdGl0bGUtc3BhY2VyLXkgLyAyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtY2FwLXBhZGRpbmcteSAkY2FyZC1jYXAtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1jYXAtcGFkZGluZy15ICRjYXJkLWNhcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAvIDI7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1jYXAtcGFkZGluZy15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLWNhcC1wYWRkaW5nLXggLyAyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIEBpZiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIT0gJGNhcmQtYmcge1xuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY2FyZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAvIDI7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hY2NvcmRpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15ICRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gUmVzZXQgYnV0dG9uIHN0eWxlXG4gIGJhY2tncm91bmQtY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWJnO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYWNjb3JkaW9uLXRyYW5zaXRpb24pO1xuXG4gICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICBjb2xvcjogJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZztcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgkYWNjb3JkaW9uLWJvcmRlci13aWR0aCAqIC0xKSAwICRhY2NvcmRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbik7XG4gICAgICB0cmFuc2Zvcm06ICRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm07XG4gICAgfVxuICB9XG5cbiAgLy8gQWNjb3JkaW9uIGljb25cbiAgJjo6YWZ0ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAkYWNjb3JkaW9uLWljb24td2lkdGg7XG4gICAgaGVpZ2h0OiAkYWNjb3JkaW9uLWljb24td2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24pO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkYWNjb3JkaW9uLWljb24td2lkdGg7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbik7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBib3JkZXItY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cbn1cblxuLmFjY29yZGlvbi1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAtJGFjY29yZGlvbi1ib3JkZXItd2lkdGg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhY2NvcmRpb24tYmc7XG4gIGJvcmRlcjogJGFjY29yZGlvbi1ib3JkZXItd2lkdGggc29saWQgJGFjY29yZGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgcGFkZGluZzogJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteSAkYWNjb3JkaW9uLWJvZHktcGFkZGluZy14O1xufVxuXG5cbi8vIEZsdXNoIGFjY29yZGlvbiBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgYWNjb3JkaW9uIGl0ZW1zIGVkZ2UtdG8tZWRnZS5cblxuLmFjY29yZGlvbi1mbHVzaCB7XG4gIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XCIvKiBydGw6XCJ9IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkKSkgI3tcIiovXCJ9O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwYWdpbmF0aW9uLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZm9jdXMtYmc7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJHBhZ2luYXRpb24tYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5AaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgsIG51bGwsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpO1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4ICsgMTtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICogMS4yNSAkYWxlcnQtcGFkZGluZy14O1xuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LW1vZGlmaWVyc1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuQGVhY2ggJHN0YXRlLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICRhbGVydC1iYWNrZ3JvdW5kOiBzaGlmdC1jb2xvcigkdmFsdWUsICRhbGVydC1iZy1zY2FsZSk7XG4gICRhbGVydC1ib3JkZXI6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGFsZXJ0LWJvcmRlci1zY2FsZSk7XG4gICRhbGVydC1jb2xvcjogc2hpZnQtY29sb3IoJHZhbHVlLCAkYWxlcnQtY29sb3Itc2NhbGUpO1xuICBAaWYgKGNvbnRyYXN0LXJhdGlvKCRhbGVydC1iYWNrZ3JvdW5kLCAkYWxlcnQtY29sb3IpIDwgJG1pbi1jb250cmFzdC1yYXRpbykge1xuICAgICRhbGVydC1jb2xvcjogbWl4KCR2YWx1ZSwgY29sb3ItY29udHJhc3QoJGFsZXJ0LWJhY2tncm91bmQpLCBhYnMoJGFsZXJ0LWNvbG9yLXNjYWxlKSk7XG4gIH1cbiAgLmFsZXJ0LSN7JHN0YXRlfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtYmFja2dyb3VuZCwgJGFsZXJ0LWJvcmRlciwgJGFsZXJ0LWNvbG9yKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG4ubGlzdC1ncm91cC1udW1iZXJlZCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgY291bnRlci1yZXNldDogc2VjdGlvbjtcblxuICA+IGxpOjpiZWZvcmUge1xuICAgIC8vIEluY3JlbWVudHMgb25seSB0aGlzIGluc3RhbmNlIG9mIHRoZSBzZWN0aW9uIGNvdW50ZXJcbiAgICBjb250ZW50OiBjb3VudGVycyhzZWN0aW9uLCBcIi5cIikgXCIuIFwiO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBzZWN0aW9uO1xuICB9XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkc3RhdGUsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgJGxpc3QtZ3JvdXAtYmFja2dyb3VuZDogc2hpZnQtY29sb3IoJHZhbHVlLCAkbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlKTtcbiAgJGxpc3QtZ3JvdXAtY29sb3I6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZSk7XG4gIEBpZiAoY29udHJhc3QtcmF0aW8oJGxpc3QtZ3JvdXAtYmFja2dyb3VuZCwgJGxpc3QtZ3JvdXAtY29sb3IpIDwgJG1pbi1jb250cmFzdC1yYXRpbykge1xuICAgICRsaXN0LWdyb3VwLWNvbG9yOiBtaXgoJHZhbHVlLCBjb2xvci1jb250cmFzdCgkbGlzdC1ncm91cC1iYWNrZ3JvdW5kKSwgYWJzKCRhbGVydC1jb2xvci1zY2FsZSkpO1xuICB9XG5cbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkbGlzdC1ncm91cC1iYWNrZ3JvdW5kLCAkbGlzdC1ncm91cC1jb2xvcik7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4iLCIvLyB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi5idG4tY2xvc2Uge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6ICRidG4tY2xvc2Utd2lkdGg7XG4gIGhlaWdodDogJGJ0bi1jbG9zZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRidG4tY2xvc2UtcGFkZGluZy15ICRidG4tY2xvc2UtcGFkZGluZy14O1xuICBjb2xvcjogJGJ0bi1jbG9zZS1jb2xvcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgZXNjYXBlLXN2ZygkYnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcbiAgYm9yZGVyOiAwOyAvLyBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbiAgb3BhY2l0eTogJGJ0bi1jbG9zZS1vcGFjaXR5O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYnRuLWNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAkYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tY2xvc2UtZm9jdXMtc2hhZG93O1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTtcbiAgfVxufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgZmlsdGVyOiAkYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjtcbn1cbiIsIi50b2FzdCB7XG4gIHdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xuXG4gICY6bm90KC5zaG93aW5nKTpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1jb250YWluZXIge1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHRvYXN0LXNwYWNpbmc7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b2FzdC1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoc3VidHJhY3QoJHRvYXN0LWJvcmRlci1yYWRpdXMsICR0b2FzdC1ib3JkZXItd2lkdGgpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICR0b2FzdC1wYWRkaW5nLXggLyAtMjtcbiAgICBtYXJnaW4tbGVmdDogJHRvYXN0LXBhZGRpbmcteDtcbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXg7IC8vIGFwcGx5IHRvIGJvdGggdmVydGljYWwgYW5kIGhvcml6b250YWxcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBoZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgLyAyKSAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggLyAyKTtcbiAgICBtYXJnaW46ICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAvIC0yKSAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggLyAtMikgKCRtb2RhbC1oZWFkZXItcGFkZGluZy15IC8gLTIpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1tZDtcbiAgICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogJG1vZGFsLWxnO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHsgbWF4LXdpZHRoOiAkbW9kYWwteGw7IH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXCJcIiwgJGluZml4ICsgXCItZG93blwiLCBcIlwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtZW5kIHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAtMXB4O1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1zdGFydCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLTFweDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtc3RhcnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMCAje1wiLyogcnRsOmlnbm9yZSAqL1wifTtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1lbmQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoIC8gMjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItc3RhcnQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXN0YXJ0O1xuICB9XG59XG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgc2hhZGUtY29sb3IoJHBvcG92ZXItaGVhZGVyLWJnLCAxMCUpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8qIHJ0bDpvcHRpb25zOiB7XG4gIFwiYXV0b1JlbmFtZVwiOiB0cnVlLFxuICBcInN0cmluZ01hcFwiOlsge1xuICAgIFwibmFtZVwiICAgIDogXCJwcmV2LW5leHRcIixcbiAgICBcInNlYXJjaFwiICA6IFwicHJldlwiLFxuICAgIFwicmVwbGFjZVwiIDogXCJuZXh0XCJcbiAgfSBdXG59ICovXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzL2NvbnRyb2xzXG4vL1xuLy8gQWRkIGEgY29udGFpbmVyIChzdWNoIGFzIGEgbGlzdCkgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYW4gaXRlbSAoaWRlYWxseSBhIGZvY3VzYWJsZSBjb250cm9sLFxuLy8gbGlrZSBhIGJ1dHRvbikgd2l0aCBkYXRhLWJzLXRhcmdldCBmb3IgZWFjaCBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAwO1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5O1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgcGFkZGluZy10b3A6ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8vIERhcmsgbW9kZSBjYXJvdXNlbFxuXG4uY2Fyb3VzZWwtZGFyayB7XG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgICBmaWx0ZXI6ICRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI7XG4gIH1cblxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICB9XG5cbiAgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ib3JkZXIta2V5ZnJhbWVzXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpICN7XCIvKiBydGw6aWdub3JlICovXCJ9OyB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLWtleWZyYW1lc1xuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAkc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgbGluZWFyIGluZmluaXRlIHNwaW5uZXItYm9yZGVyO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcblxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246ICRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZCBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cblxuQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5zcGlubmVyLWJvcmRlcixcbiAgICAuc3Bpbm5lci1ncm93IHtcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkICogMjtcbiAgICB9XG4gIH1cbn1cbiIsIi5vZmZjYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogJHppbmRleC1vZmZjYW52YXM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgY29sb3I6ICRvZmZjYW52YXMtY29sb3I7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG9mZmNhbnZhcy1iZy1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgb3V0bGluZTogMDtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkb2ZmY2FudmFzLWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQpO1xufVxuXG4ub2ZmY2FudmFzLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogJG9mZmNhbnZhcy1wYWRkaW5nLXkgJG9mZmNhbnZhcy1wYWRkaW5nLXg7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogKCRvZmZjYW52YXMtcGFkZGluZy15IC8gMikgKCRvZmZjYW52YXMtcGFkZGluZy14IC8gMik7XG4gICAgbWFyZ2luOiAoJG9mZmNhbnZhcy1wYWRkaW5nLXkgLyAtMikgKCRvZmZjYW52YXMtcGFkZGluZy14IC8gLTIpICgkb2ZmY2FudmFzLXBhZGRpbmcteSAvIC0yKSBhdXRvO1xuICB9XG59XG5cbi5vZmZjYW52YXMtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiAkb2ZmY2FudmFzLXBhZGRpbmcteSAkb2ZmY2FudmFzLXBhZGRpbmcteDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm9mZmNhbnZhcy1zdGFydCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6ICRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aDtcbiAgYm9yZGVyLXJpZ2h0OiAkb2ZmY2FudmFzLWJvcmRlci13aWR0aCBzb2xpZCAkb2ZmY2FudmFzLWJvcmRlci1jb2xvcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLm9mZmNhbnZhcy1lbmQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogJG9mZmNhbnZhcy1ob3Jpem9udGFsLXdpZHRoO1xuICBib3JkZXItbGVmdDogJG9mZmNhbnZhcy1ib3JkZXItd2lkdGggc29saWQgJG9mZmNhbnZhcy1ib3JkZXItY29sb3I7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLm9mZmNhbnZhcy1ib3R0b20ge1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAkb2ZmY2FudmFzLXZlcnRpY2FsLWhlaWdodDtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXRvcDogJG9mZmNhbnZhcy1ib3JkZXItd2lkdGggc29saWQgJG9mZmNhbnZhcy1ib3JkZXItY29sb3I7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbn1cblxuLm9mZmNhbnZhcy5zaG93IHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4ub2ZmY2FudmFzLWJhY2tkcm9wOjpiZWZvcmUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1vZmZjYW52YXMgLSAxO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRvZmZjYW52YXMtYm9keS1iYWNrZHJvcC1jb2xvcjtcbn1cbiIsIkBpbXBvcnQgXCJoZWxwZXJzL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwiaGVscGVycy9jb2xvcmVkLWxpbmtzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9yYXRpb1wiO1xuQGltcG9ydCBcImhlbHBlcnMvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3Zpc3VhbGx5LWhpZGRlblwiO1xuQGltcG9ydCBcImhlbHBlcnMvc3RyZXRjaGVkLWxpbmtcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3RleHQtdHJ1bmNhdGlvblwiO1xuIiwiLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cbiIsIkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAubGluay0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiAkdmFsdWU7XG5cbiAgICBAaWYgJGxpbmstc2hhZGUtcGVyY2VudGFnZSAhPSAwIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGlmKGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpLCB0aW50LWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWFzcGVjdC1yYXRpbyk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AZWFjaCAka2V5LCAkcmF0aW8gaW4gJGFzcGVjdC1yYXRpb3Mge1xuICAucmF0aW8tI3ska2V5fSB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9YXNwZWN0LXJhdGlvOiAjeyRyYXRpb307XG4gIH1cbn1cbiIsIi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4vLyBSZXNwb25zaXZlIHN0aWNreSB0b3BcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5zdGlja3kjeyRpbmZpeH0tdG9wIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6I3skc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnR9IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBUZXh0IHRydW5jYXRpb25cbi8vXG5cbi50ZXh0LXRydW5jYXRlIHtcbiAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xufVxuIiwiLy8gTG9vcCBvdmVyIGVhY2ggYnJlYWtwb2ludFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcblxuICAvLyBHZW5lcmF0ZSBtZWRpYSBxdWVyeSBpZiBuZWVkZWRcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJGUyByZXNjYWxpbmdcbkBtZWRpYSAobWluLXdpZHRoOiAkcmZzLW1xLXZhbHVlKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAaWYgKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSA8ICRyZnMtYnJlYWtwb2ludCkge1xuICAgICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgLy8gVGhlbiBjaGVjayBpZiB0aGUgdXRpbGl0eSBuZWVkcyBwcmludCBzdHlsZXNcbiAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcHJpbnQpID09IHRydWUge1xuICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgXCItcHJpbnRcIik7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFDQUE7Ozs7O0dBS0c7QURNSCxPQUFPLENBQUMsNEZBQUk7QThCWFosQUFBQSxLQUFLLENBQUM7RUFHRixTQUE4QixDQUFFLFFBQUM7RUFBakMsV0FBOEIsQ0FBRSxRQUFDO0VBQWpDLFdBQThCLENBQUUsUUFBQztFQUFqQyxTQUE4QixDQUFFLFFBQUM7RUFBakMsUUFBOEIsQ0FBRSxRQUFDO0VBQWpDLFdBQThCLENBQUUsUUFBQztFQUFqQyxXQUE4QixDQUFFLFFBQUM7RUFBakMsVUFBOEIsQ0FBRSxRQUFDO0VBQWpDLFNBQThCLENB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 */