@charset "UTF-8";
/*!
 * Bootstrap v5.0.2 (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)
 */
:root {
    --primary: #79aec8;
    --secondary: #417690;
    --accent: #f5dd5d;
    --primary-fg: #fff;

    --body-fg: #333;
    --body-bg: #fff;
    --body-quiet-color: #666;
    --body-loud-color: #000;

    --header-color: #ffc;
    --header-branding-color: var(--accent);
    --header-bg: var(--secondary);
    --header-link-color: var(--primary-fg);

    --breadcrumbs-fg: #c4dce8;
    --breadcrumbs-link-fg: var(--body-bg);
    --breadcrumbs-bg: var(--primary);

    --link-fg: #447e9b;
    --link-hover-color: #036;
    --link-selected-fg: #5b80b2;

    --hairline-color: #e8e8e8;
    --border-color: #ccc;

    --error-fg: #ba2121;

    --message-success-bg: #dfd;
    --message-warning-bg: #ffc;
    --message-error-bg: #ffefef;

    --darkened-bg: #f8f8f8; /* A bit darker than --body-bg */
    --selected-bg: #e4e4e4; /* E.g. selected table cells */
    --selected-row: #ffc;

    --button-fg: #fff;
    --button-bg: var(--primary);
    --button-hover-bg: #609ab6;
    --default-button-bg: var(--secondary);
    --default-button-hover-bg: #205067;
    --close-button-bg: #888; /* Previously #bbb, contrast 1.92 */
    --close-button-hover-bg: #747474;
    --delete-button-bg: #ba2121;
    --delete-button-hover-bg: #a41515;

    --object-tools-fg: var(--button-fg);
    --object-tools-bg: var(--close-button-bg);
    --object-tools-hover-bg: var(--close-button-hover-bg);


    --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-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-primary-rgb: 13, 110, 253;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-success-rgb: 25, 135, 84;
    --bs-info-rgb: 13, 202, 240;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg-rgb: 241, 241, 241;
    --bs-font-sans-serif: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --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));
    --bs-root-font-size: 13px;
    --bs-body-font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif;
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #212529;
    --bs-body-bg: #f1f1f1;
}

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

:root {
    font-size: var(--bs-root-font-size);
}

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

body {
    margin: 0;
    font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    text-align: var(--bs-body-text-align);
    background-color: var(--bs-body-bg);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}


.paas_backdrop {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9989;
    text-align: center;
    overflow: hidden;
    cursor: wait;
    background: rgba(0, 0, 0, 0.7);
}

.paas_loading_container {
    transform: translateZ(0);
    backface-visibility: hidden;
}

.paas_spinner {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    color: #ffffff;
    size: 20px;
}

.select2-container {
    max-width: 500px;
}


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

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

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

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

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

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

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

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

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

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

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

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

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

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

abbr[title],
abbr[data-bs-original-title] {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    -webkit-text-decoration-skip-ink: none;
    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: 0.5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small, .timezonewarning, .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: -0.25em;
}

sup {
    top: -0.5em;
}

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

a:hover {
    color: #0a5082;
}

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;
}

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

::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: 1rem;
}

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

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

.blockquote-footer::before {
    content: "— ";
}

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

.img-thumbnail {
    padding: 0.25rem;
    background-color: #f1f1f1;
    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-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
    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-sm, .container {
        max-width: 540px;
    }
}

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

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

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

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

.row {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
}

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

.col {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
}

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

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

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

.row-cols-3 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.3333333333%;
}

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

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

.row-cols-6 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 16.6666666667%;
}

.col-auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
}

.col-1 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 8.33333333%;
}

.col-2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 16.66666667%;
}

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

.col-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.33333333%;
}

.col-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 41.66666667%;
}

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

.col-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 58.33333333%;
}

.col-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 66.66666667%;
}

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

.col-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 83.33333333%;
}

.col-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 91.66666667%;
}

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

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

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

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

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

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

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

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

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

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

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

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

.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 {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-sm-auto > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

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

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

    .row-cols-sm-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

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

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

    .row-cols-sm-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-sm-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-sm-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-sm-2, fieldset .form-row:not(.form-group):not(tr) > label:not(.form-control-label) {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-sm-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-sm-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-sm-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-sm-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-sm-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-sm-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-sm-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-sm-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-sm-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-sm-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-sm-0 {
        margin-left: 0;
    }

    .offset-sm-1 {
        margin-left: 8.33333333%;
    }

    .offset-sm-2 {
        margin-left: 16.66666667%;
    }

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

    .offset-sm-4 {
        margin-left: 33.33333333%;
    }

    .offset-sm-5 {
        margin-left: 41.66666667%;
    }

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

    .offset-sm-7 {
        margin-left: 58.33333333%;
    }

    .offset-sm-8 {
        margin-left: 66.66666667%;
    }

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

    .offset-sm-10 {
        margin-left: 83.33333333%;
    }

    .offset-sm-11 {
        margin-left: 91.66666667%;
    }

    .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 {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-md-auto > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

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

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

    .row-cols-md-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

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

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

    .row-cols-md-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-md-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-md-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-md-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-md-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-md-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-md-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-md-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-md-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-md-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-md-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-md-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-md-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-md-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-md-0 {
        margin-left: 0;
    }

    .offset-md-1 {
        margin-left: 8.33333333%;
    }

    .offset-md-2 {
        margin-left: 16.66666667%;
    }

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

    .offset-md-4 {
        margin-left: 33.33333333%;
    }

    .offset-md-5 {
        margin-left: 41.66666667%;
    }

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

    .offset-md-7 {
        margin-left: 58.33333333%;
    }

    .offset-md-8 {
        margin-left: 66.66666667%;
    }

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

    .offset-md-10 {
        margin-left: 83.33333333%;
    }

    .offset-md-11 {
        margin-left: 91.66666667%;
    }

    .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 {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-lg-auto > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

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

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

    .row-cols-lg-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

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

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

    .row-cols-lg-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-lg-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-lg-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-lg-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-lg-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-lg-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-lg-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-lg-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-lg-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-lg-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-lg-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-lg-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-lg-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-lg-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-lg-0 {
        margin-left: 0;
    }

    .offset-lg-1 {
        margin-left: 8.33333333%;
    }

    .offset-lg-2 {
        margin-left: 16.66666667%;
    }

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

    .offset-lg-4 {
        margin-left: 33.33333333%;
    }

    .offset-lg-5 {
        margin-left: 41.66666667%;
    }

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

    .offset-lg-7 {
        margin-left: 58.33333333%;
    }

    .offset-lg-8 {
        margin-left: 66.66666667%;
    }

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

    .offset-lg-10 {
        margin-left: 83.33333333%;
    }

    .offset-lg-11 {
        margin-left: 91.66666667%;
    }

    .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 {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-xl-auto > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

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

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

    .row-cols-xl-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

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

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

    .row-cols-xl-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-xl-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-xl-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xl-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xl-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xl-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xl-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xl-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xl-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xl-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xl-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xl-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xl-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xl-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xl-0 {
        margin-left: 0;
    }

    .offset-xl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xl-2 {
        margin-left: 16.66666667%;
    }

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

    .offset-xl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xl-5 {
        margin-left: 41.66666667%;
    }

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

    .offset-xl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xl-8 {
        margin-left: 66.66666667%;
    }

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

    .offset-xl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xl-11 {
        margin-left: 91.66666667%;
    }

    .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 {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-xxl-auto > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

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

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

    .row-cols-xxl-3 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

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

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

    .row-cols-xxl-6 > * {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-xxl-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-xxl-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xxl-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xxl-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xxl-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xxl-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xxl-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xxl-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xxl-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xxl-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xxl-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xxl-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xxl-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xxl-0 {
        margin-left: 0;
    }

    .offset-xxl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xxl-2 {
        margin-left: 16.66666667%;
    }

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

    .offset-xxl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xxl-5 {
        margin-left: 41.66666667%;
    }

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

    .offset-xxl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xxl-8 {
        margin-left: 66.66666667%;
    }

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

    .offset-xxl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xxl-11 {
        margin-left: 91.66666667%;
    }

    .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, table#change-history, .tabular table {
    --bs-table-bg: transparent;
    --bs-table-accent-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) > * > *, table#change-history > :not(caption) > * > *, .tabular table > :not(caption) > * > * {
    padding: 0.5rem 0.5rem;
    background-color: var(--bs-table-bg);
    border-bottom-width: 1px;
    -webkit-box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
    box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}

.table > tbody, table#change-history > tbody, .tabular table > tbody {
    vertical-align: inherit;
}

.table > thead, table#change-history > thead, .tabular table > thead {
    vertical-align: bottom;
}

.table > :not(:first-child), table#change-history > :not(:first-child), .tabular table > :not(:first-child) {
    border-top: 2px solid 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-borderless > :not(:first-child) {
    border-top-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.35rem + 1px);
    padding-bottom: calc(0.35rem + 1px);
    font-size: 0.875rem;
}

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

.form-control, #changelist #changelist-form .actions select, #changelist #toolbar #changelist-search input[type=text], .selector .selector-available select, .selector .selector-chosen select, fieldset input[type=text],
fieldset input[type=url],
fieldset input[type=email],
fieldset input[type=number],
fieldset input[type=password],
fieldset input[type=date],
fieldset input[type=tel],
fieldset .vTextField,
fieldset .vURLField,
fieldset .vLargeTextField,
fieldset .vTimeField,
fieldset .vDateField {
    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;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0.25rem;
    -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control, #changelist #changelist-form .actions select, #changelist #toolbar #changelist-search input[type=text], .selector .selector-available select, .selector .selector-chosen select, fieldset input[type=text],
    fieldset input[type=url],
    fieldset input[type=email],
    fieldset input[type=number],
    fieldset input[type=password],
    fieldset input[type=date],
    fieldset input[type=tel],
    fieldset .vTextField,
    fieldset .vURLField,
    fieldset .vLargeTextField,
    fieldset .vTimeField,
    fieldset .vDateField {
        -webkit-transition: none;
        transition: none;
    }
}

.form-control[type=file], #changelist #changelist-form .actions select[type=file], #changelist #toolbar #changelist-search input[type=file][type=text], .selector .selector-available select[type=file], .selector .selector-chosen select[type=file], fieldset input[type=file][type=text],
fieldset input[type=file][type=url],
fieldset input[type=file][type=email],
fieldset input[type=file][type=number],
fieldset input[type=file][type=password],
fieldset input[type=file][type=date],
fieldset input[type=file][type=tel],
fieldset [type=file].vTextField,
fieldset [type=file].vURLField,
fieldset [type=file].vLargeTextField,
fieldset [type=file].vTimeField,
fieldset [type=file].vDateField {
    overflow: hidden;
}

.form-control[type=file]:not(:disabled):not([readonly]), #changelist #changelist-form .actions select[type=file]:not(:disabled):not([readonly]), #changelist #toolbar #changelist-search input[type=file][type=text]:not(:disabled):not([readonly]), .selector .selector-available select[type=file]:not(:disabled):not([readonly]), .selector .selector-chosen select[type=file]:not(:disabled):not([readonly]), fieldset input[type=file][type=text]:not(:disabled):not([readonly]),
fieldset input[type=file][type=url]:not(:disabled):not([readonly]),
fieldset input[type=file][type=email]:not(:disabled):not([readonly]),
fieldset input[type=file][type=number]:not(:disabled):not([readonly]),
fieldset input[type=file][type=password]:not(:disabled):not([readonly]),
fieldset input[type=file][type=date]:not(:disabled):not([readonly]),
fieldset input[type=file][type=tel]:not(:disabled):not([readonly]),
fieldset [type=file].vTextField:not(:disabled):not([readonly]),
fieldset [type=file].vURLField:not(:disabled):not([readonly]),
fieldset [type=file].vLargeTextField:not(:disabled):not([readonly]),
fieldset [type=file].vTimeField:not(:disabled):not([readonly]),
fieldset [type=file].vDateField:not(:disabled):not([readonly]) {
    cursor: pointer;
}

.form-control:focus, #changelist #changelist-form .actions select:focus, #changelist #toolbar #changelist-search input[type=text]:focus, .selector .selector-available select:focus, .selector .selector-chosen select:focus, fieldset input[type=text]:focus,
fieldset input[type=url]:focus,
fieldset input[type=email]:focus,
fieldset input[type=number]:focus,
fieldset input[type=password]:focus,
fieldset input[type=date]:focus,
fieldset input[type=tel]:focus,
fieldset .vTextField:focus,
fieldset .vURLField:focus,
fieldset .vLargeTextField:focus,
fieldset .vTimeField:focus,
fieldset .vDateField:focus {
    color: #212529;
    background-color: #fff;
    border-color: #86b7fe;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-control::-webkit-date-and-time-value, #changelist #changelist-form .actions select::-webkit-date-and-time-value, #changelist #toolbar #changelist-search input[type=text]::-webkit-date-and-time-value, .selector .selector-available select::-webkit-date-and-time-value, .selector .selector-chosen select::-webkit-date-and-time-value, fieldset input[type=text]::-webkit-date-and-time-value,
fieldset input[type=url]::-webkit-date-and-time-value,
fieldset input[type=email]::-webkit-date-and-time-value,
fieldset input[type=number]::-webkit-date-and-time-value,
fieldset input[type=password]::-webkit-date-and-time-value,
fieldset input[type=date]::-webkit-date-and-time-value,
fieldset input[type=tel]::-webkit-date-and-time-value,
fieldset .vTextField::-webkit-date-and-time-value,
fieldset .vURLField::-webkit-date-and-time-value,
fieldset .vLargeTextField::-webkit-date-and-time-value,
fieldset .vTimeField::-webkit-date-and-time-value,
fieldset .vDateField::-webkit-date-and-time-value {
    height: 1.5em;
}

.form-control::-webkit-input-placeholder, #changelist #changelist-form .actions select::-webkit-input-placeholder, #changelist #toolbar #changelist-search input[type=text]::-webkit-input-placeholder, .selector .selector-available select::-webkit-input-placeholder, .selector .selector-chosen select::-webkit-input-placeholder, fieldset input[type=text]::-webkit-input-placeholder, fieldset input[type=url]::-webkit-input-placeholder, fieldset input[type=email]::-webkit-input-placeholder, fieldset input[type=number]::-webkit-input-placeholder, fieldset input[type=password]::-webkit-input-placeholder, fieldset input[type=date]::-webkit-input-placeholder, fieldset input[type=tel]::-webkit-input-placeholder, fieldset .vTextField::-webkit-input-placeholder, fieldset .vURLField::-webkit-input-placeholder, fieldset .vLargeTextField::-webkit-input-placeholder, fieldset .vTimeField::-webkit-input-placeholder, fieldset .vDateField::-webkit-input-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control::-moz-placeholder, #changelist #changelist-form .actions select::-moz-placeholder, #changelist #toolbar #changelist-search input[type=text]::-moz-placeholder, .selector .selector-available select::-moz-placeholder, .selector .selector-chosen select::-moz-placeholder, fieldset input[type=text]::-moz-placeholder, fieldset input[type=url]::-moz-placeholder, fieldset input[type=email]::-moz-placeholder, fieldset input[type=number]::-moz-placeholder, fieldset input[type=password]::-moz-placeholder, fieldset input[type=date]::-moz-placeholder, fieldset input[type=tel]::-moz-placeholder, fieldset .vTextField::-moz-placeholder, fieldset .vURLField::-moz-placeholder, fieldset .vLargeTextField::-moz-placeholder, fieldset .vTimeField::-moz-placeholder, fieldset .vDateField::-moz-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control:-ms-input-placeholder, #changelist #changelist-form .actions select:-ms-input-placeholder, #changelist #toolbar #changelist-search input[type=text]:-ms-input-placeholder, .selector .selector-available select:-ms-input-placeholder, .selector .selector-chosen select:-ms-input-placeholder, fieldset input[type=text]:-ms-input-placeholder, fieldset input[type=url]:-ms-input-placeholder, fieldset input[type=email]:-ms-input-placeholder, fieldset input[type=number]:-ms-input-placeholder, fieldset input[type=password]:-ms-input-placeholder, fieldset input[type=date]:-ms-input-placeholder, fieldset input[type=tel]:-ms-input-placeholder, fieldset .vTextField:-ms-input-placeholder, fieldset .vURLField:-ms-input-placeholder, fieldset .vLargeTextField:-ms-input-placeholder, fieldset .vTimeField:-ms-input-placeholder, fieldset .vDateField:-ms-input-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control::-ms-input-placeholder, #changelist #changelist-form .actions select::-ms-input-placeholder, #changelist #toolbar #changelist-search input[type=text]::-ms-input-placeholder, .selector .selector-available select::-ms-input-placeholder, .selector .selector-chosen select::-ms-input-placeholder, fieldset input[type=text]::-ms-input-placeholder, fieldset input[type=url]::-ms-input-placeholder, fieldset input[type=email]::-ms-input-placeholder, fieldset input[type=number]::-ms-input-placeholder, fieldset input[type=password]::-ms-input-placeholder, fieldset input[type=date]::-ms-input-placeholder, fieldset input[type=tel]::-ms-input-placeholder, fieldset .vTextField::-ms-input-placeholder, fieldset .vURLField::-ms-input-placeholder, fieldset .vLargeTextField::-ms-input-placeholder, fieldset .vTimeField::-ms-input-placeholder, fieldset .vDateField::-ms-input-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control::placeholder, #changelist #changelist-form .actions select::placeholder, #changelist #toolbar #changelist-search input[type=text]::placeholder, .selector .selector-available select::placeholder, .selector .selector-chosen select::placeholder, fieldset input[type=text]::placeholder,
fieldset input[type=url]::placeholder,
fieldset input[type=email]::placeholder,
fieldset input[type=number]::placeholder,
fieldset input[type=password]::placeholder,
fieldset input[type=date]::placeholder,
fieldset input[type=tel]::placeholder,
fieldset .vTextField::placeholder,
fieldset .vURLField::placeholder,
fieldset .vLargeTextField::placeholder,
fieldset .vTimeField::placeholder,
fieldset .vDateField::placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control:disabled, #changelist #changelist-form .actions select:disabled, #changelist #toolbar #changelist-search input[type=text]:disabled, .selector .selector-available select:disabled, .selector .selector-chosen select:disabled, fieldset input[type=text]:disabled,
fieldset input[type=url]:disabled,
fieldset input[type=email]:disabled,
fieldset input[type=number]:disabled,
fieldset input[type=password]:disabled,
fieldset input[type=date]:disabled,
fieldset input[type=tel]:disabled,
fieldset .vTextField:disabled,
fieldset .vURLField:disabled,
fieldset .vLargeTextField:disabled,
fieldset .vTimeField:disabled,
fieldset .vDateField:disabled, .form-control[readonly], #changelist #changelist-form .actions select[readonly], #changelist #toolbar #changelist-search input[readonly][type=text], .selector .selector-available select[readonly], .selector .selector-chosen select[readonly], fieldset input[readonly][type=text],
fieldset input[readonly][type=url],
fieldset input[readonly][type=email],
fieldset input[readonly][type=number],
fieldset input[readonly][type=password],
fieldset input[readonly][type=date],
fieldset input[readonly][type=tel],
fieldset [readonly].vTextField,
fieldset [readonly].vURLField,
fieldset [readonly].vLargeTextField,
fieldset [readonly].vTimeField,
fieldset [readonly].vDateField {
    background-color: #e9ecef;
    opacity: 1;
}

.form-control::-webkit-file-upload-button, #changelist #changelist-form .actions select::-webkit-file-upload-button, #changelist #toolbar #changelist-search input[type=text]::-webkit-file-upload-button, .selector .selector-available select::-webkit-file-upload-button, .selector .selector-chosen select::-webkit-file-upload-button, fieldset input[type=text]::-webkit-file-upload-button, fieldset input[type=url]::-webkit-file-upload-button, fieldset input[type=email]::-webkit-file-upload-button, fieldset input[type=number]::-webkit-file-upload-button, fieldset input[type=password]::-webkit-file-upload-button, fieldset input[type=date]::-webkit-file-upload-button, fieldset input[type=tel]::-webkit-file-upload-button, fieldset .vTextField::-webkit-file-upload-button, fieldset .vURLField::-webkit-file-upload-button, fieldset .vLargeTextField::-webkit-file-upload-button, fieldset .vTimeField::-webkit-file-upload-button, fieldset .vDateField::-webkit-file-upload-button {
    padding: 0.375rem 0.75rem;
    margin: -0.375rem -0.75rem;
    -webkit-margin-end: 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;
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    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;
    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, -webkit-box-shadow 0.15s ease-in-out;
}

.form-control::file-selector-button, #changelist #changelist-form .actions select::file-selector-button, #changelist #toolbar #changelist-search input[type=text]::file-selector-button, .selector .selector-available select::file-selector-button, .selector .selector-chosen select::file-selector-button, fieldset input[type=text]::file-selector-button,
fieldset input[type=url]::file-selector-button,
fieldset input[type=email]::file-selector-button,
fieldset input[type=number]::file-selector-button,
fieldset input[type=password]::file-selector-button,
fieldset input[type=date]::file-selector-button,
fieldset input[type=tel]::file-selector-button,
fieldset .vTextField::file-selector-button,
fieldset .vURLField::file-selector-button,
fieldset .vLargeTextField::file-selector-button,
fieldset .vTimeField::file-selector-button,
fieldset .vDateField::file-selector-button {
    padding: 0.375rem 0.75rem;
    margin: -0.375rem -0.75rem;
    -webkit-margin-end: 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;
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    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;
    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, -webkit-box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control::-webkit-file-upload-button, #changelist #changelist-form .actions select::-webkit-file-upload-button, #changelist #toolbar #changelist-search input[type=text]::-webkit-file-upload-button, .selector .selector-available select::-webkit-file-upload-button, .selector .selector-chosen select::-webkit-file-upload-button, fieldset input[type=text]::-webkit-file-upload-button, fieldset input[type=url]::-webkit-file-upload-button, fieldset input[type=email]::-webkit-file-upload-button, fieldset input[type=number]::-webkit-file-upload-button, fieldset input[type=password]::-webkit-file-upload-button, fieldset input[type=date]::-webkit-file-upload-button, fieldset input[type=tel]::-webkit-file-upload-button, fieldset .vTextField::-webkit-file-upload-button, fieldset .vURLField::-webkit-file-upload-button, fieldset .vLargeTextField::-webkit-file-upload-button, fieldset .vTimeField::-webkit-file-upload-button, fieldset .vDateField::-webkit-file-upload-button {
        -webkit-transition: none;
        transition: none;
    }

    .form-control::file-selector-button, #changelist #changelist-form .actions select::file-selector-button, #changelist #toolbar #changelist-search input[type=text]::file-selector-button, .selector .selector-available select::file-selector-button, .selector .selector-chosen select::file-selector-button, fieldset input[type=text]::file-selector-button,
    fieldset input[type=url]::file-selector-button,
    fieldset input[type=email]::file-selector-button,
    fieldset input[type=number]::file-selector-button,
    fieldset input[type=password]::file-selector-button,
    fieldset input[type=date]::file-selector-button,
    fieldset input[type=tel]::file-selector-button,
    fieldset .vTextField::file-selector-button,
    fieldset .vURLField::file-selector-button,
    fieldset .vLargeTextField::file-selector-button,
    fieldset .vTimeField::file-selector-button,
    fieldset .vDateField::file-selector-button {
        -webkit-transition: none;
        transition: none;
    }
}

.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, #changelist #changelist-form .actions select:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, #changelist #toolbar #changelist-search input[type=text]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, .selector .selector-available select:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, .selector .selector-chosen select:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset input[type=text]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset input[type=url]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset input[type=email]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset input[type=number]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset input[type=password]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset input[type=date]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset input[type=tel]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset .vTextField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset .vURLField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset .vLargeTextField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset .vTimeField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset .vDateField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
    background-color: #dde0e3;
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button, #changelist #changelist-form .actions select:hover:not(:disabled):not([readonly])::file-selector-button, #changelist #toolbar #changelist-search input[type=text]:hover:not(:disabled):not([readonly])::file-selector-button, .selector .selector-available select:hover:not(:disabled):not([readonly])::file-selector-button, .selector .selector-chosen select:hover:not(:disabled):not([readonly])::file-selector-button, fieldset input[type=text]:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset input[type=url]:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset input[type=email]:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset input[type=number]:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset input[type=password]:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset input[type=date]:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset input[type=tel]:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset .vTextField:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset .vURLField:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset .vLargeTextField:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset .vTimeField:hover:not(:disabled):not([readonly])::file-selector-button,
fieldset .vDateField:hover:not(:disabled):not([readonly])::file-selector-button {
    background-color: #dde0e3;
}

.form-control::-webkit-file-upload-button, #changelist #changelist-form .actions select::-webkit-file-upload-button, #changelist #toolbar #changelist-search input[type=text]::-webkit-file-upload-button, .selector .selector-available select::-webkit-file-upload-button, .selector .selector-chosen select::-webkit-file-upload-button, fieldset input[type=text]::-webkit-file-upload-button,
fieldset input[type=url]::-webkit-file-upload-button,
fieldset input[type=email]::-webkit-file-upload-button,
fieldset input[type=number]::-webkit-file-upload-button,
fieldset input[type=password]::-webkit-file-upload-button,
fieldset input[type=date]::-webkit-file-upload-button,
fieldset input[type=tel]::-webkit-file-upload-button,
fieldset .vTextField::-webkit-file-upload-button,
fieldset .vURLField::-webkit-file-upload-button,
fieldset .vLargeTextField::-webkit-file-upload-button,
fieldset .vTimeField::-webkit-file-upload-button,
fieldset .vDateField::-webkit-file-upload-button {
    padding: 0.375rem 0.75rem;
    margin: -0.375rem -0.75rem;
    -webkit-margin-end: 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;
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    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;
    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, -webkit-box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control::-webkit-file-upload-button, #changelist #changelist-form .actions select::-webkit-file-upload-button, #changelist #toolbar #changelist-search input[type=text]::-webkit-file-upload-button, .selector .selector-available select::-webkit-file-upload-button, .selector .selector-chosen select::-webkit-file-upload-button, fieldset input[type=text]::-webkit-file-upload-button,
    fieldset input[type=url]::-webkit-file-upload-button,
    fieldset input[type=email]::-webkit-file-upload-button,
    fieldset input[type=number]::-webkit-file-upload-button,
    fieldset input[type=password]::-webkit-file-upload-button,
    fieldset input[type=date]::-webkit-file-upload-button,
    fieldset input[type=tel]::-webkit-file-upload-button,
    fieldset .vTextField::-webkit-file-upload-button,
    fieldset .vURLField::-webkit-file-upload-button,
    fieldset .vLargeTextField::-webkit-file-upload-button,
    fieldset .vTimeField::-webkit-file-upload-button,
    fieldset .vDateField::-webkit-file-upload-button {
        -webkit-transition: none;
        transition: none;
    }
}

.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, #changelist #changelist-form .actions select:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, #changelist #toolbar #changelist-search input[type=text]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, .selector .selector-available select:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, .selector .selector-chosen select:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, fieldset input[type=text]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset input[type=url]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset input[type=email]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset input[type=number]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset input[type=password]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset input[type=date]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset input[type=tel]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset .vTextField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset .vURLField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset .vLargeTextField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset .vTimeField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
fieldset .vDateField:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
    background-color: #dde0e3;
}

.form-control-plaintext, .inline-group .tabular table tbody td.original p {
    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, .inline-group .tabular table tbody td.original p.form-control-sm, .form-control-plaintext.form-control-lg, .inline-group .tabular table tbody td.original p.form-control-lg {
    padding-right: 0;
    padding-left: 0;
}

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

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

.form-control-sm::file-selector-button {
    padding: 0.35rem 0.75rem;
    margin: -0.35rem -0.75rem;
    -webkit-margin-end: 0.75rem;
    margin-inline-end: 0.75rem;
}

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

.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::-webkit-file-upload-button {
    padding: 0.5rem 1rem;
    margin: -0.5rem -1rem;
    -webkit-margin-end: 1rem;
    margin-inline-end: 1rem;
}

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

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

textarea.form-control,
fieldset textarea.vTextField,
fieldset textarea.vURLField,
fieldset textarea.vLargeTextField,
fieldset textarea.vTimeField,
fieldset textarea.vDateField {
    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 {
    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, fieldset select:not([multiple=multiple]) {
    display: block;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    -moz-padding-start: calc(0.75rem - 3px);
    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;
    -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-select, fieldset select:not([multiple=multiple]) {
        -webkit-transition: none;
        transition: none;
    }
}

.form-select:focus, fieldset select:focus:not([multiple=multiple]) {
    border-color: #86b7fe;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

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

.form-select:disabled, fieldset select:disabled:not([multiple=multiple]) {
    background-color: #e9ecef;
}

.form-select:-moz-focusring, fieldset select:-moz-focusring:not([multiple=multiple]) {
    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;
    border-radius: 0.2rem;
}

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

.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);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
}

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

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

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

.form-check-input:focus {
    border-color: #86b7fe;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    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;
    -webkit-filter: 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;
    -webkit-transition: background-position 0.15s ease-in-out;
    transition: background-position 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-switch .form-check-input {
        -webkit-transition: none;
        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, #changelist #changelist-form .paginator .btn-check[disabled] + input[type=submit], #changelist #changelist-form .actions .btn-check[disabled] + button, #changelist #toolbar #changelist-search .btn-check[disabled] + input[type=submit], body.login .submit-row .btn-check[disabled] + input[type=submit], #toolbar > .object-tools > li > .btn-check[disabled] + a:not([class*=btn-]), #content-main > .object-tools > li > .btn-check[disabled] + a:not([class*=btn-]), .submit-row .btn-check[disabled] + input[type=submit]:not([class*=btn-]), .submit-row .btn-check[disabled] + input[type=button]:not([class*=btn-]), .submit-row .btn-check[disabled] + button:not([class*=btn-]), .submit-row .deletelink-box .btn-check[disabled] + .deletelink, body.delete-confirmation .content-wrap .btn-check[disabled] + input[type=button], body.delete-confirmation .content-wrap .btn-check[disabled] + input[type=submit], body.delete-confirmation .content-wrap .btn-check[disabled] + button, .btn-check:disabled + .btn, #changelist #changelist-form .paginator .btn-check:disabled + input[type=submit], #changelist #changelist-form .actions .btn-check:disabled + button, #changelist #toolbar #changelist-search .btn-check:disabled + input[type=submit], body.login .submit-row .btn-check:disabled + input[type=submit], #toolbar > .object-tools > li > .btn-check:disabled + a:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:disabled + a:not([class*=btn-]), .submit-row .btn-check:disabled + input[type=submit]:not([class*=btn-]), .submit-row .btn-check:disabled + input[type=button]:not([class*=btn-]), .submit-row .btn-check:disabled + button:not([class*=btn-]), .submit-row .deletelink-box .btn-check:disabled + .deletelink, body.delete-confirmation .content-wrap .btn-check:disabled + input[type=button], body.delete-confirmation .content-wrap .btn-check:disabled + input[type=submit], body.delete-confirmation .content-wrap .btn-check:disabled + button {
    pointer-events: none;
    -webkit-filter: none;
    filter: none;
    opacity: 0.65;
}

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

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

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

.form-range:focus::-moz-range-thumb {
    box-shadow: 0 0 0 1px #f1f1f1, 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;
    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    -webkit-appearance: none;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-range::-webkit-slider-thumb {
        -webkit-transition: none;
        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;
    -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    -moz-appearance: none;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-range::-moz-range-thumb {
        -moz-transition: none;
        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, #changelist #changelist-form .actions .form-floating > select, #changelist #toolbar #changelist-search .form-floating > input[type=text], .selector .selector-available .form-floating > select, .selector .selector-chosen .form-floating > select, fieldset .form-floating > input[type=text],
fieldset .form-floating > input[type=url],
fieldset .form-floating > input[type=email],
fieldset .form-floating > input[type=number],
fieldset .form-floating > input[type=password],
fieldset .form-floating > input[type=date],
fieldset .form-floating > input[type=tel],
fieldset .form-floating > .vTextField,
fieldset .form-floating > .vURLField,
fieldset .form-floating > .vLargeTextField,
fieldset .form-floating > .vTimeField,
fieldset .form-floating > .vDateField,
.form-floating > .form-select,
fieldset .form-floating > select:not([multiple=multiple]) {
    height: calc(3.5rem + 2px);
    line-height: 1.25;
}

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

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

.form-floating > .form-control, #changelist #changelist-form .actions .form-floating > select, #changelist #toolbar #changelist-search .form-floating > input[type=text], .selector .selector-available .form-floating > select, .selector .selector-chosen .form-floating > select, fieldset .form-floating > input[type=text],
fieldset .form-floating > input[type=url],
fieldset .form-floating > input[type=email],
fieldset .form-floating > input[type=number],
fieldset .form-floating > input[type=password],
fieldset .form-floating > input[type=date],
fieldset .form-floating > input[type=tel],
fieldset .form-floating > .vTextField,
fieldset .form-floating > .vURLField,
fieldset .form-floating > .vLargeTextField,
fieldset .form-floating > .vTimeField,
fieldset .form-floating > .vDateField {
    padding: 1rem 0.75rem;
}

.form-floating > .form-control::-webkit-input-placeholder, #changelist #changelist-form .actions .form-floating > select::-webkit-input-placeholder, #changelist #toolbar #changelist-search .form-floating > input[type=text]::-webkit-input-placeholder, .selector .selector-available .form-floating > select::-webkit-input-placeholder, .selector .selector-chosen .form-floating > select::-webkit-input-placeholder, fieldset .form-floating > input[type=text]::-webkit-input-placeholder, fieldset .form-floating > input[type=url]::-webkit-input-placeholder, fieldset .form-floating > input[type=email]::-webkit-input-placeholder, fieldset .form-floating > input[type=number]::-webkit-input-placeholder, fieldset .form-floating > input[type=password]::-webkit-input-placeholder, fieldset .form-floating > input[type=date]::-webkit-input-placeholder, fieldset .form-floating > input[type=tel]::-webkit-input-placeholder, fieldset .form-floating > .vTextField::-webkit-input-placeholder, fieldset .form-floating > .vURLField::-webkit-input-placeholder, fieldset .form-floating > .vLargeTextField::-webkit-input-placeholder, fieldset .form-floating > .vTimeField::-webkit-input-placeholder, fieldset .form-floating > .vDateField::-webkit-input-placeholder {
    color: transparent;
}

.form-floating > .form-control::-moz-placeholder, #changelist #changelist-form .actions .form-floating > select::-moz-placeholder, #changelist #toolbar #changelist-search .form-floating > input[type=text]::-moz-placeholder, .selector .selector-available .form-floating > select::-moz-placeholder, .selector .selector-chosen .form-floating > select::-moz-placeholder, fieldset .form-floating > input[type=text]::-moz-placeholder, fieldset .form-floating > input[type=url]::-moz-placeholder, fieldset .form-floating > input[type=email]::-moz-placeholder, fieldset .form-floating > input[type=number]::-moz-placeholder, fieldset .form-floating > input[type=password]::-moz-placeholder, fieldset .form-floating > input[type=date]::-moz-placeholder, fieldset .form-floating > input[type=tel]::-moz-placeholder, fieldset .form-floating > .vTextField::-moz-placeholder, fieldset .form-floating > .vURLField::-moz-placeholder, fieldset .form-floating > .vLargeTextField::-moz-placeholder, fieldset .form-floating > .vTimeField::-moz-placeholder, fieldset .form-floating > .vDateField::-moz-placeholder {
    color: transparent;
}

.form-floating > .form-control:-ms-input-placeholder, #changelist #changelist-form .actions .form-floating > select:-ms-input-placeholder, #changelist #toolbar #changelist-search .form-floating > input[type=text]:-ms-input-placeholder, .selector .selector-available .form-floating > select:-ms-input-placeholder, .selector .selector-chosen .form-floating > select:-ms-input-placeholder, fieldset .form-floating > input[type=text]:-ms-input-placeholder, fieldset .form-floating > input[type=url]:-ms-input-placeholder, fieldset .form-floating > input[type=email]:-ms-input-placeholder, fieldset .form-floating > input[type=number]:-ms-input-placeholder, fieldset .form-floating > input[type=password]:-ms-input-placeholder, fieldset .form-floating > input[type=date]:-ms-input-placeholder, fieldset .form-floating > input[type=tel]:-ms-input-placeholder, fieldset .form-floating > .vTextField:-ms-input-placeholder, fieldset .form-floating > .vURLField:-ms-input-placeholder, fieldset .form-floating > .vLargeTextField:-ms-input-placeholder, fieldset .form-floating > .vTimeField:-ms-input-placeholder, fieldset .form-floating > .vDateField:-ms-input-placeholder {
    color: transparent;
}

.form-floating > .form-control::-ms-input-placeholder, #changelist #changelist-form .actions .form-floating > select::-ms-input-placeholder, #changelist #toolbar #changelist-search .form-floating > input[type=text]::-ms-input-placeholder, .selector .selector-available .form-floating > select::-ms-input-placeholder, .selector .selector-chosen .form-floating > select::-ms-input-placeholder, fieldset .form-floating > input[type=text]::-ms-input-placeholder, fieldset .form-floating > input[type=url]::-ms-input-placeholder, fieldset .form-floating > input[type=email]::-ms-input-placeholder, fieldset .form-floating > input[type=number]::-ms-input-placeholder, fieldset .form-floating > input[type=password]::-ms-input-placeholder, fieldset .form-floating > input[type=date]::-ms-input-placeholder, fieldset .form-floating > input[type=tel]::-ms-input-placeholder, fieldset .form-floating > .vTextField::-ms-input-placeholder, fieldset .form-floating > .vURLField::-ms-input-placeholder, fieldset .form-floating > .vLargeTextField::-ms-input-placeholder, fieldset .form-floating > .vTimeField::-ms-input-placeholder, fieldset .form-floating > .vDateField::-ms-input-placeholder {
    color: transparent;
}

.form-floating > .form-control::placeholder, #changelist #changelist-form .actions .form-floating > select::placeholder, #changelist #toolbar #changelist-search .form-floating > input[type=text]::placeholder, .selector .selector-available .form-floating > select::placeholder, .selector .selector-chosen .form-floating > select::placeholder, fieldset .form-floating > input[type=text]::placeholder,
fieldset .form-floating > input[type=url]::placeholder,
fieldset .form-floating > input[type=email]::placeholder,
fieldset .form-floating > input[type=number]::placeholder,
fieldset .form-floating > input[type=password]::placeholder,
fieldset .form-floating > input[type=date]::placeholder,
fieldset .form-floating > input[type=tel]::placeholder,
fieldset .form-floating > .vTextField::placeholder,
fieldset .form-floating > .vURLField::placeholder,
fieldset .form-floating > .vLargeTextField::placeholder,
fieldset .form-floating > .vTimeField::placeholder,
fieldset .form-floating > .vDateField::placeholder {
    color: transparent;
}

.form-floating > .form-control:not(:-moz-placeholder-shown), #changelist #changelist-form .actions .form-floating > select:not(:-moz-placeholder-shown), #changelist #toolbar #changelist-search .form-floating > input[type=text]:not(:-moz-placeholder-shown), .selector .selector-available .form-floating > select:not(:-moz-placeholder-shown), .selector .selector-chosen .form-floating > select:not(:-moz-placeholder-shown), fieldset .form-floating > input[type=text]:not(:-moz-placeholder-shown), fieldset .form-floating > input[type=url]:not(:-moz-placeholder-shown), fieldset .form-floating > input[type=email]:not(:-moz-placeholder-shown), fieldset .form-floating > input[type=number]:not(:-moz-placeholder-shown), fieldset .form-floating > input[type=password]:not(:-moz-placeholder-shown), fieldset .form-floating > input[type=date]:not(:-moz-placeholder-shown), fieldset .form-floating > input[type=tel]:not(:-moz-placeholder-shown), fieldset .form-floating > .vTextField:not(:-moz-placeholder-shown), fieldset .form-floating > .vURLField:not(:-moz-placeholder-shown), fieldset .form-floating > .vLargeTextField:not(:-moz-placeholder-shown), fieldset .form-floating > .vTimeField:not(:-moz-placeholder-shown), fieldset .form-floating > .vDateField:not(:-moz-placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating > .form-control:not(:-ms-input-placeholder), #changelist #changelist-form .actions .form-floating > select:not(:-ms-input-placeholder), #changelist #toolbar #changelist-search .form-floating > input[type=text]:not(:-ms-input-placeholder), .selector .selector-available .form-floating > select:not(:-ms-input-placeholder), .selector .selector-chosen .form-floating > select:not(:-ms-input-placeholder), fieldset .form-floating > input[type=text]:not(:-ms-input-placeholder), fieldset .form-floating > input[type=url]:not(:-ms-input-placeholder), fieldset .form-floating > input[type=email]:not(:-ms-input-placeholder), fieldset .form-floating > input[type=number]:not(:-ms-input-placeholder), fieldset .form-floating > input[type=password]:not(:-ms-input-placeholder), fieldset .form-floating > input[type=date]:not(:-ms-input-placeholder), fieldset .form-floating > input[type=tel]:not(:-ms-input-placeholder), fieldset .form-floating > .vTextField:not(:-ms-input-placeholder), fieldset .form-floating > .vURLField:not(:-ms-input-placeholder), fieldset .form-floating > .vLargeTextField:not(:-ms-input-placeholder), fieldset .form-floating > .vTimeField:not(:-ms-input-placeholder), fieldset .form-floating > .vDateField:not(:-ms-input-placeholder) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating > .form-control:focus, #changelist #changelist-form .actions .form-floating > select:focus, #changelist #toolbar #changelist-search .form-floating > input[type=text]:focus, .selector .selector-available .form-floating > select:focus, .selector .selector-chosen .form-floating > select:focus, fieldset .form-floating > input[type=text]:focus,
fieldset .form-floating > input[type=url]:focus,
fieldset .form-floating > input[type=email]:focus,
fieldset .form-floating > input[type=number]:focus,
fieldset .form-floating > input[type=password]:focus,
fieldset .form-floating > input[type=date]:focus,
fieldset .form-floating > input[type=tel]:focus,
fieldset .form-floating > .vTextField:focus,
fieldset .form-floating > .vURLField:focus,
fieldset .form-floating > .vLargeTextField:focus,
fieldset .form-floating > .vTimeField:focus,
fieldset .form-floating > .vDateField:focus, .form-floating > .form-control:not(:placeholder-shown), #changelist #changelist-form .actions .form-floating > select:not(:placeholder-shown), #changelist #toolbar #changelist-search .form-floating > input[type=text]:not(:placeholder-shown), .selector .selector-available .form-floating > select:not(:placeholder-shown), .selector .selector-chosen .form-floating > select:not(:placeholder-shown), fieldset .form-floating > input[type=text]:not(:placeholder-shown),
fieldset .form-floating > input[type=url]:not(:placeholder-shown),
fieldset .form-floating > input[type=email]:not(:placeholder-shown),
fieldset .form-floating > input[type=number]:not(:placeholder-shown),
fieldset .form-floating > input[type=password]:not(:placeholder-shown),
fieldset .form-floating > input[type=date]:not(:placeholder-shown),
fieldset .form-floating > input[type=tel]:not(:placeholder-shown),
fieldset .form-floating > .vTextField:not(:placeholder-shown),
fieldset .form-floating > .vURLField:not(:placeholder-shown),
fieldset .form-floating > .vLargeTextField:not(:placeholder-shown),
fieldset .form-floating > .vTimeField:not(:placeholder-shown),
fieldset .form-floating > .vDateField:not(:placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating > .form-control:-webkit-autofill, #changelist #changelist-form .actions .form-floating > select:-webkit-autofill, #changelist #toolbar #changelist-search .form-floating > input[type=text]:-webkit-autofill, .selector .selector-available .form-floating > select:-webkit-autofill, .selector .selector-chosen .form-floating > select:-webkit-autofill, fieldset .form-floating > input[type=text]:-webkit-autofill,
fieldset .form-floating > input[type=url]:-webkit-autofill,
fieldset .form-floating > input[type=email]:-webkit-autofill,
fieldset .form-floating > input[type=number]:-webkit-autofill,
fieldset .form-floating > input[type=password]:-webkit-autofill,
fieldset .form-floating > input[type=date]:-webkit-autofill,
fieldset .form-floating > input[type=tel]:-webkit-autofill,
fieldset .form-floating > .vTextField:-webkit-autofill,
fieldset .form-floating > .vURLField:-webkit-autofill,
fieldset .form-floating > .vLargeTextField:-webkit-autofill,
fieldset .form-floating > .vTimeField:-webkit-autofill,
fieldset .form-floating > .vDateField:-webkit-autofill {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating > .form-select, fieldset .form-floating > select:not([multiple=multiple]) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label, #changelist #changelist-form .actions .form-floating > select:not(:-moz-placeholder-shown) ~ label, #changelist #toolbar #changelist-search .form-floating > input[type=text]:not(:-moz-placeholder-shown) ~ label, .selector .selector-available .form-floating > select:not(:-moz-placeholder-shown) ~ label, .selector .selector-chosen .form-floating > select:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > input[type=text]:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > input[type=url]:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > input[type=email]:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > input[type=number]:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > input[type=password]:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > input[type=date]:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > input[type=tel]:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > .vTextField:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > .vURLField:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > .vLargeTextField:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > .vTimeField:not(:-moz-placeholder-shown) ~ label, fieldset .form-floating > .vDateField:not(:-moz-placeholder-shown) ~ label {
    opacity: 0.65;
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating > .form-control:not(:-ms-input-placeholder) ~ label, #changelist #changelist-form .actions .form-floating > select:not(:-ms-input-placeholder) ~ label, #changelist #toolbar #changelist-search .form-floating > input[type=text]:not(:-ms-input-placeholder) ~ label, .selector .selector-available .form-floating > select:not(:-ms-input-placeholder) ~ label, .selector .selector-chosen .form-floating > select:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > input[type=text]:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > input[type=url]:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > input[type=email]:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > input[type=number]:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > input[type=password]:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > input[type=date]:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > input[type=tel]:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > .vTextField:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > .vURLField:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > .vLargeTextField:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > .vTimeField:not(:-ms-input-placeholder) ~ label, fieldset .form-floating > .vDateField:not(:-ms-input-placeholder) ~ label {
    opacity: 0.65;
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating > .form-control:focus ~ label, #changelist #changelist-form .actions .form-floating > select:focus ~ label, #changelist #toolbar #changelist-search .form-floating > input[type=text]:focus ~ label, .selector .selector-available .form-floating > select:focus ~ label, .selector .selector-chosen .form-floating > select:focus ~ label, fieldset .form-floating > input[type=text]:focus ~ label,
fieldset .form-floating > input[type=url]:focus ~ label,
fieldset .form-floating > input[type=email]:focus ~ label,
fieldset .form-floating > input[type=number]:focus ~ label,
fieldset .form-floating > input[type=password]:focus ~ label,
fieldset .form-floating > input[type=date]:focus ~ label,
fieldset .form-floating > input[type=tel]:focus ~ label,
fieldset .form-floating > .vTextField:focus ~ label,
fieldset .form-floating > .vURLField:focus ~ label,
fieldset .form-floating > .vLargeTextField:focus ~ label,
fieldset .form-floating > .vTimeField:focus ~ label,
fieldset .form-floating > .vDateField:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
#changelist #changelist-form .actions .form-floating > select:not(:placeholder-shown) ~ label,
#changelist #toolbar #changelist-search .form-floating > input[type=text]:not(:placeholder-shown) ~ label,
.selector .selector-available .form-floating > select:not(:placeholder-shown) ~ label,
.selector .selector-chosen .form-floating > select:not(:placeholder-shown) ~ label,
fieldset .form-floating > input[type=text]:not(:placeholder-shown) ~ label,
fieldset .form-floating > input[type=url]:not(:placeholder-shown) ~ label,
fieldset .form-floating > input[type=email]:not(:placeholder-shown) ~ label,
fieldset .form-floating > input[type=number]:not(:placeholder-shown) ~ label,
fieldset .form-floating > input[type=password]:not(:placeholder-shown) ~ label,
fieldset .form-floating > input[type=date]:not(:placeholder-shown) ~ label,
fieldset .form-floating > input[type=tel]:not(:placeholder-shown) ~ label,
fieldset .form-floating > .vTextField:not(:placeholder-shown) ~ label,
fieldset .form-floating > .vURLField:not(:placeholder-shown) ~ label,
fieldset .form-floating > .vLargeTextField:not(:placeholder-shown) ~ label,
fieldset .form-floating > .vTimeField:not(:placeholder-shown) ~ label,
fieldset .form-floating > .vDateField:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label,
fieldset .form-floating > select:not([multiple=multiple]) ~ label {
    opacity: 0.65;
    -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating > .form-control:-webkit-autofill ~ label, #changelist #changelist-form .actions .form-floating > select:-webkit-autofill ~ label, #changelist #toolbar #changelist-search .form-floating > input[type=text]:-webkit-autofill ~ label, .selector .selector-available .form-floating > select:-webkit-autofill ~ label, .selector .selector-chosen .form-floating > select:-webkit-autofill ~ label, fieldset .form-floating > input[type=text]:-webkit-autofill ~ label,
fieldset .form-floating > input[type=url]:-webkit-autofill ~ label,
fieldset .form-floating > input[type=email]:-webkit-autofill ~ label,
fieldset .form-floating > input[type=number]:-webkit-autofill ~ label,
fieldset .form-floating > input[type=password]:-webkit-autofill ~ label,
fieldset .form-floating > input[type=date]:-webkit-autofill ~ label,
fieldset .form-floating > input[type=tel]:-webkit-autofill ~ label,
fieldset .form-floating > .vTextField:-webkit-autofill ~ label,
fieldset .form-floating > .vURLField:-webkit-autofill ~ label,
fieldset .form-floating > .vLargeTextField:-webkit-autofill ~ label,
fieldset .form-floating > .vTimeField:-webkit-autofill ~ label,
fieldset .form-floating > .vDateField:-webkit-autofill ~ label {
    opacity: 0.65;
    -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

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

.input-group > .form-control, #changelist #changelist-form .actions .input-group > select, #changelist #toolbar #changelist-search .input-group > input[type=text], .selector .selector-available .input-group > select, .selector .selector-chosen .input-group > select, fieldset .input-group > input[type=text],
fieldset .input-group > input[type=url],
fieldset .input-group > input[type=email],
fieldset .input-group > input[type=number],
fieldset .input-group > input[type=password],
fieldset .input-group > input[type=date],
fieldset .input-group > input[type=tel],
fieldset .input-group > .vTextField,
fieldset .input-group > .vURLField,
fieldset .input-group > .vLargeTextField,
fieldset .input-group > .vTimeField,
fieldset .input-group > .vDateField,
.input-group > .form-select,
fieldset .input-group > select:not([multiple=multiple]) {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}

.input-group > .form-control:focus, #changelist #changelist-form .actions .input-group > select:focus, #changelist #toolbar #changelist-search .input-group > input[type=text]:focus, .selector .selector-available .input-group > select:focus, .selector .selector-chosen .input-group > select:focus, fieldset .input-group > input[type=text]:focus,
fieldset .input-group > input[type=url]:focus,
fieldset .input-group > input[type=email]:focus,
fieldset .input-group > input[type=number]:focus,
fieldset .input-group > input[type=password]:focus,
fieldset .input-group > input[type=date]:focus,
fieldset .input-group > input[type=tel]:focus,
fieldset .input-group > .vTextField:focus,
fieldset .input-group > .vURLField:focus,
fieldset .input-group > .vLargeTextField:focus,
fieldset .input-group > .vTimeField:focus,
fieldset .input-group > .vDateField:focus,
.input-group > .form-select:focus,
fieldset .input-group > select:focus:not([multiple=multiple]) {
    z-index: 3;
}

.input-group .btn, .input-group #changelist #changelist-form .paginator input[type=submit], #changelist #changelist-form .paginator .input-group input[type=submit], .input-group #changelist #changelist-form .actions button, #changelist #changelist-form .actions .input-group button, .input-group #changelist #toolbar #changelist-search input[type=submit], #changelist #toolbar #changelist-search .input-group input[type=submit], .input-group body.login .submit-row input[type=submit], body.login .submit-row .input-group input[type=submit], .input-group #toolbar > .object-tools > li > a:not([class*=btn-]), .input-group #content-main > .object-tools > li > a:not([class*=btn-]), .input-group .submit-row input[type=submit]:not([class*=btn-]), .submit-row .input-group input[type=submit]:not([class*=btn-]), .input-group .submit-row input[type=button]:not([class*=btn-]), .submit-row .input-group input[type=button]:not([class*=btn-]), .input-group .submit-row button:not([class*=btn-]), .submit-row .input-group button:not([class*=btn-]), .input-group .submit-row .deletelink-box .deletelink, .submit-row .deletelink-box .input-group .deletelink, .input-group body.delete-confirmation .content-wrap input[type=button], body.delete-confirmation .content-wrap .input-group input[type=button], .input-group body.delete-confirmation .content-wrap input[type=submit], body.delete-confirmation .content-wrap .input-group input[type=submit], .input-group body.delete-confirmation .content-wrap button, body.delete-confirmation .content-wrap .input-group button {
    position: relative;
    z-index: 2;
}

.input-group .btn:focus, .input-group #changelist #changelist-form .paginator input[type=submit]:focus, #changelist #changelist-form .paginator .input-group input[type=submit]:focus, .input-group #changelist #changelist-form .actions button:focus, #changelist #changelist-form .actions .input-group button:focus, .input-group #changelist #toolbar #changelist-search input[type=submit]:focus, #changelist #toolbar #changelist-search .input-group input[type=submit]:focus, .input-group body.login .submit-row input[type=submit]:focus, body.login .submit-row .input-group input[type=submit]:focus, .input-group #toolbar > .object-tools > li > a:focus:not([class*=btn-]), .input-group #content-main > .object-tools > li > a:focus:not([class*=btn-]), .input-group .submit-row input[type=submit]:focus:not([class*=btn-]), .submit-row .input-group input[type=submit]:focus:not([class*=btn-]), .input-group .submit-row input[type=button]:focus:not([class*=btn-]), .submit-row .input-group input[type=button]:focus:not([class*=btn-]), .input-group .submit-row button:focus:not([class*=btn-]), .submit-row .input-group button:focus:not([class*=btn-]), .input-group .submit-row .deletelink-box .deletelink:focus, .submit-row .deletelink-box .input-group .deletelink:focus, .input-group body.delete-confirmation .content-wrap input[type=button]:focus, body.delete-confirmation .content-wrap .input-group input[type=button]:focus, .input-group body.delete-confirmation .content-wrap input[type=submit]:focus, body.delete-confirmation .content-wrap .input-group input[type=submit]:focus, .input-group body.delete-confirmation .content-wrap button:focus, body.delete-confirmation .content-wrap .input-group button:focus {
    z-index: 3;
}

.input-group-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    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, #changelist #changelist-form .actions .input-group-lg > select, #changelist #toolbar #changelist-search .input-group-lg > input[type=text], .selector .selector-available .input-group-lg > select, .selector .selector-chosen .input-group-lg > select, fieldset .input-group-lg > input[type=text],
fieldset .input-group-lg > input[type=url],
fieldset .input-group-lg > input[type=email],
fieldset .input-group-lg > input[type=number],
fieldset .input-group-lg > input[type=password],
fieldset .input-group-lg > input[type=date],
fieldset .input-group-lg > input[type=tel],
fieldset .input-group-lg > .vTextField,
fieldset .input-group-lg > .vURLField,
fieldset .input-group-lg > .vLargeTextField,
fieldset .input-group-lg > .vTimeField,
fieldset .input-group-lg > .vDateField,
.input-group-lg > .form-select,
fieldset .input-group-lg > select:not([multiple=multiple]),
.input-group-lg > .input-group-text,
.input-group-lg > .btn,
#changelist #changelist-form .paginator .input-group-lg > input[type=submit],
#changelist #changelist-form .actions .input-group-lg > button,
#changelist #toolbar #changelist-search .input-group-lg > input[type=submit],
body.login .submit-row .input-group-lg > input[type=submit],
#toolbar > .object-tools > li.input-group-lg > a:not([class*=btn-]),
#content-main > .object-tools > li.input-group-lg > a:not([class*=btn-]),
.submit-row .input-group-lg > input[type=submit]:not([class*=btn-]),
.submit-row .input-group-lg > input[type=button]:not([class*=btn-]),
.submit-row .input-group-lg > button:not([class*=btn-]),
.submit-row .deletelink-box .input-group-lg > .deletelink,
body.delete-confirmation .content-wrap .input-group-lg > input[type=button],
body.delete-confirmation .content-wrap .input-group-lg > input[type=submit],
body.delete-confirmation .content-wrap .input-group-lg > button {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: 0.3rem;
}

.input-group-sm > .form-control, #changelist #changelist-form .actions .input-group-sm > select, #changelist #toolbar #changelist-search .input-group-sm > input[type=text], .selector .selector-available .input-group-sm > select, .selector .selector-chosen .input-group-sm > select, fieldset .input-group-sm > input[type=text],
fieldset .input-group-sm > input[type=url],
fieldset .input-group-sm > input[type=email],
fieldset .input-group-sm > input[type=number],
fieldset .input-group-sm > input[type=password],
fieldset .input-group-sm > input[type=date],
fieldset .input-group-sm > input[type=tel],
fieldset .input-group-sm > .vTextField,
fieldset .input-group-sm > .vURLField,
fieldset .input-group-sm > .vLargeTextField,
fieldset .input-group-sm > .vTimeField,
fieldset .input-group-sm > .vDateField,
.input-group-sm > .form-select,
fieldset .input-group-sm > select:not([multiple=multiple]),
.input-group-sm > .input-group-text,
.input-group-sm > .btn,
#changelist #changelist-form .paginator .input-group-sm > input[type=submit],
#changelist #changelist-form .actions .input-group-sm > button,
#changelist #toolbar #changelist-search .input-group-sm > input[type=submit],
body.login .submit-row .input-group-sm > input[type=submit],
#toolbar > .object-tools > li.input-group-sm > a:not([class*=btn-]),
#content-main > .object-tools > li.input-group-sm > a:not([class*=btn-]),
.submit-row .input-group-sm > input[type=submit]:not([class*=btn-]),
.submit-row .input-group-sm > input[type=button]:not([class*=btn-]),
.submit-row .input-group-sm > button:not([class*=btn-]),
.submit-row .deletelink-box .input-group-sm > .deletelink,
body.delete-confirmation .content-wrap .input-group-sm > input[type=button],
body.delete-confirmation .content-wrap .input-group-sm > input[type=submit],
body.delete-confirmation .content-wrap .input-group-sm > button {
    padding: 0.35rem 0.75rem;
    font-size: 0.875rem;
    border-radius: 0.2rem;
}

.input-group-lg > .form-select, fieldset .input-group-lg > select:not([multiple=multiple]),
.input-group-sm > .form-select,
fieldset .input-group-sm > select:not([multiple=multiple]) {
    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: 0.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, .was-validated #changelist #changelist-form .actions select:valid, #changelist #changelist-form .actions .was-validated select:valid, .was-validated #changelist #toolbar #changelist-search input[type=text]:valid, #changelist #toolbar #changelist-search .was-validated input[type=text]:valid, .was-validated .selector .selector-available select:valid, .selector .selector-available .was-validated select:valid, .was-validated .selector .selector-chosen select:valid, .selector .selector-chosen .was-validated select:valid, .was-validated fieldset input[type=text]:valid, fieldset .was-validated input[type=text]:valid,
.was-validated fieldset input[type=url]:valid,
fieldset .was-validated input[type=url]:valid,
.was-validated fieldset input[type=email]:valid,
fieldset .was-validated input[type=email]:valid,
.was-validated fieldset input[type=number]:valid,
fieldset .was-validated input[type=number]:valid,
.was-validated fieldset input[type=password]:valid,
fieldset .was-validated input[type=password]:valid,
.was-validated fieldset input[type=date]:valid,
fieldset .was-validated input[type=date]:valid,
.was-validated fieldset input[type=tel]:valid,
fieldset .was-validated input[type=tel]:valid,
.was-validated fieldset .vTextField:valid,
fieldset .was-validated .vTextField:valid,
.was-validated fieldset .vURLField:valid,
fieldset .was-validated .vURLField:valid,
.was-validated fieldset .vLargeTextField:valid,
fieldset .was-validated .vLargeTextField:valid,
.was-validated fieldset .vTimeField:valid,
fieldset .was-validated .vTimeField:valid,
.was-validated fieldset .vDateField:valid,
fieldset .was-validated .vDateField:valid, .form-control.is-valid, #changelist #changelist-form .actions select.is-valid, #changelist #toolbar #changelist-search input.is-valid[type=text], .selector .selector-available select.is-valid, .selector .selector-chosen select.is-valid, fieldset input.is-valid[type=text],
fieldset input.is-valid[type=url],
fieldset input.is-valid[type=email],
fieldset input.is-valid[type=number],
fieldset input.is-valid[type=password],
fieldset input.is-valid[type=date],
fieldset input.is-valid[type=tel],
fieldset .is-valid.vTextField,
fieldset .is-valid.vURLField,
fieldset .is-valid.vLargeTextField,
fieldset .is-valid.vTimeField,
fieldset .is-valid.vDateField {
    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, .was-validated #changelist #changelist-form .actions select:valid:focus, #changelist #changelist-form .actions .was-validated select:valid:focus, .was-validated #changelist #toolbar #changelist-search input[type=text]:valid:focus, #changelist #toolbar #changelist-search .was-validated input[type=text]:valid:focus, .was-validated .selector .selector-available select:valid:focus, .selector .selector-available .was-validated select:valid:focus, .was-validated .selector .selector-chosen select:valid:focus, .selector .selector-chosen .was-validated select:valid:focus, .was-validated fieldset input[type=text]:valid:focus, fieldset .was-validated input[type=text]:valid:focus,
.was-validated fieldset input[type=url]:valid:focus,
fieldset .was-validated input[type=url]:valid:focus,
.was-validated fieldset input[type=email]:valid:focus,
fieldset .was-validated input[type=email]:valid:focus,
.was-validated fieldset input[type=number]:valid:focus,
fieldset .was-validated input[type=number]:valid:focus,
.was-validated fieldset input[type=password]:valid:focus,
fieldset .was-validated input[type=password]:valid:focus,
.was-validated fieldset input[type=date]:valid:focus,
fieldset .was-validated input[type=date]:valid:focus,
.was-validated fieldset input[type=tel]:valid:focus,
fieldset .was-validated input[type=tel]:valid:focus,
.was-validated fieldset .vTextField:valid:focus,
fieldset .was-validated .vTextField:valid:focus,
.was-validated fieldset .vURLField:valid:focus,
fieldset .was-validated .vURLField:valid:focus,
.was-validated fieldset .vLargeTextField:valid:focus,
fieldset .was-validated .vLargeTextField:valid:focus,
.was-validated fieldset .vTimeField:valid:focus,
fieldset .was-validated .vTimeField:valid:focus,
.was-validated fieldset .vDateField:valid:focus,
fieldset .was-validated .vDateField:valid:focus, .form-control.is-valid:focus, #changelist #changelist-form .actions select.is-valid:focus, #changelist #toolbar #changelist-search input.is-valid[type=text]:focus, .selector .selector-available select.is-valid:focus, .selector .selector-chosen select.is-valid:focus, fieldset input.is-valid[type=text]:focus,
fieldset input.is-valid[type=url]:focus,
fieldset input.is-valid[type=email]:focus,
fieldset input.is-valid[type=number]:focus,
fieldset input.is-valid[type=password]:focus,
fieldset input.is-valid[type=date]:focus,
fieldset input.is-valid[type=tel]:focus,
fieldset .is-valid.vTextField:focus,
fieldset .is-valid.vURLField:focus,
fieldset .is-valid.vLargeTextField:focus,
fieldset .is-valid.vTimeField:focus,
fieldset .is-valid.vDateField:focus {
    border-color: #198754;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.was-validated textarea.form-control:valid,
.was-validated fieldset textarea.vTextField:valid,
fieldset .was-validated textarea.vTextField:valid,
.was-validated fieldset textarea.vURLField:valid,
fieldset .was-validated textarea.vURLField:valid,
.was-validated fieldset textarea.vLargeTextField:valid,
fieldset .was-validated textarea.vLargeTextField:valid,
.was-validated fieldset textarea.vTimeField:valid,
fieldset .was-validated textarea.vTimeField:valid,
.was-validated fieldset textarea.vDateField:valid,
fieldset .was-validated textarea.vDateField:valid, textarea.form-control.is-valid,
fieldset textarea.is-valid.vTextField,
fieldset textarea.is-valid.vURLField,
fieldset textarea.is-valid.vLargeTextField,
fieldset textarea.is-valid.vTimeField,
fieldset textarea.is-valid.vDateField {
    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, .was-validated fieldset select:valid:not([multiple=multiple]), fieldset .was-validated select:valid:not([multiple=multiple]), .form-select.is-valid, fieldset select.is-valid:not([multiple=multiple]) {
    border-color: #198754;
}

.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated fieldset select:valid:not([multiple]):not([size]):not([multiple=multiple]), fieldset .was-validated select:valid:not([multiple]):not([size]):not([multiple=multiple]), .was-validated .form-select:valid:not([multiple])[size="1"], .was-validated fieldset select:valid:not([multiple])[size="1"]:not([multiple=multiple]), fieldset .was-validated select:valid:not([multiple])[size="1"]:not([multiple=multiple]), .form-select.is-valid:not([multiple]):not([size]), fieldset select.is-valid:not([multiple]):not([size]):not([multiple=multiple]), .form-select.is-valid:not([multiple])[size="1"], fieldset select.is-valid:not([multiple])[size="1"]:not([multiple=multiple]) {
    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, .was-validated fieldset select:valid:focus:not([multiple=multiple]), fieldset .was-validated select:valid:focus:not([multiple=multiple]), .form-select.is-valid:focus, fieldset select.is-valid:focus:not([multiple=multiple]) {
    border-color: #198754;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
    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 {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
    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: 0.5em;
}

.was-validated .input-group .form-control:valid, .was-validated .input-group #changelist #changelist-form .actions select:valid, #changelist #changelist-form .actions .was-validated .input-group select:valid, .was-validated .input-group #changelist #toolbar #changelist-search input[type=text]:valid, #changelist #toolbar #changelist-search .was-validated .input-group input[type=text]:valid, .was-validated .input-group .selector .selector-available select:valid, .selector .selector-available .was-validated .input-group select:valid, .was-validated .input-group .selector .selector-chosen select:valid, .selector .selector-chosen .was-validated .input-group select:valid, .was-validated .input-group fieldset input[type=text]:valid, fieldset .was-validated .input-group input[type=text]:valid,
.was-validated .input-group fieldset input[type=url]:valid,
fieldset .was-validated .input-group input[type=url]:valid,
.was-validated .input-group fieldset input[type=email]:valid,
fieldset .was-validated .input-group input[type=email]:valid,
.was-validated .input-group fieldset input[type=number]:valid,
fieldset .was-validated .input-group input[type=number]:valid,
.was-validated .input-group fieldset input[type=password]:valid,
fieldset .was-validated .input-group input[type=password]:valid,
.was-validated .input-group fieldset input[type=date]:valid,
fieldset .was-validated .input-group input[type=date]:valid,
.was-validated .input-group fieldset input[type=tel]:valid,
fieldset .was-validated .input-group input[type=tel]:valid,
.was-validated .input-group fieldset .vTextField:valid,
fieldset .was-validated .input-group .vTextField:valid,
.was-validated .input-group fieldset .vURLField:valid,
fieldset .was-validated .input-group .vURLField:valid,
.was-validated .input-group fieldset .vLargeTextField:valid,
fieldset .was-validated .input-group .vLargeTextField:valid,
.was-validated .input-group fieldset .vTimeField:valid,
fieldset .was-validated .input-group .vTimeField:valid,
.was-validated .input-group fieldset .vDateField:valid,
fieldset .was-validated .input-group .vDateField:valid, .input-group .form-control.is-valid, .input-group #changelist #changelist-form .actions select.is-valid, #changelist #changelist-form .actions .input-group select.is-valid, .input-group #changelist #toolbar #changelist-search input.is-valid[type=text], #changelist #toolbar #changelist-search .input-group input.is-valid[type=text], .input-group .selector .selector-available select.is-valid, .selector .selector-available .input-group select.is-valid, .input-group .selector .selector-chosen select.is-valid, .selector .selector-chosen .input-group select.is-valid, .input-group fieldset input.is-valid[type=text], fieldset .input-group input.is-valid[type=text],
.input-group fieldset input.is-valid[type=url],
fieldset .input-group input.is-valid[type=url],
.input-group fieldset input.is-valid[type=email],
fieldset .input-group input.is-valid[type=email],
.input-group fieldset input.is-valid[type=number],
fieldset .input-group input.is-valid[type=number],
.input-group fieldset input.is-valid[type=password],
fieldset .input-group input.is-valid[type=password],
.input-group fieldset input.is-valid[type=date],
fieldset .input-group input.is-valid[type=date],
.input-group fieldset input.is-valid[type=tel],
fieldset .input-group input.is-valid[type=tel],
.input-group fieldset .is-valid.vTextField,
fieldset .input-group .is-valid.vTextField,
.input-group fieldset .is-valid.vURLField,
fieldset .input-group .is-valid.vURLField,
.input-group fieldset .is-valid.vLargeTextField,
fieldset .input-group .is-valid.vLargeTextField,
.input-group fieldset .is-valid.vTimeField,
fieldset .input-group .is-valid.vTimeField,
.input-group fieldset .is-valid.vDateField,
fieldset .input-group .is-valid.vDateField,
.was-validated .input-group .form-select:valid,
.was-validated .input-group fieldset select:valid:not([multiple=multiple]),
fieldset .was-validated .input-group select:valid:not([multiple=multiple]),
.input-group .form-select.is-valid,
.input-group fieldset select.is-valid:not([multiple=multiple]),
fieldset .input-group select.is-valid:not([multiple=multiple]) {
    z-index: 1;
}

.was-validated .input-group .form-control:valid:focus, .was-validated .input-group #changelist #changelist-form .actions select:valid:focus, #changelist #changelist-form .actions .was-validated .input-group select:valid:focus, .was-validated .input-group #changelist #toolbar #changelist-search input[type=text]:valid:focus, #changelist #toolbar #changelist-search .was-validated .input-group input[type=text]:valid:focus, .was-validated .input-group .selector .selector-available select:valid:focus, .selector .selector-available .was-validated .input-group select:valid:focus, .was-validated .input-group .selector .selector-chosen select:valid:focus, .selector .selector-chosen .was-validated .input-group select:valid:focus, .was-validated .input-group fieldset input[type=text]:valid:focus, fieldset .was-validated .input-group input[type=text]:valid:focus,
.was-validated .input-group fieldset input[type=url]:valid:focus,
fieldset .was-validated .input-group input[type=url]:valid:focus,
.was-validated .input-group fieldset input[type=email]:valid:focus,
fieldset .was-validated .input-group input[type=email]:valid:focus,
.was-validated .input-group fieldset input[type=number]:valid:focus,
fieldset .was-validated .input-group input[type=number]:valid:focus,
.was-validated .input-group fieldset input[type=password]:valid:focus,
fieldset .was-validated .input-group input[type=password]:valid:focus,
.was-validated .input-group fieldset input[type=date]:valid:focus,
fieldset .was-validated .input-group input[type=date]:valid:focus,
.was-validated .input-group fieldset input[type=tel]:valid:focus,
fieldset .was-validated .input-group input[type=tel]:valid:focus,
.was-validated .input-group fieldset .vTextField:valid:focus,
fieldset .was-validated .input-group .vTextField:valid:focus,
.was-validated .input-group fieldset .vURLField:valid:focus,
fieldset .was-validated .input-group .vURLField:valid:focus,
.was-validated .input-group fieldset .vLargeTextField:valid:focus,
fieldset .was-validated .input-group .vLargeTextField:valid:focus,
.was-validated .input-group fieldset .vTimeField:valid:focus,
fieldset .was-validated .input-group .vTimeField:valid:focus,
.was-validated .input-group fieldset .vDateField:valid:focus,
fieldset .was-validated .input-group .vDateField:valid:focus, .input-group .form-control.is-valid:focus, .input-group #changelist #changelist-form .actions select.is-valid:focus, #changelist #changelist-form .actions .input-group select.is-valid:focus, .input-group #changelist #toolbar #changelist-search input.is-valid[type=text]:focus, #changelist #toolbar #changelist-search .input-group input.is-valid[type=text]:focus, .input-group .selector .selector-available select.is-valid:focus, .selector .selector-available .input-group select.is-valid:focus, .input-group .selector .selector-chosen select.is-valid:focus, .selector .selector-chosen .input-group select.is-valid:focus, .input-group fieldset input.is-valid[type=text]:focus, fieldset .input-group input.is-valid[type=text]:focus,
.input-group fieldset input.is-valid[type=url]:focus,
fieldset .input-group input.is-valid[type=url]:focus,
.input-group fieldset input.is-valid[type=email]:focus,
fieldset .input-group input.is-valid[type=email]:focus,
.input-group fieldset input.is-valid[type=number]:focus,
fieldset .input-group input.is-valid[type=number]:focus,
.input-group fieldset input.is-valid[type=password]:focus,
fieldset .input-group input.is-valid[type=password]:focus,
.input-group fieldset input.is-valid[type=date]:focus,
fieldset .input-group input.is-valid[type=date]:focus,
.input-group fieldset input.is-valid[type=tel]:focus,
fieldset .input-group input.is-valid[type=tel]:focus,
.input-group fieldset .is-valid.vTextField:focus,
fieldset .input-group .is-valid.vTextField:focus,
.input-group fieldset .is-valid.vURLField:focus,
fieldset .input-group .is-valid.vURLField:focus,
.input-group fieldset .is-valid.vLargeTextField:focus,
fieldset .input-group .is-valid.vLargeTextField:focus,
.input-group fieldset .is-valid.vTimeField:focus,
fieldset .input-group .is-valid.vTimeField:focus,
.input-group fieldset .is-valid.vDateField:focus,
fieldset .input-group .is-valid.vDateField:focus,
.was-validated .input-group .form-select:valid:focus,
.was-validated .input-group fieldset select:valid:focus:not([multiple=multiple]),
fieldset .was-validated .input-group select:valid:focus:not([multiple=multiple]),
.input-group .form-select.is-valid:focus,
.input-group fieldset select.is-valid:focus:not([multiple=multiple]),
fieldset .input-group select.is-valid:focus:not([multiple=multiple]) {
    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: 0.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, .was-validated #changelist #changelist-form .actions select:invalid, #changelist #changelist-form .actions .was-validated select:invalid, .was-validated #changelist #toolbar #changelist-search input[type=text]:invalid, #changelist #toolbar #changelist-search .was-validated input[type=text]:invalid, .was-validated .selector .selector-available select:invalid, .selector .selector-available .was-validated select:invalid, .was-validated .selector .selector-chosen select:invalid, .selector .selector-chosen .was-validated select:invalid, .was-validated fieldset input[type=text]:invalid, fieldset .was-validated input[type=text]:invalid,
.was-validated fieldset input[type=url]:invalid,
fieldset .was-validated input[type=url]:invalid,
.was-validated fieldset input[type=email]:invalid,
fieldset .was-validated input[type=email]:invalid,
.was-validated fieldset input[type=number]:invalid,
fieldset .was-validated input[type=number]:invalid,
.was-validated fieldset input[type=password]:invalid,
fieldset .was-validated input[type=password]:invalid,
.was-validated fieldset input[type=date]:invalid,
fieldset .was-validated input[type=date]:invalid,
.was-validated fieldset input[type=tel]:invalid,
fieldset .was-validated input[type=tel]:invalid,
.was-validated fieldset .vTextField:invalid,
fieldset .was-validated .vTextField:invalid,
.was-validated fieldset .vURLField:invalid,
fieldset .was-validated .vURLField:invalid,
.was-validated fieldset .vLargeTextField:invalid,
fieldset .was-validated .vLargeTextField:invalid,
.was-validated fieldset .vTimeField:invalid,
fieldset .was-validated .vTimeField:invalid,
.was-validated fieldset .vDateField:invalid,
fieldset .was-validated .vDateField:invalid, .form-control.is-invalid, #changelist #changelist-form .actions select.is-invalid, #changelist #toolbar #changelist-search input.is-invalid[type=text], .selector .selector-available select.is-invalid, .selector .selector-chosen select.is-invalid, fieldset input.is-invalid[type=text],
fieldset input.is-invalid[type=url],
fieldset input.is-invalid[type=email],
fieldset input.is-invalid[type=number],
fieldset input.is-invalid[type=password],
fieldset input.is-invalid[type=date],
fieldset input.is-invalid[type=tel],
fieldset .is-invalid.vTextField,
fieldset .is-invalid.vURLField,
fieldset .is-invalid.vLargeTextField,
fieldset .is-invalid.vTimeField,
fieldset .is-invalid.vDateField {
    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, .was-validated #changelist #changelist-form .actions select:invalid:focus, #changelist #changelist-form .actions .was-validated select:invalid:focus, .was-validated #changelist #toolbar #changelist-search input[type=text]:invalid:focus, #changelist #toolbar #changelist-search .was-validated input[type=text]:invalid:focus, .was-validated .selector .selector-available select:invalid:focus, .selector .selector-available .was-validated select:invalid:focus, .was-validated .selector .selector-chosen select:invalid:focus, .selector .selector-chosen .was-validated select:invalid:focus, .was-validated fieldset input[type=text]:invalid:focus, fieldset .was-validated input[type=text]:invalid:focus,
.was-validated fieldset input[type=url]:invalid:focus,
fieldset .was-validated input[type=url]:invalid:focus,
.was-validated fieldset input[type=email]:invalid:focus,
fieldset .was-validated input[type=email]:invalid:focus,
.was-validated fieldset input[type=number]:invalid:focus,
fieldset .was-validated input[type=number]:invalid:focus,
.was-validated fieldset input[type=password]:invalid:focus,
fieldset .was-validated input[type=password]:invalid:focus,
.was-validated fieldset input[type=date]:invalid:focus,
fieldset .was-validated input[type=date]:invalid:focus,
.was-validated fieldset input[type=tel]:invalid:focus,
fieldset .was-validated input[type=tel]:invalid:focus,
.was-validated fieldset .vTextField:invalid:focus,
fieldset .was-validated .vTextField:invalid:focus,
.was-validated fieldset .vURLField:invalid:focus,
fieldset .was-validated .vURLField:invalid:focus,
.was-validated fieldset .vLargeTextField:invalid:focus,
fieldset .was-validated .vLargeTextField:invalid:focus,
.was-validated fieldset .vTimeField:invalid:focus,
fieldset .was-validated .vTimeField:invalid:focus,
.was-validated fieldset .vDateField:invalid:focus,
fieldset .was-validated .vDateField:invalid:focus, .form-control.is-invalid:focus, #changelist #changelist-form .actions select.is-invalid:focus, #changelist #toolbar #changelist-search input.is-invalid[type=text]:focus, .selector .selector-available select.is-invalid:focus, .selector .selector-chosen select.is-invalid:focus, fieldset input.is-invalid[type=text]:focus,
fieldset input.is-invalid[type=url]:focus,
fieldset input.is-invalid[type=email]:focus,
fieldset input.is-invalid[type=number]:focus,
fieldset input.is-invalid[type=password]:focus,
fieldset input.is-invalid[type=date]:focus,
fieldset input.is-invalid[type=tel]:focus,
fieldset .is-invalid.vTextField:focus,
fieldset .is-invalid.vURLField:focus,
fieldset .is-invalid.vLargeTextField:focus,
fieldset .is-invalid.vTimeField:focus,
fieldset .is-invalid.vDateField:focus {
    border-color: #dc3545;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

.was-validated textarea.form-control:invalid,
.was-validated fieldset textarea.vTextField:invalid,
fieldset .was-validated textarea.vTextField:invalid,
.was-validated fieldset textarea.vURLField:invalid,
fieldset .was-validated textarea.vURLField:invalid,
.was-validated fieldset textarea.vLargeTextField:invalid,
fieldset .was-validated textarea.vLargeTextField:invalid,
.was-validated fieldset textarea.vTimeField:invalid,
fieldset .was-validated textarea.vTimeField:invalid,
.was-validated fieldset textarea.vDateField:invalid,
fieldset .was-validated textarea.vDateField:invalid, textarea.form-control.is-invalid,
fieldset textarea.is-invalid.vTextField,
fieldset textarea.is-invalid.vURLField,
fieldset textarea.is-invalid.vLargeTextField,
fieldset textarea.is-invalid.vTimeField,
fieldset textarea.is-invalid.vDateField {
    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, .was-validated fieldset select:invalid:not([multiple=multiple]), fieldset .was-validated select:invalid:not([multiple=multiple]), .form-select.is-invalid, fieldset select.is-invalid:not([multiple=multiple]) {
    border-color: #dc3545;
}

.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated fieldset select:invalid:not([multiple]):not([size]):not([multiple=multiple]), fieldset .was-validated select:invalid:not([multiple]):not([size]):not([multiple=multiple]), .was-validated .form-select:invalid:not([multiple])[size="1"], .was-validated fieldset select:invalid:not([multiple])[size="1"]:not([multiple=multiple]), fieldset .was-validated select:invalid:not([multiple])[size="1"]:not([multiple=multiple]), .form-select.is-invalid:not([multiple]):not([size]), fieldset select.is-invalid:not([multiple]):not([size]):not([multiple=multiple]), .form-select.is-invalid:not([multiple])[size="1"], fieldset select.is-invalid:not([multiple])[size="1"]:not([multiple=multiple]) {
    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, .was-validated fieldset select:invalid:focus:not([multiple=multiple]), fieldset .was-validated select:invalid:focus:not([multiple=multiple]), .form-select.is-invalid:focus, fieldset select.is-invalid:focus:not([multiple=multiple]) {
    border-color: #dc3545;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
    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 {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
    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: 0.5em;
}

.was-validated .input-group .form-control:invalid, .was-validated .input-group #changelist #changelist-form .actions select:invalid, #changelist #changelist-form .actions .was-validated .input-group select:invalid, .was-validated .input-group #changelist #toolbar #changelist-search input[type=text]:invalid, #changelist #toolbar #changelist-search .was-validated .input-group input[type=text]:invalid, .was-validated .input-group .selector .selector-available select:invalid, .selector .selector-available .was-validated .input-group select:invalid, .was-validated .input-group .selector .selector-chosen select:invalid, .selector .selector-chosen .was-validated .input-group select:invalid, .was-validated .input-group fieldset input[type=text]:invalid, fieldset .was-validated .input-group input[type=text]:invalid,
.was-validated .input-group fieldset input[type=url]:invalid,
fieldset .was-validated .input-group input[type=url]:invalid,
.was-validated .input-group fieldset input[type=email]:invalid,
fieldset .was-validated .input-group input[type=email]:invalid,
.was-validated .input-group fieldset input[type=number]:invalid,
fieldset .was-validated .input-group input[type=number]:invalid,
.was-validated .input-group fieldset input[type=password]:invalid,
fieldset .was-validated .input-group input[type=password]:invalid,
.was-validated .input-group fieldset input[type=date]:invalid,
fieldset .was-validated .input-group input[type=date]:invalid,
.was-validated .input-group fieldset input[type=tel]:invalid,
fieldset .was-validated .input-group input[type=tel]:invalid,
.was-validated .input-group fieldset .vTextField:invalid,
fieldset .was-validated .input-group .vTextField:invalid,
.was-validated .input-group fieldset .vURLField:invalid,
fieldset .was-validated .input-group .vURLField:invalid,
.was-validated .input-group fieldset .vLargeTextField:invalid,
fieldset .was-validated .input-group .vLargeTextField:invalid,
.was-validated .input-group fieldset .vTimeField:invalid,
fieldset .was-validated .input-group .vTimeField:invalid,
.was-validated .input-group fieldset .vDateField:invalid,
fieldset .was-validated .input-group .vDateField:invalid, .input-group .form-control.is-invalid, .input-group #changelist #changelist-form .actions select.is-invalid, #changelist #changelist-form .actions .input-group select.is-invalid, .input-group #changelist #toolbar #changelist-search input.is-invalid[type=text], #changelist #toolbar #changelist-search .input-group input.is-invalid[type=text], .input-group .selector .selector-available select.is-invalid, .selector .selector-available .input-group select.is-invalid, .input-group .selector .selector-chosen select.is-invalid, .selector .selector-chosen .input-group select.is-invalid, .input-group fieldset input.is-invalid[type=text], fieldset .input-group input.is-invalid[type=text],
.input-group fieldset input.is-invalid[type=url],
fieldset .input-group input.is-invalid[type=url],
.input-group fieldset input.is-invalid[type=email],
fieldset .input-group input.is-invalid[type=email],
.input-group fieldset input.is-invalid[type=number],
fieldset .input-group input.is-invalid[type=number],
.input-group fieldset input.is-invalid[type=password],
fieldset .input-group input.is-invalid[type=password],
.input-group fieldset input.is-invalid[type=date],
fieldset .input-group input.is-invalid[type=date],
.input-group fieldset input.is-invalid[type=tel],
fieldset .input-group input.is-invalid[type=tel],
.input-group fieldset .is-invalid.vTextField,
fieldset .input-group .is-invalid.vTextField,
.input-group fieldset .is-invalid.vURLField,
fieldset .input-group .is-invalid.vURLField,
.input-group fieldset .is-invalid.vLargeTextField,
fieldset .input-group .is-invalid.vLargeTextField,
.input-group fieldset .is-invalid.vTimeField,
fieldset .input-group .is-invalid.vTimeField,
.input-group fieldset .is-invalid.vDateField,
fieldset .input-group .is-invalid.vDateField,
.was-validated .input-group .form-select:invalid,
.was-validated .input-group fieldset select:invalid:not([multiple=multiple]),
fieldset .was-validated .input-group select:invalid:not([multiple=multiple]),
.input-group .form-select.is-invalid,
.input-group fieldset select.is-invalid:not([multiple=multiple]),
fieldset .input-group select.is-invalid:not([multiple=multiple]) {
    z-index: 2;
}

.was-validated .input-group .form-control:invalid:focus, .was-validated .input-group #changelist #changelist-form .actions select:invalid:focus, #changelist #changelist-form .actions .was-validated .input-group select:invalid:focus, .was-validated .input-group #changelist #toolbar #changelist-search input[type=text]:invalid:focus, #changelist #toolbar #changelist-search .was-validated .input-group input[type=text]:invalid:focus, .was-validated .input-group .selector .selector-available select:invalid:focus, .selector .selector-available .was-validated .input-group select:invalid:focus, .was-validated .input-group .selector .selector-chosen select:invalid:focus, .selector .selector-chosen .was-validated .input-group select:invalid:focus, .was-validated .input-group fieldset input[type=text]:invalid:focus, fieldset .was-validated .input-group input[type=text]:invalid:focus,
.was-validated .input-group fieldset input[type=url]:invalid:focus,
fieldset .was-validated .input-group input[type=url]:invalid:focus,
.was-validated .input-group fieldset input[type=email]:invalid:focus,
fieldset .was-validated .input-group input[type=email]:invalid:focus,
.was-validated .input-group fieldset input[type=number]:invalid:focus,
fieldset .was-validated .input-group input[type=number]:invalid:focus,
.was-validated .input-group fieldset input[type=password]:invalid:focus,
fieldset .was-validated .input-group input[type=password]:invalid:focus,
.was-validated .input-group fieldset input[type=date]:invalid:focus,
fieldset .was-validated .input-group input[type=date]:invalid:focus,
.was-validated .input-group fieldset input[type=tel]:invalid:focus,
fieldset .was-validated .input-group input[type=tel]:invalid:focus,
.was-validated .input-group fieldset .vTextField:invalid:focus,
fieldset .was-validated .input-group .vTextField:invalid:focus,
.was-validated .input-group fieldset .vURLField:invalid:focus,
fieldset .was-validated .input-group .vURLField:invalid:focus,
.was-validated .input-group fieldset .vLargeTextField:invalid:focus,
fieldset .was-validated .input-group .vLargeTextField:invalid:focus,
.was-validated .input-group fieldset .vTimeField:invalid:focus,
fieldset .was-validated .input-group .vTimeField:invalid:focus,
.was-validated .input-group fieldset .vDateField:invalid:focus,
fieldset .was-validated .input-group .vDateField:invalid:focus, .input-group .form-control.is-invalid:focus, .input-group #changelist #changelist-form .actions select.is-invalid:focus, #changelist #changelist-form .actions .input-group select.is-invalid:focus, .input-group #changelist #toolbar #changelist-search input.is-invalid[type=text]:focus, #changelist #toolbar #changelist-search .input-group input.is-invalid[type=text]:focus, .input-group .selector .selector-available select.is-invalid:focus, .selector .selector-available .input-group select.is-invalid:focus, .input-group .selector .selector-chosen select.is-invalid:focus, .selector .selector-chosen .input-group select.is-invalid:focus, .input-group fieldset input.is-invalid[type=text]:focus, fieldset .input-group input.is-invalid[type=text]:focus,
.input-group fieldset input.is-invalid[type=url]:focus,
fieldset .input-group input.is-invalid[type=url]:focus,
.input-group fieldset input.is-invalid[type=email]:focus,
fieldset .input-group input.is-invalid[type=email]:focus,
.input-group fieldset input.is-invalid[type=number]:focus,
fieldset .input-group input.is-invalid[type=number]:focus,
.input-group fieldset input.is-invalid[type=password]:focus,
fieldset .input-group input.is-invalid[type=password]:focus,
.input-group fieldset input.is-invalid[type=date]:focus,
fieldset .input-group input.is-invalid[type=date]:focus,
.input-group fieldset input.is-invalid[type=tel]:focus,
fieldset .input-group input.is-invalid[type=tel]:focus,
.input-group fieldset .is-invalid.vTextField:focus,
fieldset .input-group .is-invalid.vTextField:focus,
.input-group fieldset .is-invalid.vURLField:focus,
fieldset .input-group .is-invalid.vURLField:focus,
.input-group fieldset .is-invalid.vLargeTextField:focus,
fieldset .input-group .is-invalid.vLargeTextField:focus,
.input-group fieldset .is-invalid.vTimeField:focus,
fieldset .input-group .is-invalid.vTimeField:focus,
.input-group fieldset .is-invalid.vDateField:focus,
fieldset .input-group .is-invalid.vDateField:focus,
.was-validated .input-group .form-select:invalid:focus,
.was-validated .input-group fieldset select:invalid:focus:not([multiple=multiple]),
fieldset .was-validated .input-group select:invalid:focus:not([multiple=multiple]),
.input-group .form-select.is-invalid:focus,
.input-group fieldset select.is-invalid:focus:not([multiple=multiple]),
fieldset .input-group select.is-invalid:focus:not([multiple=multiple]) {
    z-index: 3;
}

.btn, #changelist #changelist-form .paginator input[type=submit], #changelist #changelist-form .actions button, #changelist #toolbar #changelist-search input[type=submit], body.login .submit-row input[type=submit], #toolbar > .object-tools > li > a:not([class*=btn-]).addlink, #toolbar > .object-tools > li > a:not([class*=btn-]), #content-main > .object-tools > li > a:not([class*=btn-]).addlink, #content-main > .object-tools > li > a:not([class*=btn-]), .submit-row input[type=submit]:not([class*=btn-]), .submit-row input[type=button]:not([class*=btn-]), .submit-row button:not([class*=btn-]), .submit-row .deletelink-box .deletelink, body.delete-confirmation .content-wrap input[type=button], body.delete-confirmation .content-wrap input[type=submit], body.delete-confirmation .content-wrap button {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    border-radius: 0.25rem;
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    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;
    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, -webkit-box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .btn, #changelist #changelist-form .paginator input[type=submit], #changelist #changelist-form .actions button, #changelist #toolbar #changelist-search input[type=submit], body.login .submit-row input[type=submit], #toolbar > .object-tools > li > a:not([class*=btn-]).addlink, #toolbar > .object-tools > li > a:not([class*=btn-]), #content-main > .object-tools > li > a:not([class*=btn-]).addlink, #content-main > .object-tools > li > a:not([class*=btn-]), .submit-row input[type=submit]:not([class*=btn-]), .submit-row input[type=button]:not([class*=btn-]), .submit-row button:not([class*=btn-]), .submit-row .deletelink-box .deletelink, body.delete-confirmation .content-wrap input[type=button], body.delete-confirmation .content-wrap input[type=submit], body.delete-confirmation .content-wrap button {
        -webkit-transition: none;
        transition: none;
    }
}

.btn:hover, #changelist #changelist-form .paginator input[type=submit]:hover, #changelist #changelist-form .actions button:hover, #changelist #toolbar #changelist-search input[type=submit]:hover, body.login .submit-row input[type=submit]:hover, #toolbar > .object-tools > li > a:hover:not([class*=btn-]), #content-main > .object-tools > li > a:hover:not([class*=btn-]), .submit-row input[type=submit]:hover:not([class*=btn-]), .submit-row input[type=button]:hover:not([class*=btn-]), .submit-row button:hover:not([class*=btn-]), .submit-row .deletelink-box .deletelink:hover, body.delete-confirmation .content-wrap input[type=button]:hover, body.delete-confirmation .content-wrap input[type=submit]:hover, body.delete-confirmation .content-wrap button:hover {
    color: #212529;
}

.btn-check:focus + .btn, #changelist #changelist-form .paginator .btn-check:focus + input[type=submit], #changelist #changelist-form .actions .btn-check:focus + button, #changelist #toolbar #changelist-search .btn-check:focus + input[type=submit], body.login .submit-row .btn-check:focus + input[type=submit], #toolbar > .object-tools > li > .btn-check:focus + a:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:focus + a:not([class*=btn-]), .submit-row .btn-check:focus + input[type=submit]:not([class*=btn-]), .submit-row .btn-check:focus + input[type=button]:not([class*=btn-]), .submit-row .btn-check:focus + button:not([class*=btn-]), .submit-row .deletelink-box .btn-check:focus + .deletelink, body.delete-confirmation .content-wrap .btn-check:focus + input[type=button], body.delete-confirmation .content-wrap .btn-check:focus + input[type=submit], body.delete-confirmation .content-wrap .btn-check:focus + button, .btn:focus, #changelist #changelist-form .paginator input[type=submit]:focus, #changelist #changelist-form .actions button:focus, #changelist #toolbar #changelist-search input[type=submit]:focus, body.login .submit-row input[type=submit]:focus, #toolbar > .object-tools > li > a:focus:not([class*=btn-]), #content-main > .object-tools > li > a:focus:not([class*=btn-]), .submit-row input[type=submit]:focus:not([class*=btn-]), .submit-row input[type=button]:focus:not([class*=btn-]), .submit-row button:focus:not([class*=btn-]), .submit-row .deletelink-box .deletelink:focus, body.delete-confirmation .content-wrap input[type=button]:focus, body.delete-confirmation .content-wrap input[type=submit]:focus, body.delete-confirmation .content-wrap button:focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.btn:disabled, #changelist #changelist-form .paginator input[type=submit]:disabled, #changelist #changelist-form .actions button:disabled, #changelist #toolbar #changelist-search input[type=submit]:disabled, body.login .submit-row input[type=submit]:disabled, #toolbar > .object-tools > li > a:disabled:not([class*=btn-]), #content-main > .object-tools > li > a:disabled:not([class*=btn-]), .submit-row input[type=submit]:disabled:not([class*=btn-]), .submit-row input[type=button]:disabled:not([class*=btn-]), .submit-row button:disabled:not([class*=btn-]), .submit-row .deletelink-box .deletelink:disabled, body.delete-confirmation .content-wrap input[type=button]:disabled, body.delete-confirmation .content-wrap input[type=submit]:disabled, body.delete-confirmation .content-wrap button:disabled, .btn.disabled, #changelist #changelist-form .paginator input.disabled[type=submit], #changelist #changelist-form .actions button.disabled, #changelist #toolbar #changelist-search input.disabled[type=submit], body.login .submit-row input.disabled[type=submit], #toolbar > .object-tools > li > a.disabled:not([class*=btn-]), #content-main > .object-tools > li > a.disabled:not([class*=btn-]), .submit-row input.disabled[type=submit]:not([class*=btn-]), .submit-row input.disabled[type=button]:not([class*=btn-]), .submit-row button.disabled:not([class*=btn-]), .submit-row .deletelink-box .disabled.deletelink, body.delete-confirmation .content-wrap input.disabled[type=button], body.delete-confirmation .content-wrap input.disabled[type=submit], body.delete-confirmation .content-wrap button.disabled, fieldset:disabled .btn, fieldset:disabled #changelist #changelist-form .paginator input[type=submit], #changelist #changelist-form .paginator fieldset:disabled input[type=submit], fieldset:disabled #changelist #changelist-form .actions button, #changelist #changelist-form .actions fieldset:disabled button, fieldset:disabled #changelist #toolbar #changelist-search input[type=submit], #changelist #toolbar #changelist-search fieldset:disabled input[type=submit], fieldset:disabled body.login .submit-row input[type=submit], body.login .submit-row fieldset:disabled input[type=submit], fieldset:disabled #toolbar > .object-tools > li > a:not([class*=btn-]), fieldset:disabled #content-main > .object-tools > li > a:not([class*=btn-]), fieldset:disabled .submit-row input[type=submit]:not([class*=btn-]), .submit-row fieldset:disabled input[type=submit]:not([class*=btn-]), fieldset:disabled .submit-row input[type=button]:not([class*=btn-]), .submit-row fieldset:disabled input[type=button]:not([class*=btn-]), fieldset:disabled .submit-row button:not([class*=btn-]), .submit-row fieldset:disabled button:not([class*=btn-]), fieldset:disabled .submit-row .deletelink-box .deletelink, .submit-row .deletelink-box fieldset:disabled .deletelink, fieldset:disabled body.delete-confirmation .content-wrap input[type=button], body.delete-confirmation .content-wrap fieldset:disabled input[type=button], fieldset:disabled body.delete-confirmation .content-wrap input[type=submit], body.delete-confirmation .content-wrap fieldset:disabled input[type=submit], fieldset:disabled body.delete-confirmation .content-wrap button, body.delete-confirmation .content-wrap fieldset:disabled button {
    pointer-events: none;
    opacity: 0.65;
}

.btn-primary, #changelist #changelist-form .paginator input[type=submit], #changelist #changelist-form .actions button, #changelist #toolbar #changelist-search input[type=submit], body.login .submit-row input[type=submit], .submit-row input[type=submit]:not([class*=btn-]):first-child, .submit-row input[type=button]:not([class*=btn-]):first-child, .submit-row button:not([class*=btn-]):first-child {
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn-primary:hover, #changelist #changelist-form .paginator input[type=submit]:hover, #changelist #changelist-form .actions button:hover, #changelist #toolbar #changelist-search input[type=submit]:hover, body.login .submit-row input[type=submit]:hover, .submit-row input[type=submit]:hover:not([class*=btn-]):first-child, .submit-row input[type=button]:hover:not([class*=btn-]):first-child, .submit-row button:hover:not([class*=btn-]):first-child {
    color: #fff;
    background-color: #0b5ed7;
    border-color: #0a58ca;
}

.btn-check:focus + .btn-primary, #changelist #changelist-form .paginator .btn-check:focus + input[type=submit], #changelist #changelist-form .actions .btn-check:focus + button, #changelist #toolbar #changelist-search .btn-check:focus + input[type=submit], body.login .submit-row .btn-check:focus + input[type=submit], .submit-row .btn-check:focus + input[type=submit]:not([class*=btn-]):first-child, .submit-row .btn-check:focus + input[type=button]:not([class*=btn-]):first-child, .submit-row .btn-check:focus + button:not([class*=btn-]):first-child, .btn-primary:focus, #changelist #changelist-form .paginator input[type=submit]:focus, #changelist #changelist-form .actions button:focus, #changelist #toolbar #changelist-search input[type=submit]:focus, body.login .submit-row input[type=submit]:focus, .submit-row input[type=submit]:focus:not([class*=btn-]):first-child, .submit-row input[type=button]:focus:not([class*=btn-]):first-child, .submit-row button:focus:not([class*=btn-]):first-child {
    color: #fff;
    background-color: #0b5ed7;
    border-color: #0a58ca;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}

.btn-check:checked + .btn-primary, #changelist #changelist-form .paginator .btn-check:checked + input[type=submit], #changelist #changelist-form .actions .btn-check:checked + button, #changelist #toolbar #changelist-search .btn-check:checked + input[type=submit], body.login .submit-row .btn-check:checked + input[type=submit], .submit-row .btn-check:checked + input[type=submit]:not([class*=btn-]):first-child, .submit-row .btn-check:checked + input[type=button]:not([class*=btn-]):first-child, .submit-row .btn-check:checked + button:not([class*=btn-]):first-child, .btn-check:active + .btn-primary, #changelist #changelist-form .paginator .btn-check:active + input[type=submit], #changelist #changelist-form .actions .btn-check:active + button, #changelist #toolbar #changelist-search .btn-check:active + input[type=submit], body.login .submit-row .btn-check:active + input[type=submit], .submit-row .btn-check:active + input[type=submit]:not([class*=btn-]):first-child, .submit-row .btn-check:active + input[type=button]:not([class*=btn-]):first-child, .submit-row .btn-check:active + button:not([class*=btn-]):first-child, .btn-primary:active, #changelist #changelist-form .paginator input[type=submit]:active, #changelist #changelist-form .actions button:active, #changelist #toolbar #changelist-search input[type=submit]:active, body.login .submit-row input[type=submit]:active, .submit-row input[type=submit]:active:not([class*=btn-]):first-child, .submit-row input[type=button]:active:not([class*=btn-]):first-child, .submit-row button:active:not([class*=btn-]):first-child, .btn-primary.active, #changelist #changelist-form .paginator input.active[type=submit], #changelist #changelist-form .actions button.active, #changelist #toolbar #changelist-search input.active[type=submit], body.login .submit-row input.active[type=submit], .submit-row input.active[type=submit]:not([class*=btn-]):first-child, .submit-row input.active[type=button]:not([class*=btn-]):first-child, .submit-row button.active:not([class*=btn-]):first-child, .show > .btn-primary.dropdown-toggle, #changelist #changelist-form .paginator .show > input.dropdown-toggle[type=submit], #changelist #changelist-form .actions .show > button.dropdown-toggle, #changelist #toolbar #changelist-search .show > input.dropdown-toggle[type=submit], body.login .submit-row .show > input.dropdown-toggle[type=submit], .submit-row .show > input.dropdown-toggle[type=submit]:not([class*=btn-]):first-child, .submit-row .show > input.dropdown-toggle[type=button]:not([class*=btn-]):first-child, .submit-row .show > button.dropdown-toggle:not([class*=btn-]):first-child {
    color: #fff;
    background-color: #0a58ca;
    border-color: #0a53be;
}

.btn-check:checked + .btn-primary:focus, #changelist #changelist-form .paginator .btn-check:checked + input[type=submit]:focus, #changelist #changelist-form .actions .btn-check:checked + button:focus, #changelist #toolbar #changelist-search .btn-check:checked + input[type=submit]:focus, body.login .submit-row .btn-check:checked + input[type=submit]:focus, .submit-row .btn-check:checked + input[type=submit]:focus:not([class*=btn-]):first-child, .submit-row .btn-check:checked + input[type=button]:focus:not([class*=btn-]):first-child, .submit-row .btn-check:checked + button:focus:not([class*=btn-]):first-child, .btn-check:active + .btn-primary:focus, #changelist #changelist-form .paginator .btn-check:active + input[type=submit]:focus, #changelist #changelist-form .actions .btn-check:active + button:focus, #changelist #toolbar #changelist-search .btn-check:active + input[type=submit]:focus, body.login .submit-row .btn-check:active + input[type=submit]:focus, .submit-row .btn-check:active + input[type=submit]:focus:not([class*=btn-]):first-child, .submit-row .btn-check:active + input[type=button]:focus:not([class*=btn-]):first-child, .submit-row .btn-check:active + button:focus:not([class*=btn-]):first-child, .btn-primary:active:focus, #changelist #changelist-form .paginator input[type=submit]:active:focus, #changelist #changelist-form .actions button:active:focus, #changelist #toolbar #changelist-search input[type=submit]:active:focus, body.login .submit-row input[type=submit]:active:focus, .submit-row input[type=submit]:active:focus:not([class*=btn-]):first-child, .submit-row input[type=button]:active:focus:not([class*=btn-]):first-child, .submit-row button:active:focus:not([class*=btn-]):first-child, .btn-primary.active:focus, #changelist #changelist-form .paginator input.active[type=submit]:focus, #changelist #changelist-form .actions button.active:focus, #changelist #toolbar #changelist-search input.active[type=submit]:focus, body.login .submit-row input.active[type=submit]:focus, .submit-row input.active[type=submit]:focus:not([class*=btn-]):first-child, .submit-row input.active[type=button]:focus:not([class*=btn-]):first-child, .submit-row button.active:focus:not([class*=btn-]):first-child, .show > .btn-primary.dropdown-toggle:focus, #changelist #changelist-form .paginator .show > input.dropdown-toggle[type=submit]:focus, #changelist #changelist-form .actions .show > button.dropdown-toggle:focus, #changelist #toolbar #changelist-search .show > input.dropdown-toggle[type=submit]:focus, body.login .submit-row .show > input.dropdown-toggle[type=submit]:focus, .submit-row .show > input.dropdown-toggle[type=submit]:focus:not([class*=btn-]):first-child, .submit-row .show > input.dropdown-toggle[type=button]:focus:not([class*=btn-]):first-child, .submit-row .show > button.dropdown-toggle:focus:not([class*=btn-]):first-child {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}

.btn-primary:disabled, #changelist #changelist-form .paginator input[type=submit]:disabled, #changelist #changelist-form .actions button:disabled, #changelist #toolbar #changelist-search input[type=submit]:disabled, body.login .submit-row input[type=submit]:disabled, .submit-row input[type=submit]:disabled:not([class*=btn-]):first-child, .submit-row input[type=button]:disabled:not([class*=btn-]):first-child, .submit-row button:disabled:not([class*=btn-]):first-child, .btn-primary.disabled, #changelist #changelist-form .paginator input.disabled[type=submit], #changelist #changelist-form .actions button.disabled, #changelist #toolbar #changelist-search input.disabled[type=submit], body.login .submit-row input.disabled[type=submit], .submit-row input.disabled[type=submit]:not([class*=btn-]):first-child, .submit-row input.disabled[type=button]:not([class*=btn-]):first-child, .submit-row button.disabled:not([class*=btn-]):first-child {
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn-secondary, #changelist #changelist-form .actions button, .submit-row input[type=submit]:not([class*=btn-]), .submit-row input[type=button]:not([class*=btn-]), .submit-row button:not([class*=btn-]), body.delete-confirmation .content-wrap input[type=button], body.delete-confirmation .content-wrap button {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn-secondary:hover, #changelist #changelist-form .actions button:hover, .submit-row input[type=submit]:hover:not([class*=btn-]), .submit-row input[type=button]:hover:not([class*=btn-]), .submit-row button:hover:not([class*=btn-]), body.delete-confirmation .content-wrap input[type=button]:hover, body.delete-confirmation .content-wrap button:hover {
    color: #fff;
    background-color: #5c636a;
    border-color: #565e64;
}

.btn-check:focus + .btn-secondary, #changelist #changelist-form .actions .btn-check:focus + button, .submit-row .btn-check:focus + input[type=submit]:not([class*=btn-]), .submit-row .btn-check:focus + input[type=button]:not([class*=btn-]), .submit-row .btn-check:focus + button:not([class*=btn-]), body.delete-confirmation .content-wrap .btn-check:focus + input[type=button], body.delete-confirmation .content-wrap .btn-check:focus + button, .btn-secondary:focus, #changelist #changelist-form .actions button:focus, .submit-row input[type=submit]:focus:not([class*=btn-]), .submit-row input[type=button]:focus:not([class*=btn-]), .submit-row button:focus:not([class*=btn-]), body.delete-confirmation .content-wrap input[type=button]:focus, body.delete-confirmation .content-wrap button:focus {
    color: #fff;
    background-color: #5c636a;
    border-color: #565e64;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}

.btn-check:checked + .btn-secondary, #changelist #changelist-form .actions .btn-check:checked + button, .submit-row .btn-check:checked + input[type=submit]:not([class*=btn-]), .submit-row .btn-check:checked + input[type=button]:not([class*=btn-]), .submit-row .btn-check:checked + button:not([class*=btn-]), body.delete-confirmation .content-wrap .btn-check:checked + input[type=button], body.delete-confirmation .content-wrap .btn-check:checked + button, .btn-check:active + .btn-secondary, #changelist #changelist-form .actions .btn-check:active + button, .submit-row .btn-check:active + input[type=submit]:not([class*=btn-]), .submit-row .btn-check:active + input[type=button]:not([class*=btn-]), .submit-row .btn-check:active + button:not([class*=btn-]), body.delete-confirmation .content-wrap .btn-check:active + input[type=button], body.delete-confirmation .content-wrap .btn-check:active + button, .btn-secondary:active, #changelist #changelist-form .actions button:active, .submit-row input[type=submit]:active:not([class*=btn-]), .submit-row input[type=button]:active:not([class*=btn-]), .submit-row button:active:not([class*=btn-]), body.delete-confirmation .content-wrap input[type=button]:active, body.delete-confirmation .content-wrap button:active, .btn-secondary.active, #changelist #changelist-form .actions button.active, .submit-row input.active[type=submit]:not([class*=btn-]), .submit-row input.active[type=button]:not([class*=btn-]), .submit-row button.active:not([class*=btn-]), body.delete-confirmation .content-wrap input.active[type=button], body.delete-confirmation .content-wrap button.active, .show > .btn-secondary.dropdown-toggle, #changelist #changelist-form .actions .show > button.dropdown-toggle, .submit-row .show > input.dropdown-toggle[type=submit]:not([class*=btn-]), .submit-row .show > input.dropdown-toggle[type=button]:not([class*=btn-]), .submit-row .show > button.dropdown-toggle:not([class*=btn-]), body.delete-confirmation .content-wrap .show > input.dropdown-toggle[type=button], body.delete-confirmation .content-wrap .show > button.dropdown-toggle {
    color: #fff;
    background-color: #565e64;
    border-color: #51585e;
}

.btn-check:checked + .btn-secondary:focus, #changelist #changelist-form .actions .btn-check:checked + button:focus, .submit-row .btn-check:checked + input[type=submit]:focus:not([class*=btn-]), .submit-row .btn-check:checked + input[type=button]:focus:not([class*=btn-]), .submit-row .btn-check:checked + button:focus:not([class*=btn-]), body.delete-confirmation .content-wrap .btn-check:checked + input[type=button]:focus, body.delete-confirmation .content-wrap .btn-check:checked + button:focus, .btn-check:active + .btn-secondary:focus, #changelist #changelist-form .actions .btn-check:active + button:focus, .submit-row .btn-check:active + input[type=submit]:focus:not([class*=btn-]), .submit-row .btn-check:active + input[type=button]:focus:not([class*=btn-]), .submit-row .btn-check:active + button:focus:not([class*=btn-]), body.delete-confirmation .content-wrap .btn-check:active + input[type=button]:focus, body.delete-confirmation .content-wrap .btn-check:active + button:focus, .btn-secondary:active:focus, #changelist #changelist-form .actions button:active:focus, .submit-row input[type=submit]:active:focus:not([class*=btn-]), .submit-row input[type=button]:active:focus:not([class*=btn-]), .submit-row button:active:focus:not([class*=btn-]), body.delete-confirmation .content-wrap input[type=button]:active:focus, body.delete-confirmation .content-wrap button:active:focus, .btn-secondary.active:focus, #changelist #changelist-form .actions button.active:focus, .submit-row input.active[type=submit]:focus:not([class*=btn-]), .submit-row input.active[type=button]:focus:not([class*=btn-]), .submit-row button.active:focus:not([class*=btn-]), body.delete-confirmation .content-wrap input.active[type=button]:focus, body.delete-confirmation .content-wrap button.active:focus, .show > .btn-secondary.dropdown-toggle:focus, #changelist #changelist-form .actions .show > button.dropdown-toggle:focus, .submit-row .show > input.dropdown-toggle[type=submit]:focus:not([class*=btn-]), .submit-row .show > input.dropdown-toggle[type=button]:focus:not([class*=btn-]), .submit-row .show > button.dropdown-toggle:focus:not([class*=btn-]), body.delete-confirmation .content-wrap .show > input.dropdown-toggle[type=button]:focus, body.delete-confirmation .content-wrap .show > button.dropdown-toggle:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}

.btn-secondary:disabled, #changelist #changelist-form .actions button:disabled, .submit-row input[type=submit]:disabled:not([class*=btn-]), .submit-row input[type=button]:disabled:not([class*=btn-]), .submit-row button:disabled:not([class*=btn-]), body.delete-confirmation .content-wrap input[type=button]:disabled, body.delete-confirmation .content-wrap button:disabled, .btn-secondary.disabled, #changelist #changelist-form .actions button.disabled, .submit-row input.disabled[type=submit]:not([class*=btn-]), .submit-row input.disabled[type=button]:not([class*=btn-]), .submit-row button.disabled:not([class*=btn-]), body.delete-confirmation .content-wrap input.disabled[type=button], body.delete-confirmation .content-wrap button.disabled {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn-success, #toolbar > .object-tools > li > a:not([class*=btn-]).addlink, #content-main > .object-tools > li > a:not([class*=btn-]).addlink {
    color: #fff;
    background-color: #198754;
    border-color: #198754;
}

.btn-success:hover, #toolbar > .object-tools > li > a.addlink:hover:not([class*=btn-]), #content-main > .object-tools > li > a.addlink:hover:not([class*=btn-]) {
    color: #fff;
    background-color: #157347;
    border-color: #146c43;
}

.btn-check:focus + .btn-success, #toolbar > .object-tools > li > .btn-check:focus + a:not([class*=btn-]).addlink, #content-main > .object-tools > li > .btn-check:focus + a:not([class*=btn-]).addlink, .btn-success:focus, #toolbar > .object-tools > li > a.addlink:focus:not([class*=btn-]), #content-main > .object-tools > li > a.addlink:focus:not([class*=btn-]) {
    color: #fff;
    background-color: #157347;
    border-color: #146c43;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
}

.btn-check:checked + .btn-success, #toolbar > .object-tools > li > .btn-check:checked + a:not([class*=btn-]).addlink, #content-main > .object-tools > li > .btn-check:checked + a:not([class*=btn-]).addlink, .btn-check:active + .btn-success, #toolbar > .object-tools > li > .btn-check:active + a:not([class*=btn-]).addlink, #content-main > .object-tools > li > .btn-check:active + a:not([class*=btn-]).addlink, .btn-success:active, #toolbar > .object-tools > li > a.addlink:active:not([class*=btn-]), #content-main > .object-tools > li > a.addlink:active:not([class*=btn-]), .btn-success.active, #toolbar > .object-tools > li > a.active.addlink:not([class*=btn-]), #content-main > .object-tools > li > a.active.addlink:not([class*=btn-]), .show > .btn-success.dropdown-toggle, #toolbar > .object-tools > li.show > a.dropdown-toggle.addlink:not([class*=btn-]), #content-main > .object-tools > li.show > a.dropdown-toggle.addlink:not([class*=btn-]) {
    color: #fff;
    background-color: #146c43;
    border-color: #13653f;
}

.btn-check:checked + .btn-success:focus, #toolbar > .object-tools > li > .btn-check:checked + a.addlink:focus:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:checked + a.addlink:focus:not([class*=btn-]), .btn-check:active + .btn-success:focus, #toolbar > .object-tools > li > .btn-check:active + a.addlink:focus:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:active + a.addlink:focus:not([class*=btn-]), .btn-success:active:focus, #toolbar > .object-tools > li > a.addlink:active:focus:not([class*=btn-]), #content-main > .object-tools > li > a.addlink:active:focus:not([class*=btn-]), .btn-success.active:focus, #toolbar > .object-tools > li > a.active.addlink:focus:not([class*=btn-]), #content-main > .object-tools > li > a.active.addlink:focus:not([class*=btn-]), .show > .btn-success.dropdown-toggle:focus, #toolbar > .object-tools > li.show > a.dropdown-toggle.addlink:focus:not([class*=btn-]), #content-main > .object-tools > li.show > a.dropdown-toggle.addlink:focus:not([class*=btn-]) {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
}

.btn-success:disabled, #toolbar > .object-tools > li > a.addlink:disabled:not([class*=btn-]), #content-main > .object-tools > li > a.addlink:disabled:not([class*=btn-]), .btn-success.disabled, #toolbar > .object-tools > li > a.disabled.addlink:not([class*=btn-]), #content-main > .object-tools > li > a.disabled.addlink:not([class*=btn-]) {
    color: #fff;
    background-color: #198754;
    border-color: #198754;
}

.btn-info, #toolbar > .object-tools > li > a:not([class*=btn-]), #content-main > .object-tools > li > a:not([class*=btn-]) {
    color: #000;
    background-color: #0dcaf0;
    border-color: #0dcaf0;
}

.btn-info:hover, #toolbar > .object-tools > li > a:hover:not([class*=btn-]), #content-main > .object-tools > li > a:hover:not([class*=btn-]) {
    color: #000;
    background-color: #31d2f2;
    border-color: #25cff2;
}

.btn-check:focus + .btn-info, #toolbar > .object-tools > li > .btn-check:focus + a:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:focus + a:not([class*=btn-]), .btn-info:focus, #toolbar > .object-tools > li > a:focus:not([class*=btn-]), #content-main > .object-tools > li > a:focus:not([class*=btn-]) {
    color: #000;
    background-color: #31d2f2;
    border-color: #25cff2;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
}

.btn-check:checked + .btn-info, #toolbar > .object-tools > li > .btn-check:checked + a:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:checked + a:not([class*=btn-]), .btn-check:active + .btn-info, #toolbar > .object-tools > li > .btn-check:active + a:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:active + a:not([class*=btn-]), .btn-info:active, #toolbar > .object-tools > li > a:active:not([class*=btn-]), #content-main > .object-tools > li > a:active:not([class*=btn-]), .btn-info.active, #toolbar > .object-tools > li > a.active:not([class*=btn-]), #content-main > .object-tools > li > a.active:not([class*=btn-]), .show > .btn-info.dropdown-toggle, #toolbar > .object-tools > li.show > a.dropdown-toggle:not([class*=btn-]), #content-main > .object-tools > li.show > a.dropdown-toggle:not([class*=btn-]) {
    color: #000;
    background-color: #3dd5f3;
    border-color: #25cff2;
}

.btn-check:checked + .btn-info:focus, #toolbar > .object-tools > li > .btn-check:checked + a:focus:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:checked + a:focus:not([class*=btn-]), .btn-check:active + .btn-info:focus, #toolbar > .object-tools > li > .btn-check:active + a:focus:not([class*=btn-]), #content-main > .object-tools > li > .btn-check:active + a:focus:not([class*=btn-]), .btn-info:active:focus, #toolbar > .object-tools > li > a:active:focus:not([class*=btn-]), #content-main > .object-tools > li > a:active:focus:not([class*=btn-]), .btn-info.active:focus, #toolbar > .object-tools > li > a.active:focus:not([class*=btn-]), #content-main > .object-tools > li > a.active:focus:not([class*=btn-]), .show > .btn-info.dropdown-toggle:focus, #toolbar > .object-tools > li.show > a.dropdown-toggle:focus:not([class*=btn-]), #content-main > .object-tools > li.show > a.dropdown-toggle:focus:not([class*=btn-]) {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
}

.btn-info:disabled, #toolbar > .object-tools > li > a:disabled:not([class*=btn-]), #content-main > .object-tools > li > a:disabled:not([class*=btn-]), .btn-info.disabled, #toolbar > .object-tools > li > a.disabled:not([class*=btn-]), #content-main > .object-tools > li > a.disabled:not([class*=btn-]) {
    color: #000;
    background-color: #0dcaf0;
    border-color: #0dcaf0;
}

.btn-warning {
    color: #000;
    background-color: #ffc107;
    border-color: #ffc107;
}

.btn-warning:hover {
    color: #000;
    background-color: #ffca2c;
    border-color: #ffc720;
}

.btn-check:focus + .btn-warning, .btn-warning:focus {
    color: #000;
    background-color: #ffca2c;
    border-color: #ffc720;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
}

.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle {
    color: #000;
    background-color: #ffcd39;
    border-color: #ffc720;
}

.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
}

.btn-warning:disabled, .btn-warning.disabled {
    color: #000;
    background-color: #ffc107;
    border-color: #ffc107;
}

.btn-danger, body.delete-confirmation .content-wrap input[type=submit] {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn-danger:hover, body.delete-confirmation .content-wrap input[type=submit]:hover {
    color: #fff;
    background-color: #bb2d3b;
    border-color: #b02a37;
}

.btn-check:focus + .btn-danger, body.delete-confirmation .content-wrap .btn-check:focus + input[type=submit], .btn-danger:focus, body.delete-confirmation .content-wrap input[type=submit]:focus {
    color: #fff;
    background-color: #bb2d3b;
    border-color: #b02a37;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
}

.btn-check:checked + .btn-danger, body.delete-confirmation .content-wrap .btn-check:checked + input[type=submit], .btn-check:active + .btn-danger, body.delete-confirmation .content-wrap .btn-check:active + input[type=submit], .btn-danger:active, body.delete-confirmation .content-wrap input[type=submit]:active, .btn-danger.active, body.delete-confirmation .content-wrap input.active[type=submit], .show > .btn-danger.dropdown-toggle, body.delete-confirmation .content-wrap .show > input.dropdown-toggle[type=submit] {
    color: #fff;
    background-color: #b02a37;
    border-color: #a52834;
}

.btn-check:checked + .btn-danger:focus, body.delete-confirmation .content-wrap .btn-check:checked + input[type=submit]:focus, .btn-check:active + .btn-danger:focus, body.delete-confirmation .content-wrap .btn-check:active + input[type=submit]:focus, .btn-danger:active:focus, body.delete-confirmation .content-wrap input[type=submit]:active:focus, .btn-danger.active:focus, body.delete-confirmation .content-wrap input.active[type=submit]:focus, .show > .btn-danger.dropdown-toggle:focus, body.delete-confirmation .content-wrap .show > input.dropdown-toggle[type=submit]:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
}

.btn-danger:disabled, body.delete-confirmation .content-wrap input[type=submit]:disabled, .btn-danger.disabled, body.delete-confirmation .content-wrap input.disabled[type=submit] {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn-light {
    color: #000;
    background-color: #f8f9fa;
    border-color: #f8f9fa;
}

.btn-light:hover {
    color: #000;
    background-color: #f9fafb;
    border-color: #f9fafb;
}

.btn-check:focus + .btn-light, .btn-light:focus {
    color: #000;
    background-color: #f9fafb;
    border-color: #f9fafb;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
}

.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle {
    color: #000;
    background-color: #f9fafb;
    border-color: #f9fafb;
}

.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
}

.btn-light:disabled, .btn-light.disabled {
    color: #000;
    background-color: #f8f9fa;
    border-color: #f8f9fa;
}

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

.btn-dark:hover {
    color: #fff;
    background-color: #1c1f23;
    border-color: #1a1e21;
}

.btn-check:focus + .btn-dark, .btn-dark:focus {
    color: #fff;
    background-color: #1c1f23;
    border-color: #1a1e21;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 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: #1a1e21;
    border-color: #191c1f;
}

.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 {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
}

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

.btn-outline-primary {
    color: #0d6efd;
    border-color: #0d6efd;
}

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

.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 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: #0d6efd;
    border-color: #0d6efd;
}

.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 {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}

.btn-outline-primary:disabled, .btn-outline-primary.disabled {
    color: #0d6efd;
    background-color: transparent;
}

.btn-outline-secondary {
    color: #6c757d;
    border-color: #6c757d;
}

.btn-outline-secondary:hover {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
}

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

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

.btn-outline-secondary:disabled, .btn-outline-secondary.disabled {
    color: #6c757d;
    background-color: transparent;
}

.btn-outline-success {
    color: #198754;
    border-color: #198754;
}

.btn-outline-success:hover {
    color: #fff;
    background-color: #198754;
    border-color: #198754;
}

.btn-check:focus + .btn-outline-success, .btn-outline-success:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);
}

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

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

.btn-outline-success:disabled, .btn-outline-success.disabled {
    color: #198754;
    background-color: transparent;
}

.btn-outline-info {
    color: #0dcaf0;
    border-color: #0dcaf0;
}

.btn-outline-info:hover {
    color: #000;
    background-color: #0dcaf0;
    border-color: #0dcaf0;
}

.btn-check:focus + .btn-outline-info, .btn-outline-info:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
}

.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show {
    color: #000;
    background-color: #0dcaf0;
    border-color: #0dcaf0;
}

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

.btn-outline-info:disabled, .btn-outline-info.disabled {
    color: #0dcaf0;
    background-color: transparent;
}

.btn-outline-warning {
    color: #ffc107;
    border-color: #ffc107;
}

.btn-outline-warning:hover {
    color: #000;
    background-color: #ffc107;
    border-color: #ffc107;
}

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

.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show {
    color: #000;
    background-color: #ffc107;
    border-color: #ffc107;
}

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

.btn-outline-warning:disabled, .btn-outline-warning.disabled {
    color: #ffc107;
    background-color: transparent;
}

.btn-outline-danger, .submit-row .deletelink-box .deletelink {
    color: #dc3545;
    border-color: #dc3545;
}

.btn-outline-danger:hover, .submit-row .deletelink-box .deletelink:hover {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn-check:focus + .btn-outline-danger, .submit-row .deletelink-box .btn-check:focus + .deletelink, .btn-outline-danger:focus, .submit-row .deletelink-box .deletelink:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
}

.btn-check:checked + .btn-outline-danger, .submit-row .deletelink-box .btn-check:checked + .deletelink, .btn-check:active + .btn-outline-danger, .submit-row .deletelink-box .btn-check:active + .deletelink, .btn-outline-danger:active, .submit-row .deletelink-box .deletelink:active, .btn-outline-danger.active, .submit-row .deletelink-box .active.deletelink, .btn-outline-danger.dropdown-toggle.show, .submit-row .deletelink-box .dropdown-toggle.show.deletelink {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn-check:checked + .btn-outline-danger:focus, .submit-row .deletelink-box .btn-check:checked + .deletelink:focus, .btn-check:active + .btn-outline-danger:focus, .submit-row .deletelink-box .btn-check:active + .deletelink:focus, .btn-outline-danger:active:focus, .submit-row .deletelink-box .deletelink:active:focus, .btn-outline-danger.active:focus, .submit-row .deletelink-box .active.deletelink:focus, .btn-outline-danger.dropdown-toggle.show:focus, .submit-row .deletelink-box .dropdown-toggle.show.deletelink:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
}

.btn-outline-danger:disabled, .submit-row .deletelink-box .deletelink:disabled, .btn-outline-danger.disabled, .submit-row .deletelink-box .disabled.deletelink {
    color: #dc3545;
    background-color: transparent;
}

.btn-outline-light {
    color: #f8f9fa;
    border-color: #f8f9fa;
}

.btn-outline-light:hover {
    color: #000;
    background-color: #f8f9fa;
    border-color: #f8f9fa;
}

.btn-check:focus + .btn-outline-light, .btn-outline-light:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
}

.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show {
    color: #000;
    background-color: #f8f9fa;
    border-color: #f8f9fa;
}

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

.btn-outline-light:disabled, .btn-outline-light.disabled {
    color: #f8f9fa;
    background-color: transparent;
}

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

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

.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 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: #212529;
    border-color: #212529;
}

.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 {
    -webkit-box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
}

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

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

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

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

.btn-lg, body.login .submit-row input[type=submit], .submit-row input[type=submit]:not([class*=btn-]), .submit-row input[type=button]:not([class*=btn-]), .submit-row button:not([class*=btn-]), body.delete-confirmation .content-wrap input[type=button], body.delete-confirmation .content-wrap input[type=submit], body.delete-confirmation .content-wrap button, .btn-group-lg > .btn, #changelist #changelist-form .paginator .btn-group-lg > input[type=submit], #changelist #changelist-form .actions .btn-group-lg > button, #changelist #toolbar #changelist-search .btn-group-lg > input[type=submit], body.login .submit-row .btn-group-lg > input[type=submit], #toolbar > .object-tools > li.btn-group-lg > a:not([class*=btn-]), #content-main > .object-tools > li.btn-group-lg > a:not([class*=btn-]), .submit-row .btn-group-lg > button:not([class*=btn-]), .submit-row .deletelink-box .btn-group-lg > .deletelink {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: 0.3rem;
}

.btn-sm, #toolbar > .object-tools > li > a:not([class*=btn-]).addlink, #toolbar > .object-tools > li > a:not([class*=btn-]), #content-main > .object-tools > li > a:not([class*=btn-]).addlink, #content-main > .object-tools > li > a:not([class*=btn-]), .btn-group-sm > .btn, #changelist #changelist-form .paginator .btn-group-sm > input[type=submit], #changelist #changelist-form .actions .btn-group-sm > button, #changelist #toolbar #changelist-search .btn-group-sm > input[type=submit], body.login .submit-row .btn-group-sm > input[type=submit], .submit-row .btn-group-sm > input[type=submit]:not([class*=btn-]), .submit-row .btn-group-sm > input[type=button]:not([class*=btn-]), .submit-row .btn-group-sm > button:not([class*=btn-]), .submit-row .deletelink-box .btn-group-sm > .deletelink, body.delete-confirmation .content-wrap .btn-group-sm > input[type=button], body.delete-confirmation .content-wrap .btn-group-sm > input[type=submit], body.delete-confirmation .content-wrap .btn-group-sm > button {
    padding: 0.35rem 0.75rem;
    font-size: 0.875rem;
    border-radius: 0.2rem;
}

.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;
    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] {
    top: 100%;
    left: 0;
    margin-top: 0.125rem;
}

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

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

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

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

@media (min-width: 576px) {
    .dropdown-menu-sm-start {
        --bs-position: start;
    }

    .dropdown-menu-sm-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

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

    .dropdown-menu-sm-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 768px) {
    .dropdown-menu-md-start {
        --bs-position: start;
    }

    .dropdown-menu-md-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

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

    .dropdown-menu-md-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 992px) {
    .dropdown-menu-lg-start {
        --bs-position: start;
    }

    .dropdown-menu-lg-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

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

    .dropdown-menu-lg-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1200px) {
    .dropdown-menu-xl-start {
        --bs-position: start;
    }

    .dropdown-menu-xl-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

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

    .dropdown-menu-xl-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1400px) {
    .dropdown-menu-xxl-start {
        --bs-position: start;
    }

    .dropdown-menu-xxl-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

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

    .dropdown-menu-xxl-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

.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[data-bs-popper] {
    top: 0;
    right: auto;
    left: 100%;
    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[data-bs-popper] {
    top: 0;
    right: 100%;
    left: auto;
    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.929rem;
    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: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: middle;
}

.btn-group > .btn, #changelist #changelist-form .paginator .btn-group > input[type=submit], #changelist #changelist-form .actions .btn-group > button, #changelist #toolbar #changelist-search .btn-group > input[type=submit], body.login .submit-row .btn-group > input[type=submit], #toolbar > .object-tools > li.btn-group > a:not([class*=btn-]), #content-main > .object-tools > li.btn-group > a:not([class*=btn-]), .submit-row .btn-group > input[type=submit]:not([class*=btn-]), .submit-row .btn-group > input[type=button]:not([class*=btn-]), .submit-row .btn-group > button:not([class*=btn-]), .submit-row .deletelink-box .btn-group > .deletelink, body.delete-confirmation .content-wrap .btn-group > input[type=button], body.delete-confirmation .content-wrap .btn-group > input[type=submit], body.delete-confirmation .content-wrap .btn-group > button,
.btn-group-vertical > .btn,
#changelist #changelist-form .paginator .btn-group-vertical > input[type=submit],
#changelist #changelist-form .actions .btn-group-vertical > button,
#changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit],
body.login .submit-row .btn-group-vertical > input[type=submit],
#toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]),
.submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]),
.submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]),
.submit-row .btn-group-vertical > button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .deletelink,
body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button],
body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit],
body.delete-confirmation .content-wrap .btn-group-vertical > button {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.btn-group > .btn-check:checked + .btn, #changelist #changelist-form .paginator .btn-group > .btn-check:checked + input[type=submit], #changelist #changelist-form .actions .btn-group > .btn-check:checked + button, #changelist #toolbar #changelist-search .btn-group > .btn-check:checked + input[type=submit], body.login .submit-row .btn-group > .btn-check:checked + input[type=submit], #toolbar > .object-tools > li.btn-group > .btn-check:checked + a:not([class*=btn-]).addlink, #toolbar > .object-tools > li.btn-group > .btn-check:checked + a:not([class*=btn-]), #content-main > .object-tools > li.btn-group > .btn-check:checked + a:not([class*=btn-]).addlink, #content-main > .object-tools > li.btn-group > .btn-check:checked + a:not([class*=btn-]), .submit-row .btn-group > .btn-check:checked + input[type=submit]:not([class*=btn-]), .submit-row .btn-group > .btn-check:checked + input[type=button]:not([class*=btn-]), .submit-row .btn-group > .btn-check:checked + button:not([class*=btn-]), .submit-row .deletelink-box .btn-group > .btn-check:checked + .deletelink, body.delete-confirmation .content-wrap .btn-group > .btn-check:checked + input[type=button], body.delete-confirmation .content-wrap .btn-group > .btn-check:checked + input[type=submit], body.delete-confirmation .content-wrap .btn-group > .btn-check:checked + button,
.btn-group > .btn-check:focus + .btn,
#changelist #changelist-form .paginator .btn-group > .btn-check:focus + input[type=submit],
#changelist #changelist-form .actions .btn-group > .btn-check:focus + button,
#changelist #toolbar #changelist-search .btn-group > .btn-check:focus + input[type=submit],
body.login .submit-row .btn-group > .btn-check:focus + input[type=submit],
#toolbar > .object-tools > li.btn-group > .btn-check:focus + a:not([class*=btn-]).addlink,
#toolbar > .object-tools > li.btn-group > .btn-check:focus + a:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > .btn-check:focus + a:not([class*=btn-]).addlink,
#content-main > .object-tools > li.btn-group > .btn-check:focus + a:not([class*=btn-]),
.submit-row .btn-group > .btn-check:focus + input[type=submit]:not([class*=btn-]),
.submit-row .btn-group > .btn-check:focus + input[type=button]:not([class*=btn-]),
.submit-row .btn-group > .btn-check:focus + button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group > .btn-check:focus + .deletelink,
body.delete-confirmation .content-wrap .btn-group > .btn-check:focus + input[type=button],
body.delete-confirmation .content-wrap .btn-group > .btn-check:focus + input[type=submit],
body.delete-confirmation .content-wrap .btn-group > .btn-check:focus + button,
.btn-group > .btn:hover,
#changelist #changelist-form .paginator .btn-group > input[type=submit]:hover,
#changelist #changelist-form .actions .btn-group > button:hover,
#changelist #toolbar #changelist-search .btn-group > input[type=submit]:hover,
body.login .submit-row .btn-group > input[type=submit]:hover,
#toolbar > .object-tools > li.btn-group > a.addlink:hover:not([class*=btn-]),
#toolbar > .object-tools > li.btn-group > a:hover:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > a.addlink:hover:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > a:hover:not([class*=btn-]),
.submit-row .btn-group > input[type=submit]:hover:not([class*=btn-]),
.submit-row .btn-group > input[type=button]:hover:not([class*=btn-]),
.submit-row .btn-group > button:hover:not([class*=btn-]),
.submit-row .deletelink-box .btn-group > .deletelink:hover,
body.delete-confirmation .content-wrap .btn-group > input[type=button]:hover,
body.delete-confirmation .content-wrap .btn-group > input[type=submit]:hover,
body.delete-confirmation .content-wrap .btn-group > button:hover,
.btn-group > .btn:focus,
#changelist #changelist-form .paginator .btn-group > input[type=submit]:focus,
#changelist #changelist-form .actions .btn-group > button:focus,
#changelist #toolbar #changelist-search .btn-group > input[type=submit]:focus,
body.login .submit-row .btn-group > input[type=submit]:focus,
#toolbar > .object-tools > li.btn-group > a.addlink:focus:not([class*=btn-]),
#toolbar > .object-tools > li.btn-group > a:focus:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > a.addlink:focus:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > a:focus:not([class*=btn-]),
.submit-row .btn-group > input[type=submit]:focus:not([class*=btn-]),
.submit-row .btn-group > input[type=button]:focus:not([class*=btn-]),
.submit-row .btn-group > button:focus:not([class*=btn-]),
.submit-row .deletelink-box .btn-group > .deletelink:focus,
body.delete-confirmation .content-wrap .btn-group > input[type=button]:focus,
body.delete-confirmation .content-wrap .btn-group > input[type=submit]:focus,
body.delete-confirmation .content-wrap .btn-group > button:focus,
.btn-group > .btn:active,
#changelist #changelist-form .paginator .btn-group > input[type=submit]:active,
#changelist #changelist-form .actions .btn-group > button:active,
#changelist #toolbar #changelist-search .btn-group > input[type=submit]:active,
body.login .submit-row .btn-group > input[type=submit]:active,
#toolbar > .object-tools > li.btn-group > a.addlink:active:not([class*=btn-]),
#toolbar > .object-tools > li.btn-group > a:active:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > a.addlink:active:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > a:active:not([class*=btn-]),
.submit-row .btn-group > input[type=submit]:active:not([class*=btn-]),
.submit-row .btn-group > input[type=button]:active:not([class*=btn-]),
.submit-row .btn-group > button:active:not([class*=btn-]),
.submit-row .deletelink-box .btn-group > .deletelink:active,
body.delete-confirmation .content-wrap .btn-group > input[type=button]:active,
body.delete-confirmation .content-wrap .btn-group > input[type=submit]:active,
body.delete-confirmation .content-wrap .btn-group > button:active,
.btn-group > .btn.active,
#changelist #changelist-form .paginator .btn-group > input.active[type=submit],
#changelist #changelist-form .actions .btn-group > button.active,
#changelist #toolbar #changelist-search .btn-group > input.active[type=submit],
body.login .submit-row .btn-group > input.active[type=submit],
#toolbar > .object-tools > li.btn-group > a.active.addlink:not([class*=btn-]),
#toolbar > .object-tools > li.btn-group > a.active:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > a.active.addlink:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > a.active:not([class*=btn-]),
.submit-row .btn-group > input.active[type=submit]:not([class*=btn-]),
.submit-row .btn-group > input.active[type=button]:not([class*=btn-]),
.submit-row .btn-group > button.active:not([class*=btn-]),
.submit-row .deletelink-box .btn-group > .active.deletelink,
body.delete-confirmation .content-wrap .btn-group > input.active[type=button],
body.delete-confirmation .content-wrap .btn-group > input.active[type=submit],
body.delete-confirmation .content-wrap .btn-group > button.active,
.btn-group-vertical > .btn-check:checked + .btn,
#changelist #changelist-form .paginator .btn-group-vertical > .btn-check:checked + input[type=submit],
#changelist #changelist-form .actions .btn-group-vertical > .btn-check:checked + button,
#changelist #toolbar #changelist-search .btn-group-vertical > .btn-check:checked + input[type=submit],
body.login .submit-row .btn-group-vertical > .btn-check:checked + input[type=submit],
#toolbar > .object-tools > li.btn-group-vertical > .btn-check:checked + a:not([class*=btn-]).addlink,
#toolbar > .object-tools > li.btn-group-vertical > .btn-check:checked + a:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > .btn-check:checked + a:not([class*=btn-]).addlink,
#content-main > .object-tools > li.btn-group-vertical > .btn-check:checked + a:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-check:checked + input[type=submit]:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-check:checked + input[type=button]:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-check:checked + button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .btn-check:checked + .deletelink,
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-check:checked + input[type=button],
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-check:checked + input[type=submit],
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-check:checked + button,
.btn-group-vertical > .btn-check:focus + .btn,
#changelist #changelist-form .paginator .btn-group-vertical > .btn-check:focus + input[type=submit],
#changelist #changelist-form .actions .btn-group-vertical > .btn-check:focus + button,
#changelist #toolbar #changelist-search .btn-group-vertical > .btn-check:focus + input[type=submit],
body.login .submit-row .btn-group-vertical > .btn-check:focus + input[type=submit],
#toolbar > .object-tools > li.btn-group-vertical > .btn-check:focus + a:not([class*=btn-]).addlink,
#toolbar > .object-tools > li.btn-group-vertical > .btn-check:focus + a:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > .btn-check:focus + a:not([class*=btn-]).addlink,
#content-main > .object-tools > li.btn-group-vertical > .btn-check:focus + a:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-check:focus + input[type=submit]:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-check:focus + input[type=button]:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-check:focus + button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .btn-check:focus + .deletelink,
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-check:focus + input[type=button],
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-check:focus + input[type=submit],
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-check:focus + button,
.btn-group-vertical > .btn:hover,
#changelist #changelist-form .paginator .btn-group-vertical > input[type=submit]:hover,
#changelist #changelist-form .actions .btn-group-vertical > button:hover,
#changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit]:hover,
body.login .submit-row .btn-group-vertical > input[type=submit]:hover,
#toolbar > .object-tools > li.btn-group-vertical > a.addlink:hover:not([class*=btn-]),
#toolbar > .object-tools > li.btn-group-vertical > a:hover:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a.addlink:hover:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a:hover:not([class*=btn-]),
.submit-row .btn-group-vertical > input[type=submit]:hover:not([class*=btn-]),
.submit-row .btn-group-vertical > input[type=button]:hover:not([class*=btn-]),
.submit-row .btn-group-vertical > button:hover:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .deletelink:hover,
body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button]:hover,
body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit]:hover,
body.delete-confirmation .content-wrap .btn-group-vertical > button:hover,
.btn-group-vertical > .btn:focus,
#changelist #changelist-form .paginator .btn-group-vertical > input[type=submit]:focus,
#changelist #changelist-form .actions .btn-group-vertical > button:focus,
#changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit]:focus,
body.login .submit-row .btn-group-vertical > input[type=submit]:focus,
#toolbar > .object-tools > li.btn-group-vertical > a.addlink:focus:not([class*=btn-]),
#toolbar > .object-tools > li.btn-group-vertical > a:focus:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a.addlink:focus:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a:focus:not([class*=btn-]),
.submit-row .btn-group-vertical > input[type=submit]:focus:not([class*=btn-]),
.submit-row .btn-group-vertical > input[type=button]:focus:not([class*=btn-]),
.submit-row .btn-group-vertical > button:focus:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .deletelink:focus,
body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button]:focus,
body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit]:focus,
body.delete-confirmation .content-wrap .btn-group-vertical > button:focus,
.btn-group-vertical > .btn:active,
#changelist #changelist-form .paginator .btn-group-vertical > input[type=submit]:active,
#changelist #changelist-form .actions .btn-group-vertical > button:active,
#changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit]:active,
body.login .submit-row .btn-group-vertical > input[type=submit]:active,
#toolbar > .object-tools > li.btn-group-vertical > a.addlink:active:not([class*=btn-]),
#toolbar > .object-tools > li.btn-group-vertical > a:active:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a.addlink:active:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a:active:not([class*=btn-]),
.submit-row .btn-group-vertical > input[type=submit]:active:not([class*=btn-]),
.submit-row .btn-group-vertical > input[type=button]:active:not([class*=btn-]),
.submit-row .btn-group-vertical > button:active:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .deletelink:active,
body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button]:active,
body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit]:active,
body.delete-confirmation .content-wrap .btn-group-vertical > button:active,
.btn-group-vertical > .btn.active,
#changelist #changelist-form .paginator .btn-group-vertical > input.active[type=submit],
#changelist #changelist-form .actions .btn-group-vertical > button.active,
#changelist #toolbar #changelist-search .btn-group-vertical > input.active[type=submit],
body.login .submit-row .btn-group-vertical > input.active[type=submit],
#toolbar > .object-tools > li.btn-group-vertical > a.active.addlink:not([class*=btn-]),
#toolbar > .object-tools > li.btn-group-vertical > a.active:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a.active.addlink:not([class*=btn-]),
#content-main > .object-tools > li.btn-group-vertical > a.active:not([class*=btn-]),
.submit-row .btn-group-vertical > input.active[type=submit]:not([class*=btn-]),
.submit-row .btn-group-vertical > input.active[type=button]:not([class*=btn-]),
.submit-row .btn-group-vertical > button.active:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .active.deletelink,
body.delete-confirmation .content-wrap .btn-group-vertical > input.active[type=button],
body.delete-confirmation .content-wrap .btn-group-vertical > input.active[type=submit],
body.delete-confirmation .content-wrap .btn-group-vertical > button.active {
    z-index: 1;
}

.btn-toolbar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

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

.btn-group > .btn:not(:first-child), #changelist #changelist-form .paginator .btn-group > input[type=submit]:not(:first-child), #changelist #changelist-form .actions .btn-group > button:not(:first-child), #changelist #toolbar #changelist-search .btn-group > input[type=submit]:not(:first-child), body.login .submit-row .btn-group > input[type=submit]:not(:first-child), #toolbar > .object-tools > li.btn-group > a:not(:first-child):not([class*=btn-]), #content-main > .object-tools > li.btn-group > a:not(:first-child):not([class*=btn-]), .submit-row .btn-group > input[type=submit]:not(:first-child):not([class*=btn-]), .submit-row .btn-group > input[type=button]:not(:first-child):not([class*=btn-]), .submit-row .btn-group > button:not(:first-child):not([class*=btn-]), .submit-row .deletelink-box .btn-group > .deletelink:not(:first-child), body.delete-confirmation .content-wrap .btn-group > input[type=button]:not(:first-child), body.delete-confirmation .content-wrap .btn-group > input[type=submit]:not(:first-child), body.delete-confirmation .content-wrap .btn-group > button:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
    margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle), #changelist #changelist-form .paginator .btn-group > input[type=submit]:not(:last-child):not(.dropdown-toggle), #changelist #changelist-form .actions .btn-group > button:not(:last-child):not(.dropdown-toggle), #changelist #toolbar #changelist-search .btn-group > input[type=submit]:not(:last-child):not(.dropdown-toggle), body.login .submit-row .btn-group > input[type=submit]:not(:last-child):not(.dropdown-toggle), #toolbar > .object-tools > li.btn-group > a:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), #content-main > .object-tools > li.btn-group > a:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), .submit-row .btn-group > input[type=submit]:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), .submit-row .btn-group > input[type=button]:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), .submit-row .btn-group > button:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), .submit-row .deletelink-box .btn-group > .deletelink:not(:last-child):not(.dropdown-toggle), body.delete-confirmation .content-wrap .btn-group > input[type=button]:not(:last-child):not(.dropdown-toggle), body.delete-confirmation .content-wrap .btn-group > input[type=submit]:not(:last-child):not(.dropdown-toggle), body.delete-confirmation .content-wrap .btn-group > button:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn,
#changelist #changelist-form .paginator .btn-group > .btn-group:not(:last-child) > input[type=submit],
#changelist #changelist-form .actions .btn-group > .btn-group:not(:last-child) > button,
#changelist #toolbar #changelist-search .btn-group > .btn-group:not(:last-child) > input[type=submit],
body.login .submit-row .btn-group > .btn-group:not(:last-child) > input[type=submit],
#toolbar > .object-tools.btn-group > li.btn-group:not(:last-child) > a:not([class*=btn-]),
#content-main > .object-tools.btn-group > li.btn-group:not(:last-child) > a:not([class*=btn-]),
.submit-row .btn-group > .btn-group:not(:last-child) > input[type=submit]:not([class*=btn-]),
.submit-row .btn-group > .btn-group:not(:last-child) > input[type=button]:not([class*=btn-]),
.submit-row .btn-group > .btn-group:not(:last-child) > button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group > .btn-group:not(:last-child) > .deletelink,
body.delete-confirmation .content-wrap .btn-group > .btn-group:not(:last-child) > input[type=button],
body.delete-confirmation .content-wrap .btn-group > .btn-group:not(:last-child) > input[type=submit],
body.delete-confirmation .content-wrap .btn-group > .btn-group:not(:last-child) > button {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group > .btn:nth-child(n+3), #changelist #changelist-form .paginator .btn-group > input[type=submit]:nth-child(n+3), #changelist #changelist-form .actions .btn-group > button:nth-child(n+3), #changelist #toolbar #changelist-search .btn-group > input[type=submit]:nth-child(n+3), body.login .submit-row .btn-group > input[type=submit]:nth-child(n+3), #toolbar > .object-tools > li.btn-group > a:nth-child(n+3):not([class*=btn-]), #content-main > .object-tools > li.btn-group > a:nth-child(n+3):not([class*=btn-]), .submit-row .btn-group > input[type=submit]:nth-child(n+3):not([class*=btn-]), .submit-row .btn-group > input[type=button]:nth-child(n+3):not([class*=btn-]), .submit-row .btn-group > button:nth-child(n+3):not([class*=btn-]), .submit-row .deletelink-box .btn-group > .deletelink:nth-child(n+3), body.delete-confirmation .content-wrap .btn-group > input[type=button]:nth-child(n+3), body.delete-confirmation .content-wrap .btn-group > input[type=submit]:nth-child(n+3), body.delete-confirmation .content-wrap .btn-group > button:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
#changelist #changelist-form .paginator .btn-group > :not(.btn-check) + input[type=submit],
#changelist #changelist-form .actions .btn-group > :not(.btn-check) + button,
#changelist #toolbar #changelist-search .btn-group > :not(.btn-check) + input[type=submit],
body.login .submit-row .btn-group > :not(.btn-check) + input[type=submit],
#toolbar > .object-tools > li.btn-group > :not(.btn-check) + a:not([class*=btn-]),
#content-main > .object-tools > li.btn-group > :not(.btn-check) + a:not([class*=btn-]),
.submit-row .btn-group > :not(.btn-check) + input[type=submit]:not([class*=btn-]),
.submit-row .btn-group > :not(.btn-check) + input[type=button]:not([class*=btn-]),
.submit-row .btn-group > :not(.btn-check) + button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group > :not(.btn-check) + .deletelink,
body.delete-confirmation .content-wrap .btn-group > :not(.btn-check) + input[type=button],
body.delete-confirmation .content-wrap .btn-group > :not(.btn-check) + input[type=submit],
body.delete-confirmation .content-wrap .btn-group > :not(.btn-check) + button,
.btn-group > .btn-group:not(:first-child) > .btn,
#changelist #changelist-form .paginator .btn-group > .btn-group:not(:first-child) > input[type=submit],
#changelist #changelist-form .actions .btn-group > .btn-group:not(:first-child) > button,
#changelist #toolbar #changelist-search .btn-group > .btn-group:not(:first-child) > input[type=submit],
body.login .submit-row .btn-group > .btn-group:not(:first-child) > input[type=submit],
#toolbar > .object-tools.btn-group > li.btn-group:not(:first-child) > a:not([class*=btn-]),
#content-main > .object-tools.btn-group > li.btn-group:not(:first-child) > a:not([class*=btn-]),
.submit-row .btn-group > .btn-group:not(:first-child) > input[type=submit]:not([class*=btn-]),
.submit-row .btn-group > .btn-group:not(:first-child) > input[type=button]:not([class*=btn-]),
.submit-row .btn-group > .btn-group:not(:first-child) > button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group > .btn-group:not(:first-child) > .deletelink,
body.delete-confirmation .content-wrap .btn-group > .btn-group:not(:first-child) > input[type=button],
body.delete-confirmation .content-wrap .btn-group > .btn-group:not(:first-child) > input[type=submit],
body.delete-confirmation .content-wrap .btn-group > .btn-group:not(:first-child) > button {
    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, #toolbar > .object-tools > li > a:not([class*=btn-]) + .dropdown-toggle-split, #content-main > .object-tools > li > a:not([class*=btn-]) + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split, #changelist #changelist-form .paginator .btn-group-sm > input[type=submit] + .dropdown-toggle-split, #changelist #changelist-form .actions .btn-group-sm > button + .dropdown-toggle-split, #changelist #toolbar #changelist-search .btn-group-sm > input[type=submit] + .dropdown-toggle-split, body.login .submit-row .btn-group-sm > input[type=submit] + .dropdown-toggle-split, .submit-row .btn-group-sm > input[type=submit]:not([class*=btn-]) + .dropdown-toggle-split, .submit-row .btn-group-sm > input[type=button]:not([class*=btn-]) + .dropdown-toggle-split, .submit-row .btn-group-sm > button:not([class*=btn-]) + .dropdown-toggle-split, .submit-row .deletelink-box .btn-group-sm > .deletelink + .dropdown-toggle-split, body.delete-confirmation .content-wrap .btn-group-sm > input[type=button] + .dropdown-toggle-split, body.delete-confirmation .content-wrap .btn-group-sm > input[type=submit] + .dropdown-toggle-split, body.delete-confirmation .content-wrap .btn-group-sm > button + .dropdown-toggle-split {
    padding-right: 0.5625rem;
    padding-left: 0.5625rem;
}

.btn-lg + .dropdown-toggle-split, body.login .submit-row input[type=submit] + .dropdown-toggle-split, .submit-row input[type=submit]:not([class*=btn-]) + .dropdown-toggle-split, .submit-row input[type=button]:not([class*=btn-]) + .dropdown-toggle-split, .submit-row button:not([class*=btn-]) + .dropdown-toggle-split, body.delete-confirmation .content-wrap input[type=button] + .dropdown-toggle-split, body.delete-confirmation .content-wrap input[type=submit] + .dropdown-toggle-split, body.delete-confirmation .content-wrap button + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split, #changelist #changelist-form .paginator .btn-group-lg > input[type=submit] + .dropdown-toggle-split, #changelist #changelist-form .actions .btn-group-lg > button + .dropdown-toggle-split, #changelist #toolbar #changelist-search .btn-group-lg > input[type=submit] + .dropdown-toggle-split, body.login .submit-row .btn-group-lg > input[type=submit] + .dropdown-toggle-split, #toolbar > .object-tools > li.btn-group-lg > a:not([class*=btn-]) + .dropdown-toggle-split, #content-main > .object-tools > li.btn-group-lg > a:not([class*=btn-]) + .dropdown-toggle-split, .submit-row .btn-group-lg > input[type=submit]:not([class*=btn-]) + .dropdown-toggle-split, .submit-row .btn-group-lg > input[type=button]:not([class*=btn-]) + .dropdown-toggle-split, .submit-row .btn-group-lg > button:not([class*=btn-]) + .dropdown-toggle-split, .submit-row .deletelink-box .btn-group-lg > .deletelink + .dropdown-toggle-split, body.delete-confirmation .content-wrap .btn-group-lg > input[type=button] + .dropdown-toggle-split, body.delete-confirmation .content-wrap .btn-group-lg > input[type=submit] + .dropdown-toggle-split, body.delete-confirmation .content-wrap .btn-group-lg > button + .dropdown-toggle-split {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
}

.btn-group-vertical {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.btn-group-vertical > .btn, #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit], #changelist #changelist-form .actions .btn-group-vertical > button, #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit], body.login .submit-row .btn-group-vertical > input[type=submit], #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]), #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]), .submit-row .btn-group-vertical > button:not([class*=btn-]), .submit-row .deletelink-box .btn-group-vertical > .deletelink, body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button], body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit], body.delete-confirmation .content-wrap .btn-group-vertical > button,
.btn-group-vertical > .btn-group {
    width: 100%;
}

.btn-group-vertical > .btn:not(:first-child), #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit]:not(:first-child), #changelist #changelist-form .actions .btn-group-vertical > button:not(:first-child), #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit]:not(:first-child), body.login .submit-row .btn-group-vertical > input[type=submit]:not(:first-child), #toolbar > .object-tools > li.btn-group-vertical > a:not(:first-child):not([class*=btn-]), #content-main > .object-tools > li.btn-group-vertical > a:not(:first-child):not([class*=btn-]), .submit-row .btn-group-vertical > input[type=submit]:not(:first-child):not([class*=btn-]), .submit-row .btn-group-vertical > input[type=button]:not(:first-child):not([class*=btn-]), .submit-row .btn-group-vertical > button:not(:first-child):not([class*=btn-]), .submit-row .deletelink-box .btn-group-vertical > .deletelink:not(:first-child), body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button]:not(:first-child), body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit]:not(:first-child), body.delete-confirmation .content-wrap .btn-group-vertical > button:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
    margin-top: -1px;
}

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit]:not(:last-child):not(.dropdown-toggle), #changelist #changelist-form .actions .btn-group-vertical > button:not(:last-child):not(.dropdown-toggle), #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit]:not(:last-child):not(.dropdown-toggle), body.login .submit-row .btn-group-vertical > input[type=submit]:not(:last-child):not(.dropdown-toggle), #toolbar > .object-tools > li.btn-group-vertical > a:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), #content-main > .object-tools > li.btn-group-vertical > a:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), .submit-row .btn-group-vertical > input[type=submit]:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), .submit-row .btn-group-vertical > input[type=button]:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), .submit-row .btn-group-vertical > button:not(:last-child):not(.dropdown-toggle):not([class*=btn-]), .submit-row .deletelink-box .btn-group-vertical > .deletelink:not(:last-child):not(.dropdown-toggle), body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button]:not(:last-child):not(.dropdown-toggle), body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit]:not(:last-child):not(.dropdown-toggle), body.delete-confirmation .content-wrap .btn-group-vertical > button:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn,
#changelist #changelist-form .paginator .btn-group-vertical > .btn-group:not(:last-child) > input[type=submit],
#changelist #changelist-form .actions .btn-group-vertical > .btn-group:not(:last-child) > button,
#changelist #toolbar #changelist-search .btn-group-vertical > .btn-group:not(:last-child) > input[type=submit],
body.login .submit-row .btn-group-vertical > .btn-group:not(:last-child) > input[type=submit],
#toolbar > .object-tools.btn-group-vertical > li.btn-group:not(:last-child) > a:not([class*=btn-]),
#content-main > .object-tools.btn-group-vertical > li.btn-group:not(:last-child) > a:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-group:not(:last-child) > input[type=submit]:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-group:not(:last-child) > input[type=button]:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-group:not(:last-child) > button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .btn-group:not(:last-child) > .deletelink,
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-group:not(:last-child) > input[type=button],
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-group:not(:last-child) > input[type=submit],
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-group:not(:last-child) > button {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn ~ .btn, #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ .btn, #changelist #changelist-form .paginator .btn-group-vertical > .btn ~ input[type=submit], #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #changelist-form .actions .btn-group-vertical > button ~ .btn, #changelist #changelist-form .actions .paginator .btn-group-vertical > button ~ input[type=submit], #changelist #changelist-form .paginator .actions .btn-group-vertical > button ~ input[type=submit], #changelist #changelist-form .actions .btn-group-vertical > .btn ~ button, #changelist #changelist-form .actions .paginator .btn-group-vertical > input[type=submit] ~ button, #changelist #changelist-form .paginator .actions .btn-group-vertical > input[type=submit] ~ button, #changelist #changelist-form .actions .btn-group-vertical > button ~ button, #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ .btn, #changelist #toolbar #changelist-search #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #changelist-form .paginator #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #toolbar #changelist-search #changelist-form .actions .btn-group-vertical > input[type=submit] ~ button, #changelist #changelist-form .actions #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ button, #changelist #toolbar #changelist-search .btn-group-vertical > .btn ~ input[type=submit], #changelist #toolbar #changelist-search #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #changelist-form .paginator #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #toolbar #changelist-search #changelist-form .actions .btn-group-vertical > button ~ input[type=submit], #changelist #changelist-form .actions #toolbar #changelist-search .btn-group-vertical > button ~ input[type=submit], #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=submit], body.login .submit-row .btn-group-vertical > input[type=submit] ~ .btn, body.login .submit-row #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #changelist-form .paginator body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit], body.login .submit-row #changelist #changelist-form .actions .btn-group-vertical > input[type=submit] ~ button, #changelist #changelist-form .actions body.login .submit-row .btn-group-vertical > input[type=submit] ~ button, body.login .submit-row #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #toolbar #changelist-search body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit], body.login .submit-row .btn-group-vertical > .btn ~ input[type=submit], body.login .submit-row #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #changelist-form .paginator body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit], body.login .submit-row #changelist #changelist-form .actions .btn-group-vertical > button ~ input[type=submit], #changelist #changelist-form .actions body.login .submit-row .btn-group-vertical > button ~ input[type=submit], body.login .submit-row #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #toolbar #changelist-search body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit], body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit], #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ .btn, #changelist #changelist-form .paginator #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ input[type=submit], #changelist #changelist-form .actions #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ button, #changelist #toolbar #changelist-search #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ input[type=submit], body.login .submit-row #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ input[type=submit], #toolbar > .object-tools > li.btn-group-vertical > .btn ~ a:not([class*=btn-]).addlink, #changelist #changelist-form .paginator #toolbar > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]).addlink, #changelist #changelist-form .actions #toolbar > .object-tools > li.btn-group-vertical > button ~ a:not([class*=btn-]).addlink, #changelist #toolbar #changelist-search #toolbar > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]).addlink, body.login .submit-row #toolbar > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]).addlink, #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ a:not([class*=btn-]).addlink, #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ .btn, #changelist #changelist-form .paginator #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit], #changelist #changelist-form .actions #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ button, #changelist #toolbar #changelist-search #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit], body.login .submit-row #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit], #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ a:not([class*=btn-]).addlink, #toolbar > .object-tools > li.btn-group-vertical > .btn ~ a:not([class*=btn-]), #changelist #changelist-form .paginator #toolbar > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]), #changelist #changelist-form .actions #toolbar > .object-tools > li.btn-group-vertical > button ~ a:not([class*=btn-]), #changelist #toolbar #changelist-search #toolbar > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]), body.login .submit-row #toolbar > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]), #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ a:not([class*=btn-]), #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ a:not([class*=btn-]), #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ .btn, #changelist #changelist-form .paginator #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit], #changelist #changelist-form .actions #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ button, #changelist #toolbar #changelist-search #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit], body.login .submit-row #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit], #content-main > .object-tools > li.btn-group-vertical > .btn ~ a:not([class*=btn-]), #changelist #changelist-form .paginator #content-main > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]), #changelist #changelist-form .actions #content-main > .object-tools > li.btn-group-vertical > button ~ a:not([class*=btn-]), #changelist #toolbar #changelist-search #content-main > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]), body.login .submit-row #content-main > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]), #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ a:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ .btn, .submit-row #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ input[type=submit], #changelist #changelist-form .paginator .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ input[type=submit], .submit-row #changelist #changelist-form .actions .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ button, #changelist #changelist-form .actions .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ button, .submit-row #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ input[type=submit], #changelist #toolbar #changelist-search .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ input[type=submit], body.login .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ input[type=submit], .submit-row #toolbar > .object-tools > li.btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ a:not([class*=btn-]).addlink, .submit-row #toolbar > .object-tools > li.btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ a:not([class*=btn-]), .submit-row #content-main > .object-tools > li.btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ a:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ .btn, .submit-row #changelist #changelist-form .paginator .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ input[type=submit], #changelist #changelist-form .paginator .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ input[type=submit], .submit-row #changelist #changelist-form .actions .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ button, #changelist #changelist-form .actions .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ button, .submit-row #changelist #toolbar #changelist-search .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ input[type=submit], #changelist #toolbar #changelist-search .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ input[type=submit], body.login .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ input[type=submit], .submit-row #toolbar > .object-tools > li.btn-group-vertical > input[type=button]:not([class*=btn-]) ~ a:not([class*=btn-]).addlink, .submit-row #toolbar > .object-tools > li.btn-group-vertical > input[type=button]:not([class*=btn-]) ~ a:not([class*=btn-]), .submit-row #content-main > .object-tools > li.btn-group-vertical > input[type=button]:not([class*=btn-]) ~ a:not([class*=btn-]), .submit-row .btn-group-vertical > button:not([class*=btn-]) ~ .btn, .submit-row #changelist #changelist-form .paginator .btn-group-vertical > button:not([class*=btn-]) ~ input[type=submit], #changelist #changelist-form .paginator .submit-row .btn-group-vertical > button:not([class*=btn-]) ~ input[type=submit], .submit-row #changelist #changelist-form .actions .btn-group-vertical > button:not([class*=btn-]) ~ button, #changelist #changelist-form .actions .submit-row .btn-group-vertical > button:not([class*=btn-]) ~ button, .submit-row #changelist #toolbar #changelist-search .btn-group-vertical > button:not([class*=btn-]) ~ input[type=submit], #changelist #toolbar #changelist-search .submit-row .btn-group-vertical > button:not([class*=btn-]) ~ input[type=submit], body.login .submit-row .btn-group-vertical > button:not([class*=btn-]) ~ input[type=submit], .submit-row #toolbar > .object-tools > li.btn-group-vertical > button:not([class*=btn-]) ~ a:not([class*=btn-]).addlink, .submit-row #toolbar > .object-tools > li.btn-group-vertical > button:not([class*=btn-]) ~ a:not([class*=btn-]), .submit-row #content-main > .object-tools > li.btn-group-vertical > button:not([class*=btn-]) ~ a:not([class*=btn-]), .submit-row .btn-group-vertical > .btn ~ input[type=submit]:not([class*=btn-]), .submit-row #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=submit]:not([class*=btn-]), #changelist #changelist-form .paginator .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit]:not([class*=btn-]), .submit-row #changelist #changelist-form .actions .btn-group-vertical > button ~ input[type=submit]:not([class*=btn-]), #changelist #changelist-form .actions .submit-row .btn-group-vertical > button ~ input[type=submit]:not([class*=btn-]), .submit-row #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=submit]:not([class*=btn-]), #changelist #toolbar #changelist-search .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit]:not([class*=btn-]), body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit]:not([class*=btn-]), .submit-row #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ input[type=submit]:not([class*=btn-]), .submit-row #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit]:not([class*=btn-]), .submit-row #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit]:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ input[type=submit]:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ input[type=submit]:not([class*=btn-]), .submit-row .btn-group-vertical > button:not([class*=btn-]) ~ input[type=submit]:not([class*=btn-]), .submit-row .btn-group-vertical > .btn ~ input[type=button]:not([class*=btn-]), .submit-row #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=button]:not([class*=btn-]), #changelist #changelist-form .paginator .submit-row .btn-group-vertical > input[type=submit] ~ input[type=button]:not([class*=btn-]), .submit-row #changelist #changelist-form .actions .btn-group-vertical > button ~ input[type=button]:not([class*=btn-]), #changelist #changelist-form .actions .submit-row .btn-group-vertical > button ~ input[type=button]:not([class*=btn-]), .submit-row #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=button]:not([class*=btn-]), #changelist #toolbar #changelist-search .submit-row .btn-group-vertical > input[type=submit] ~ input[type=button]:not([class*=btn-]), body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=button]:not([class*=btn-]), .submit-row #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ input[type=button]:not([class*=btn-]), .submit-row #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=button]:not([class*=btn-]), .submit-row #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=button]:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ input[type=button]:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ input[type=button]:not([class*=btn-]), .submit-row .btn-group-vertical > button:not([class*=btn-]) ~ input[type=button]:not([class*=btn-]), .submit-row .btn-group-vertical > .btn ~ button:not([class*=btn-]), .submit-row #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ button:not([class*=btn-]), #changelist #changelist-form .paginator .submit-row .btn-group-vertical > input[type=submit] ~ button:not([class*=btn-]), .submit-row #changelist #changelist-form .actions .btn-group-vertical > button ~ button:not([class*=btn-]), #changelist #changelist-form .actions .submit-row .btn-group-vertical > button ~ button:not([class*=btn-]), .submit-row #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ button:not([class*=btn-]), #changelist #toolbar #changelist-search .submit-row .btn-group-vertical > input[type=submit] ~ button:not([class*=btn-]), body.login .submit-row .btn-group-vertical > input[type=submit] ~ button:not([class*=btn-]), .submit-row #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ button:not([class*=btn-]), .submit-row #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ button:not([class*=btn-]), .submit-row #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ button:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ button:not([class*=btn-]), .submit-row .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ button:not([class*=btn-]), .submit-row .btn-group-vertical > button:not([class*=btn-]) ~ button:not([class*=btn-]), .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ .btn, .submit-row .deletelink-box #changelist #changelist-form .paginator .btn-group-vertical > .deletelink ~ input[type=submit], #changelist #changelist-form .paginator .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ input[type=submit], .submit-row .deletelink-box #changelist #changelist-form .actions .btn-group-vertical > .deletelink ~ button, #changelist #changelist-form .actions .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ button, .submit-row .deletelink-box #changelist #toolbar #changelist-search .btn-group-vertical > .deletelink ~ input[type=submit], #changelist #toolbar #changelist-search .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ input[type=submit], body.login .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ input[type=submit], .submit-row .deletelink-box #toolbar > .object-tools > li.btn-group-vertical > .deletelink ~ a:not([class*=btn-]).addlink, .submit-row .deletelink-box #toolbar > .object-tools > li.btn-group-vertical > .deletelink ~ a:not([class*=btn-]), .submit-row .deletelink-box #content-main > .object-tools > li.btn-group-vertical > .deletelink ~ a:not([class*=btn-]), .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ input[type=submit]:not([class*=btn-]), .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ input[type=button]:not([class*=btn-]), .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ button:not([class*=btn-]), .submit-row .deletelink-box .btn-group-vertical > .btn ~ .deletelink, .submit-row .deletelink-box #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ .deletelink, #changelist #changelist-form .paginator .submit-row .deletelink-box .btn-group-vertical > input[type=submit] ~ .deletelink, .submit-row .deletelink-box #changelist #changelist-form .actions .btn-group-vertical > button ~ .deletelink, #changelist #changelist-form .actions .submit-row .deletelink-box .btn-group-vertical > button ~ .deletelink, .submit-row .deletelink-box #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ .deletelink, #changelist #toolbar #changelist-search .submit-row .deletelink-box .btn-group-vertical > input[type=submit] ~ .deletelink, body.login .submit-row .deletelink-box .btn-group-vertical > input[type=submit] ~ .deletelink, .submit-row .deletelink-box #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ .deletelink, .submit-row .deletelink-box #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ .deletelink, .submit-row .deletelink-box #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ .deletelink, .submit-row .deletelink-box .btn-group-vertical > input[type=submit]:not([class*=btn-]) ~ .deletelink, .submit-row .deletelink-box .btn-group-vertical > input[type=button]:not([class*=btn-]) ~ .deletelink, .submit-row .deletelink-box .btn-group-vertical > button:not([class*=btn-]) ~ .deletelink, .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ .deletelink, body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ .btn, body.delete-confirmation .content-wrap #changelist #changelist-form .paginator .btn-group-vertical > input[type=button] ~ input[type=submit], #changelist #changelist-form .paginator body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ input[type=submit], body.delete-confirmation .content-wrap #changelist #changelist-form .actions .btn-group-vertical > input[type=button] ~ button, #changelist #changelist-form .actions body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ button, body.delete-confirmation .content-wrap #changelist #toolbar #changelist-search .btn-group-vertical > input[type=button] ~ input[type=submit], #changelist #toolbar #changelist-search body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ input[type=submit], body.delete-confirmation .content-wrap body.login .submit-row .btn-group-vertical > input[type=button] ~ input[type=submit], body.login .submit-row body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ input[type=submit], body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > input[type=button] ~ a:not([class*=btn-]).addlink, body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > input[type=button] ~ a:not([class*=btn-]), body.delete-confirmation .content-wrap #content-main > .object-tools > li.btn-group-vertical > input[type=button] ~ a:not([class*=btn-]), body.delete-confirmation .content-wrap .submit-row .deletelink-box .btn-group-vertical > input[type=button] ~ .deletelink, .submit-row .deletelink-box body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ .deletelink, body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ .btn, body.delete-confirmation .content-wrap #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #changelist-form .paginator body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=submit], body.delete-confirmation .content-wrap #changelist #changelist-form .actions .btn-group-vertical > input[type=submit] ~ button, #changelist #changelist-form .actions body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ button, body.delete-confirmation .content-wrap #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #toolbar #changelist-search body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=submit], body.delete-confirmation .content-wrap body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit], body.login .submit-row body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=submit], body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]).addlink, body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]), body.delete-confirmation .content-wrap #content-main > .object-tools > li.btn-group-vertical > input[type=submit] ~ a:not([class*=btn-]), body.delete-confirmation .content-wrap .submit-row .deletelink-box .btn-group-vertical > input[type=submit] ~ .deletelink, .submit-row .deletelink-box body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ .deletelink, body.delete-confirmation .content-wrap .btn-group-vertical > button ~ .btn, body.delete-confirmation .content-wrap #changelist #changelist-form .paginator .btn-group-vertical > button ~ input[type=submit], #changelist #changelist-form .paginator body.delete-confirmation .content-wrap .btn-group-vertical > button ~ input[type=submit], body.delete-confirmation .content-wrap #changelist #changelist-form .actions .btn-group-vertical > button ~ button, #changelist #changelist-form .actions body.delete-confirmation .content-wrap .btn-group-vertical > button ~ button, body.delete-confirmation .content-wrap #changelist #toolbar #changelist-search .btn-group-vertical > button ~ input[type=submit], #changelist #toolbar #changelist-search body.delete-confirmation .content-wrap .btn-group-vertical > button ~ input[type=submit], body.delete-confirmation .content-wrap body.login .submit-row .btn-group-vertical > button ~ input[type=submit], body.login .submit-row body.delete-confirmation .content-wrap .btn-group-vertical > button ~ input[type=submit], body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > button ~ a:not([class*=btn-]).addlink, body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > button ~ a:not([class*=btn-]), body.delete-confirmation .content-wrap #content-main > .object-tools > li.btn-group-vertical > button ~ a:not([class*=btn-]), body.delete-confirmation .content-wrap .submit-row .deletelink-box .btn-group-vertical > button ~ .deletelink, .submit-row .deletelink-box body.delete-confirmation .content-wrap .btn-group-vertical > button ~ .deletelink, body.delete-confirmation .content-wrap .btn-group-vertical > .btn ~ input[type=button], body.delete-confirmation .content-wrap #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=button], #changelist #changelist-form .paginator body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=button], body.delete-confirmation .content-wrap #changelist #changelist-form .actions .btn-group-vertical > button ~ input[type=button], #changelist #changelist-form .actions body.delete-confirmation .content-wrap .btn-group-vertical > button ~ input[type=button], body.delete-confirmation .content-wrap #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=button], #changelist #toolbar #changelist-search body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=button], body.delete-confirmation .content-wrap body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=button], body.login .submit-row body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=button], body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ input[type=button], body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=button], body.delete-confirmation .content-wrap #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=button], body.delete-confirmation .content-wrap .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ input[type=button], .submit-row .deletelink-box body.delete-confirmation .content-wrap .btn-group-vertical > .deletelink ~ input[type=button], body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ input[type=button], body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=button], body.delete-confirmation .content-wrap .btn-group-vertical > button ~ input[type=button], body.delete-confirmation .content-wrap .btn-group-vertical > .btn ~ input[type=submit], body.delete-confirmation .content-wrap #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #changelist-form .paginator body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=submit], body.delete-confirmation .content-wrap #changelist #changelist-form .actions .btn-group-vertical > button ~ input[type=submit], #changelist #changelist-form .actions body.delete-confirmation .content-wrap .btn-group-vertical > button ~ input[type=submit], body.delete-confirmation .content-wrap #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ input[type=submit], #changelist #toolbar #changelist-search body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=submit], body.delete-confirmation .content-wrap body.login .submit-row .btn-group-vertical > input[type=submit] ~ input[type=submit], body.login .submit-row body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=submit], body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ input[type=submit], body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit], body.delete-confirmation .content-wrap #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ input[type=submit], body.delete-confirmation .content-wrap .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ input[type=submit], .submit-row .deletelink-box body.delete-confirmation .content-wrap .btn-group-vertical > .deletelink ~ input[type=submit], body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ input[type=submit], body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ input[type=submit], body.delete-confirmation .content-wrap .btn-group-vertical > button ~ input[type=submit], body.delete-confirmation .content-wrap .btn-group-vertical > .btn ~ button, body.delete-confirmation .content-wrap #changelist #changelist-form .paginator .btn-group-vertical > input[type=submit] ~ button, #changelist #changelist-form .paginator body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ button, body.delete-confirmation .content-wrap #changelist #changelist-form .actions .btn-group-vertical > button ~ button, #changelist #changelist-form .actions body.delete-confirmation .content-wrap .btn-group-vertical > button ~ button, body.delete-confirmation .content-wrap #changelist #toolbar #changelist-search .btn-group-vertical > input[type=submit] ~ button, #changelist #toolbar #changelist-search body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ button, body.delete-confirmation .content-wrap body.login .submit-row .btn-group-vertical > input[type=submit] ~ button, body.login .submit-row body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ button, body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]).addlink ~ button, body.delete-confirmation .content-wrap #toolbar > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ button, body.delete-confirmation .content-wrap #content-main > .object-tools > li.btn-group-vertical > a:not([class*=btn-]) ~ button, body.delete-confirmation .content-wrap .submit-row .deletelink-box .btn-group-vertical > .deletelink ~ button, .submit-row .deletelink-box body.delete-confirmation .content-wrap .btn-group-vertical > .deletelink ~ button, body.delete-confirmation .content-wrap .btn-group-vertical > input[type=button] ~ button, body.delete-confirmation .content-wrap .btn-group-vertical > input[type=submit] ~ button, body.delete-confirmation .content-wrap .btn-group-vertical > button ~ button,
.btn-group-vertical > .btn-group:not(:first-child) > .btn,
#changelist #changelist-form .paginator .btn-group-vertical > .btn-group:not(:first-child) > input[type=submit],
#changelist #changelist-form .actions .btn-group-vertical > .btn-group:not(:first-child) > button,
#changelist #toolbar #changelist-search .btn-group-vertical > .btn-group:not(:first-child) > input[type=submit],
body.login .submit-row .btn-group-vertical > .btn-group:not(:first-child) > input[type=submit],
#toolbar > .object-tools.btn-group-vertical > li.btn-group:not(:first-child) > a:not([class*=btn-]).addlink,
#toolbar > .object-tools.btn-group-vertical > li.btn-group:not(:first-child) > a:not([class*=btn-]),
#content-main > .object-tools.btn-group-vertical > li.btn-group:not(:first-child) > a:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-group:not(:first-child) > input[type=submit]:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-group:not(:first-child) > input[type=button]:not([class*=btn-]),
.submit-row .btn-group-vertical > .btn-group:not(:first-child) > button:not([class*=btn-]),
.submit-row .deletelink-box .btn-group-vertical > .btn-group:not(:first-child) > .deletelink,
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-group:not(:first-child) > input[type=button],
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-group:not(:first-child) > input[type=submit],
body.delete-confirmation .content-wrap .btn-group-vertical > .btn-group:not(:first-child) > button {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

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

.nav-link {
    display: block;
    padding: 0.5rem 1rem;
    color: #0d64a2;
    text-decoration: none;
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
    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 {
        -webkit-transition: none;
        transition: none;
    }
}

.nav-link:hover, .nav-link:focus {
    color: #0a5082;
}

.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: #f1f1f1;
    border-color: #dee2e6 #dee2e6 #f1f1f1;
}

.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 {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    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: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    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: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: inherit;
    flex-wrap: inherit;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    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: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    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 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    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;
    -webkit-transition: -webkit-box-shadow 0.15s ease-in-out;
    transition: -webkit-box-shadow 0.15s ease-in-out;
    transition: box-shadow 0.15s ease-in-out;
    transition: box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
}

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

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

.navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.25rem;
    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 {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-sm .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

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

    .navbar-expand-sm .offcanvas-header {
        display: none;
    }

    .navbar-expand-sm .offcanvas {
        position: inherit;
        bottom: 0;
        z-index: 1000;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        visibility: visible !important;
        background-color: transparent;
        border-right: 0;
        border-left: 0;
        -webkit-transition: none;
        transition: none;
        -webkit-transform: none;
        transform: none;
    }

    .navbar-expand-sm .offcanvas-top,
    .navbar-expand-sm .offcanvas-bottom {
        height: auto;
        border-top: 0;
        border-bottom: 0;
    }

    .navbar-expand-sm .offcanvas-body {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 768px) {
    .navbar-expand-md {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-md .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

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

    .navbar-expand-md .offcanvas-header {
        display: none;
    }

    .navbar-expand-md .offcanvas {
        position: inherit;
        bottom: 0;
        z-index: 1000;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        visibility: visible !important;
        background-color: transparent;
        border-right: 0;
        border-left: 0;
        -webkit-transition: none;
        transition: none;
        -webkit-transform: none;
        transform: none;
    }

    .navbar-expand-md .offcanvas-top,
    .navbar-expand-md .offcanvas-bottom {
        height: auto;
        border-top: 0;
        border-bottom: 0;
    }

    .navbar-expand-md .offcanvas-body {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 992px) {
    .navbar-expand-lg {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-lg .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

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

    .navbar-expand-lg .offcanvas-header {
        display: none;
    }

    .navbar-expand-lg .offcanvas {
        position: inherit;
        bottom: 0;
        z-index: 1000;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        visibility: visible !important;
        background-color: transparent;
        border-right: 0;
        border-left: 0;
        -webkit-transition: none;
        transition: none;
        -webkit-transform: none;
        transform: none;
    }

    .navbar-expand-lg .offcanvas-top,
    .navbar-expand-lg .offcanvas-bottom {
        height: auto;
        border-top: 0;
        border-bottom: 0;
    }

    .navbar-expand-lg .offcanvas-body {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 1200px) {
    .navbar-expand-xl {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-xl .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

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

    .navbar-expand-xl .offcanvas-header {
        display: none;
    }

    .navbar-expand-xl .offcanvas {
        position: inherit;
        bottom: 0;
        z-index: 1000;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        visibility: visible !important;
        background-color: transparent;
        border-right: 0;
        border-left: 0;
        -webkit-transition: none;
        transition: none;
        -webkit-transform: none;
        transform: none;
    }

    .navbar-expand-xl .offcanvas-top,
    .navbar-expand-xl .offcanvas-bottom {
        height: auto;
        border-top: 0;
        border-bottom: 0;
    }

    .navbar-expand-xl .offcanvas-body {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 1400px) {
    .navbar-expand-xxl {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-xxl .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        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: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

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

    .navbar-expand-xxl .offcanvas-header {
        display: none;
    }

    .navbar-expand-xxl .offcanvas {
        position: inherit;
        bottom: 0;
        z-index: 1000;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        visibility: visible !important;
        background-color: transparent;
        border-right: 0;
        border-left: 0;
        -webkit-transition: none;
        transition: none;
        -webkit-transform: none;
        transform: none;
    }

    .navbar-expand-xxl .offcanvas-top,
    .navbar-expand-xxl .offcanvas-bottom {
        height: auto;
        border-top: 0;
        border-bottom: 0;
    }

    .navbar-expand-xxl .offcanvas-body {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

.navbar-expand {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.navbar-expand .navbar-nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    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: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
}

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

.navbar-expand .offcanvas-header {
    display: none;
}

.navbar-expand .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    -webkit-transition: none;
    transition: none;
    -webkit-transform: none;
    transform: none;
}

.navbar-expand .offcanvas-top,
.navbar-expand .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
}

.navbar-expand .offcanvas-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
}

.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: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid transparent;
    border-radius: 0;
}

.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 {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    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 + .card-link {
    margin-left: 1rem;
}

.card-header {
    padding: 0.5rem 1rem;
    margin-bottom: 0;
    color: #fff;
    background-color: #5d6478;
    border-bottom: 1px solid transparent;
}

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

.card-footer {
    padding: 0.5rem 1rem;
    color: #fff;
    background-color: #5d6478;
    border-top: 1px solid transparent;
}

.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-tabs .nav-link.active {
    background-color: #fff;
    border-bottom-color: #fff;
}

.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: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }

    .card-group > .card {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        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;
    }
}

.pagination {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 0;
    list-style: none;
}

.page-link {
    position: relative;
    display: block;
    color: #0d64a2;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #dee2e6;
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    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;
    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, -webkit-box-shadow 0.15s ease-in-out;
}

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

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

.page-link:focus {
    z-index: 3;
    color: #0a5082;
    background-color: #e9ecef;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    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.143rem;
}

.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.929rem;
}

.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, #changelist #changelist-form .paginator input[type=submit] .badge, #changelist #changelist-form .actions button .badge, #changelist #toolbar #changelist-search input[type=submit] .badge, body.login .submit-row input[type=submit] .badge, #toolbar > .object-tools > li > a:not([class*=btn-]) .badge, #content-main > .object-tools > li > a:not([class*=btn-]) .badge, .submit-row input[type=submit]:not([class*=btn-]) .badge, .submit-row input[type=button]:not([class*=btn-]) .badge, .submit-row button:not([class*=btn-]) .badge, .submit-row .deletelink-box .deletelink .badge, body.delete-confirmation .content-wrap input[type=button] .badge, body.delete-confirmation .content-wrap input[type=submit] .badge, body.delete-confirmation .content-wrap button .badge {
    position: relative;
    top: -1px;
}

.alert, body.delete-confirmation .content-wrap, .messagelist li, .errornote {
    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: #084298;
    background-color: #cfe2ff;
    border-color: #b6d4fe;
}

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

.alert-secondary {
    color: #41464b;
    background-color: #e2e3e5;
    border-color: #d3d6d8;
}

.alert-secondary .alert-link {
    color: #34383c;
}

.alert-success, .messagelist li.success {
    color: #0f5132;
    background-color: #d1e7dd;
    border-color: #badbcc;
}

.alert-success .alert-link, .messagelist li.success .alert-link {
    color: #0c4128;
}

.alert-info, .messagelist li.info {
    color: #055160;
    background-color: #cff4fc;
    border-color: #b6effb;
}

.alert-info .alert-link, .messagelist li.info .alert-link {
    color: #04414d;
}

.alert-warning, .messagelist li.warning {
    color: #664d03;
    background-color: #fff3cd;
    border-color: #ffecb5;
}

.alert-warning .alert-link, .messagelist li.warning .alert-link {
    color: #523e02;
}

.alert-danger, body.delete-confirmation .content-wrap, .messagelist li.danger, .messagelist li.error, .errornote {
    color: #842029;
    background-color: #f8d7da;
    border-color: #f5c2c7;
}

.alert-danger .alert-link, body.delete-confirmation .content-wrap .alert-link, .messagelist li.danger .alert-link, .messagelist li.error .alert-link, .errornote .alert-link {
    color: #6a1a21;
}

.alert-light {
    color: #636464;
    background-color: #fefefe;
    border-color: #fdfdfe;
}

.alert-light .alert-link {
    color: #4f5050;
}

.alert-dark {
    color: #141619;
    background-color: #d3d3d4;
    border-color: #bcbebf;
}

.alert-dark .alert-link {
    color: #101214;
}

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

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

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

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

@media (prefers-reduced-motion: reduce) {
    .progress-bar {
        -webkit-transition: none;
        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 {
    -webkit-animation: 1s linear infinite progress-bar-stripes;
    animation: 1s linear infinite progress-bar-stripes;
}

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

.fade {
    -webkit-transition: opacity 0.15s linear;
    transition: opacity 0.15s linear;
}

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

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

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

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

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

.collapsing.collapse-horizontal {
    width: 0;
    height: auto;
    -webkit-transition: width 0.35s ease;
    transition: width 0.35s ease;
}

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

.btn-close {
    -webkit-box-sizing: content-box;
    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;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    opacity: 1;
}

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

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

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

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

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

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

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

.modal.modal-static .modal-dialog {
    -webkit-transform: scale(1.02);
    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: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: calc(100% - 1rem);
}

.modal-content {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    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: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    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;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 1rem;
}

.modal-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    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;
}

@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: "Roboto", "Helvetica Neue", Helvetica, Arial, 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: 1.1rem;
    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: 1rem 1rem !important;
    color: #fff;
    font-size: 14px;
    text-align: center;
    background-color: #000;
    border-radius: 0.25rem;
}


.tooltip-bg-primary {
    --bs-tooltip-bg: var(--bs-primary) !important;
    --bs-tooltip-text: var(--bs-primary) !important;
}

.tooltip-bg-success {
    --bs-tooltip-bg: var(--bs-success) !important;
    --bs-tooltip-text: var(--bs-success);
}

.tooltip-bg-danger {
    --bs-tooltip-bg: var(--bs-danger) !important;
}

.tooltip-bg-warning {
    --bs-tooltip-bg: var(--bs-warning) !important;
}

.tooltip-bg-secondary {
    --bs-tooltip-bg: var(--bs-secondary) !important;
}

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

.link-primary {
    color: #0d6efd;
}

.link-primary:hover, .link-primary:focus {
    color: #0a58ca;
}

.link-secondary {
    color: #6c757d;
}

.link-secondary:hover, .link-secondary:focus {
    color: #565e64;
}

.link-success {
    color: #198754;
}

.link-success:hover, .link-success:focus {
    color: #146c43;
}

.link-info {
    color: #0dcaf0;
}

.link-info:hover, .link-info:focus {
    color: #3dd5f3;
}

.link-warning {
    color: #ffc107;
}

.link-warning:hover, .link-warning:focus {
    color: #ffcd39;
}

.link-danger {
    color: #dc3545;
}

.link-danger:hover, .link-danger:focus {
    color: #b02a37;
}

.link-light {
    color: #f8f9fa;
}

.link-light:hover, .link-light:focus {
    color: #f9fafb;
}

.link-dark {
    color: #212529;
}

.link-dark:hover, .link-dark:focus {
    color: #1a1e21;
}

.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: 75%;
}

.ratio-16x9 {
    --bs-aspect-ratio: 56.25%;
}

.ratio-21x9 {
    --bs-aspect-ratio: 42.8571428571%;
}

.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;
    }
}

.hstack {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

.vstack {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

.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;
}

.vr {
    display: inline-block;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    width: 1px;
    min-height: 1em;
    background-color: currentColor;
    opacity: 0.25;
}

.text-lighter {
    font-weight: 200;
}

.text-light, body.suit_layout_vertical #header #user-tools:not(.suit-user-tools) strong, body.suit_layout_horizontal #header #user-tools strong, .text-light-bold {
    font-weight: 300;
}

.text-normal {
    font-weight: 400;
}

.text-semibold, body.login #header #branding #site-name a, .nav-tabs-suit .nav-link.active, .nav-tabs-suit .nav-link.active:focus, #result_list tbody > tr > th, table#change-history tbody > tr > th, .tabular table tbody > tr > th, .text-light-bold strong {
    font-weight: 500;
}

a:not([myclasstoignore]) {
    text-decoration: none;
}

a:not([myclasstoignore]):hover {
    text-decoration: underline;
}

.form-group {
    margin-bottom: 1rem;
}

.form-control, #changelist #changelist-form .actions select, #changelist #toolbar #changelist-search input[type=text], .selector .selector-available select, .selector .selector-chosen select, fieldset input[type=text],
fieldset input[type=url],
fieldset input[type=email],
fieldset input[type=number],
fieldset input[type=password],
fieldset input[type=date],
fieldset input[type=tel],
fieldset .vTextField,
fieldset .vURLField,
fieldset .vLargeTextField,
fieldset .vTimeField,
fieldset .vDateField {
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
}

.form-inline .form-control, .form-inline #changelist #changelist-form .actions select, #changelist #changelist-form .actions .form-inline select, .form-inline #changelist #toolbar #changelist-search input[type=text], #changelist #toolbar #changelist-search .form-inline input[type=text], .form-inline .selector .selector-available select, .selector .selector-available .form-inline select, .form-inline .selector .selector-chosen select, .selector .selector-chosen .form-inline select, .form-inline fieldset input[type=text], fieldset .form-inline input[type=text],
.form-inline fieldset input[type=url],
fieldset .form-inline input[type=url],
.form-inline fieldset input[type=email],
fieldset .form-inline input[type=email],
.form-inline fieldset input[type=number],
fieldset .form-inline input[type=number],
.form-inline fieldset input[type=password],
fieldset .form-inline input[type=password],
.form-inline fieldset input[type=date],
fieldset .form-inline input[type=date],
.form-inline fieldset input[type=tel],
fieldset .form-inline input[type=tel],
.form-inline fieldset .vTextField,
fieldset .form-inline .vTextField,
.form-inline fieldset .vURLField,
fieldset .form-inline .vURLField,
.form-inline fieldset .vLargeTextField,
fieldset .form-inline .vLargeTextField,
.form-inline fieldset .vTimeField,
fieldset .form-inline .vTimeField,
.form-inline fieldset .vDateField,
fieldset .form-inline .vDateField {
    display: inline-block;
    width: auto;
    vertical-align: middle;
}

.form-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px;
}

label {
    margin-bottom: 0.5rem;
}

.text-muted, .timezonewarning, fieldset .text-help, fieldset > .description {
    --bs-text-opacity: 1;
    color: #6c757d !important;
}

.link-with-icon .fa {
    vertical-align: text-bottom;
    margin-left: 3px;
}

.btn-round, #toolbar > .object-tools > li > a:not([class*=btn-]), #content-main > .object-tools > li > a:not([class*=btn-]) {
    border-radius: 40px;
}

.btn-outline-danger, .submit-row .deletelink-box .deletelink {
    border-color: rgba(224, 79, 60, 0.75);
    background-color: #fff;
}

textarea.form-control,
fieldset textarea.vTextField,
fieldset textarea.vURLField,
fieldset textarea.vLargeTextField,
fieldset textarea.vTimeField,
fieldset textarea.vDateField {
    line-height: 1.5;
}

fieldset {
    -webkit-box-shadow: 0 1px 0 0 #e4e4e4;
    box-shadow: 0 1px 0 0 #e4e4e4;
    margin-bottom: 2rem;
}

fieldset > h2, fieldset > .h2 {
    float: left;
    padding-right: 2rem;
}

fieldset > .description {
    font-size: 0.929rem;
    padding-top: 0.35rem;
    display: inline-block;
}

fieldset h2 + .description + *, fieldset .h2 + .description + *, fieldset .inline-related {
    clear: both;
}

fieldset .form-row:not(.form-group):not(tr) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #f6f6f6;
    padding: 0.5rem 1.1rem;
}

fieldset .form-row:not(.form-group):not(tr):last-child > label:not(.form-control-label) {
    border-bottom: 0;
}

@media (max-width: 575.98px) {
    fieldset .form-row:not(.form-group):not(tr) {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

fieldset .form-row:not(.form-group):not(tr) > * {
    -ms-flex-item-align: start;
    align-self: flex-start;
}

fieldset .form-row:not(.form-group):not(tr) > label:not(.form-control-label) {
    -ms-flex-item-align: stretch;
    align-self: stretch;
    margin: -0.5rem 1.1rem -0.5rem -1.1rem;
}

fieldset .form-row:not(.form-group):not(tr) > label:not(.form-control-label).required {
    padding-right: 1.5rem;
}

@media (max-width: 767.98px) {
    fieldset .form-row:not(.form-group):not(tr) > label:not(.form-control-label) {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    }
}

@media (max-width: 575.98px) {
    fieldset .form-row:not(.form-group):not(tr) > label:not(.form-control-label) {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    }
}

.suit-include fieldset:not(.suit-form):not(.module) {
    -webkit-box-shadow: none;
    box-shadow: none;
}

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

fieldset .text-help {
    margin-top: 0.5rem;
    display: block;
}

fieldset input[type=checkbox] + .text-help,
fieldset .form-inline .text-help {
    display: inline;
    margin-left: 0.5rem;
}

fieldset .form-inline .text-help {
    display: inline-block;
    margin-left: 0.5rem;
}

fieldset .form-row, fieldset .suit-form .form-group {
    clear: both;
}

fieldset .form-row label, fieldset .suit-form .form-group label {
    font-size: 0.929rem;
}

fieldset .form-row label.required:after, fieldset .suit-form .form-group label.required:after {
    content: "*";
    margin: 0 0 0 5px;
    position: absolute;
    color: #ccc;
}

fieldset .form-row > label, fieldset .suit-form .form-group > label {
    margin: 0;
    line-height: 1.25rem;
    text-align: right;
    background-color: #fff;
    padding-top: 1.05rem;
    padding-bottom: 0.9rem;
    border-bottom: 1px solid #eeeeee;
}

@media (max-width: 575.98px) {
    fieldset .form-row > label, fieldset .suit-form .form-group > label {
        padding-top: 0.525rem;
        background-color: transparent;
        text-align: left;
        font-weight: bold;
        border-bottom: none;
    }
}

fieldset .form-row.has-danger, fieldset .suit-form .form-group.has-danger {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

fieldset .form-row:last-child > label, fieldset .suit-form .form-group:last-child > label {
    border-bottom: none;
}

fieldset .form-row > ul, fieldset .form-row .errorlist, fieldset .suit-form .form-group > ul, fieldset .suit-form .form-group .errorlist {
    margin: 0;
    padding-left: 2rem;
    font-size: 0.857rem;
}

@media (max-width: 575.98px) {
    fieldset .form-row > ul, fieldset .form-row .errorlist, fieldset .suit-form .form-group > ul, fieldset .suit-form .form-group .errorlist {
        margin-top: 0.5rem;
        padding-left: 1.5rem;
    }
}

.errornote {
    background-position: 100% 12px;
    padding: 10px 12px;
}

ul.errorlist {
    margin: 0;
    padding-left: 1.5rem;
    font-size: 0.857rem;
    color: #E04F3C;
}

ul.errorlist li {
    font-size: 0.857rem;
    display: block;
    margin-bottom: 4px;
}

ul.errorlist li:first-child {
    margin-top: 0;
}

ul.errorlist li a {
    color: inherit;
    text-decoration: underline;
}

.suit-form .form-group.errors input, .suit-form .form-group.errors select {
    border-color: #E04F3C;
}

.suit-form .form-group {
    margin: 0;
    background-color: #f6f6f6;
}

@media (max-width: 575.98px) {
    .suit-form .form-group {
        padding-bottom: 1rem;
    }
}

.suit-form .form-group label {
    margin: 0;
}

.suit-form .form-group label.required {
    padding-right: 0.55rem;
}

.suit-form .form-group .form-control-label + div[class*=col-] {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

@media (max-width: 575.98px) {
    .suit-form .form-group .form-control-label + div[class*=col-] {
        padding-top: 0;
    }
}

.suit-form .form-group p.form-control-plaintext, .suit-form .form-group .inline-group .tabular table tbody td.original p, .inline-group .tabular table tbody td.original .suit-form .form-group p {
    margin: 0;
}

.suit-form .form-group:first-child .form-control-label {
    padding-top: 1.3rem;
}

.suit-form .form-group:first-child .form-control-label + div[class*=col-] {
    padding-top: 0.75rem;
}

.suit-form .form-group:last-child .form-control-label + div[class*=col-] {
    padding-bottom: 0.75rem;
}

fieldset.suit-form {
    background-color: #fff;
}

fieldset.suit-form h2 {
    padding: 10px;
    font-size: 18px;
}

.col-multi-fields {
    padding-bottom: 0 !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media (max-width: 575.98px) {
    .col-multi-fields {
        padding-top: 0 !important;
    }
}

.col-multi-fields .multi-field {
    -ms-flex-preferred-size: 15rem;
    flex-basis: 15rem;
    white-space: nowrap;
    margin-bottom: 0.5rem;
    padding-right: 1rem;
}

@media (max-width: 575.98px) {
    .col-multi-fields .multi-field {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        padding-bottom: 0;
    }
}

.col-multi-fields .multi-field .form-control-label {
    vertical-align: top;
    display: inline-block;
    padding-top: 0.5rem !important;
    padding-left: 0;
    padding-right: 0.55rem;
}

@media (min-width: 576px) {
    .col-multi-fields .multi-field .form-control-label {
        padding-bottom: 0;
    }
}

@media (max-width: 575.98px) {
    .col-multi-fields .multi-field .form-control-label {
        font-weight: bold;
    }
}

.col-multi-fields .multi-field .multi-field-content {
    display: inline-block;
}

@media (min-width: 576px) {
    .col-multi-fields .multi-field .multi-field-content {
        padding-top: 0 !important;
    }

    .col-multi-fields .multi-field .multi-field-content input, .col-multi-fields .multi-field .multi-field-content select {
        width: auto;
    }
}

@media (max-width: 575.98px) {
    .col-multi-fields .multi-field .form-control-label, .col-multi-fields .multi-field .multi-field-content {
        display: block;
    }
}

.hidden {
    display: none;
}

/* COLLAPSED FIELDSETS */
fieldset.collapsed {
    background-color: #f6f6f6;
    margin-top: -1rem;
    overflow: hidden;
}

fieldset.collapsed > * {
    display: none;
}

fieldset.collapsed h2, fieldset.collapsed .h2 {
    display: block;
    font-size: 1.143rem;
    font-weight: normal;
    margin: 0;
    padding: 0.5rem 1rem;
}

fieldset.collapse {
    display: block;
}

/* IN-LINES */
.empty-form {
    display: none !important;
}

.inline-group .tabular table thead > tr th {
    padding: 0.7rem 0.8rem;
}

.inline-group .tabular table th, .inline-group .tabular table td {
    font-size: 1rem;
}

.inline-group .tabular table tbody td.original p {
    margin: 0;
}

.inline-group .tabular table tbody td.original p a {
    float: right;
    font-size: 0.857rem;
}

.inline-group .tabular table tbody td .errorlist {
    margin: 0;
    padding-left: 1.5rem;
    font-size: 0.857rem;
    color: #E04F3C;
}

.inline-group .tabular table tbody td .errorlist + input {
    border-color: #E04F3C;
}

.suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table tbody > tr td.original, .suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table tbody > tr th.original, .suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table thead > tr td.original, .suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table thead > tr th.original {
    font-size: 0;
    width: 0;
    padding: 0;
    border-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table tbody > tr td.original > *, .suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table tbody > tr th.original > *, .suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table thead > tr td.original > *, .suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table thead > tr th.original > * {
    display: none;
}

.suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table tbody > tr th.original:empty + th, .suit-inlines-hide-original:not(.suit-inlines-show-original) .inline-group .tabular table thead > tr th.original:empty + th {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.inline-group .tabular fieldset {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.inline-group .inline-related h3, .inline-group .inline-related .h3 {
    margin: 0;
    color: #fff;
    font-size: 1rem;
    padding: 0.7rem 0.8rem;
    font-weight: normal;
    background-color: #5d6478;
}

.inline-group .inline-related h3 b, .inline-group .inline-related .h3 b {
    display: inline-block;
    min-width: 17.5%;
}

.inline-group .inline-related h3 a, .inline-group .inline-related .h3 a {
    color: #fff;
    text-decoration: underline;
}

.inline-group .inline-related h3 a.inline-deletelink, .inline-group .inline-related .h3 a.inline-deletelink {
    float: right;
}

.inline-group .inline-related h3 label, .inline-group .inline-related .h3 label {
    margin: 0;
}

.inline-group .inline-related h3 span.delete, .inline-group .inline-related .h3 span.delete, .inline-group .inline-related h3 span:not(.inline_label):not(:first-child), .inline-group .inline-related .h3 span:not(.inline_label):not(:first-child) {
    float: right;
}

.inline-group .inline-related h3 .stacked-inline-sortable, .inline-group .inline-related .h3 .stacked-inline-sortable {
    float: right;
    margin-left: 1.5rem;
}

.inline-group .inline-related fieldset.suit-form {
    margin-bottom: 1rem;
}

.inline-group .inline-related + .empty-form + .add-row {
    margin-top: -1rem;
}

.inline-group div.add-row {
    border-top: 2px solid #f1f1f1;
    margin-bottom: 2rem;
    padding: 0.4rem 0.8rem;
    background-color: #f6f6f6;
}

.form-select-sm {
    height: calc(calc(1.5em + 0.75rem + 2px) - 2px - 5px);
}

.tabular .form-row {
    display: table-row;
}

/* TabularInlines Sortables */
.inline-sortable {
    white-space: nowrap;
}

.inline-sortable a {
    color: #000;
    padding: 0.3rem 0.4rem 0 0.2rem;
    display: inline-block;
    opacity: 0.4;
}

#result_list .inline-sortable a, table#change-history .inline-sortable a, .tabular table .inline-sortable a {
    padding-top: 0.05rem;
}

.inline-sortable a:last-child {
    padding: 0;
}

.inline-sortable a:hover {
    opacity: 0.7;
}

.suit-sortable {
    color: #212529;
}

.selected td .inline-sortable a {
    color: #fff;
}

tr:first-child td .inline-sortable .sortable-up {
    visibility: hidden;
    cursor: default;
}

.tabular tr.last-sortable td .inline-sortable .sortable-down,
.tabular tr.form-row:nth-last-child(2) td .inline-sortable .sortable-down {
    visibility: hidden;
    cursor: default;
}

#result_list tr:last-child td .inline-sortable .sortable-down, table#change-history tr:last-child td .inline-sortable .sortable-down, .tabular table tr:last-child td .inline-sortable .sortable-down {
    visibility: hidden;
    cursor: default;
}

/* StackedInline sortables */
.stacked-inline-sortable {
    float: left;
}

.stacked-inline-sortable :first-child {
    padding-right: 1px;
}

.stacked-inline-sortable:nth-last-child(2) {
    margin-right: 10px;
}

.stacked-inline-sortable a {
    color: #eceeef;
}

.stacked-inline-sortable a:hover {
    color: #fff;
}

.inline-group > div:first-of-type .stacked-inline-sortable .sortable-up,
.inline-group > div:nth-last-child(3) .stacked-inline-sortable .sortable-down {
    opacity: 0.15 !important;
    cursor: default;
}

fieldset input[type=text],
fieldset input[type=url],
fieldset input[type=email],
fieldset input[type=number],
fieldset input[type=password],
fieldset input[type=date],
fieldset input[type=tel],
fieldset .vTextField,
fieldset .vURLField,
fieldset .vLargeTextField,
fieldset .vTimeField,
fieldset .vDateField {
    display: inline-block;
}

@media (max-width: 575.98px) {
    fieldset input[type=text],
    fieldset input[type=url],
    fieldset input[type=email],
    fieldset input[type=number],
    fieldset input[type=password],
    fieldset input[type=date],
    fieldset input[type=tel],
    fieldset .vTextField,
    fieldset .vURLField,
    fieldset .vLargeTextField,
    fieldset .vTimeField,
    fieldset .vDateField {
        max-width: none;
    }
}

fieldset select:not([multiple=multiple]) {
    border-radius: 0.25rem;
}

fieldset input[type=number], fieldset input[type=date], fieldset input.vIntegerField, fieldset input.vIntegerField, fieldset input.vDateField, fieldset input.vTimeField, fieldset input.vForeignKeyRawIdAdminField {
    width: auto;
}

.timezonewarning {
    display: inline-block;
    margin-top: 0.5rem;
}

.related-lookup:before {
    display: inline-block;
    width: 20px;
    height: 20px;
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    content: "\f002";
    color: #212529;
    font-size: 1.143rem;
    margin-left: 5px;
}

.autosize {
    max-height: 12rem;
}


.ImageWidget .float-xs-left {
    margin-right: 1rem;
    max-width: 75px;
    height: auto;
}

.widget-AdminSplitDateTime, .widget-AdminDateWidget, .widget-AdminTimeWidget {
    font-size: 0;
    color: transparent;
}

.widget-AdminSplitDateTime p, .widget-AdminDateWidget p, .widget-AdminTimeWidget p {
    margin: 0;
}

.widget-AdminSplitDateTime .datetimeshortcuts, .widget-AdminDateWidget .datetimeshortcuts, .widget-AdminTimeWidget .datetimeshortcuts {
    position: relative;
    margin: 0 1.5rem 0 0;
    white-space: nowrap;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}

.widget-AdminSplitDateTime .datetimeshortcuts a, .widget-AdminDateWidget .datetimeshortcuts a, .widget-AdminTimeWidget .datetimeshortcuts a {
    white-space: nowrap;
    font-size: 0.929rem;
}

.widget-AdminSplitDateTime .datetimeshortcuts a:first-child, .widget-AdminDateWidget .datetimeshortcuts a:first-child, .widget-AdminTimeWidget .datetimeshortcuts a:first-child {
    margin-left: 3.15rem;
    margin-top: .45rem;
}

.widget-AdminSplitDateTime .datetimeshortcuts a:not(:first-child), .widget-AdminDateWidget .datetimeshortcuts a:not(:first-child), .widget-AdminTimeWidget .datetimeshortcuts a:not(:first-child) {
    vertical-align: top;
}

.widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink'], .widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink'], .widget-AdminDateWidget .datetimeshortcuts a[id^='calendarlink'], .widget-AdminDateWidget .datetimeshortcuts a[id^='clocklink'], .widget-AdminTimeWidget .datetimeshortcuts a[id^='calendarlink'], .widget-AdminTimeWidget .datetimeshortcuts a[id^='clocklink'] {
    padding: 0.5rem 0.75rem;
    position: absolute;
    left: -1px;
    z-index: 0;
    text-align: center;
    white-space: nowrap;
}

.widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink']:hover, .widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink']:focus, .widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink']:hover, .widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink']:focus, .widget-AdminDateWidget .datetimeshortcuts a[id^='calendarlink']:hover, .widget-AdminDateWidget .datetimeshortcuts a[id^='calendarlink']:focus, .widget-AdminDateWidget .datetimeshortcuts a[id^='clocklink']:hover, .widget-AdminDateWidget .datetimeshortcuts a[id^='clocklink']:focus, .widget-AdminTimeWidget .datetimeshortcuts a[id^='calendarlink']:hover, .widget-AdminTimeWidget .datetimeshortcuts a[id^='calendarlink']:focus, .widget-AdminTimeWidget .datetimeshortcuts a[id^='clocklink']:hover, .widget-AdminTimeWidget .datetimeshortcuts a[id^='clocklink']:focus {
    text-decoration: none;
    color: #0d64a2;
}

.widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink'] .date-icon, .widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink'] .clock-icon, .widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink'] .date-icon, .widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink'] .clock-icon, .widget-AdminDateWidget .datetimeshortcuts a[id^='calendarlink'] .date-icon, .widget-AdminDateWidget .datetimeshortcuts a[id^='calendarlink'] .clock-icon, .widget-AdminDateWidget .datetimeshortcuts a[id^='clocklink'] .date-icon, .widget-AdminDateWidget .datetimeshortcuts a[id^='clocklink'] .clock-icon, .widget-AdminTimeWidget .datetimeshortcuts a[id^='calendarlink'] .date-icon, .widget-AdminTimeWidget .datetimeshortcuts a[id^='calendarlink'] .clock-icon, .widget-AdminTimeWidget .datetimeshortcuts a[id^='clocklink'] .date-icon, .widget-AdminTimeWidget .datetimeshortcuts a[id^='clocklink'] .clock-icon {
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
}

.widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink'] .date-icon:before, .widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink'] .date-icon:before, .widget-AdminDateWidget .datetimeshortcuts a[id^='calendarlink'] .date-icon:before, .widget-AdminDateWidget .datetimeshortcuts a[id^='clocklink'] .date-icon:before, .widget-AdminTimeWidget .datetimeshortcuts a[id^='calendarlink'] .date-icon:before, .widget-AdminTimeWidget .datetimeshortcuts a[id^='clocklink'] .date-icon:before {
    content: "";
}

.widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink'] .clock-icon:before, .widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink'] .clock-icon:before, .widget-AdminDateWidget .datetimeshortcuts a[id^='calendarlink'] .clock-icon:before, .widget-AdminDateWidget .datetimeshortcuts a[id^='clocklink'] .clock-icon:before, .widget-AdminTimeWidget .datetimeshortcuts a[id^='calendarlink'] .clock-icon:before, .widget-AdminTimeWidget .datetimeshortcuts a[id^='clocklink'] .clock-icon:before {
    content: "";
}

.widget-AdminSplitDateTime input, .widget-AdminDateWidget input, .widget-AdminTimeWidget input {
    white-space: nowrap;
    vertical-align: top;
}

.widget-AdminSplitDateTime input.vDateField, .widget-AdminSplitDateTime input.vTimeField, .widget-AdminDateWidget input.vDateField, .widget-AdminDateWidget input.vTimeField, .widget-AdminTimeWidget input.vDateField, .widget-AdminTimeWidget input.vTimeField {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    position: relative;
    z-index: 2;
    text-indent: 0;
}



.widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink'], .widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink'], .widget-AdminDateWidget .datetimeshortcuts a[id^='calendarlink'], .widget-AdminDateWidget .datetimeshortcuts a[id^='clocklink'], .widget-AdminTimeWidget .datetimeshortcuts a[id^='calendarlink'], .widget-AdminTimeWidget .datetimeshortcuts a[id^='clocklink'] {
    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.375rem;
}


.widget-AdminSplitDateTime .datetimeshortcuts a[id^='calendarlink']:not(:first-child),
.widget-AdminSplitDateTime .datetimeshortcuts a[id^='clocklink']:not(:first-child){
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}

@media (min-width: 768px) {
    .widget-AdminSplitDateTime br, .widget-AdminDateWidget br, .widget-AdminTimeWidget br {
        display: none;
    }
}
.

.widget-AdminSplitDateTime .timezonewarning, .widget-AdminDateWidget .timezonewarning, .widget-AdminTimeWidget .timezonewarning {
    display: block;
    font-size: 11px;
}

@media (max-width: 991px) {
    .widget-AdminSplitDateTime input.vDateField {
        margin-bottom: .2rem;
    }
}


.calendarbox, .clockbox {
    margin: 0 0 0 2rem;
    background-color: #f1f1f1;
    border-radius: 0.25rem;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
}

.calendarbox .calendar-cancel, .clockbox .calendar-cancel {
    margin: 0;
}

.calendarbox .calendar-cancel a, .clockbox .calendar-cancel a {
    padding: 0.3rem 0;
    display: block;
    color: #fff;
    border-bottom-left-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    text-align: center;
    background-color: #828a9f;
}

.calendarbox .calendar-cancel a:hover, .clockbox .calendar-cancel a:hover {
    text-decoration: none;
    background-color: #5d6478;
}

.widget-CheckboxInput input[type=checkbox], [class*=CheckboxInput] input[type=checkbox], .tabular .form-row input[type=checkbox] {
    margin-top: 0.65rem;
}

.widget-CheckboxInput > .text-help, [class*=CheckboxInput] > .text-help, .tabular .form-row > .text-help {
    margin-top: 0.25rem;
}

.calendarbox {
    z-index: 3;
}

.calendarbox > div:first-child {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
    background-color: #687086;
    overflow: auto;
    height: 32px;
}

.calendarbox > div:first-child a {
    display: block;
    text-align: center;
    padding: 0.3rem 0.2rem 0.3rem 1rem;
    position: relative;
    z-index: 2;
    color: transparent;
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
}

.calendarbox > div:first-child a:hover {
    background-color: #464c5b;
}

.calendarbox > div:first-child a:hover, .calendarbox > div:first-child a:focus {
    text-decoration: none;
}

.calendarbox > div:first-child a.calendarnav-previous {
    float: left;
    text-align: center;
}

.calendarbox > div:first-child a.calendarnav-previous:before {
    content: "\f053";
    color: #fff;
}

.calendarbox > div:first-child a.calendarnav-next {
    float: right;
}

.calendarbox > div:first-child a.calendarnav-next:before {
    content: "\f054";
    color: #fff;
}

.calendarbox table {
    width: 100%;
}

.calendarbox table caption {
    left: 0;
    right: 0;
    top: 0.3rem;
    text-align: center;
    position: absolute;
    color: #fff;
}

.calendarbox table tbody td {
    padding: 0;
    text-align: center;
    font-size: 0.929rem;
}

.calendarbox table tbody td.nonday {
    background-color: transparent;
}

.calendarbox table tbody td a {
    display: block;
    padding: 0.35rem 0.5rem;
    background-color: #fff;
    -webkit-box-shadow: inset -1px -1px 0 0 #f1f1f1;
    box-shadow: inset -1px -1px 0 0 #f1f1f1;
}

.calendarbox table tbody td.today a {
    background-color: #d5f3dc;
    -webkit-box-shadow: inset -1px -1px 0 0 #d5f3dc;
    box-shadow: inset -1px -1px 0 0 #d5f3dc;
}

.calendarbox table tbody td a:hover, .calendarbox table tbody td .today a:hover {
    background-color: #828a9f;
    -webkit-box-shadow: inset -1px -1px 0 0 #828a9f;
    box-shadow: inset -1px -1px 0 0 #828a9f;
    color: #fff;
    text-decoration: none;
}

.calendarbox table tbody td.selected a {
    background-color: #5d6478;
    color: #fff;
    -webkit-box-shadow: inset 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
    box-shadow: inset 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
}

.calendarbox table tbody td.selected.today a {
    color: #d5f3dc;
}

.calendarbox table tbody th {
    padding: 0.4rem 0 0.3rem;
    font-size: 0.929rem;
    text-align: center;
}

.calendarbox .calendar-shortcuts {
    padding: 0.75rem 0;
    text-align: center;
    color: #c5c9cc;
    font-size: 0.929rem;
}

.calendarbox .calendar-shortcuts a {
    color: #0d64a2;
    padding: 0 0.2rem;
}

.clockbox h2, .clockbox .h2 {
    padding: 0.75rem 1.5rem;
    font-weight: normal;
    font-size: 1rem;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
    background-color: #687086;
    color: #fff;
    margin: 0;
}

.clockbox .timelist {
    list-style: none;
    margin: 0;
    padding: 0;
}

.clockbox .timelist li a {
    display: block;
    background-color: #fff;
    text-align: center;
    padding: 0.3rem 0;
    font-size: 0.929rem;
}

.clockbox .timelist li a:hover {
    background-color: transparent;
    text-decoration: none;
}

.clockbox .timelist li:not(:last-child) a {
    margin-bottom: 1px;
}

/* Two column selector */
.selector {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.selector .selector-chooser {
    list-style: none;
    margin: 0;
    padding: 0;
    min-height: 200px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 1rem;
}

.selector .selector-chooser > * {
    height: 20px;
}

.selector .selector-available, .selector .selector-chosen {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 200px;
    flex: 1 1 200px;
}

.selector .selector-available h2, .selector .selector-available .h2, .selector .selector-chosen h2, .selector .selector-chosen .h2 {
    font-size: 16px;
    margin-top: 0.1rem;
}

.selector .selector-available p, .selector .selector-chosen p {
    margin: 0;
}

.selector .selector-available label, .selector .selector-chosen label {
    display: none;
}

.selector .selector-available select, .selector .selector-chosen select {
    padding: 0.25rem 0;
    display: block;
}

.selector .selector-available input {
    display: block;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.selector .selector-available select {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    margin-top: -1px;
    min-height: 142px;
}

.selector .selector-chosen select {
    min-height: 162px;
}

.radiolist {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-top: 0.375rem;
}

.radiolist input {
    margin-right: 0.35rem;
}

.radiolist.inline li {
    display: inline-block;
}

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

.suit-char-count {
    position: absolute;
    height: 1rem;
    right: 1.25rem;
    margin-top: -1.15rem;
    font-size: 11px;
    color: #9ca3a9;
}

.suit-char-count a {
    color: #9ca3a9;
}

.suit-char-count a:hover, .suit-char-count a:focus {
    color: #55acee;
    text-decoration: none;
}

.suit-char-count a .fa {
    font-size: 12px;
    display: inline-block;
    padding-left: 2px;
}

.related-widget-wrapper ul, .widget-AdminRadioSelect ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.related-widget-wrapper ul > li label input[type=checkbox], .related-widget-wrapper ul > li label input[type=radio], .widget-AdminRadioSelect ul > li label input[type=checkbox], .widget-AdminRadioSelect ul > li label input[type=radio] {
    margin-right: 3px;
}

.related-widget-wrapper-link:not([href]) {
    display: none;
}

.related-widget-wrapper-link:hover, .related-widget-wrapper-link:focus {
    text-decoration: none;
}

.messagelist {
    list-style: none;
    margin: 0;
    padding: 0;
    display: block;
    margin: 1rem 1.875rem 0;
}

.messagelist li:last-child {
    margin-bottom: 0;
}

body.delete-confirmation .content-wrap {
    display: block;
    margin: 1.5rem 2.625rem;
}

body.delete-confirmation .content-wrap h1, body.delete-confirmation .content-wrap .h1, body.delete-confirmation .content-wrap h2, body.delete-confirmation .content-wrap .h2, body.delete-confirmation .content-wrap ul {
    display: block;
    float: none;
}

body.delete-confirmation .content-wrap h1, body.delete-confirmation .content-wrap .h1 {
    font-size: 1.571rem;
}

body.delete-confirmation .content-wrap h2, body.delete-confirmation .content-wrap .h2 {
    margin-top: 1.2rem;
    font-size: 1.143rem;
}

body.delete-confirmation .content-wrap form {
    margin-top: 2rem;
}

body.delete-confirmation .content-wrap input[type=button], body.delete-confirmation .content-wrap input[type=submit], body.delete-confirmation .content-wrap button {
    margin-right: 1.5rem;
}

.submit-row .deletelink-box {
    float: right;
    margin: 0;
}

.submit-row input[type=submit], .submit-row input[type=button], .submit-row button, .submit-row .btn, .submit-row #changelist #changelist-form .paginator input[type=submit], #changelist #changelist-form .paginator .submit-row input[type=submit], .submit-row #changelist #changelist-form .actions button, #changelist #changelist-form .actions .submit-row button, .submit-row #changelist #toolbar #changelist-search input[type=submit], #changelist #toolbar #changelist-search .submit-row input[type=submit], body.login .submit-row input[type=submit], .submit-row #toolbar > .object-tools > li > a:not([class*=btn-]), .submit-row #content-main > .object-tools > li > a:not([class*=btn-]), .submit-row input[type=submit]:not([class*=btn-]), .submit-row input[type=button]:not([class*=btn-]), .submit-row button:not([class*=btn-]), .submit-row body.delete-confirmation .content-wrap input[type=button], body.delete-confirmation .content-wrap .submit-row input[type=button], .submit-row body.delete-confirmation .content-wrap input[type=submit], body.delete-confirmation .content-wrap .submit-row input[type=submit], .submit-row body.delete-confirmation .content-wrap button, body.delete-confirmation .content-wrap .submit-row button, .submit-row .deletelink-box .deletelink {
    margin-bottom: 0.5rem;
}

.submit-row.fixed {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    padding: 1.2rem 1.875rem 1rem;
    z-index: 5000;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
}

@media (min-width: 992px) {
    body.suit_form_submit_on_right .col-right .submit-row {
        position: relative;
        padding: 0.9375rem;
        background-color: #f6f6f6;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-shadow: 0 1px 0 0 #e4e4e4;
        box-shadow: 0 1px 0 0 #e4e4e4;
    }

    body.suit_form_submit_on_right .col-right .submit-row a.btn:not(.deletelink), body.suit_form_submit_on_right .col-right .submit-row #toolbar > .object-tools > li > a:not(.deletelink):not([class*=btn-]), body.suit_form_submit_on_right .col-right .submit-row #content-main > .object-tools > li > a:not(.deletelink):not([class*=btn-]), body.suit_form_submit_on_right .col-right .submit-row .deletelink-box a.deletelink:not(.deletelink), body.suit_form_submit_on_right .col-right .submit-row button, body.suit_form_submit_on_right .col-right .submit-row input[type=submit], body.suit_form_submit_on_right .col-right .submit-row input[type=button] {
        padding-left: 0;
        padding-right: 0;
    }

    body.suit_form_submit_on_right .col-right .submit-row > * {
        width: 100%;
    }

    body.suit_form_submit_on_right .col-right .submit-row .deletelink-box {
        text-align: right;
        margin-top: 0.9375rem;
        -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
        order: 10;
    }
}

body.suit_form_submit_on_right .col-right .object-tools {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-top: 1.875rem;
}

@media (max-width: 991.98px) {
    body.suit_form_submit_on_right .col-right .object-tools {
        display: none;
    }

    body.suit_form_submit_on_right .col-right .object-tools li {
        display: inline-block;
        margin-right: 10px;
    }

    body.suit_form_submit_on_right .col-right .object-tools li.heading {
        display: block;
        font-weight: bold;
    }
}

@media (min-width: 992px) {
    body.suit_form_submit_on_right .col-right .object-tools li.list-item, body.suit_form_submit_on_right .col-right .object-tools li:not(.list-item) > a {
        display: block;
        margin-top: 1px;
        background-color: #f6f6f6;
        padding: 0.625rem 0.9375rem;
        -webkit-box-shadow: 0 1px 0 0 #e4e4e4;
        box-shadow: 0 1px 0 0 #e4e4e4;
    }

    body.suit_form_submit_on_right .col-right .object-tools li:not(.list-item) a:hover {
        text-decoration: none;
        background-color: #fff;
    }

    body.suit_form_submit_on_right .col-right .object-tools li:not(.list-item) a .fa {
        margin-right: 0.2rem;
    }

    body.suit_form_submit_on_right .col-right .object-tools li.heading {
        font-weight: 500;
        font-size: 1.143rem;
        padding: 0 0.625rem 0.46875rem;
    }

    body.suit_form_submit_on_right .col-right .object-tools li.heading.heading-inverse {
        background-color: #5d6478;
        color: #fff;
        font-weight: normal;
        font-size: 1rem;
        padding: 0.46875rem 0.625rem;
    }
}

.breadcrumbs {
    font-size: 0.929rem;
    color: #687086;
    position: relative;
}

.breadcrumbs li {
    float: left;
}

.breadcrumbs a {
    color: #0d64a2;
    display: inline-block;
    margin: 0 0.2rem;
}

.breadcrumbs a:first-child {
    margin-left: 0;
}

body.suit_layout_vertical {
    /*&.change-form {
    #container {
      > .breadcrumbs {
        display: none;
      }
    }
    #content {
      .breadcrumbs {
      }
    }
  }*/
}

body.suit_layout_vertical #container > .breadcrumbs {
    display: block;
    position: absolute;
    padding: 1.5rem 1.875rem;
    left: 230px;
}

body.suit_layout_vertical #container #content .breadcrumbs {
    display: none;
}

body.suit_layout_vertical #container #content .messagelist {
    margin: 0 0 0.9375rem 0;
}

body.suit_layout_vertical #container > .messagelist {
    display: none;
}

body.suit_layout_horizontal .breadcrumbs {
    padding: 1.5rem 2.625rem 0;
}

body.suit_layout_horizontal.change-list .breadcrumbs {
    display: none;
}

body.suit_layout_horizontal.change-form #content .breadcrumbs {
    display: none;
    padding: 1.5rem 0;
    position: relative;
    z-index: 6;
}

body.suit_layout_horizontal.change-form #content .breadcrumbs li {
    float: left;
}

body.suit_layout_horizontal #content .content-wrap .messagelist {
    display: none;
}

#result_list, table#change-history, .tabular table {
    width: 100%;
    border: 0;
    background-color: #fff;
    border-collapse: collapse;
}

#result_list thead > tr th, table#change-history thead > tr th, .tabular table thead > tr th {
    -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.2);
    box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.2);
    font-weight: normal;
    background-color: #5d6478;
    color: #eceeef;
    padding: 0;
    position: relative;
    line-height: normal;
}

#result_list thead > tr th.action-checkbox-column, table#change-history thead > tr th.action-checkbox-column, .tabular table thead > tr th.action-checkbox-column {
    width: 2rem;
}

#result_list thead > tr th.sorted, table#change-history thead > tr th.sorted, .tabular table thead > tr th.sorted {
    background-color: #464c5b;
}

#result_list thead > tr th.sorted:after, table#change-history thead > tr th.sorted:after, .tabular table thead > tr th.sorted:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    background-color: #279bee;
}

#result_list thead > tr th .sortoptions, table#change-history thead > tr th .sortoptions, .tabular table thead > tr th .sortoptions {
    float: right;
    font-size: 0.857rem;
    margin: 0.1rem 0.3rem 0 0;
}

#result_list thead > tr th .sortoptions .sortpriority, table#change-history thead > tr th .sortoptions .sortpriority, .tabular table thead > tr th .sortoptions .sortpriority, #result_list thead > tr th .sortoptions .sortremove, table#change-history thead > tr th .sortoptions .sortremove, .tabular table thead > tr th .sortoptions .sortremove, #result_list thead > tr th .sortoptions .toggle, table#change-history thead > tr th .sortoptions .toggle, .tabular table thead > tr th .sortoptions .toggle {
    display: block;
    float: right;
    padding: 0.2rem;
}

#result_list thead > tr th .sortoptions .sortremove:hover, table#change-history thead > tr th .sortoptions .sortremove:hover, .tabular table thead > tr th .sortoptions .sortremove:hover, #result_list thead > tr th .sortoptions .toggle:hover, table#change-history thead > tr th .sortoptions .toggle:hover, .tabular table thead > tr th .sortoptions .toggle:hover {
    text-decoration: none;
}

#result_list thead > tr th .sortoptions .sortremove:hover:before, table#change-history thead > tr th .sortoptions .sortremove:hover:before, .tabular table thead > tr th .sortoptions .sortremove:hover:before, #result_list thead > tr th .sortoptions .toggle:hover:before, table#change-history thead > tr th .sortoptions .toggle:hover:before, .tabular table thead > tr th .sortoptions .toggle:hover:before {
    color: #279bee;
}

#result_list thead > tr th .sortoptions .sortremove:before, table#change-history thead > tr th .sortoptions .sortremove:before, .tabular table thead > tr th .sortoptions .sortremove:before, #result_list thead > tr th .sortoptions .toggle:before, table#change-history thead > tr th .sortoptions .toggle:before, .tabular table thead > tr th .sortoptions .toggle:before {
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
}

#result_list thead > tr th .sortoptions .sortremove:before, table#change-history thead > tr th .sortoptions .sortremove:before, .tabular table thead > tr th .sortoptions .sortremove:before {
    content: "\f00d";
}

#result_list thead > tr th .sortoptions .toggle.ascending:before, table#change-history thead > tr th .sortoptions .toggle.ascending:before, .tabular table thead > tr th .sortoptions .toggle.ascending:before {
    content: "\f077";
}

#result_list thead > tr th .sortoptions .toggle.descending:before, table#change-history thead > tr th .sortoptions .toggle.descending:before, .tabular table thead > tr th .sortoptions .toggle.descending:before {
    content: "\f078";
}

#result_list thead > tr th div.text span, table#change-history thead > tr th div.text span, .tabular table thead > tr th div.text span, #result_list thead > tr th div.text a, table#change-history thead > tr th div.text a, .tabular table thead > tr th div.text a {
    display: block;
    padding: 0.7rem 0.8rem;
}

#result_list thead > tr th a, table#change-history thead > tr th a, .tabular table thead > tr th a {
    color: #eceeef;
    display: block;
}

#result_list tbody > tr > td, table#change-history tbody > tr > td, .tabular table tbody > tr > td, #result_list tbody > tr > th, table#change-history tbody > tr > th, .tabular table tbody > tr > th {
    padding: 0.4rem 0.8rem;
    font-size: 0.857rem;
    border: 1px solid #f2f2f2;
    border-left: 0;
    border-right: 0;
}

#result_list tbody > tr:nth-child(even), table#change-history tbody > tr:nth-child(even), .tabular table tbody > tr:nth-child(even) {
    background-color: #f7f7f7;
}

#result_list tbody > tr:nth-child(even):hover, table#change-history tbody > tr:nth-child(even):hover, .tabular table tbody > tr:nth-child(even):hover {
    background-color: #e8e8e8;
}

#result_list tbody > tr:hover, table#change-history tbody > tr:hover, .tabular table tbody > tr:hover {
    background-color: #e6e6e6;
}

#result_list tbody > tr:hover > th, table#change-history tbody > tr:hover > th, .tabular table tbody > tr:hover > th, #result_list tbody > tr:hover > td, table#change-history tbody > tr:hover > td, .tabular table tbody > tr:hover > td {
    border-color: transparent;
}

#result_list tbody > tr:first-child > th, table#change-history tbody > tr:first-child > th, .tabular table tbody > tr:first-child > th, #result_list tbody > tr:first-child > td, table#change-history tbody > tr:first-child > td, .tabular table tbody > tr:first-child > td {
    border-top: 0 !important;
}

#result_list tbody > tr.selected, table#change-history tbody > tr.selected, .tabular table tbody > tr.selected {
    background-color: #828a9f !important;
}

#result_list tbody > tr.selected:hover, table#change-history tbody > tr.selected:hover, .tabular table tbody > tr.selected:hover {
    background-color: #51586a;
}

#result_list tbody > tr.selected:nth-child(even), table#change-history tbody > tr.selected:nth-child(even), .tabular table tbody > tr.selected:nth-child(even) {
    background-color: #687086 !important;
}

#result_list tbody > tr.selected:nth-child(even):hover, table#change-history tbody > tr.selected:nth-child(even):hover, .tabular table tbody > tr.selected:nth-child(even):hover {
    background-color: #51586a;
}

#result_list tbody > tr.selected > th, table#change-history tbody > tr.selected > th, .tabular table tbody > tr.selected > th, #result_list tbody > tr.selected > td, table#change-history tbody > tr.selected > td, .tabular table tbody > tr.selected > td {
    border-color: transparent;
}

#result_list tbody > tr.selected > th, table#change-history tbody > tr.selected > th, .tabular table tbody > tr.selected > th, #result_list tbody > tr.selected > th a, table#change-history tbody > tr.selected > th a, .tabular table tbody > tr.selected > th a, #result_list tbody > tr.selected > td, table#change-history tbody > tr.selected > td, .tabular table tbody > tr.selected > td, #result_list tbody > tr.selected > td a, table#change-history tbody > tr.selected > td a, .tabular table tbody > tr.selected > td a {
    color: #fff;
}

#result_list tbody > tr.table-danger.selected > td, table#change-history tbody > tr.table-danger.selected > td, .tabular table tbody > tr.table-danger.selected > td, #result_list tbody > tr.table-danger.selected > th, table#change-history tbody > tr.table-danger.selected > th, .tabular table tbody > tr.table-danger.selected > th, #result_list tbody > tr.table-warning.selected > td, table#change-history tbody > tr.table-warning.selected > td, .tabular table tbody > tr.table-warning.selected > td, #result_list tbody > tr.table-warning.selected > th, table#change-history tbody > tr.table-warning.selected > th, .tabular table tbody > tr.table-warning.selected > th, #result_list tbody > tr.table-info.selected > td, table#change-history tbody > tr.table-info.selected > td, .tabular table tbody > tr.table-info.selected > td, #result_list tbody > tr.table-info.selected > th, table#change-history tbody > tr.table-info.selected > th, .tabular table tbody > tr.table-info.selected > th, #result_list tbody > tr.table-success.selected > td, table#change-history tbody > tr.table-success.selected > td, .tabular table tbody > tr.table-success.selected > td, #result_list tbody > tr.table-success.selected > th, table#change-history tbody > tr.table-success.selected > th, .tabular table tbody > tr.table-success.selected > th {
    background-color: transparent;
}

#result_list tbody > tr.table-danger, table#change-history tbody > tr.table-danger, .tabular table tbody > tr.table-danger {
    background-color: #f2dede;
}

#result_list tbody > tr.table-danger > td, table#change-history tbody > tr.table-danger > td, .tabular table tbody > tr.table-danger > td, #result_list tbody > tr.table-danger > th, table#change-history tbody > tr.table-danger > th, .tabular table tbody > tr.table-danger > th {
    border-bottom: 1px solid #ebcccc;
}

#result_list tbody > tr.table-warning, table#change-history tbody > tr.table-warning, .tabular table tbody > tr.table-warning {
    background-color: #fcf8e3;
}

#result_list tbody > tr.table-warning > td, table#change-history tbody > tr.table-warning > td, .tabular table tbody > tr.table-warning > td, #result_list tbody > tr.table-warning > th, table#change-history tbody > tr.table-warning > th, .tabular table tbody > tr.table-warning > th {
    border-bottom: 1px solid #faf2cc;
}

#result_list tbody > tr.table-info, table#change-history tbody > tr.table-info, .tabular table tbody > tr.table-info {
    background-color: #d9edf7;
}

#result_list tbody > tr.table-info > td, table#change-history tbody > tr.table-info > td, .tabular table tbody > tr.table-info > td, #result_list tbody > tr.table-info > th, table#change-history tbody > tr.table-info > th, .tabular table tbody > tr.table-info > th {
    border-bottom: 1px solid #bcdff1;
}

#result_list tbody > tr.table-success, table#change-history tbody > tr.table-success, .tabular table tbody > tr.table-success {
    background-color: #dff0d8;
}

#result_list tbody > tr.table-success > td, table#change-history tbody > tr.table-success > td, .tabular table tbody > tr.table-success > td, #result_list tbody > tr.table-success > th, table#change-history tbody > tr.table-success > th, .tabular table tbody > tr.table-success > th {
    border-bottom: 1px solid #d0e9c6;
}

#result_list tbody > tr th.table-danger, table#change-history tbody > tr th.table-danger, .tabular table tbody > tr th.table-danger, #result_list tbody > tr td.table-danger, table#change-history tbody > tr td.table-danger, .tabular table tbody > tr td.table-danger {
    background-color: #f2dede;
    border-bottom: 1px solid #ebcccc;
}

#result_list tbody > tr th.table-warning, table#change-history tbody > tr th.table-warning, .tabular table tbody > tr th.table-warning, #result_list tbody > tr td.table-warning, table#change-history tbody > tr td.table-warning, .tabular table tbody > tr td.table-warning {
    background-color: #fcf8e3;
    border-bottom: 1px solid #faf2cc;
}

#result_list tbody > tr th.table-info, table#change-history tbody > tr th.table-info, .tabular table tbody > tr th.table-info, #result_list tbody > tr td.table-info, table#change-history tbody > tr td.table-info, .tabular table tbody > tr td.table-info {
    background-color: #d9edf7;
    border-bottom: 1px solid #bcdff1;
}

#result_list tbody > tr th.table-success, table#change-history tbody > tr th.table-success, .tabular table tbody > tr th.table-success, #result_list tbody > tr td.table-success, table#change-history tbody > tr td.table-success, .tabular table tbody > tr td.table-success {
    background-color: #dff0d8;
    border-bottom: 1px solid #d0e9c6;
}

.nav-tabs-suit {
    margin-bottom: 1rem;
}

.nav-tabs-suit .nav-item:first-child {
    margin-left: 0.75rem;
}

.nav-tabs-suit .nav-item + .nav-item {
    margin-left: 0.3rem;
}

.nav-tabs-suit .nav-link {
    border-radius: 2px;
    padding: 0.65em 1.5em;
    background-color: #fff;
    border-color: #dee2e6;
}

.nav-tabs-suit .nav-link:hover, .nav-tabs-suit .nav-link:focus {
    border-color: #91b6d0 #91b6d0 #dee2e6;
}

.nav-tabs-suit .nav-link.active, .nav-tabs-suit .nav-link.active:focus {
    color: #222;
}

.nav-tabs-suit .nav-link.has-error, .nav-tabs-suit .nav-link.has-error.active, .nav-tabs-suit .nav-link.has-error:focus {
    color: #a94442;
}

.table, table#change-history, .tabular table {
    background-color: #fff;
}

.table-dark {
    color: #eceeef;
    background-color: #fff;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
    border-color: #f2f2f2;
    font-weight: normal;
}

.table-dark thead th {
    background-color: #5d6478;
}

.table-dark:not(.table-bordered) thead th:not(:first-child) {
    -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.2);
    box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.2);
}

.table-dark tbody th, .table-dark tbody td {
    color: #212529;
}

.thead-dark th {
    background-color: #5d6478;
    color: #eceeef;
    font-weight: normal;
}

.card {
    -webkit-box-shadow: 0 1px 0 0 #e4e4e4;
    box-shadow: 0 1px 0 0 #e4e4e4;
    border: none;
}

.card .card-header {
    color: #fff !important;
}

html {
    font-size: 13px;
}

body {
    margin: 0;
    padding: 0;
}

body.suit_layout_vertical:not(.login) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 100vh;
}

body.suit_layout_vertical:not(.login) #container {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-line-pack: start;
    align-content: flex-start;
}

body.suit_layout_vertical:not(.login) #container #header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 230px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

body.suit_layout_vertical:not(.login) #container #content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 96px;
    padding-top: 4rem;
}

body.suit_layout_vertical:not(.login) #container #footer {
    left: 230px;
    bottom: 0;
    right: 0;
    position: absolute;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

body.suit_layout_vertical:not(.login).dashboard:not([class*=app-]) #container #content {
    padding-top: 1.875rem;
}

body.suit_layout_horizontal #header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #252830;
    padding-top: 1.0416666667rem;
    padding-left: 0px;
    padding-right: 0px;
}

body.suit_layout_horizontal #header a {
    color: #fff;
}

body.suit_layout_horizontal #header #branding, body.suit_layout_horizontal #header #user-tools {
    -ms-flex-preferred-size: 288px;
    flex-basis: 288px;
}

body.suit_layout_horizontal #header .header-label {
    font-size: 0.857rem;
    color: #687086;
    text-transform: uppercase;
    font-weight: normal;
}

body.suit_layout_horizontal #header #branding {
    min-width: 200px;
    padding-left: 1.875rem;
}

body.suit_layout_horizontal #header #branding #site-name {
    font-size: 1.714rem;
}

body.suit_layout_horizontal #header #branding #site-name a {
    display: inline-block;
}

body.suit_layout_horizontal #header #branding #site-name a:hover {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.8);
}

body.suit_layout_horizontal #header #branding #site-name a .header-label {
    display: block;
    margin-top: 2px;
    text-align: right;
}

@media (max-width: 767.98px) {
    body.suit_layout_horizontal #header #branding #site-name a .header-label {
        text-align: left;
    }
}

body.suit_layout_horizontal #header #user-tools {
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2;
    padding: 0 1.875rem;
    text-align: right;
    color: #687086;
    width: 100%
}

body.suit_layout_horizontal #header #user-tools strong {
    color: #fff;
}

body.suit_layout_horizontal #header #user-tools a {
    display: inline-block;
    margin: 0 2px;
    color: #5bb0ed;
}

body.suit_layout_horizontal #header #user-tools a:nth-child(2):not(:last-child) {
    margin-left: 20px;
}

body.suit_layout_horizontal #header #user-tools a:hover {
    color: #fff;
    text-decoration: none;
}

body.suit_layout_horizontal #header .suit-user-tools .welcome {
    display: inline-block;
}

body.suit_layout_horizontal #header .suit-user-tools .user-links {
    display: inline-block;
}

body.suit_layout_horizontal #header #site-name {
    margin: 0;
    font-weight: normal;
}

body.suit_layout_horizontal #header #site-name a {
    color: #fff;
}

body.suit_layout_vertical #header {
    background-color: #252830;
}

body.suit_layout_vertical #header #branding {
    padding: 1.0416666667rem 0.625rem 1.0416666667rem;
}

body.suit_layout_vertical #header #branding #site-name {
    margin: 0;
    font-weight: normal;
    font-size: 1.429rem;
    line-height: 2;
    text-align: center;
}

body.suit_layout_vertical #header #branding #site-name a {
    display: inline-block;
}

body.suit_layout_vertical #header #branding #site-name a:hover {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.8);
}

body.suit_layout_vertical #header #branding #site-name a .header-label {
    display: none;
    margin-top: 2px;
    text-align: left;
}

body.suit_layout_vertical #header #site-name a {
    color: #fff;
}

body.suit_layout_vertical #header a {
    color: #fff;
}

body.suit_layout_vertical #header .header-label {
    font-size: 0.857rem;
    color: #687086;
    text-transform: uppercase;
    font-weight: normal;
}

body.suit_layout_vertical #header #user-tools:not(.suit-user-tools) {
    padding: 0.8680555556rem 0.625rem;
    font-size: 0.857rem;
    color: #687086;
    background-color: #282c37;
}

body.suit_layout_vertical #header #user-tools:not(.suit-user-tools) strong {
    color: #fff;
}

body.suit_layout_vertical #header #user-tools:not(.suit-user-tools) a {
    display: inline-block;
    margin: 0 2px;
    color: #5bb0ed;
}

body.suit_layout_vertical #header #user-tools:not(.suit-user-tools) a:nth-child(2):not(:last-child) {
    margin-left: 5px;
}

body.suit_layout_vertical #header .suit-user-tools {
    background-color: #383d4b;
    padding: 1.1458333333rem 0.9375rem;
    text-align: center;
    font-size: 13px;
}

body.suit_layout_vertical #header .suit-user-tools .separator {
    display: none;
}

body.suit_layout_vertical #header .suit-user-tools .welcome {
    display: block;
    font-size: 12px;
    color: #687086;
    margin-bottom: 0.25rem;
}

body.suit_layout_vertical #header .suit-user-tools .welcome strong {
    color: #fff;
    font-weight: normal;
}

body.suit_layout_vertical #header .suit-user-tools .welcome .fa, body.suit_layout_vertical #header .suit-user-tools .welcome .icon-link:before {
    margin-right: 2px;
    font-size: 13px;
}

body.suit_layout_vertical #header .suit-user-tools .user-links {
    display: inline-block;
    margin-right: 0.75rem;
    margin-bottom: 0.25rem;
}

body.suit_layout_vertical #header .suit-user-tools .icon-link {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0;
    display: inline-block;
    padding: 0.4rem 0;
    width: 26px;
    text-align: center;
    border-radius: 0.2rem;
    position: relative;
    -webkit-transition: background-color 0.2s, color 0.2s;
    transition: background-color 0.2s, color 0.2s;
    color: #fff;
}

body.suit_layout_vertical #header .suit-user-tools .icon-link:hover {
    background-color: #282c37;
    color: #279bee;
}

body.suit_layout_vertical #header .suit-user-tools .icon-link:hover:after {
    opacity: 1;
}

body.suit_layout_vertical #header .suit-user-tools .icon-link:before {
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    font-size: 1.143rem;
    line-height: normal;
    display: inline-block;
}

body.suit_layout_vertical #header .suit-user-tools .icon-link:after {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    display: block;
    position: absolute;
    content: attr(data-title);
    left: 0;
    top: 40px;
    font-size: 10px;
    white-space: nowrap;
    opacity: 0;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
}

body.suit_layout_vertical #header .suit-user-tools .icon-link.view-site-link:before {
    content: "\f015";
}

body.suit_layout_vertical #header .suit-user-tools .icon-link.change-password-link:before {
    content: "\f084";
}

body.suit_layout_vertical #header .suit-user-tools .icon-link.documentation-link:before {
    content: "\f02d";
}

body.suit_layout_vertical #header .suit-user-tools .icon-link.logout-link:before {
    content: "\f08b";
}

body.suit_layout_horizontal #suit-nav {
    box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, .5);
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    margin-top: 1.0416666667rem;
    background-color: #383d4b;
}

body.suit_layout_horizontal #suit-nav > ul {
    list-style: none;
    margin: 0;
    padding: 0;
    margin: 0 1.875rem;
}

body.suit_layout_horizontal #suit-nav > ul > li {
    position: relative;
    display: block;
    float: left;
}

body.suit_layout_horizontal #suit-nav > ul > li a {
    display: block;
    color: rgba(255, 255, 255, 0.7);
}

body.suit_layout_horizontal #suit-nav > ul > li a:hover {
    color: #fff;
    text-decoration: none;
}

body.suit_layout_horizontal #suit-nav > ul > li > a {
    position: relative;
    padding: 0.6944444444rem 1.3392857143rem;
    border-left: 1px solid #252830;
}

body.suit_layout_horizontal #suit-nav > ul > li:last-child > a {
    border-right: 1px solid #252830;
}

body.suit_layout_horizontal #suit-nav > ul > li.active a {
    background-color: #fff;
    color: #212529;
    font-weight: bold;
    -webkit-box-shadow: inset 0 3px 0 #279bee;
    box-shadow: inset 0 3px 0 #279bee;
}

body.suit_layout_horizontal #suit-nav > ul > li.active a:hover {
    background-image: -webkit-gradient(linear, left top, left bottom, from(#e9e9e9), to(#fff));
    background-image: linear-gradient(to bottom, #e9e9e9, #fff);
}

body.suit_layout_horizontal #suit-nav > ul > li:hover > a {
    background-color: #43495a;
}

body.suit_layout_horizontal #suit-nav > ul > li:hover > ul {
    background-color: #43495a;
    display: block;
}

body.suit_layout_horizontal #suit-nav > ul > li > ul {
    list-style: none;
    margin: 0;
    padding: 0;
    z-index: 1000;
    display: none;
    background-color: #383d4b;
    position: absolute;
    min-width: 180px;
    -webkit-box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, 0.07);
    box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, 0.07);
    font-size: 0.929rem;
}

body.suit_layout_horizontal #suit-nav > ul > li > ul > li > a {
    display: block;
    padding: 0.5208333333rem 1.3392857143rem;
    border-bottom: 1px solid #2d313d;
}

body.suit_layout_horizontal #suit-nav > ul > li > ul > li > a:hover {
    background-color: #333845;
}

body.suit_layout_horizontal #suit-nav > ul.suit-nav-right {
    float: right;
}

body.suit_layout_horizontal #suit-nav > ul.suit-nav-right > li > ul {
    right: 0;
}

body.suit_layout_horizontal #suit-sub-nav {

    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    display: block;
    background-color: #fff;
    -webkit-box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.35);
    box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.35);
}

body.suit_layout_horizontal #suit-sub-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    margin: 0 2.625rem;
}

body.suit_layout_horizontal #suit-sub-nav ul > li > a {
    color: #0d64a2;
    display: block;
    float: left;
    font-size: 0.929rem;
    padding: 0.8012820513rem 4px;
    margin: 2px 0.5rem 0;
    margin-bottom: -3px;
}

body.suit_layout_horizontal #suit-sub-nav ul > li:first-child a {
    margin-left: 0;
}

body.suit_layout_horizontal #suit-sub-nav ul > li.active a {
    color: #212529;
    font-weight: bold;
    border-bottom: 3px solid #1081d2;
}

body.suit_layout_vertical #suit-nav {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    background-color: #383d4b;
}

body.suit_layout_vertical #suit-nav > ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

body.suit_layout_vertical #suit-nav > ul > li {
    position: relative;
}

body.suit_layout_vertical #suit-nav > ul > li a:hover, body.suit_layout_vertical #suit-nav > ul > li a:focus {
    text-decoration: none;
}

body.suit_layout_vertical #suit-nav > ul > li.active {
    background-color: #252830;
}

body.suit_layout_vertical #suit-nav > ul > li.active:after {
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    color: #5d6478;
    position: absolute;
    right: 1rem;
    top: 0.85rem;
    font-size: 9px;
}

body.suit_layout_vertical #suit-nav > ul > li.active.has-children:after {
    content: "\f078";
}

body.suit_layout_vertical #suit-nav > ul > li.active:not(.has-children):after {
    content: "\f054";
}

body.suit_layout_vertical #suit-nav > ul > li.active > a, body.suit_layout_vertical #suit-nav > ul > li.active > a:hover {
    color: #fff;
}

body.suit_layout_vertical #suit-nav > ul > li.active > ul {
    display: block;
}

body.suit_layout_vertical #suit-nav > ul > li > a {
    display: block;
    padding: 0.6rem 1.25rem;
    color: rgba(255, 255, 255, 0.7);
}

body.suit_layout_vertical #suit-nav > ul > li > a .fa {
    margin-right: 0.7rem;
}

body.suit_layout_vertical #suit-nav > ul > li:not(.active) a:hover {
    color: #fff;
}

body.suit_layout_vertical #suit-nav > ul > li:not(.active):hover {
    background-color: #2d313d;
}

body.suit_layout_vertical #suit-nav > ul > li:not(.active):hover > ul {
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
    top: 0;
    left: 70%;
    display: block;
    position: absolute;
    z-index: 1000;
    padding: 0;
}

body.suit_layout_vertical #suit-nav > ul > li:not(.active):hover > ul > li > a {
    white-space: nowrap;
}

body.suit_layout_vertical #suit-nav > ul > li:not(.active):hover > ul > li > a:hover {
    background-color: #464c5b;
}

body.suit_layout_vertical #suit-nav > ul > li > ul {
    list-style: none;
    margin: 0;
    padding: 0;
    background-color: #fff;
    display: none;
    font-size: 13px;
    padding: 0;
}

body.suit_layout_vertical #suit-nav > ul > li > ul > li:not(:last-child) {
    border-bottom: 1px solid #f6f6f6;
}

body.suit_layout_vertical #suit-nav > ul > li > ul > li.active {
    background-color: #fff;
}

body.suit_layout_vertical #suit-nav > ul > li > ul > li.active a {
    -webkit-box-shadow: inset 4px 0 0 #279bee;
    box-shadow: inset 4px 0 0 #279bee;
}

body.suit_layout_vertical #suit-nav > ul > li > ul > li.active a, body.suit_layout_vertical #suit-nav > ul > li > ul > li.active a:hover, body.suit_layout_vertical #suit-nav > ul > li > ul > li.active a:focus {
    color: #279bee;
}

body.suit_layout_vertical #suit-nav > ul > li > ul > li a {
    color: #687086;
    display: block;
    padding: 0.4rem 1.25rem;
}

body.suit_layout_vertical #suit-nav > ul > li > ul > li a:hover {
    background-color: #f6f6f6;
    color: #30343e;
}

body.change-form #container br.clear:last-child {
    display: none;
}

/* Begin Django3.1 */
/* Hide the changelist-filter */
/*#changelist-filter {*/
/*  display: none;*/
/*}*/

#changelist .changelist-form-container {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    min-width: 0;
}

body.change-list #container > div, body.change-form #container > div {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

body.change-list #container > .main, body.change-form #container > .main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

body.change-list .main > .content, body.change-form .main > .content {
    -webkit-box-flex: 1;
    -ms-flex: 1 0;
    flex: 1 0;
    max-width: 100%;

}

@media (max-width: 576px) {
    body.suit_layout_horizontal #suit-nav > ul > li {
        width: 100%
    }

    body.suit_layout_horizontal #suit-sub-nav ul > li a {
        width: 100%
    }
}

/* End Django3.1 */

#content {
    padding: 20px;
    /*display: -webkit-box;*/
    /*display: -ms-flexbox;*/
    /*display: flex;*/
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-line-pack: end;
    align-content: flex-end;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

#content .content-wrap {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

body.dashboard #content .content-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

#content .content-wrap > h1, #content .content-wrap > .h1 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

#content .content-wrap > h1:first-child, #content .content-wrap > .h1:first-child, #content .content-wrap > .messagelist + h1, #content .content-wrap > .messagelist + .h1 {
    display: none;
}

#content #content-main {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

#content #content-related {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

#content-main > .object-tools {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    overflow: hidden;
    z-index: 6;
}

#content-main > .object-tools > li {
    display: inline;
}

#content-main > .object-tools > li:not(:first-child) {
    margin-left: 0.5rem;
}

#content-main > .object-tools > li > a:not([class*=btn-]) {
    display: inline-block;
    border-radius: 70px;
}

#content-main > .object-tools > li > a:not([class*=btn-]):before {
    margin-right: 3px;
    display: inline-block;
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    content: none;
}

#content-main > .object-tools > li > a:not([class*=btn-]).addlink {
    display: inline-block;
    border-radius: 70px;
}

#content-main > .object-tools > li > a:not([class*=btn-]).addlink:before {
    margin-right: 3px;
    display: inline-block;
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    content: "\f055";
}

#toolbar > .object-tools {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    overflow: hidden;
    z-index: 6;
}

#toolbar > .object-tools > li {
    display: inline;
}

#toolbar > .object-tools > li:not(:first-child) {
    margin-left: 0.5rem;
}

#toolbar > .object-tools > li > a:not([class*=btn-]) {
    display: inline-block;
    border-radius: 70px;
}

#toolbar > .object-tools > li > a:not([class*=btn-]):before {
    margin-right: 3px;
    display: inline-block;
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    content: none;
}

#toolbar > .object-tools > li > a:not([class*=btn-]).addlink {
    display: inline-block;
    border-radius: 70px;
}

#toolbar > .object-tools > li > a:not([class*=btn-]).addlink:before {
    margin-right: 3px;
    display: inline-block;
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    content: "\f055";
}

/* Sticky footer styles  */
@media (min-width: 576px) {
    html {
        position: relative;
        min-height: 100%;
    }

    body.suit_layout_horizontal, body.login {
        margin-bottom: 66px;
    }

    body.suit_layout_horizontal #footer, body.login #footer {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        min-height: 66px;
        margin-top: -66px;
    }
}

/* Styles */
.footer {
    min-height: 66px;
    background-color: #e4e4e4;
    color: #6c757d;
    font-size: 0.929rem;
}

.footer > .container-fluid, .footer > .container-sm, .footer > .container-md, .footer > .container-lg, .footer > .container-xl, .footer > .container-xxl {
    padding: 1rem 1.875rem;
}

.footer > .container-fluid > .row, .footer > .container-sm > .row, .footer > .container-md > .row, .footer > .container-lg > .row, .footer > .container-xl > .row, .footer > .container-xxl > .row {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 575.98px) {
    .footer > .container-fluid > .row > div:not(:first-child), .footer > .container-sm > .row > div:not(:first-child), .footer > .container-md > .row > div:not(:first-child), .footer > .container-lg > .row > div:not(:first-child), .footer > .container-xl > .row > div:not(:first-child), .footer > .container-xxl > .row > div:not(:first-child) {
        margin-top: 0.75rem;
    }
}


@media (max-width: 575px)
    #changelist-search > div {

    }
}


.footer .footer-links a {
    white-space: nowrap;
}

.footer .footer-links a:not(:last-child) {
    margin-right: 0.75rem;
}

/* Override BS4 [hidden] in reboot.scss to show Django debug toolbar */
#djDebug[hidden], #djDebug [hidden][style*="display: block"], #djDebug [hidden][style*="display:block"] {
    display: block !important;
}

.login #container {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    width: 28em;
    margin: 0 auto;
}

@media (min-width: 576px) {
    .login #container {
        min-width: 400px;
        margin-top: 15vh;
    }
}

body.login svg * {
    fill: #212529;
}

body.login .suit-login-graphic {
    display: block;
    margin: 2rem auto 1.5rem;
}

body.login #content {
    padding: 1.5rem;
}

body.login #content .errornote {
    border-radius: 0;
    border: 0;
}

body.login #header {
    background-color: transparent;
    padding: 0;
}

body.login #header #branding {
    padding: 0;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    text-align: center;
}

body.login #header #branding #site-name {
    margin: 0 auto;
}

body.login #header #branding #site-name:first-child {
    margin-top: 2.25rem;
}

body.login #header #branding #site-name a, body.login #header #branding #site-name a:hover {
    color: #212529;
}

body.login #header #branding #site-name a .header-label {
    font-weight: normal;
    text-align: center;
    margin-top: 0.3rem;
}

body.login .errorlist {
    list-style: none;
    margin: 0;
    padding: 0;
    margin: -0.5rem 0.75rem 1.5rem;
    color: #a94442;
}

body.login .form-row input:not([type=hidden]) {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    margin-bottom: 0.8571428571rem;
}

body.login .form-row input:not([type=hidden]):not(:focus) {
    background-color: #f1f1f1;
    border-color: #f1f1f1;
}

body.login .form-row.has-danger input:not([type=hidden]) {
    border-color: #a94442;
}

body.login .submit-row label {
    display: none;
}

body.login .submit-row input[type=submit] {
    display: block;
    width: 100%;
    margin: 1.5rem 0 0 0;
    border: none;
    text-align: center;
    padding: 1rem 1.5rem;
}

body.dashboard .module {
    margin: 0 1.875rem 0.9375rem 0;
}

body.dashboard .module table {
    width: 100%;
    border-spacing: 1px;
    border-collapse: separate;
}

body.dashboard .module table caption {
    caption-side: top;
    font-weight: 500;
    font-size: 1.286rem;
    padding: 0;
}

body.dashboard .module table tr td, body.dashboard .module table tr th {
    font-size: 0.929rem;
    padding: 0.4rem 0.8rem;
    background-color: #f6f6f6;
}

body.dashboard .module table tr th {
    width: 200px;
    background-color: #fff;
    font-weight: normal;
}

body.dashboard #recent-actions-module h2, body.dashboard #recent-actions-module .h2 {
    display: none;
}

body.dashboard #recent-actions-module h3, body.dashboard #recent-actions-module .h3 {
    font-size: 1.286rem;
}

body.dashboard #recent-actions-module ul.actionlist {
    list-style: none;
    margin: 0;
    padding: 0;
}

body.dashboard #recent-actions-module ul.actionlist > li {
    background-color: #f6f6f6;
    margin-bottom: 1px;
    padding: 0.4rem 0.8rem;
    font-size: 0.929rem;
    padding-left: 2.8rem;
    overflow: auto;
    position: relative;
}

body.dashboard #recent-actions-module ul.actionlist > li span {
    display: block;
    float: right;
    color: #9ca3a9;
    font-size: 0.857rem;
}

body.dashboard #recent-actions-module ul.actionlist > li br {
    display: none;
}

body.dashboard #recent-actions-module ul.actionlist > li:before {
    min-width: 2rem;
    text-align: center;
    background-color: #fff;
    border-right: 1px solid #f1f1f1;
    position: absolute;
    padding-top: 0.4rem;
    top: 0;
    left: 0;
    height: 100%;
}

body.dashboard .addlink:before, body.dashboard .changelink:before, body.dashboard .deletelink:before {
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    display: block;
    float: left;
    min-width: 1.2rem;
}

body.dashboard .addlink:before {
    content: "\f067";
    color: #4ACB68;
}

body.dashboard .changelink:before {
    content: "\f040";
    color: #F3C544;
}

body.dashboard .deletelink:before {
    content: "\f00d";
    color: #E04F3C;
}

.results {
    width: 100%
    overflow: auto;
}

#changelist {
    display: block;
    position: relative;
}

#changelist.filtered {
    clear: both;
    /*display: -webkit-box;*/
    /*display: -ms-flexbox;*/
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#changelist.filtered #toolbar {
    -webkit-box-flex: 10;
    -ms-flex: 10;
    flex: 10;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

#changelist.filtered #changelist-filter:not(:empty) {
    -ms-flex-preferred-size: 15rem;
    flex-basis: 15rem;
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
}

#changelist.filtered #changelist-filter:empty {
    display: none;
}

#changelist #changelist-filter:not(:empty) + #changelist-form {
    margin-right: 1px;
}

#changelist #changelist-filter:not(:empty) + #changelist-form {
    margin-right: 1px;
}

#changelist #toolbar {
    margin-bottom: 0.75rem;
}

#changelist #toolbar #changelist-search label {
    display: none;
}

#changelist #toolbar #changelist-search input[type=submit] {
    display: inline-block;
    margin-right: 1rem;
    margin-bottom: 0.375rem;
}

#changelist #toolbar #changelist-search input[type=submit]:before {
    margin-right: 3px;
    display: inline-block;
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    content: "\f055";
}

#changelist #toolbar #changelist-search input[type=text] {
    display: inline-block;
    width: auto;
    vertical-align: middle;
    margin-bottom: 0.375rem;
}

#changelist #toolbar #changelist-search input[type=text]:before {
    font-family: FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: auto;
    content: "\f067";
}

#changelist #toolbar #changelist-search select {
    margin-bottom: 0.375rem;
}

#changelist #toolbar #changelist-search .small {
    font-size: 0.929rem;
}

#changelist #changelist-filter {
    float: right;
    width: 15rem;
    top: 0;
    right: 0;
    font-size: 0.929rem;
    margin-left: 10px;
}

#changelist #changelist-filter h2, #changelist #changelist-filter .h2 {
    margin-bottom: 0.9375rem;
    display: none;
}

#changelist #changelist-filter h3, #changelist #changelist-filter .h3 {
    background-color: #5d6478;
    color: #fff;
    font-size: 0.929rem;
    font-weight: normal;
    padding: 0.46875rem 0.625rem;
    margin: 0;
}

#changelist #changelist-filter ul {
    background-color: #fff;
    list-style: none;
    margin: 0;
    padding: 0;
    /*padding: 0.625rem 0;*/
    /*margin-bottom: 1.25rem;*/
}

#changelist #changelist-filter ul li {
    border-left: 3px solid transparent;
    margin-left: -3px;
}

#changelist #changelist-filter ul li.selected:not(:first-child) {
    border-left-color: #1081d2;
}

#changelist #changelist-filter ul li.selected a {
    font-weight: bold;
    color: #212529;
}

#changelist #changelist-filter ul li a:not(.btn) {
    padding: 0.1rem;
    padding-left: 1.25rem;
    display: block;
}

#changelist #changelist-form {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

#changelist #changelist-form .actions {
    margin: -0.5rem 0 1rem 0;
    font-size: 0.929rem;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
}

#changelist #changelist-form .actions[style*=block] {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

#changelist #changelist-form .actions button {
    display: inline-block;
    margin-right: 1rem;
}

#changelist #changelist-form .actions select {
    display: inline;
    width: auto;
    height: 2.05rem;
    margin-right: 0.25rem;
}

#changelist #changelist-form .actions span.all,
#changelist #changelist-form .actions span.action-counter,
#changelist #changelist-form .actions span.clear,
#changelist #changelist-form .actions span.question {
    font-size: 13px;
    margin: 0 0.5em;
    display: none;
}

.suit_toggle_changelist_top_actions #changelist #changelist-form .actions {
    display: none;
}

#changelist #changelist-form .results + .actions {
    margin: 1rem 0 0;
}

.suit_toggle_changelist_top_actions #changelist #changelist-form .results + .actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

#changelist #changelist-form .paginator {
    margin-top: 1rem;
    font-size: 0.929rem;
}

#changelist #changelist-form .paginator a:not(.showall), #changelist #changelist-form .paginator span {
    font-size: 1rem;
    display: inline-block;
    padding: 0.5rem;
    background-color: #fff;
    line-height: normal;
    min-width: 2.3rem;
    text-align: center;
    margin-left: -0.1rem;
}

#changelist #changelist-form .paginator a:not(.showall).end, #changelist #changelist-form .paginator span.end {
    margin-right: 1rem;
}

#changelist #changelist-form .paginator a:hover {
    background-color: #f9f9f9;
    text-decoration: none;
}

#changelist #changelist-form .paginator span.this-page {
    background-color: #5d6478;
    color: #fff;
}

#changelist #changelist-form .paginator input[type=submit] {
    float: right;
    margin-top: -0.75rem;
}

#changelist .xfull {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

#changelist .toplinks {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-right: 17rem;
}

#changelist .toplinks li {
    display: inline-block;
}

#changelist .toplinks li a {
    margin-right: 0.28rem;
    display: inline-block;
}

.object-tools + #changelist.filtered #toolbar {

}

body.change-list #content-main .object-tools {
    float: right;
    margin-bottom: 1.5rem;
    min-height: 2rem;
}

body.change-list .hiddenfields {
    display: none;
}

body.change-form #content-main > .object-tools {
    float: right;
    margin-top: -2.85rem;
    margin-bottom: 20px;
    overflow: hidden;
}

body.change-form #content-main > .object-tools li {
    display: inline-block;
}

body.change-form #content-main > .object-tools li.list-item {
    display: none;
}

body.change-form #content-main > .object-tools + form {
    width: 100%;
    clear: both;
}

body.change-form .edit-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

body.change-form .edit-row > div {
    margin: 0 0.9375rem;
}

body.change-form:not(.suit_form_submit_on_right) .edit-row > div.col-left, body.change-form:not(.suit_form_submit_on_right) .edit-row > div.col-right {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

body.change-form:not(.suit_form_submit_on_right) .edit-row > div.col-right .object-tools {
    display: none;
}

body.change-form.suit_form_submit_on_right #content-main > .object-tools {
    margin-top: 0;
}

body.change-form.suit_form_submit_on_right #content-main > .object-tools li.heading {
    display: none;
}

@media (min-width: 992px) {
    body.change-form.suit_form_submit_on_right #content-main > .object-tools {
        display: none;
    }
}

body.change-form.suit_form_submit_on_right .edit-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

body.change-form.suit_form_submit_on_right .edit-row > div {
    margin: 0 0.9375rem;
}

body.change-form.suit_form_submit_on_right .edit-row > div.col-left {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

body.change-form.suit_form_submit_on_right .edit-row > div.col-right {
    width: 22%;
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    body.change-form.suit_form_submit_on_right .edit-row > div.col-right {
        width: 25%;
    }
}

@media (max-width: 991.98px) {
    body.change-form.suit_form_submit_on_right .edit-row > div.col-right {
        width: auto;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }
}

table#change-history thead > tr th {
    padding: 0.7rem 0.8rem !important;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN1aXQuY3NzIiwiX3ZlbmRvci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvbnRhaW5lcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2xhYmVscy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXRleHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jb250cm9sLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1zZWxlY3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zsb2F0aW5nLWxhYmVscy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvcmVkLWxpbmtzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcmF0aW8uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0YWNrcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL190ZXh0LXRydW5jYXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192ci5zY3NzIiwiX21peGlucy5zY3NzIiwiX2N1c3RvbWJzNC5zY3NzIiwiY29tcG9uZW50cy9faWNvbnMuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJjb21wb25lbnRzL19zb3J0YWJsZXMuc2NzcyIsImNvbXBvbmVudHMvX3dpZGdldHMuc2NzcyIsImNvbXBvbmVudHMvX2FsZXJ0cy5zY3NzIiwiY29tcG9uZW50cy9fY29uZmlybWF0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fc3VibWl0X3Jvdy5zY3NzIiwiY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsImNvbXBvbmVudHMvX3Jlc3VsdHMuc2NzcyIsImNvbXBvbmVudHMvX3RhYnMuc2NzcyIsImNvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwiY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsImxheW91dC9fZ2xvYmFsLnNjc3MiLCJsYXlvdXQvX3ZlcnRpY2FsLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19uYXZiYXJzLnNjc3MiLCJsYXlvdXQvX2NvbnRlbnQuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJwYWdlcy9fbG9naW4uc2NzcyIsInBhZ2VzL19kYXNoYm9hcmQuc2NzcyIsInBhZ2VzL19jaGFuZ2VsaXN0LnNjc3MiLCJwYWdlcy9fY2hhbmdlZm9ybS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7Ozs7RUFBQTtBQ0FBO0VBUUksa0JBQUE7RUFBQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsa0JBQUE7RUFBQSxpQkFBQTtFQUFBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxtQkFBQTtFQUFBLGtCQUFBO0VBQUEsa0JBQUE7RUFBQSxnQkFBQTtFQUFBLGtCQUFBO0VBQUEsdUJBQUE7RUFJQSxzQkFBQTtFQUFBLHNCQUFBO0VBQUEsc0JBQUE7RUFBQSxzQkFBQTtFQUFBLHNCQUFBO0VBQUEsc0JBQUE7RUFBQSxzQkFBQTtFQUFBLHNCQUFBO0VBQUEsc0JBQUE7RUFJQSxxQkFBQTtFQUFBLHVCQUFBO0VBQUEscUJBQUE7RUFBQSxrQkFBQTtFQUFBLHFCQUFBO0VBQUEsb0JBQUE7RUFBQSxtQkFBQTtFQUFBLGtCQUFBO0VBSUEsOEJBQUE7RUFBQSxpQ0FBQTtFQUFBLDZCQUFBO0VBQUEsMkJBQUE7RUFBQSw2QkFBQTtFQUFBLDRCQUFBO0VBQUEsNkJBQUE7RUFBQSx5QkFBQTtFQUdGLDZCQUFBO0VBQ0EsdUJBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFBO0VBTUEsOEVBQUE7RUFDQSx5R0FBQTtFQUNBLHlGQUFBO0VBTUUseUJBQUE7RUFFRiwyRUFBQTtFQUNBLHlCQUFBO0VBQ0EsMEJBQUE7RUFDQSwwQkFBQTtFQUNBLHdCQUFBO0VBSUEscUJBQUE7QUZVRjs7QUc3Q0E7OztFQUdFLDhCQUFBO1VBQUEsc0JBQUE7QUhnREY7O0FHdkNBO0VBRUksbUNBQUE7QUh5Q0o7QUdyQ0k7RUFOSjtJQU9NLHVCQUFBO0VId0NKO0FBQ0Y7O0FHM0JBO0VBQ0UsU0FBQTtFQUNBLHVDQUFBO0VDbVBJLG1DQUxJO0VENU9SLHVDQUFBO0VBQ0EsdUNBQUE7RUFDQSwyQkFBQTtFQUNBLHFDQUFBO0VBQ0EsbUNBQUE7RUFDQSw4QkFBQTtFQUNBLDZDQUFBO0FIOEJGOztBR3BCQTtFQUNFLGNBQUE7RUFDQSxjRStrQjRCO0VGOWtCNUIsOEJBQUE7RUFDQSxTQUFBO0VBQ0EsYUU4a0I0QjtBTHZqQjlCOztBR3BCQTtFQUNFLFdFd2I0QjtBTGphOUI7O0FHYkE7RUFDRSxhQUFBO0VBQ0EscUJFb2hCNEI7RUZqaEI1QixnQkdicUI7RUhjckIsZ0JFb2hCNEI7QUx0Z0I5Qjs7QUdWQTtFQ3dNUSxxQ0FBQTtBSjFMUjtBSXdCSTtFRHRDSjtJQytNUSxtQkFBQTtFSjdMTjtBQUNGOztBR2RBO0VDbU1RLHFDQUFBO0FKakxSO0FJZUk7RURqQ0o7SUMwTVEsbUJBQUE7RUpwTE47QUFDRjs7QUdsQkE7RUM4TFEscUNBQUE7QUp4S1I7QUlNSTtFRDVCSjtJQ3FNUSxtQkFBQTtFSjNLTjtBQUNGOztBR3RCQTtFQ3lMUSxxQ0FBQTtBSi9KUjtBSUhJO0VEdkJKO0lDZ01RLG1CQUFBO0VKbEtOO0FBQ0Y7O0FHMUJBO0VDZ0xNLG1CQUxJO0FKN0lWOztBR3pCQTtFQzJLTSxlQUxJO0FKeklWOztBR2xCQTtFQUNFLGFBQUE7RUFDQSxtQkVrVTBCO0FMN1M1Qjs7QUdWQTs7RUFFRSx5Q0FBQTtVQUFBLGlDQUFBO0VBQ0EsWUFBQTtFQUNBLHNDQUFBO1VBQUEsOEJBQUE7QUhhRjs7QUdQQTtFQUNFLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtBSFVGOztBR0pBOztFQUVFLGtCQUFBO0FIT0Y7O0FHSkE7OztFQUdFLGFBQUE7RUFDQSxtQkFBQTtBSE9GOztBR0pBOzs7O0VBSUUsZ0JBQUE7QUhPRjs7QUdKQTtFQUNFLGdCRXVaNEI7QUxoWjlCOztBR0ZBO0VBQ0UscUJBQUE7RUFDQSxjQUFBO0FIS0Y7O0FHQ0E7RUFDRSxnQkFBQTtBSEVGOztBR01BOztFQUVFLG1CRWdZNEI7QUxuWTlCOztBR1dBO0VDNEVNLGtCQUxJO0FKOUVWOztBR2NBO0VBQ0UsY0U0YjRCO0VGM2I1Qix5QkVtYzRCO0FMOWM5Qjs7QUdvQkE7O0VBRUUsa0JBQUE7RUN3REksaUJBTEk7RURqRFIsY0FBQTtFQUNBLHdCQUFBO0FIakJGOztBR29CQTtFQUFNLGVBQUE7QUhoQk47O0FHaUJBO0VBQU0sV0FBQTtBSGJOOztBR2tCQTtFQUNFLGNHM09XO0VINE9YLDBCRWtNd0M7QUxqTjFDO0FHaUJFO0VBQ0UsY0VpTXNDO0FMaE4xQzs7QUcwQkU7RUFFRSxjQUFBO0VBQ0EscUJBQUE7QUh4Qko7O0FHK0JBOzs7O0VBSUUscUNFNlM0QjtFRC9SeEIsY0FMSTtFRFBSLCtCQUFBO0VBQ0EsMkJBQUE7QUg1QkY7O0FHbUNBO0VBQ0UsY0FBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGNBQUE7RUNBSSxrQkFMSTtBSjFCVjtBR29DRTtFQ0xJLGtCQUxJO0VEWU4sY0FBQTtFQUNBLGtCQUFBO0FIbENKOztBR3NDQTtFQ1pNLGtCQUxJO0VEbUJSLGNFMVFRO0VGMlFSLHFCQUFBO0FIbkNGO0FHc0NFO0VBQ0UsY0FBQTtBSHBDSjs7QUd3Q0E7RUFDRSxzQkFBQTtFQ3hCSSxrQkFMSTtFRCtCUixXRXZUUztFRndUVCx5QkUvU1M7RUVFUCxxQkFBQTtBUHlRSjtBR3VDRTtFQUNFLFVBQUE7RUMvQkUsY0FMSTtFRHNDTixnQkUwUTBCO0FML1M5Qjs7QUc4Q0E7RUFDRSxnQkFBQTtBSDNDRjs7QUdpREE7O0VBRUUsc0JBQUE7QUg5Q0Y7O0FHc0RBO0VBQ0Usb0JBQUE7RUFDQSx5QkFBQTtBSG5ERjs7QUdzREE7RUFDRSxtQkV3VTRCO0VGdlU1QixzQkV1VTRCO0VGdFU1QixjRTFWUztFRjJWVCxnQkFBQTtBSG5ERjs7QUcwREE7RUFFRSxtQkFBQTtFQUNBLGdDQUFBO0FIeERGOztBRzJEQTs7Ozs7O0VBTUUscUJBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7QUh4REY7O0FHZ0VBO0VBQ0UscUJBQUE7QUg3REY7O0FHbUVBO0VBRUUsZ0JBQUE7QUhqRUY7O0FHeUVBO0VBQ0UsVUFBQTtBSHRFRjs7QUcyRUE7Ozs7O0VBS0UsU0FBQTtFQUNBLG9CQUFBO0VDOUhJLGtCQUxJO0VEcUlSLG9CQUFBO0FIeEVGOztBRzRFQTs7RUFFRSxvQkFBQTtBSHpFRjs7QUc4RUE7RUFDRSxlQUFBO0FIM0VGOztBRzhFQTtFQUdFLGlCQUFBO0FIN0VGO0FHZ0ZFO0VBQ0UsVUFBQTtBSDlFSjs7QUdxRkE7RUFDRSxhQUFBO0FIbEZGOztBRzBGQTs7OztFQUlFLDBCQUFBO0FIdkZGO0FHMEZJOzs7O0VBQ0UsZUFBQTtBSHJGTjs7QUc0RkE7RUFDRSxVQUFBO0VBQ0Esa0JBQUE7QUh6RkY7O0FHOEZBO0VBQ0UsZ0JBQUE7QUgzRkY7O0FHcUdBO0VBQ0UsWUFBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtBSGxHRjs7QUcwR0E7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7RUFDQSxxQkU2SjRCO0VEaFh0QixpQ0FBQTtFRHNOTixvQkFBQTtBSHhHRjtBSWhSSTtFRGlYSjtJQ3hNUSxpQkFBQTtFSjJHTjtBQUNGO0FHcUdFO0VBQ0UsV0FBQTtBSG5HSjs7QUcwR0E7Ozs7Ozs7RUFPRSxVQUFBO0FIdkdGOztBRzBHQTtFQUNFLFlBQUE7QUh2R0Y7O0FHZ0hBO0VBQ0Usb0JBQUE7RUFDQSw2QkFBQTtBSDdHRjs7QUdxSEE7Ozs7Ozs7Q0FBQTtBQVdBO0VBQ0Usd0JBQUE7QUhySEY7O0FHMEhBO0VBQ0UsVUFBQTtBSHZIRjs7QUc2SEE7RUFDRSxhQUFBO0FIMUhGOztBR3lIQTtFQUNFLGFBQUE7QUgxSEY7O0FHZ0lBO0VBQ0UsYUFBQTtFQUNBLDBCQUFBO0FIN0hGOztBR2tJQTtFQUNFLHFCQUFBO0FIL0hGOztBR29JQTtFQUNFLFNBQUE7QUhqSUY7O0FHd0lBO0VBQ0Usa0JBQUE7RUFDQSxlQUFBO0FIcklGOztBRzZJQTtFQUNFLHdCQUFBO0FIMUlGOztBR2tKQTtFQUNFLHdCQUFBO0FIL0lGOztBUXBjQTtFSnlRTSxrQkFMSTtFSWxRUixnQkh1bUI0QjtBTGhLOUI7O0FRbGNFO0VKc1FNLGlDQUFBO0VJcFFKLGdCSDBsQmtCO0VHemxCbEIsZ0JIMmtCMEI7QUx0STlCO0FJcFdJO0VJcEdGO0lKNlFNLGVBQUE7RUorTE47QUFDRjs7QVE3Y0U7RUpzUU0saUNBQUE7RUlwUUosZ0JIMGxCa0I7RUd6bEJsQixnQkgya0IwQjtBTDNIOUI7QUkvV0k7RUlwR0Y7SUo2UU0saUJBQUE7RUowTU47QUFDRjs7QVF4ZEU7RUpzUU0saUNBQUE7RUlwUUosZ0JIMGxCa0I7RUd6bEJsQixnQkgya0IwQjtBTGhIOUI7QUkxWEk7RUlwR0Y7SUo2UU0sZUFBQTtFSnFOTjtBQUNGOztBUW5lRTtFSnNRTSxpQ0FBQTtFSXBRSixnQkgwbEJrQjtFR3psQmxCLGdCSDJrQjBCO0FMckc5QjtBSXJZSTtFSXBHRjtJSjZRTSxpQkFBQTtFSmdPTjtBQUNGOztBUTllRTtFSnNRTSxpQ0FBQTtFSXBRSixnQkgwbEJrQjtFR3psQmxCLGdCSDJrQjBCO0FMMUY5QjtBSWhaSTtFSXBHRjtJSjZRTSxlQUFBO0VKMk9OO0FBQ0Y7O0FRemZFO0VKc1FNLGlDQUFBO0VJcFFKLGdCSDBsQmtCO0VHemxCbEIsZ0JIMmtCMEI7QUwvRTlCO0FJM1pJO0VJcEdGO0lKNlFNLGlCQUFBO0VKc1BOO0FBQ0Y7O0FROWVBO0VDckRFLGVBQUE7RUFDQSxnQkFBQTtBVHVpQkY7O0FROWVBO0VDMURFLGVBQUE7RUFDQSxnQkFBQTtBVDRpQkY7O0FRaGZBO0VBQ0UscUJBQUE7QVJtZkY7QVFqZkU7RUFDRSxvQkg4bEIwQjtBTDNHOUI7O0FRemVBO0VKc05NLGtCQUxJO0VJL01SLHlCQUFBO0FSNGVGOztBUXhlQTtFQUNFLG1CSGdTTztFRGpG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O0VlM1FSLGdCZGdrQjRCO0FMMmhEOUI7O0FtQnZsRUE7RUFDRSwrQkFBQTtFQUNBLGtDQUFBO0VmMFFJLGtCQUxJO0FKczFEVjs7QW1CdmxFQTtFQUNFLGdDQUFBO0VBQ0EsbUNBQUE7RWZvUUksbUJBTEk7QUo0MURWOztBb0J4bkVBO0VBQ0UsbUJmZ3pCc0M7RURoaEJsQyxrQkFMSTtFZ0J2UlIsY2ZLUztBTG9uRVg7O0FxQjluRUE7Ozs7Ozs7Ozs7OztFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EseUJBQUE7RWpCOFJJLGVBTEk7RWlCdFJSLGdCaEJxa0I0QjtFZ0Jwa0I1QixnQmhCMGtCNEI7RWdCemtCNUIsY2hCS1M7RWdCSlQsc0JmSVM7RWVIVCw0QkFBQTtFQUNBLHlCQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VkR0Usc0JBQUE7RWVIRSx3RkRNSjtFQ05JLGdGRE1KO0VDTkksd0VETUo7RUNOSSw4R0RNSjtBckJ1b0VGO0FzQnpvRU07RURoQk47Ozs7Ozs7Ozs7OztJQ2lCUSx3QkFBQTtJQUFBLGdCQUFBO0V0QnVwRU47QUFDRjtBcUJycEVFOzs7Ozs7Ozs7Ozs7RUFDRSxnQkFBQTtBckJrcUVKO0FxQmhxRUk7Ozs7Ozs7Ozs7OztFQUNFLGVBQUE7QXJCNnFFTjtBcUJ4cUVFOzs7Ozs7Ozs7Ozs7RUFDRSxjaEJqQk87RWdCa0JQLHNCZmxCTztFZW1CUCxxQmhCOHpCb0M7RWdCN3pCcEMsVUFBQTtFQUtFLDBEaEJ1c0IwQjtVZ0J2c0IxQixrRGhCdXNCMEI7QUwwK0NoQztBcUIxcUVFOzs7Ozs7Ozs7Ozs7RUFFRSxhQUFBO0FyQnNyRUo7QXFCbHJFRTtFQUNFLGNoQjFDTztFZ0I0Q1AsVUFBQTtBckI4ckVKO0FxQmpzRUU7RUFDRSxjaEIxQ087RWdCNENQLFVBQUE7QXJCOHJFSjtBcUJqc0VFO0VBQ0UsY2hCMUNPO0VnQjRDUCxVQUFBO0FyQjhyRUo7QXFCanNFRTtFQUNFLGNoQjFDTztFZ0I0Q1AsVUFBQTtBckI4ckVKO0FxQmpzRUU7Ozs7Ozs7Ozs7OztFQUNFLGNoQjFDTztFZ0I0Q1AsVUFBQTtBckI4ckVKO0FxQnRyRUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRUUseUJoQjFETztFZ0I2RFAsVUFBQTtBckIyc0VKO0FxQnZzRUU7RUFDRSx5QkFBQTtFQUNBLDBCQUFBO0VBQ0EsMkJoQjBwQjBCO1VnQjFwQjFCLDBCaEIwcEIwQjtFZ0J6cEIxQixjaEI5RE87RWtCYlQseUJsQk1TO0VnQnVFUCxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsNEJoQmdiMEI7RWdCL2ExQixnQkFBQTtFQ3RFRSxxSkR1RUY7RUN2RUUsNklEdUVGO0VDdkVFLHFJRHVFRjtFQ3ZFRSwyS0R1RUY7QXJCb3RFSjtBcUJodUVFOzs7Ozs7Ozs7Ozs7RUFDRSx5QkFBQTtFQUNBLDBCQUFBO0VBQ0EsMkJoQjBwQjBCO1VnQjFwQjFCLDBCaEIwcEIwQjtFZ0J6cEIxQixjaEI5RE87RWtCYlQseUJsQk1TO0VnQnVFUCxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsNEJoQmdiMEI7RWdCL2ExQixnQkFBQTtFQ3RFRSxxSkR1RUY7RUN2RUUsNklEdUVGO0VDdkVFLHFJRHVFRjtFQ3ZFRSwyS0R1RUY7QXJCb3RFSjtBc0J2eEVNO0VEdURKO0lDdERNLHdCQUFBO0lBQUEsZ0JBQUE7RXRCcXlFTjtFcUIvdUVBOzs7Ozs7Ozs7Ozs7SUN0RE0sd0JBQUE7SUFBQSxnQkFBQTtFdEJxeUVOO0FBQ0Y7QXFCanVFRTtFQUNFLHlCaEIrNUI4QjtBTCswQ2xDO0FxQi91RUU7Ozs7Ozs7Ozs7OztFQUNFLHlCaEIrNUI4QjtBTCswQ2xDO0FxQjN1RUU7Ozs7Ozs7Ozs7OztFQUNFLHlCQUFBO0VBQ0EsMEJBQUE7RUFDQSwyQmhCdW9CMEI7VWdCdm9CMUIsMEJoQnVvQjBCO0VnQnRvQjFCLGNoQmpGTztFa0JiVCx5QmxCTVM7RWdCMEZQLG9CQUFBO0VBQ0EscUJBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSw0QmhCNlowQjtFZ0I1WjFCLGdCQUFBO0VDekZFLHFKRDBGRjtFQzFGRSw2SUQwRkY7RUMxRkUscUlEMEZGO0VDMUZFLDJLRDBGRjtBckJ3dkVKO0FzQjkwRU07RUQwRUo7Ozs7Ozs7Ozs7OztJQ3pFTSx3QkFBQTtJQUFBLGdCQUFBO0V0QjQxRU47QUFDRjtBcUJyd0VFOzs7Ozs7Ozs7Ozs7RUFDRSx5QmhCNDRCOEI7QUxzNENsQzs7QXFCendFQTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCaEJ5ZDRCO0VnQnhkNUIsY2hCNUdTO0VnQjZHVCw2QkFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7QXJCNHdFRjtBcUIxd0VFO0VBRUUsZ0JBQUE7RUFDQSxlQUFBO0FyQjJ3RUo7O0FxQmh3RUE7RUFDRSxzQ2hCZ3VCc0M7RWdCL3RCdEMsd0JBQUE7RWpCbUpJLG1CQUxJO0VHN1FOLHFCQUFBO0FQbzRFSjtBcUJqd0VFO0VBQ0Usd0JBQUE7RUFDQSx5QkFBQTtFQUNBLDJCZnBEZTtVZW9EZiwwQmZwRGU7QU51ekVuQjtBcUJ0d0VFO0VBQ0Usd0JBQUE7RUFDQSx5QkFBQTtFQUNBLDJCZnBEZTtVZW9EZiwwQmZwRGU7QU51ekVuQjtBcUJod0VFO0VBQ0Usd0JBQUE7RUFDQSx5QkFBQTtFQUNBLDJCZjFEZTtVZTBEZiwwQmYxRGU7QU40ekVuQjs7QXFCOXZFQTtFQUNFLG9DaEI4c0JzQztFZ0I3c0J0QyxvQkFBQTtFakJnSUksa0JBTEk7RUc3UU4scUJBQUE7QVBxNUVKO0FxQi92RUU7RUFDRSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0Esd0JoQjRrQjBCO1VnQjVrQjFCLHVCaEI0a0IwQjtBTHFyRDlCO0FxQnB3RUU7RUFDRSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0Esd0JoQjRrQjBCO1VnQjVrQjFCLHVCaEI0a0IwQjtBTHFyRDlCO0FxQjl2RUU7RUFDRSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0Esd0JoQnNrQjBCO1VnQnRrQjFCLHVCaEJza0IwQjtBTDByRDlCOztBcUJ4dkVFOzs7Ozs7RUFDRSx1Q2hCcXJCb0M7QUwya0R4QztBcUI3dkVFO0VBQ0Usc0NoQmtyQm9DO0FMNmtEeEM7QXFCNXZFRTtFQUNFLG9DaEIrcUJvQztBTCtrRHhDOztBcUJ6dkVBO0VBQ0UsV2hCNnFCc0M7RWdCNXFCdEMsWUFBQTtFQUNBLGlCaEI0aEI0QjtBTGd1RDlCO0FxQjF2RUU7RUFDRSxlQUFBO0FyQjR2RUo7QXFCenZFRTtFQUNFLGFBQUE7RWQvTEEsc0JBQUE7QVAyN0VKO0FxQnh2RUU7RUFDRSxhQUFBO0VkcE1BLHNCQUFBO0FQKzdFSjs7QXdCNzhFQTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsMENBQUE7RUFFQSx1Q0FBQTtFcEIyUkksZUFMSTtFb0JuUlIsZ0JuQmtrQjRCO0VtQmprQjVCLGdCbkJ1a0I0QjtFbUJ0a0I1QixjbkJFUztFbUJEVCxzQmxCQ1M7RWtCQVQsaVBBQUE7RUFDQSw0QkFBQTtFQUNBLHlDbkJnN0JrQztFbUIvNkJsQywwQm5CZzdCa0M7RW1CLzZCbEMseUJBQUE7RWpCRkUsc0JBQUE7RWVIRSx3RkVRSjtFRlJJLGdGRVFKO0VGUkksd0VFUUo7RUZSSSw4R0VRSjtFQUNBLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtBeEI2OEVGO0FzQmw5RU07RUVmTjtJRmdCUSx3QkFBQTtJQUFBLGdCQUFBO0V0QnE5RU47QUFDRjtBd0JoOUVFO0VBQ0UscUJuQnMwQm9DO0VtQnIwQnBDLFVBQUE7RUFLRSwwRG5CaTdCNEI7VW1CajdCNUIsa0RuQmk3QjRCO0FMNmhEbEM7QXdCMThFRTtFQUVFLHNCbkJnc0IwQjtFbUIvckIxQixzQkFBQTtBeEIyOEVKO0F3Qng4RUU7RUFFRSx5Qm5CcENPO0FMNitFWDtBd0JwOEVFO0VBQ0Usa0JBQUE7RUFDQSwwQkFBQTtBeEJzOEVKOztBd0JsOEVBO0VBQ0Usb0JuQnlyQjRCO0VtQnhyQjVCLHVCbkJ3ckI0QjtFbUJ2ckI1QixvQm5Cd3JCNEI7RUQvY3hCLG1CQUxJO0VHN1FOLHFCQUFBO0FQZy9FSjs7QXdCbDhFQTtFQUNFLG1CbkJxckI0QjtFbUJwckI1QixzQm5Cb3JCNEI7RW1CbnJCNUIsa0JuQm9yQjRCO0VEbmR4QixrQkFMSTtFRzdRTixxQkFBQTtBUHcvRUo7O0F5QnZnRkE7RUFDRSxjQUFBO0VBQ0Esa0JwQnEzQndDO0VvQnAzQnhDLG1CcEJxM0J3QztFb0JwM0J4Qyx1QnBCcTNCd0M7QUxxcEQxQztBeUJ4Z0ZFO0VBQ0UsV0FBQTtFQUNBLG1CQUFBO0F6QjBnRko7O0F5QnRnRkE7RUFDRSxVcEJ5MkJ3QztFb0J4MkJ4QyxXcEJ3MkJ3QztFb0J2MkJ4QyxrQkFBQTtFQUNBLG1CQUFBO0VBQ0Esc0JuQkpTO0VtQktULDRCQUFBO0VBQ0EsMkJBQUE7RUFDQSx3QkFBQTtFQUNBLHFDcEI0MkJ3QztFb0IzMkJ4Qyx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFDQSxpQ0FBQTtVQUFBLG1CQUFBO0F6QnlnRkY7QXlCdGdGRTtFbEJYRSxxQkFBQTtBUG9oRko7QXlCcmdGRTtFQUVFLGtCcEJtMkJzQztBTG1xRDFDO0F5Qm5nRkU7RUFDRSwrQnBCMDFCc0M7VW9CMTFCdEMsdUJwQjAxQnNDO0FMMnFEMUM7QXlCbGdGRTtFQUNFLHFCcEJzekJvQztFb0JyekJwQyxVQUFBO0VBQ0EsMERwQm1zQjRCO1VvQm5zQjVCLGtEcEJtc0I0QjtBTGkwRGhDO0F5QmpnRkU7RUFDRSx5QnBCWk07RW9CYU4scUJwQmJNO0FMZ2hGVjtBeUJqZ0ZJO0VBSUksK09BQUE7QXpCZ2dGUjtBeUI1L0VJO0VBSUksdUpBQUE7QXpCMi9FUjtBeUJ0L0VFO0VBQ0UseUJwQmpDTTtFb0JrQ04scUJwQmxDTTtFb0J1Q0oseU9BQUE7QXpCby9FTjtBeUJoL0VFO0VBQ0Usb0JBQUE7RUFDQSxvQkFBQTtVQUFBLFlBQUE7RUFDQSxZcEJrMEJ1QztBTGdyRDNDO0F5QjMrRUk7RUFDRSxZcEIwekJxQztBTG1yRDNDOztBeUIvOUVBO0VBQ0UsbUJwQnF6QmdDO0FMNnFEbEM7QXlCaCtFRTtFQUNFLFVwQml6QjhCO0VvQmh6QjlCLG1CQUFBO0VBQ0Esd0tBQUE7RUFDQSxnQ0FBQTtFbEI5RkEsa0JBQUE7RWVIRSx5REdtR0Y7RUhuR0UsaURHbUdGO0F6QmsrRUo7QXNCamtGTTtFR3lGSjtJSHhGTSx3QkFBQTtJQUFBLGdCQUFBO0V0Qm9rRk47QUFDRjtBeUJyK0VJO0VBQ0UsMEpBQUE7QXpCdStFTjtBeUJwK0VJO0VBQ0UsaUNwQmd6QjRCO0VvQjN5QjFCLHVKQUFBO0F6QmsrRVI7O0F5QjU5RUE7RUFDRSxxQkFBQTtFQUNBLGtCcEJteEJnQztBTDRzRGxDOztBeUI1OUVBO0VBQ0Usa0JBQUE7RUFDQSxzQkFBQTtFQUNBLG9CQUFBO0F6Qis5RUY7QXlCMzlFSTtFQUNFLG9CQUFBO0VBQ0Esb0JBQUE7VUFBQSxZQUFBO0VBQ0EsYXBCcW9Cd0I7QUx3MUQ5Qjs7QTBCM21GQTtFQUNFLFdBQUE7RUFDQSxjQUFBO0VBQ0EsVUFBQTtFQUNBLDZCQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0ExQjhtRkY7QTBCNW1GRTtFQUNFLFVBQUE7QTFCOG1GSjtBMEIxbUZJO0VBQTBCLDZFckI4OUJhO1VxQjk5QmIscUVyQjg5QmE7QUwrb0QzQztBMEI1bUZJO0VBQTBCLHFFckI2OUJhO0FMa3BEM0M7QTBCNW1GRTtFQUNFLFNBQUE7QTFCOG1GSjtBMEIzbUZFO0VBQ0UsV3JCKzhCdUM7RXFCOThCdkMsWXJCODhCdUM7RXFCNzhCdkMsb0JBQUE7RUh6QkYseUJsQmtDUTtFcUJQTixTckI4OEJ1QztFRTE5QnZDLG1CQUFBO0VlSEUsNEhJa0JGO0VKbEJFLG9ISWtCRjtFSmxCRSw0R0lrQkY7RUpsQkUsa0pJa0JGO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtBMUI0bUZKO0FzQjNuRk07RUlNSjtJSkxNLHdCQUFBO0lBQUEsZ0JBQUE7RXRCOG5GTjtBQUNGO0EwQi9tRkk7RUhqQ0YseUJsQjgrQnlDO0FMcXFEM0M7QTBCN21GRTtFQUNFLFdyQnc3QjhCO0VxQnY3QjlCLGNyQnc3QjhCO0VxQnY3QjlCLGtCQUFBO0VBQ0EsZXJCdTdCOEI7RXFCdDdCOUIseUJyQnBDTztFcUJxQ1AseUJBQUE7RW5CN0JBLG1CQUFBO0FQNm9GSjtBMEIzbUZFO0VBQ0UsV3JCbzdCdUM7RXFCbjdCdkMsWXJCbTdCdUM7RWtCdCtCekMseUJsQmtDUTtFcUJtQk4sU3JCbzdCdUM7RUUxOUJ2QyxtQkFBQTtFZUhFLGlISTRDRjtFSjVDRSw0R0k0Q0Y7RUFDQSxxQkFBQTtPQUFBLGdCQUFBO0ExQjRtRko7QXNCcnBGTTtFSWlDSjtJSmhDTSxxQkFBQTtJQUFBLGdCQUFBO0V0QndwRk47QUFDRjtBMEIvbUZJO0VIM0RGLHlCbEI4K0J5QztBTCtyRDNDO0EwQjdtRkU7RUFDRSxXckI4NUI4QjtFcUI3NUI5QixjckI4NUI4QjtFcUI3NUI5QixrQkFBQTtFQUNBLGVyQjY1QjhCO0VxQjU1QjlCLHlCckI5RE87RXFCK0RQLHlCQUFBO0VuQnZEQSxtQkFBQTtBUHVxRko7QTBCM21GRTtFQUNFLG9CQUFBO0ExQjZtRko7QTBCM21GSTtFQUNFLHlCckJ0RUs7QUxtckZYO0EwQjFtRkk7RUFDRSx5QnJCMUVLO0FMc3JGWDs7QTJCbnNGQTtFQUNFLGtCQUFBO0EzQnNzRkY7QTJCcHNGRTs7Ozs7Ozs7Ozs7Ozs7RUFFRSwwQnRCeS9COEI7RXNCeC9COUIsaUJ0QnkvQjhCO0FMeXREbEM7QTJCL3NGRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFQUNBLDZCQUFBO0VBQ0EsNkJBQUE7VUFBQSxxQkFBQTtFTERFLGdGS0VGO0VMRkUsd0VLRUY7RUxGRSxnRUtFRjtFTEZFLG9HS0VGO0EzQml0Rko7QXNCL3NGTTtFS1hKO0lMWU0sd0JBQUE7SUFBQSxnQkFBQTtFdEJrdEZOO0FBQ0Y7QTJCbHRGRTs7Ozs7Ozs7Ozs7O0VBQ0UscUJBQUE7QTNCK3RGSjtBMkI3dEZJO0VBQ0Usa0JBQUE7QTNCMHVGTjtBMkIzdUZJO0VBQ0Usa0JBQUE7QTNCMHVGTjtBMkIzdUZJO0VBQ0Usa0JBQUE7QTNCMHVGTjtBMkIzdUZJO0VBQ0Usa0JBQUE7QTNCMHVGTjtBMkIzdUZJOzs7Ozs7Ozs7Ozs7RUFDRSxrQkFBQTtBM0IwdUZOO0EyQnZ1Rkk7RUFFRSxxQnRCbStCNEI7RXNCbCtCNUIsd0J0Qm0rQjRCO0FMMnhEbEM7QTJCandGSTtFQUVFLHFCdEJtK0I0QjtFc0JsK0I1Qix3QnRCbStCNEI7QUwyeERsQztBMkJqd0ZJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUVFLHFCdEJtK0I0QjtFc0JsK0I1Qix3QnRCbStCNEI7QUwyeERsQztBMkIzdkZJOzs7Ozs7Ozs7Ozs7RUFDRSxxQnRCODlCNEI7RXNCNzlCNUIsd0J0Qjg5QjRCO0FMMHlEbEM7QTJCcHdGRTtFQUNFLHFCdEJ3OUI4QjtFc0J2OUI5Qix3QnRCdzlCOEI7QUw4eURsQztBMkJod0ZJO0VBQ0UsYXRCazlCNEI7RXNCajlCNUIsOER0Qms5QjRCO0FMODBEbEM7QTJCbHlGSTtFQUNFLGF0Qms5QjRCO0VzQmo5QjVCLDhEdEJrOUI0QjtBTDgwRGxDO0EyQmx5Rkk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRSxhdEJrOUI0QjtFc0JqOUI1QixzRXRCazlCNEI7VXNCbDlCNUIsOER0Qms5QjRCO0FMODBEbEM7QTJCM3hGSTs7Ozs7Ozs7Ozs7O0VBQ0UsYXRCMjhCNEI7RXNCMThCNUIsc0V0QjI4QjRCO1VzQjM4QjVCLDhEdEIyOEI0QjtBTDYxRGxDOztBNEI5MUZBO0VBQ0Usa0JBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLG1CQUFBO01BQUEsZUFBQTtFQUNBLDBCQUFBO01BQUEsdUJBQUE7VUFBQSxvQkFBQTtFQUNBLFdBQUE7QTVCaTJGRjtBNEIvMUZFOzs7Ozs7Ozs7Ozs7OztFQUVFLGtCQUFBO0VBQ0EsbUJBQUE7TUFBQSxrQkFBQTtVQUFBLGNBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtBNUI2MkZKO0E0QnoyRkU7Ozs7Ozs7Ozs7Ozs7O0VBRUUsVUFBQTtBNUJ1M0ZKO0E0QmozRkU7RUFDRSxrQkFBQTtFQUNBLFVBQUE7QTVCbTNGSjtBNEJqM0ZJO0VBQ0UsVUFBQTtBNUJtM0ZOOztBNEJ4MkZB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QTtBN0JndkdOOztBNkI5eEdJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBb0RFLHFCeEIrOUJtQjtFd0I1OUJqQixvQ3hCK3lCZ0M7RXdCOXlCaEMsNFVBQUE7RUFDQSw0QkFBQTtFQUNBLDJEQUFBO0VBQ0EsZ0VBQUE7QTdCNndHUjtBNkIxd0dNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0UscUJ4Qm85QmlCO0V3Qm45QmpCLHlEQS9DYTtVQStDYixpREEvQ2E7QTdCNDFHckI7O0E2QjcyR0k7Ozs7Ozs7Ozs7Ozs7Ozs7RUF5RUksb0N4QjZ4QmdDO0V3QjV4QmhDLGtGQUFBO0E3QnV6R1I7O0E2Qmo0R0k7RUFpRkUscUJ4Qms4Qm1CO0FMazNFekI7QTZCanpHUTtFQUVFLHVCeEI0MkI4QjtFd0IzMkI5Qiw2aUJBQUE7RUFDQSwrREFBQTtFQUNBLDJFQUFBO0E3Qmt6R1Y7QTZCOXlHTTtFQUNFLHFCeEJxN0JpQjtFd0JwN0JqQix5REE5RWE7VUE4RWIsaURBOUVhO0E3QjgzR3JCOztBNkIvNEdJO0VBc0dFLHFCeEI2NkJtQjtBTGc0RXpCO0E2QjN5R007RUFDRSx5QnhCMDZCaUI7QUxtNEV6QjtBNkIxeUdNO0VBQ0UseURBNUZhO1VBNEZiLGlEQTVGYTtBN0J3NEdyQjtBNkJ6eUdNO0VBQ0UsY3hCazZCaUI7QUx5NEV6Qjs7QTZCdHlHSTtFQUNFLGtCQUFBO0E3Qnl5R047O0E2Qmg2R0k7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlJSSxVQUFBO0E3QnExR1I7QTZCbjFHTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0UsVUFBQTtBN0J1NEdSOztBOEI3Z0hBO0VBQ0UscUJBQUE7RUFFQSxnQnpCd2tCNEI7RXlCdmtCNUIsZ0J6QjZrQjRCO0V5QjVrQjVCLGN6QlFTO0V5QlBULGtCQUFBO0VBQ0EscUJBQUE7RUFFQSxzQkFBQTtFQUNBLGVBQUE7RUFDQSx5QkFBQTtLQUFBLHNCQUFBO01BQUEscUJBQUE7VUFBQSxpQkFBQTtFQUNBLDZCQUFBO0VBQ0EsNkJBQUE7RUM4R0EseUJBQUE7RTNCc0tJLGVBTEk7RUc3UU4sc0JBQUE7RWVIRSxxSlFHSjtFUkhJLDZJUUdKO0VSSEkscUlRR0o7RVJISSwyS1FHSjtBOUJnaEhGO0FzQi9nSE07RVFoQk47SVJpQlEsd0JBQUE7SUFBQSxnQkFBQTtFdEJraEhOO0FBQ0Y7QThCbmhIRTtFQUNFLGN6QkxPO0FMMGhIWDtBOEJqaEhFO0VBRUUsVUFBQTtFQUNBLDBEekJvdEI0QjtVeUJwdEI1QixrRHpCb3RCNEI7QUw4ekZoQztBOEJwZ0hFO0VBR0Usb0JBQUE7RUFDQSxhekIwdUIwQjtBTDB4RjlCOztBOEJ4L0dFO0VDdkNBLFdBWFE7RVJMUix5QmxCNEVhO0UwQjFEYixxQjFCMERhO0FMeStHZjtBK0JoaUhFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0EvQm1qSGpCO0ErQi9oSEU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYLHlEQUFBO1VBQUEsaURBQUE7QS9CNGhITjtBK0J4aEhFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0EvQjJqSGxCO0ErQmxoSEk7RUFLSSx5REFBQTtVQUFBLGlEQUFBO0EvQmdoSFI7QStCM2dIRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJZVztFMEJUWCxxQjFCU1c7QUxpZ0hmOztBOEJ0aEhFO0VDdkNBLFdBWFE7RVJMUix5QmxCNEVhO0UwQjFEYixxQjFCMERhO0FMdWdIZjtBK0I5akhFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0EvQmlsSGpCO0ErQjdqSEU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYLDBEQUFBO1VBQUEsa0RBQUE7QS9CMGpITjtBK0J0akhFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0EvQnlsSGxCO0ErQmhqSEk7RUFLSSwwREFBQTtVQUFBLGtEQUFBO0EvQjhpSFI7QStCemlIRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJZVztFMEJUWCxxQjFCU1c7QUwraEhmOztBOEJwakhFO0VDdkNBLFdBWFE7RVJMUix5QmxCNEVhO0UwQjFEYixxQjFCMERhO0FMcWlIZjtBK0I1bEhFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0EvQittSGpCO0ErQjNsSEU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYLHlEQUFBO1VBQUEsaURBQUE7QS9Cd2xITjtBK0JwbEhFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0EvQnVuSGxCO0ErQjlrSEk7RUFLSSx5REFBQTtVQUFBLGlEQUFBO0EvQjRrSFI7QStCdmtIRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJZVztFMEJUWCxxQjFCU1c7QUw2akhmOztBOEJsbEhFO0VDdkNBLFdBWFE7RVJMUix5QmxCNEVhO0UwQjFEYixxQjFCMERhO0FMbWtIZjtBK0IxbkhFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0EvQjZvSGpCO0ErQnpuSEU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYLHlEQUFBO1VBQUEsaURBQUE7QS9Cc25ITjtBK0JsbkhFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0EvQnFwSGxCO0ErQjVtSEk7RUFLSSx5REFBQTtVQUFBLGlEQUFBO0EvQjBtSFI7QStCcm1IRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJZVztFMEJUWCxxQjFCU1c7QUwybEhmOztBOEJobkhFO0VDdkNBLFdBWFE7RVJMUix5QmxCNEVhO0UwQjFEYixxQjFCMERhO0FMaW1IZjtBK0J4cEhFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0EvQjJxSGpCO0ErQnZwSEU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYLHdEQUFBO1VBQUEsZ0RBQUE7QS9Cb3BITjtBK0JocEhFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0EvQm1ySGxCO0ErQjFvSEk7RUFLSSx3REFBQTtVQUFBLGdEQUFBO0EvQndvSFI7QStCbm9IRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJZVztFMEJUWCxxQjFCU1c7QUx5bkhmOztBOEI5b0hFO0VDdkNBLFdBWFE7RVJMUix5QmxCNEVhO0UwQjFEYixxQjFCMERhO0FMK25IZjtBK0J0ckhFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0EvQnlzSGpCO0ErQnJySEU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYLHdEQUFBO1VBQUEsZ0RBQUE7QS9Ca3JITjtBK0I5cUhFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0EvQml0SGxCO0ErQnhxSEk7RUFLSSx3REFBQTtVQUFBLGdEQUFBO0EvQnNxSFI7QStCanFIRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJZVztFMEJUWCxxQjFCU1c7QUx1cEhmOztBOEI1cUhFO0VDdkNBLFdBWFE7RVJMUix5QmxCNEVhO0UwQjFEYixxQjFCMERhO0FMNnBIZjtBK0JwdEhFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0EvQnV1SGpCO0ErQm50SEU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYLDBEQUFBO1VBQUEsa0RBQUE7QS9CZ3RITjtBK0I1c0hFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0EvQit1SGxCO0ErQnRzSEk7RUFLSSwwREFBQTtVQUFBLGtEQUFBO0EvQm9zSFI7QStCL3JIRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJZVztFMEJUWCxxQjFCU1c7QUxxckhmOztBOEIxc0hFO0VDdkNBLFdBWFE7RVJMUix5QmxCNEVhO0UwQjFEYixxQjFCMERhO0FMMnJIZjtBK0JsdkhFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0EvQnF3SGpCO0ErQmp2SEU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYLHVEQUFBO1VBQUEsK0NBQUE7QS9COHVITjtBK0IxdUhFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0EvQjZ3SGxCO0ErQnB1SEk7RUFLSSx1REFBQTtVQUFBLCtDQUFBO0EvQmt1SFI7QStCN3RIRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJZVztFMEJUWCxxQjFCU1c7QUxtdEhmOztBOEJsdUhFO0VDbUJBLGMxQkphO0UwQktiLHFCMUJMYTtBTHd0SGY7QStCanRIRTtFQUNFLFdBVFk7RUFVWix5QjFCVFc7RTBCVVgscUIxQlZXO0FMNnRIZjtBK0JodEhFO0VBRUUseURBQUE7VUFBQSxpREFBQTtBL0JpdEhKO0ErQjlzSEU7RUFLRSxXQXJCYTtFQXNCYix5QjFCeEJXO0UwQnlCWCxxQjFCekJXO0FMcXVIZjtBK0Ixc0hJO0VBS0kseURBQUE7VUFBQSxpREFBQTtBL0J3c0hSO0ErQm5zSEU7RUFFRSxjMUJ2Q1c7RTBCd0NYLDZCQUFBO0EvQm9zSEo7O0E4QjN2SEU7RUNtQkEsYzFCSmE7RTBCS2IscUIxQkxhO0FMaXZIZjtBK0IxdUhFO0VBQ0UsV0FUWTtFQVVaLHlCMUJUVztFMEJVWCxxQjFCVlc7QUxzdkhmO0ErQnp1SEU7RUFFRSwwREFBQTtVQUFBLGtEQUFBO0EvQjB1SEo7QStCdnVIRTtFQUtFLFdBckJhO0VBc0JiLHlCMUJ4Qlc7RTBCeUJYLHFCMUJ6Qlc7QUw4dkhmO0ErQm51SEk7RUFLSSwwREFBQTtVQUFBLGtEQUFBO0EvQml1SFI7QStCNXRIRTtFQUVFLGMxQnZDVztFMEJ3Q1gsNkJBQUE7QS9CNnRISjs7QThCcHhIRTtFQ21CQSxjMUJKYTtFMEJLYixxQjFCTGE7QUwwd0hmO0ErQm53SEU7RUFDRSxXQVRZO0VBVVoseUIxQlRXO0UwQlVYLHFCMUJWVztBTCt3SGY7QStCbHdIRTtFQUVFLHdEQUFBO1VBQUEsZ0RBQUE7QS9CbXdISjtBK0Jod0hFO0VBS0UsV0FyQmE7RUFzQmIseUIxQnhCVztFMEJ5QlgscUIxQnpCVztBTHV4SGY7QStCNXZISTtFQUtJLHdEQUFBO1VBQUEsZ0RBQUE7QS9CMHZIUjtBK0JydkhFO0VBRUUsYzFCdkNXO0UwQndDWCw2QkFBQTtBL0JzdkhKOztBOEI3eUhFO0VDbUJBLGMxQkphO0UwQktiLHFCMUJMYTtBTG15SGY7QStCNXhIRTtFQUNFLFdBVFk7RUFVWix5QjFCVFc7RTBCVVgscUIxQlZXO0FMd3lIZjtBK0IzeEhFO0VBRUUseURBQUE7VUFBQSxpREFBQTtBL0I0eEhKO0ErQnp4SEU7RUFLRSxXQXJCYTtFQXNCYix5QjFCeEJXO0UwQnlCWCxxQjFCekJXO0FMZ3pIZjtBK0JyeEhJO0VBS0kseURBQUE7VUFBQSxpREFBQTtBL0JteEhSO0ErQjl3SEU7RUFFRSxjMUJ2Q1c7RTBCd0NYLDZCQUFBO0EvQit3SEo7O0E4QnQwSEU7RUNtQkEsYzFCSmE7RTBCS2IscUIxQkxhO0FMNHpIZjtBK0JyekhFO0VBQ0UsV0FUWTtFQVVaLHlCMUJUVztFMEJVWCxxQjFCVlc7QUxpMEhmO0ErQnB6SEU7RUFFRSx3REFBQTtVQUFBLGdEQUFBO0EvQnF6SEo7QStCbHpIRTtFQUtFLFdBckJhO0VBc0JiLHlCMUJ4Qlc7RTBCeUJYLHFCMUJ6Qlc7QUx5MEhmO0ErQjl5SEk7RUFLSSx3REFBQTtVQUFBLGdEQUFBO0EvQjR5SFI7QStCdnlIRTtFQUVFLGMxQnZDVztFMEJ3Q1gsNkJBQUE7QS9Cd3lISjs7QThCLzFIRTtFQ21CQSxjMUJKYTtFMEJLYixxQjFCTGE7QUxxMUhmO0ErQjkwSEU7RUFDRSxXQVRZO0VBVVoseUIxQlRXO0UwQlVYLHFCMUJWVztBTDAxSGY7QStCNzBIRTtFQUVFLHdEQUFBO1VBQUEsZ0RBQUE7QS9CODBISjtBK0IzMEhFO0VBS0UsV0FyQmE7RUFzQmIseUIxQnhCVztFMEJ5QlgscUIxQnpCVztBTGsySGY7QStCdjBISTtFQUtJLHdEQUFBO1VBQUEsZ0RBQUE7QS9CcTBIUjtBK0JoMEhFO0VBRUUsYzFCdkNXO0UwQndDWCw2QkFBQTtBL0JpMEhKOztBOEJ4M0hFO0VDbUJBLGMxQkphO0UwQktiLHFCMUJMYTtBTDgySGY7QStCdjJIRTtFQUNFLFdBVFk7RUFVWix5QjFCVFc7RTBCVVgscUIxQlZXO0FMbTNIZjtBK0J0MkhFO0VBRUUsMERBQUE7VUFBQSxrREFBQTtBL0J1MkhKO0ErQnAySEU7RUFLRSxXQXJCYTtFQXNCYix5QjFCeEJXO0UwQnlCWCxxQjFCekJXO0FMMjNIZjtBK0JoMkhJO0VBS0ksMERBQUE7VUFBQSxrREFBQTtBL0I4MUhSO0ErQnoxSEU7RUFFRSxjMUJ2Q1c7RTBCd0NYLDZCQUFBO0EvQjAxSEo7O0E4Qmo1SEU7RUNtQkEsYzFCSmE7RTBCS2IscUIxQkxhO0FMdTRIZjtBK0JoNEhFO0VBQ0UsV0FUWTtFQVVaLHlCMUJUVztFMEJVWCxxQjFCVlc7QUw0NEhmO0ErQi8zSEU7RUFFRSx1REFBQTtVQUFBLCtDQUFBO0EvQmc0SEo7QStCNzNIRTtFQUtFLFdBckJhO0VBc0JiLHlCMUJ4Qlc7RTBCeUJYLHFCMUJ6Qlc7QUxvNUhmO0ErQnozSEk7RUFLSSx1REFBQTtVQUFBLCtDQUFBO0EvQnUzSFI7QStCbDNIRTtFQUVFLGMxQnZDVztFMEJ3Q1gsNkJBQUE7QS9CbTNISjs7QThCOTVIQTtFQUNFLGdCekJpZ0I0QjtFeUJoZ0I1QixjeEJoRVc7RXdCaUVYLDBCekI2V3dDO0FMb2pIMUM7QThCLzVIRTtFQUNFLGN6QjRXc0M7QUxxakgxQztBOEJ6NUhFO0VBRUUsY3pCL0VPO0FMeStIWDs7QThCLzRIQTtFQ3VCRSxvQkFBQTtFM0JzS0ksa0JBTEk7RUc3UU4scUJBQUE7QVAwK0hKOztBOEJqNUhBO0VDbUJFLHdCQUFBO0UzQnNLSSxtQkFMSTtFRzdRTixxQkFBQTtBUGcvSEo7O0FnQ2xnSUE7Ozs7RUFJRSxrQkFBQTtBaENxZ0lGOztBZ0NsZ0lBO0VBQ0UsbUJBQUE7QWhDcWdJRjtBaUNoL0hJO0VBQ0UscUJBQUE7RUFDQSxvQjVCcWdCd0I7RTRCcGdCeEIsdUI1Qm1nQndCO0U0QmxnQnhCLFdBQUE7RUFoQ0osdUJBQUE7RUFDQSxxQ0FBQTtFQUNBLGdCQUFBO0VBQ0Esb0NBQUE7QWpDbWhJRjtBaUM5OUhJO0VBQ0UsY0FBQTtBakNnK0hOOztBZ0MzZ0lBO0VBQ0Usa0JBQUE7RUFDQSxhM0J5aENrQztFMkJ4aENsQyxhQUFBO0VBQ0EsZ0IzQittQ2tDO0UyQjltQ2xDLGlCQUFBO0VBQ0EsU0FBQTtFNUIrUUksZUFMSTtFNEJ4UVIsYzNCUFM7RTJCUVQsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHNCM0JuQlM7RTJCb0JULDRCQUFBO0VBQ0EscUNBQUE7RXpCVkUsc0JBQUE7QVB5aElKO0FnQzNnSUU7RUFDRSxTQUFBO0VBQ0EsT0FBQTtFQUNBLG9CM0JrbUNnQztBTDI2RnBDOztBZ0NqZ0lJO0VBQ0Usb0JBQUE7QWhDb2dJTjtBZ0NsZ0lNO0VBQ0UsV0FBQTtFQUNBLE9BQUE7QWhDb2dJUjs7QWdDaGdJSTtFQUNFLGtCQUFBO0FoQ21nSU47QWdDamdJTTtFQUNFLFFBQUE7RUFDQSxVQUFBO0FoQ21nSVI7O0FjbGdJSTtFa0JmQTtJQUNFLG9CQUFBO0VoQ3FoSUo7RWdDbmhJSTtJQUNFLFdBQUE7SUFDQSxPQUFBO0VoQ3FoSU47O0VnQ2poSUU7SUFDRSxrQkFBQTtFaENvaElKO0VnQ2xoSUk7SUFDRSxRQUFBO0lBQ0EsVUFBQTtFaENvaElOO0FBQ0Y7QWNwaElJO0VrQmZBO0lBQ0Usb0JBQUE7RWhDc2lJSjtFZ0NwaUlJO0lBQ0UsV0FBQTtJQUNBLE9BQUE7RWhDc2lJTjs7RWdDbGlJRTtJQUNFLGtCQUFBO0VoQ3FpSUo7RWdDbmlJSTtJQUNFLFFBQUE7SUFDQSxVQUFBO0VoQ3FpSU47QUFDRjtBY3JpSUk7RWtCZkE7SUFDRSxvQkFBQTtFaEN1aklKO0VnQ3JqSUk7SUFDRSxXQUFBO0lBQ0EsT0FBQTtFaEN1aklOOztFZ0NuaklFO0lBQ0Usa0JBQUE7RWhDc2pJSjtFZ0NwaklJO0lBQ0UsUUFBQTtJQUNBLFVBQUE7RWhDc2pJTjtBQUNGO0FjdGpJSTtFa0JmQTtJQUNFLG9CQUFBO0VoQ3drSUo7RWdDdGtJSTtJQUNFLFdBQUE7SUFDQSxPQUFBO0VoQ3drSU47O0VnQ3BrSUU7SUFDRSxrQkFBQTtFaEN1a0lKO0VnQ3JrSUk7SUFDRSxRQUFBO0lBQ0EsVUFBQTtFaEN1a0lOO0FBQ0Y7QWN2a0lJO0VrQmZBO0lBQ0Usb0JBQUE7RWhDeWxJSjtFZ0N2bElJO0lBQ0UsV0FBQTtJQUNBLE9BQUE7RWhDeWxJTjs7RWdDcmxJRTtJQUNFLGtCQUFBO0VoQ3dsSUo7RWdDdGxJSTtJQUNFLFFBQUE7SUFDQSxVQUFBO0VoQ3dsSU47QUFDRjtBZ0Mva0lFO0VBQ0UsU0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsdUIzQjBqQ2dDO0FMdWhHcEM7QWlDL25JSTtFQUNFLHFCQUFBO0VBQ0Esb0I1QnFnQndCO0U0QnBnQnhCLHVCNUJtZ0J3QjtFNEJsZ0J4QixXQUFBO0VBekJKLGFBQUE7RUFDQSxxQ0FBQTtFQUNBLDBCQUFBO0VBQ0Esb0NBQUE7QWpDMnBJRjtBaUM3bUlJO0VBQ0UsY0FBQTtBakMrbUlOOztBZ0NybElFO0VBQ0UsTUFBQTtFQUNBLFdBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLHFCM0I0aUNnQztBTDRpR3BDO0FpQ3BwSUk7RUFDRSxxQkFBQTtFQUNBLG9CNUJxZ0J3QjtFNEJwZ0J4Qix1QjVCbWdCd0I7RTRCbGdCeEIsV0FBQTtFQWxCSixtQ0FBQTtFQUNBLGVBQUE7RUFDQSxzQ0FBQTtFQUNBLHdCQUFBO0FqQ3lxSUY7QWlDbG9JSTtFQUNFLGNBQUE7QWpDb29JTjtBZ0NobUlJO0VBQ0UsaUJBQUE7QWhDa21JTjs7QWdDNWxJRTtFQUNFLE1BQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtFQUNBLGFBQUE7RUFDQSxzQjNCMmhDZ0M7QUxva0dwQztBaUM1cUlJO0VBQ0UscUJBQUE7RUFDQSxvQjVCcWdCd0I7RTRCcGdCeEIsdUI1Qm1nQndCO0U0QmxnQnhCLFdBQUE7QWpDOHFJTjtBaUNucUlNO0VBQ0UsYUFBQTtBakNxcUlSO0FpQ2xxSU07RUFDRSxxQkFBQTtFQUNBLHFCNUJrZnNCO0U0QmpmdEIsdUI1Qmdmc0I7RTRCL2V0QixXQUFBO0VBOUJOLG1DQUFBO0VBQ0EseUJBQUE7RUFDQSxzQ0FBQTtBakNtc0lGO0FpQ2xxSUk7RUFDRSxjQUFBO0FqQ29xSU47QWdDL21JSTtFQUNFLGlCQUFBO0FoQ2luSU47O0FnQzFtSUE7RUFDRSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHlDQUFBO0FoQzZtSUY7O0FnQ3ZtSUE7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLGdCM0J3YzRCO0UyQnZjNUIsYzNCdkhTO0UyQndIVCxtQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLFNBQUE7QWhDMG1JRjtBZ0M1bElFO0VBRUUsYzNCcy9CZ0M7RWtCL29DbEMseUJsQk1TO0FMaXZJWDtBZ0N6bElFO0VBRUUsVzNCNUpPO0UyQjZKUCxxQkFBQTtFVGpLRix5QmxCa0NRO0FMMHRJVjtBZ0N2bElFO0VBRUUsYzNCOUpPO0UyQitKUCxvQkFBQTtFQUNBLDZCQUFBO0FoQ3dsSUo7O0FnQ2xsSUE7RUFDRSxjQUFBO0FoQ3FsSUY7O0FnQ2psSUE7RUFDRSxjQUFBO0VBQ0Esb0IzQnErQmtDO0UyQnArQmxDLGdCQUFBO0U1QjBHSSxtQkFMSTtFNEJuR1IsYzNCL0tTO0UyQmdMVCxtQkFBQTtBaENvbElGOztBZ0NobElBO0VBQ0UsY0FBQTtFQUNBLHFCQUFBO0VBQ0EsYzNCcExTO0FMdXdJWDs7QWdDL2tJQTtFQUNFLGMzQi9MUztFMkJnTVQseUIzQjNMUztFMkI0TFQsaUMzQjg3QmtDO0FMb3BHcEM7QWdDL2tJRTtFQUNFLGMzQnJNTztBTHN4SVg7QWdDL2tJSTtFQUVFLFczQjVNSztFa0JKVCwyQ2xCc3FDa0M7QUwybkdwQztBZ0M3a0lJO0VBRUUsVzNCbE5LO0VrQkpULHlCbEJrQ1E7QUxtd0lWO0FnQzNrSUk7RUFFRSxjM0JuTks7QUwreElYO0FnQ3hrSUU7RUFDRSxpQzNCcTZCZ0M7QUxxcUdwQztBZ0N2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Q3E2SlY7QW9DbjZKUTs7RUFFRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGdCQUFBO0FwQ3E2SlY7QW9DbDZKUTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsbUJBQUE7TUFBQSxvQkFBQTtVQUFBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsbUJBQUE7QXBDbzZKVjs7QW9DdDVKRTtFQUNFLHlCL0JvNEJnQztBTHFoSXBDO0FvQ3Y1Skk7RUFFRSx5Qi9CZzRCOEI7QUx3aElwQztBb0NuNUpJO0VBQ0UsMEIvQnczQjhCO0FMNmhJcEM7QW9DbjVKTTtFQUVFLHlCL0JxM0I0QjtBTCtoSXBDO0FvQ2o1Sk07RUFDRSx5Qi9CbTNCNEI7QUxnaUlwQztBb0MvNEpJOztFQUVFLHlCL0I0MkI4QjtBTHFpSXBDO0FvQzc0SkU7RUFDRSwwQi9CcTJCZ0M7RStCcDJCaEMsZ0MvQnkyQmdDO0FMc2lJcEM7QW9DNTRKRTtFQUNFLDZQQUFBO0FwQzg0Sko7QW9DMzRKRTtFQUNFLDBCL0I0MUJnQztBTGlqSXBDO0FvQzM0Skk7OztFQUdFLHlCL0J5MUI4QjtBTG9qSXBDOztBb0N0NEpFO0VBQ0UsVy9CelJPO0FMa3FLWDtBb0N2NEpJO0VBRUUsVy9CN1JLO0FMcXFLWDtBb0NuNEpJO0VBQ0UsZ0MvQjh6QjhCO0FMdWtJcEM7QW9DbjRKTTtFQUVFLGdDL0IyekI0QjtBTHlrSXBDO0FvQ2o0Sk07RUFDRSxnQy9CeXpCNEI7QUwwa0lwQztBb0MvM0pJOztFQUVFLFcvQmpUSztBTGtyS1g7QW9DNzNKRTtFQUNFLGdDL0IyeUJnQztFK0IxeUJoQyxzQy9CK3lCZ0M7QUxnbElwQztBb0M1M0pFO0VBQ0UsbVFBQUE7QXBDODNKSjtBb0MzM0pFO0VBQ0UsZ0MvQmt5QmdDO0FMMmxJcEM7QW9DNTNKSTs7O0VBR0UsVy9CblVLO0FMaXNLWDs7QXFDcnNLQTtFQUNFLGtCQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtFQUNBLFlB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Z0JQLFVqQzRxQ2dDO0VpQzNxQ2hDLDBEakNzdEI0QjtVaUN0dEI1QixrRGpDc3RCNEI7QUw2cEpoQzs7QXNDOTJLRTtFQUNFLGlCakMrcENnQztBTGt0SXBDO0FzQzkyS0U7RUFDRSxVQUFBO0VBQ0EsV2pDOUJPO0VrQkpULHlCbEJrQ1E7RWlDRU4scUJqQ0ZNO0FMazNLVjtBc0M3MktFO0VBQ0UsY2pDOUJPO0VpQytCUCxvQkFBQTtFQUNBLHNCakN0Q087RWlDdUNQLHFCakNwQ087QUxtNUtYOztBdUMxNUtFO0VBQ0UseUJBQUE7QXZDNjVLSjs7QXVDdDVLUTtFaENxQ0osK0JBQUE7RUFDQSxrQ0FBQTtBUHEzS0o7QXVDcjVLUTtFaENpQkosZ0NBQUE7RUFDQSxtQ0FBQTtBUHU0S0o7O0F1Q3Y2S0U7RUFDRSx1QkFBQTtFbkNnU0UsbUJBTEk7QUpncEtWO0F1Q3A2S1E7RWhDcUNKLDhCQUFBO0VBQ0EsaUNBQUE7QVBrNEtKO0F1Q2w2S1E7RWhDaUJKLCtCQUFBO0VBQ0Esa0NBQUE7QVBvNUtKOztBdUNwN0tFO0VBQ0UsdUJBQUE7RW5DZ1NFLG1CQUxJO0FKNnBLVjtBdUNqN0tRO0VoQ3FDSiw4QkFBQTtFQUNBLGlDQUFBO0FQKzRLSjtBdUMvNktRO0VoQ2lCSiwrQkFBQTtFQUNBLGtDQUFBO0FQaTZLSjs7QXdDaDhLQTtFQUNFLHFCQUFBO0VBQ0Esc0JBQUE7RXBDOFJJLGlCQUxJO0VvQ3ZSUixnQm5DdWtCNEI7RW1DdGtCNUIsY0FBQTtFQUNBLFduQ0hTO0VtQ0lULGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSx3QkFBQTtFakNLRSxzQkFBQTtBUCs3S0o7QXdDLzdLRTtFQUNFLGFBQUE7QXhDaThLSjs7QXdDNTdLQTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtBeEMrN0tGOztBeUN0OUtBO0VBQ0Usa0JBQUE7RUFDQSxrQkFBQTtFQUNBLG1CcENrNkM4QjtFb0NqNkM5Qiw2QkFBQTtFbENXRSxzQkFBQTtBUCs4S0o7O0F5Q3I5S0E7RUFFRSxjQUFBO0F6Q3U5S0Y7O0F5Q245S0E7RUFDRSxnQnBDNGpCNEI7QUwwNUo5Qjs7QXlDOThLQTtFQUNFLG1CcENtNUM4QjtBTDhqSWhDO0F5Qzk4S0U7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsVUFBQTtFQUNBLHFCQUFBO0F6Q2c5S0o7O0F5Q2o4S0U7RUNsREEsY0Q4Q2M7RWxCNUNkLHlCa0IwQ21CO0VDMUNuQixxQkQyQ2U7QXpDNDhLakI7QTBDci9LRTtFQUNFLGNBQUE7QTFDdS9LSjs7QXlDMThLRTtFQ2xEQSxjRDhDYztFbEI1Q2QseUJrQjBDbUI7RUMxQ25CLHFCRDJDZTtBekNxOUtqQjtBMEM5L0tFO0VBQ0UsY0FBQTtBMUNnZ0xKOztBeUNuOUtFO0VDbERBLGNEOENjO0VsQjVDZCx5QmtCMENtQjtFQzFDbkIscUJEMkNlO0F6Qzg5S2pCO0EwQ3ZnTEU7RUFDRSxjQUFBO0ExQ3lnTEo7O0F5QzU5S0U7RUNsREEsY0RnRGdCO0VsQjlDaEIseUJrQjBDbUI7RUMxQ25CLHFCRDJDZTtBekN1K0tqQjtBMENoaExFO0VBQ0UsY0FBQTtBMUNraExKOztBeUNyK0tFO0VDbERBLGNEZ0RnQjtFbEI5Q2hCLHlCa0IwQ21CO0VDMUNuQixxQkQyQ2U7QXpDZy9LakI7QTBDemhMRTtFQUNFLGNBQUE7QTFDMmhMSjs7QXlDOStLRTtFQ2xEQSxjRDhDYztFbEI1Q2QseUJrQjBDbUI7RUMxQ25CLHFCRDJDZTtBekN5L0tqQjtBMENsaUxFO0VBQ0UsY0FBQTtBMUNvaUxKOztBeUN2L0tFO0VDbERBLGNEZ0RnQjtFbEI5Q2hCLHlCa0IwQ21CO0VDMUNuQixxQkQyQ2U7QXpDa2dMakI7QTBDM2lMRTtFQUNFLGNBQUE7QTFDNmlMSjs7QXlDaGdMRTtFQ2xEQSxjRDhDYztFbEI1Q2QseUJrQjBDbUI7RUMxQ25CLHFCRDJDZTtBekMyZ0xqQjtBMENwakxFO0VBQ0UsY0FBQTtBMUNzakxKOztBMkN6akxFO0VBQ0U7SUFBSywyQnRDazdDMkI7RUwyb0lsQztBQUNGOztBMkMvakxFO0VBQ0U7SUFBSywyQnRDazdDMkI7RUwyb0lsQztBQUNGO0EyQ3pqTEE7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLFl0QzI2Q2tDO0VzQzE2Q2xDLGdCQUFBO0V2Q3dSSSxrQkFMSTtFdUNqUlIseUJ0Q0xTO0VFU1Asc0JBQUE7QVB3akxKOztBMkN2akxBO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLGdCQUFBO0VBQ0EsV3RDakJTO0VzQ2tCVCxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJ0Q1VRO0VpQnRCSixtQ3FCYUo7RXJCYkksMkJxQmFKO0EzQzBqTEY7QXNCbmtMTTtFcUJBTjtJckJDUSx3QkFBQTtJQUFBLGdCQUFBO0V0QnNrTE47QUFDRjs7QTJDNWpMQTtFcEJZRSxxTUFBQTtFb0JWQSwwQkFBQTtBM0MrakxGOztBMkMzakxFO0VBQ0UsMERBQUE7VUFBQSxrREFBQTtBM0M4akxKO0EyQzNqTE07RUFKSjtJQUtNLHVCQUFBO1lBQUEsZUFBQTtFM0M4akxOO0FBQ0Y7O0E0QzFtTEE7RXRCZ0JNLHdDc0JmSjtFdEJlSSxnQ3NCZko7QTVDNm1MRjtBc0IxbExNO0VzQnBCTjtJdEJxQlEsd0JBQUE7SUFBQSxnQkFBQTtFdEI2bExOO0FBQ0Y7QTRDaG5MRTtFQUNFLFVBQUE7QTVDa25MSjs7QTRDNW1MRTtFQUNFLGFBQUE7QTVDK21MSjs7QTRDM21MQTtFQUNFLFNBQUE7RUFDQSxnQkFBQTtFdEJESSxxQ3NCRUo7RXRCRkksNkJzQkVKO0E1QzhtTEY7QXNCNW1MTTtFc0JMTjtJdEJNUSx3QkFBQTtJQUFBLGdCQUFBO0V0QittTE47QUFDRjtBNENqbkxFO0VBQ0UsUUFBQTtFQUNBLFlBQUE7RXRCTkUsb0NzQk9GO0V0QlBFLDRCc0JPRjtBNUNtbkxKO0FzQnRuTE07RXNCQUo7SXRCQ00sd0JBQUE7SUFBQSxnQkFBQTtFdEJ5bkxOO0FBQ0Y7O0E2QzFvTEE7RUFDRSwrQkFBQTtVQUFBLHVCQUFBO0VBQ0EsVXhDcWpEMkI7RXdDcGpEM0IsV3hDb2pEMkI7RXdDbmpEM0Isc0JBQUE7RUFDQSxXeENRUztFd0NQVCwyV0FBQTtFQUNBLFNBQUE7RXRDT0Usc0JBQUE7RXNDTEYsWXhDcWpEMkI7QUx3bEk3QjtBNkMxb0xFO0VBQ0UsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsYXhDZ2pEeUI7QUw0bEk3QjtBNkN6b0xFO0VBQ0UsVUFBQTtFQUNBLDBEeEN3dEI0QjtVd0N4dEI1QixrRHhDd3RCNEI7RXdDdnRCNUIsVXhDMmlEeUI7QUxnbUk3QjtBNkN4b0xFO0VBRUUsb0JBQUE7RUFDQSx5QkFBQTtLQUFBLHNCQUFBO01BQUEscUJBQUE7VUFBQSxpQkFBQTtFQUNBLGF4Q3FpRHlCO0FMb21JN0I7O0E2Q3JvTEE7RUFDRSwwRHhDaWlEMkI7VXdDamlEM0Isa0R4Q2lpRDJCO0FMdW1JN0I7O0E4Q3ZxTEE7RUFDRSxlQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxhekNzaUNrQztFeUNyaUNsQyxhQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBR0EsVUFBQTtBOUN3cUxGOztBOENqcUxBO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0EsY3pDaTJDa0M7RXlDLzFDbEMsb0JBQUE7QTlDbXFMRjtBOENocUxFO0V4QmxCSSxtRHdCbUJGO0V4Qm5CRSwyQ3dCbUJGO0V4Qm5CRSxtQ3dCbUJGO0V4Qm5CRSxvRXdCbUJGO0VBQ0Esc0N6Q3UzQ2dDO1V5Q3YzQ2hDLDhCekN1M0NnQztBTDJ5SXBDO0FzQmxyTE07RXdCY0o7SXhCYk0sd0JBQUE7SUFBQSxnQkFBQTtFdEJxckxOO0FBQ0Y7QThDcnFMRTtFQUNFLHVCekNxM0NnQztVeUNyM0NoQyxlekNxM0NnQztBTGt6SXBDO0E4Q25xTEU7RUFDRSw4QnpDazNDZ0M7VXlDbDNDaEMsc0J6Q2szQ2dDO0FMbXpJcEM7O0E4Q2pxTEE7RUFDRSx5QkFBQTtBOUNvcUxGO0E4Q2xxTEU7RUFDRSxnQkFBQTtFQUNBLGdCQUFBO0E5Q29xTEo7QThDanFM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OUNNO0EvRGs1T2xCO0F3RWwyT1U7RUFDRSxnQlRoRFE7QS9EbzVPcEI7QXdFaDJPVTtFQUNFLGNBQUE7RUFDQSxzQmxFb0RPO0FOOHlPbkI7QXdFLzFPUTtFQUNFLGNsRXpDSztFa0UwQ0wsY0FBQTtBeEVpMk9WO0F3RTExT007RUFDRSxzQmxFd0NhO0VrRXZDYixtQmxFbEJPO0VrRXFCUCx5QkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0F4RTAxT1I7QXdFcjFPTTtFQUNFLHlCbEU4QlU7QU55ek9sQjtBd0VyMU9NO0VBQ0UseUJBOUZnQjtBeEVxN094QjtBd0VyMU9NO0VBQ0UseUJBbEdZO0F4RXk3T3BCO0F3RXQxT1E7RUFDRSx5QkFBQTtBeEV3MU9WO0F3RXAxT1E7RUFDRSx3QkFBQTtBeEVzMU9WO0F3RW4xT007RUFDRSxvQ0FBQTtBeEVxMU9SO0F3RXAxT1E7RUFDRSx5QkFBQTtBeEVzMU9WO0F3RXAxT1E7RUFDRSxvQ0FBQTtBeEVzMU9WO0F3RXIxT1U7RUFDRSx5QkFBQTtBeEV1MU9aO0F3RXAxT1E7RUFDRSx5QkFBQTtBeEVzMU9WO0F3RXIxT1U7RUFDRSxXQUFBO0F4RXUxT1o7QXdFaDFPVTtFQUNFLDZCQUFBO0F4RWsxT1o7QXdFOTBPTTtFQUNFLHlCbEVsR1U7QU5rN09sQjtBd0UvME9RO0VBQ0UsZ0NBQUE7QXhFaTFPVjtBd0U5ME9NO0VBQ0UseUJsRTFHVztBTjA3T25CO0F3RS8wT1E7RUFDRSxnQ0FBQTtBeEVpMU9WO0F3RTkwT007RUFDRSx5QmxFbEhRO0FOazhPaEI7QXdFLzBPUTtFQUNFLGdDQUFBO0F4RWkxT1Y7QXdFOTBPTTtFQUNFLHlCbEUxSFc7QU4wOE9uQjtBd0UvME9RO0VBQ0UsZ0NBQUE7QXhFaTFPVjtBd0U1ME9RO0VBQ0UseUJsRTVIUTtFa0U2SFIsZ0NBQUE7QXhFODBPVjtBd0U1ME9RO0VBQ0UseUJsRWxJUztFa0VtSVQsZ0NBQUE7QXhFODBPVjtBd0U1ME9RO0VBQ0UseUJsRXhJTTtFa0V5SU4sZ0NBQUE7QXhFODBPVjtBd0U1ME9RO0VBQ0UseUJsRTlJUztF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cUZqa1JJO0VBQ0UsbUJBQUE7QXJGbWtSTjtBcUY3alJRO0VBQ0UsbUJBQUE7TUFBQSxXQUFBO1VBQUEsT0FBQTtFQUNBLDZCQUFBO01BQUEsZ0JBQUE7QXJGK2pSVjtBcUY1alJVO0VBQ0UsYUFBQTtBckY4alJaO0FxRnJqUk07RUFDRSxhQUFBO0FyRnVqUlI7QXFGdGpSUTtFQUNFLGFBQUE7QXJGd2pSVjtBY3hpUkk7RXVFbkJFO0lBTUksYUFBQTtFckZ5alJSO0FBQ0Y7QXFGdGpSSTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0FyRndqUk47QXFGdmpSTTtFQUNFLG1CQUFBO0FyRnlqUlI7QXFGeGpSUTtFQUNFLG1CQUFBO01BQUEsV0FBQTtVQUFBLE9BQUE7QXJGMGpSVjtBcUZ4alJRO0VBQ0UsVUFBQTtBckYwalJWO0FjdGdSSTtFdUVyREk7SUFHSSxVQUFBO0VyRjRqUlY7QUFDRjtBY2pqUkk7RXVFZkk7SUFNSSxXQUFBO0lBQ0EsbUJBQUE7UUFBQSxXQUFBO1lBQUEsT0FBQTtJQUNBLDZCQUFBO1FBQUEsZ0JBQUE7RXJGOGpSVjtBQUNGOztBcUZsalJJO0VBQ0UsaUNBQUE7QXJGcWpSTiIsImZpbGUiOiJzdWl0LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogQm9vdHN0cmFwIHY1LjAuMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICovXG46cm9vdCB7XG4gIC0tYnMtYmx1ZTogIzBkNmVmZDtcbiAgLS1icy1pbmRpZ286ICM2NjEwZjI7XG4gIC0tYnMtcHVycGxlOiAjNmY0MmMxO1xuICAtLWJzLXBpbms6ICNkNjMzODQ7XG4gIC0tYnMtcmVkOiAjZGMzNTQ1O1xuICAtLWJzLW9yYW5nZTogI2ZkN2UxNDtcbiAgLS1icy15ZWxsb3c6ICNmZmMxMDc7XG4gIC0tYnMtZ3JlZW46ICMxOTg3NTQ7XG4gIC0tYnMtdGVhbDogIzIwYzk5NztcbiAgLS1icy1jeWFuOiAjMGRjYWYwO1xuICAtLWJzLXdoaXRlOiAjZmZmO1xuICAtLWJzLWdyYXk6ICM2Yzc1N2Q7XG4gIC0tYnMtZ3JheS1kYXJrOiAjMzQzYTQwO1xuICAtLWJzLWdyYXktMTAwOiAjZjhmOWZhO1xuICAtLWJzLWdyYXktMjAwOiAjZTllY2VmO1xuICAtLWJzLWdyYXktMzAwOiAjZGVlMmU2O1xuICAtLWJzLWdyYXktNDAwOiAjY2VkNGRhO1xuICAtLWJzLWdyYXktNTAwOiAjYWRiNWJkO1xuICAtLWJzLWdyYXktNjAwOiAjNmM3NTdkO1xuICAtLWJzLWdyYXktNzAwOiAjNDk1MDU3O1xuICAtLWJzLWdyYXktODAwOiAjMzQzYTQwO1xuICAtLWJzLWdyYXktOTAwOiAjMjEyNTI5O1xuICAtLWJzLXByaW1hcnk6ICMwZDZlZmQ7XG4gIC0tYnMtc2Vjb25kYXJ5OiAjNmM3NTdkO1xuICAtLWJzLXN1Y2Nlc3M6ICMxOTg3NTQ7XG4gIC0tYnMtaW5mbzogIzBkY2FmMDtcbiAgLS1icy13YXJuaW5nOiAjZmZjMTA3O1xuICAtLWJzLWRhbmdlcjogI2RjMzU0NTtcbiAgLS1icy1saWdodDogI2Y4ZjlmYTtcbiAgLS1icy1kYXJrOiAjMjEyNTI5O1xuICAtLWJzLXByaW1hcnktcmdiOiAxMywgMTEwLCAyNTM7XG4gIC0tYnMtc2Vjb25kYXJ5LXJnYjogMTA4LCAxMTcsIDEyNTtcbiAgLS1icy1zdWNjZXNzLXJnYjogMjUsIDEzNSwgODQ7XG4gIC0tYnMtaW5mby1yZ2I6IDEzLCAyMDIsIDI0MDtcbiAgLS1icy13YXJuaW5nLXJnYjogMjU1LCAxOTMsIDc7XG4gIC0tYnMtZGFuZ2VyLXJnYjogMjIwLCA1MywgNjk7XG4gIC0tYnMtbGlnaHQtcmdiOiAyNDgsIDI0OSwgMjUwO1xuICAtLWJzLWRhcmstcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbiAgLS1icy1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tYnMtYm9keS1jb2xvci1yZ2I6IDMzLCAzNywgNDE7XG4gIC0tYnMtYm9keS1iZy1yZ2I6IDI0MSwgMjQxLCAyNDE7XG4gIC0tYnMtZm9udC1zYW5zLXNlcmlmOiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIC0tYnMtZm9udC1tb25vc3BhY2U6IFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG4gIC0tYnMtZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpO1xuICAtLWJzLXJvb3QtZm9udC1zaXplOiAxM3B4O1xuICAtLWJzLWJvZHktZm9udC1mYW1pbHk6IFJvYm90bywgSGVsdmV0aWNhIE5ldWUsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIC0tYnMtYm9keS1mb250LXNpemU6IDFyZW07XG4gIC0tYnMtYm9keS1mb250LXdlaWdodDogNDAwO1xuICAtLWJzLWJvZHktbGluZS1oZWlnaHQ6IDEuNTtcbiAgLS1icy1ib2R5LWNvbG9yOiAjMjEyNTI5O1xuICAtLWJzLWJvZHktYmc6ICNmMWYxZjE7XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbjpyb290IHtcbiAgZm9udC1zaXplOiB2YXIoLS1icy1yb290LWZvbnQtc2l6ZSk7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOnJvb3Qge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICB9XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1icy1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1icy1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJzLWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIHRleHQtYWxpZ246IHZhcigtLWJzLWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuaHIge1xuICBtYXJnaW46IDFyZW0gMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAwLjI1O1xufVxuXG5ocjpub3QoW3NpemVdKSB7XG4gIGhlaWdodDogMXB4O1xufVxuXG5oNiwgLmg2LCBoNSwgLmg1LCBoNCwgLmg0LCBoMywgLmgzLCBoMiwgLmgyLCBoMSwgLmgxIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjk2NHJlbSArIDAuNTU2OHZ3KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAxLjcxNHJlbTtcbiAgfVxufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjgyMXJlbSArIDAuMzg1MnZ3KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAxLjU3MXJlbTtcbiAgfVxufVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjY3OXJlbSArIDAuMjE0OHZ3KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjQyOXJlbTtcbiAgfVxufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjUzNnJlbSArIDAuMDQzMnZ3KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjI4NnJlbTtcbiAgfVxufVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjE0M3JlbTtcbn1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLWJzLW9yaWdpbmFsLXRpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbnNtYWxsLCAudGltZXpvbmV3YXJuaW5nLCAuc21hbGwge1xuICBmb250LXNpemU6IDAuODc1ZW07XG59XG5cbm1hcmssIC5tYXJrIHtcbiAgcGFkZGluZzogMC4yZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG59XG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbmEge1xuICBjb2xvcjogIzBkNjRhMjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5hOmhvdmVyIHtcbiAgY29sb3I6ICMwYTUwODI7XG59XG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pLCBhOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKTpob3ZlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtbW9ub3NwYWNlKTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGRpcmVjdGlvbjogbHRyIC8qIHJ0bDppZ25vcmUgKi87XG4gIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTtcbn1cblxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICBmb250LXNpemU6IDAuODc1ZW07XG59XG5wcmUgY29kZSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbn1cblxuY29kZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgY29sb3I6ICNkNjMzODQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbmEgPiBjb2RlIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cbmtiZCBrYmQge1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuaW1nLFxuc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50O1xufVxuXG50aGVhZCxcbnRib2R5LFxudGZvb3QsXG50cixcbnRkLFxudGgge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbltyb2xlPWJ1dHRvbl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuc2VsZWN0OmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuW2xpc3RdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9YnV0dG9uXTpub3QoOmRpc2FibGVkKSxcblt0eXBlPXJlc2V0XTpub3QoOmRpc2FibGVkKSxcblt0eXBlPXN1Ym1pdF06bm90KDpkaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dyk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICBsZWdlbmQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5sZWdlbmQgKyAqIHtcbiAgY2xlYXI6IGxlZnQ7XG59XG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPXNlYXJjaF0ge1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5cbi8qIHJ0bDpyYXc6XG5bdHlwZT1cInRlbFwiXSxcblt0eXBlPVwidXJsXCJdLFxuW3R5cGU9XCJlbWFpbFwiXSxcblt0eXBlPVwibnVtYmVyXCJdIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG4qL1xuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG46OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDtcbn1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuNjI1cmVtICsgNC41dncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZGlzcGxheS0xIHtcbiAgICBmb250LXNpemU6IDVyZW07XG4gIH1cbn1cblxuLmRpc3BsYXktMiB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjU3NXJlbSArIDMuOXZ3KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRpc3BsYXktMiB7XG4gICAgZm9udC1zaXplOiA0LjVyZW07XG4gIH1cbn1cblxuLmRpc3BsYXktMyB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjUyNXJlbSArIDMuM3Z3KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRpc3BsYXktMyB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbi5kaXNwbGF5LTQge1xuICBmb250LXNpemU6IGNhbGMoMS40NzVyZW0gKyAyLjd2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kaXNwbGF5LTQge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG59XG5cbi5kaXNwbGF5LTUge1xuICBmb250LXNpemU6IGNhbGMoMS40MjVyZW0gKyAyLjF2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kaXNwbGF5LTUge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuXG4uZGlzcGxheS02IHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZGlzcGxheS02IHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG4ubGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmJsb2NrcXVvdGUgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuLmJsb2NrcXVvdGUtZm9vdGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAlMKgXCI7XG59XG5cbi5pbWctZmx1aWQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAwLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4uY29udGFpbmVyLFxuLmNvbnRhaW5lci1mbHVpZCxcbi5jb250YWluZXIteHhsLFxuLmNvbnRhaW5lci14bCxcbi5jb250YWluZXItbGcsXG4uY29udGFpbmVyLW1kLFxuLmNvbnRhaW5lci1zbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1icy1ndXR0ZXIteCwgMC43NXJlbSk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tYnMtZ3V0dGVyLXgsIDAuNzVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzIwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDk2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb250YWluZXIteGwsIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5jb250YWluZXIteHhsLCAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEzMjBweDtcbiAgfVxufVxuLnJvdyB7XG4gIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcbiAgLS1icy1ndXR0ZXIteTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tYnMtZ3V0dGVyLXkpKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0wLjUgKiB2YXIoLS1icy1ndXR0ZXIteCkpO1xuICBtYXJnaW4tbGVmdDogY2FsYygtMC41ICogdmFyKC0tYnMtZ3V0dGVyLXgpKTtcbn1cbi5yb3cgPiAqIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIDAuNSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLWJzLWd1dHRlci15KTtcbn1cblxuLmNvbCB7XG4gIGZsZXg6IDEgMCAwJTtcbn1cblxuLnJvdy1jb2xzLWF1dG8gPiAqIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4ucm93LWNvbHMtMSA+ICoge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5yb3ctY29scy0yID4gKiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogNTAlO1xufVxuXG4ucm93LWNvbHMtMyA+ICoge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4ucm93LWNvbHMtNCA+ICoge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnJvdy1jb2xzLTUgPiAqIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAyMCU7XG59XG5cbi5yb3ctY29scy02ID4gKiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5jb2wtYXV0byB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuLmNvbC0xIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiA4LjMzMzMzMzMzJTtcbn1cblxuLmNvbC0yIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAxNi42NjY2NjY2NyU7XG59XG5cbi5jb2wtMyB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMjUlO1xufVxuXG4uY29sLTQge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbn1cblxuLmNvbC01IHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiA0MS42NjY2NjY2NyU7XG59XG5cbi5jb2wtNiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogNTAlO1xufVxuXG4uY29sLTcge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDU4LjMzMzMzMzMzJTtcbn1cblxuLmNvbC04IHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG59XG5cbi5jb2wtOSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogNzUlO1xufVxuXG4uY29sLTEwIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiA4My4zMzMzMzMzMyU7XG59XG5cbi5jb2wtMTEge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbn1cblxuLmNvbC0xMiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xufVxuXG4ub2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4ub2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xufVxuXG4ub2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlO1xufVxuXG4ub2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xufVxuXG4ub2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4ub2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG59XG5cbi5nLTAsXG4uZ3gtMCB7XG4gIC0tYnMtZ3V0dGVyLXg6IDA7XG59XG5cbi5nLTAsXG4uZ3ktMCB7XG4gIC0tYnMtZ3V0dGVyLXk6IDA7XG59XG5cbi5nLTEsXG4uZ3gtMSB7XG4gIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XG59XG5cbi5nLTEsXG4uZ3ktMSB7XG4gIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XG59XG5cbi5nLTIsXG4uZ3gtMiB7XG4gIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcbn1cblxuLmctMixcbi5neS0yIHtcbiAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xufVxuXG4uZy0zLFxuLmd4LTMge1xuICAtLWJzLWd1dHRlci14OiAxcmVtO1xufVxuXG4uZy0zLFxuLmd5LTMge1xuICAtLWJzLWd1dHRlci15OiAxcmVtO1xufVxuXG4uZy00LFxuLmd4LTQge1xuICAtLWJzLWd1dHRlci14OiAxLjVyZW07XG59XG5cbi5nLTQsXG4uZ3ktNCB7XG4gIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcbn1cblxuLmctNSxcbi5neC01IHtcbiAgLS1icy1ndXR0ZXIteDogM3JlbTtcbn1cblxuLmctNSxcbi5neS01IHtcbiAgLS1icy1ndXR0ZXIteTogM3JlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb2wtc20ge1xuICAgIGZsZXg6IDEgMCAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS1hdXRvID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAucm93LWNvbHMtc20tMSA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAucm93LWNvbHMtc20tNCA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAucm93LWNvbHMtc20tNSA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cblxuICAucm93LWNvbHMtc20tNiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuY29sLXNtLTEge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtc20tMiwgZmllbGRzZXQgLmZvcm0tcm93Om5vdCguZm9ybS1ncm91cCk6bm90KHRyKSA+IGxhYmVsOm5vdCguZm9ybS1jb250cm9sLWxhYmVsKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tMyB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5jb2wtc20tNCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtc20tNSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tNiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5jb2wtc20tNyB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtc20tOCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tOSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5jb2wtc20tMTAge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTExIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1zbS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC1zbS0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1zbS0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5nLXNtLTAsXG4uZ3gtc20tMCB7XG4gICAgLS1icy1ndXR0ZXIteDogMDtcbiAgfVxuXG4gIC5nLXNtLTAsXG4uZ3ktc20tMCB7XG4gICAgLS1icy1ndXR0ZXIteTogMDtcbiAgfVxuXG4gIC5nLXNtLTEsXG4uZ3gtc20tMSB7XG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcbiAgfVxuXG4gIC5nLXNtLTEsXG4uZ3ktc20tMSB7XG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcbiAgfVxuXG4gIC5nLXNtLTIsXG4uZ3gtc20tMiB7XG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xuICB9XG5cbiAgLmctc20tMixcbi5neS1zbS0yIHtcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XG4gIH1cblxuICAuZy1zbS0zLFxuLmd4LXNtLTMge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XG4gIH1cblxuICAuZy1zbS0zLFxuLmd5LXNtLTMge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XG4gIH1cblxuICAuZy1zbS00LFxuLmd4LXNtLTQge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcbiAgfVxuXG4gIC5nLXNtLTQsXG4uZ3ktc20tNCB7XG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xuICB9XG5cbiAgLmctc20tNSxcbi5neC1zbS01IHtcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xuICB9XG5cbiAgLmctc20tNSxcbi5neS1zbS01IHtcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZCB7XG4gICAgZmxleDogMSAwIDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLWF1dG8gPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5yb3ctY29scy1tZC0xID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMyA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5yb3ctY29scy1tZC00ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5yb3ctY29scy1tZC01ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1tZC02ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5jb2wtbWQtMSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC0yIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC1tZC00IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC01IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC02IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC1tZC03IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC04IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC05IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICB9XG5cbiAgLmNvbC1tZC0xMCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtMTEge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLW1kLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAub2Zmc2V0LW1kLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmctbWQtMCxcbi5neC1tZC0wIHtcbiAgICAtLWJzLWd1dHRlci14OiAwO1xuICB9XG5cbiAgLmctbWQtMCxcbi5neS1tZC0wIHtcbiAgICAtLWJzLWd1dHRlci15OiAwO1xuICB9XG5cbiAgLmctbWQtMSxcbi5neC1tZC0xIHtcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xuICB9XG5cbiAgLmctbWQtMSxcbi5neS1tZC0xIHtcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xuICB9XG5cbiAgLmctbWQtMixcbi5neC1tZC0yIHtcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XG4gIH1cblxuICAuZy1tZC0yLFxuLmd5LW1kLTIge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcbiAgfVxuXG4gIC5nLW1kLTMsXG4uZ3gtbWQtMyB7XG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcbiAgfVxuXG4gIC5nLW1kLTMsXG4uZ3ktbWQtMyB7XG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcbiAgfVxuXG4gIC5nLW1kLTQsXG4uZ3gtbWQtNCB7XG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xuICB9XG5cbiAgLmctbWQtNCxcbi5neS1tZC00IHtcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XG4gIH1cblxuICAuZy1tZC01LFxuLmd4LW1kLTUge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XG4gIH1cblxuICAuZy1tZC01LFxuLmd5LW1kLTUge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29sLWxnIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gIH1cblxuICAucm93LWNvbHMtbGctYXV0byA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1sZy0yID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1sZy0zID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmNvbC1sZy0xIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLWxnLTIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTMge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAuY29sLWxnLTQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLWxnLTUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTYge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLWxnLTcge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLWxnLTgge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTkge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLWxnLTEwIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy0xMSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbGctMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9mZnNldC1sZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5vZmZzZXQtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC1sZy00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1sZy02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG5cbiAgLm9mZnNldC1sZy03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1sZy05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbGctMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuZy1sZy0wLFxuLmd4LWxnLTAge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XG4gIH1cblxuICAuZy1sZy0wLFxuLmd5LWxnLTAge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XG4gIH1cblxuICAuZy1sZy0xLFxuLmd4LWxnLTEge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XG4gIH1cblxuICAuZy1sZy0xLFxuLmd5LWxnLTEge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XG4gIH1cblxuICAuZy1sZy0yLFxuLmd4LWxnLTIge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcbiAgfVxuXG4gIC5nLWxnLTIsXG4uZ3ktbGctMiB7XG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xuICB9XG5cbiAgLmctbGctMyxcbi5neC1sZy0zIHtcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xuICB9XG5cbiAgLmctbGctMyxcbi5neS1sZy0zIHtcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xuICB9XG5cbiAgLmctbGctNCxcbi5neC1sZy00IHtcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XG4gIH1cblxuICAuZy1sZy00LFxuLmd5LWxnLTQge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcbiAgfVxuXG4gIC5nLWxnLTUsXG4uZ3gtbGctNSB7XG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcbiAgfVxuXG4gIC5nLWxnLTUsXG4uZ3ktbGctNSB7XG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29sLXhsIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gIH1cblxuICAucm93LWNvbHMteGwtYXV0byA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLnJvdy1jb2xzLXhsLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC0yID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC0zID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXhsLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXhsLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXhsLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmNvbC14bC0xIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXhsLTIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLTMge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAuY29sLXhsLTQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXhsLTUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLTYge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLXhsLTcge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXhsLTgge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLTkge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLXhsLTEwIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC0xMSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteGwtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9mZnNldC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5vZmZzZXQteGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14bC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14bC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG5cbiAgLm9mZnNldC14bC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14bC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLm9mZnNldC14bC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuZy14bC0wLFxuLmd4LXhsLTAge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XG4gIH1cblxuICAuZy14bC0wLFxuLmd5LXhsLTAge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XG4gIH1cblxuICAuZy14bC0xLFxuLmd4LXhsLTEge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XG4gIH1cblxuICAuZy14bC0xLFxuLmd5LXhsLTEge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XG4gIH1cblxuICAuZy14bC0yLFxuLmd4LXhsLTIge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcbiAgfVxuXG4gIC5nLXhsLTIsXG4uZ3kteGwtMiB7XG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xuICB9XG5cbiAgLmcteGwtMyxcbi5neC14bC0zIHtcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xuICB9XG5cbiAgLmcteGwtMyxcbi5neS14bC0zIHtcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xuICB9XG5cbiAgLmcteGwtNCxcbi5neC14bC00IHtcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XG4gIH1cblxuICAuZy14bC00LFxuLmd5LXhsLTQge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcbiAgfVxuXG4gIC5nLXhsLTUsXG4uZ3gteGwtNSB7XG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcbiAgfVxuXG4gIC5nLXhsLTUsXG4uZ3kteGwtNSB7XG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuY29sLXh4bCB7XG4gICAgZmxleDogMSAwIDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXh4bC1hdXRvID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAucm93LWNvbHMteHhsLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14eGwtMiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMteHhsLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAucm93LWNvbHMteHhsLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXh4bC01ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14eGwtNiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmNvbC14eGwtMSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14eGwtMiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLTMge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAuY29sLXh4bC00IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14eGwtNSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLTYge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLXh4bC03IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14eGwtOCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLTkge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLXh4bC0xMCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteHhsLTExIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14eGwtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9mZnNldC14eGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAub2Zmc2V0LXh4bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14eGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14eGwtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14eGwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14eGwtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuZy14eGwtMCxcbi5neC14eGwtMCB7XG4gICAgLS1icy1ndXR0ZXIteDogMDtcbiAgfVxuXG4gIC5nLXh4bC0wLFxuLmd5LXh4bC0wIHtcbiAgICAtLWJzLWd1dHRlci15OiAwO1xuICB9XG5cbiAgLmcteHhsLTEsXG4uZ3gteHhsLTEge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XG4gIH1cblxuICAuZy14eGwtMSxcbi5neS14eGwtMSB7XG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcbiAgfVxuXG4gIC5nLXh4bC0yLFxuLmd4LXh4bC0yIHtcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XG4gIH1cblxuICAuZy14eGwtMixcbi5neS14eGwtMiB7XG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xuICB9XG5cbiAgLmcteHhsLTMsXG4uZ3gteHhsLTMge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XG4gIH1cblxuICAuZy14eGwtMyxcbi5neS14eGwtMyB7XG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcbiAgfVxuXG4gIC5nLXh4bC00LFxuLmd4LXh4bC00IHtcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XG4gIH1cblxuICAuZy14eGwtNCxcbi5neS14eGwtNCB7XG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xuICB9XG5cbiAgLmcteHhsLTUsXG4uZ3gteHhsLTUge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XG4gIH1cblxuICAuZy14eGwtNSxcbi5neS14eGwtNSB7XG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcbiAgfVxufVxuLnRhYmxlLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSwgLnRhYnVsYXIgdGFibGUge1xuICAtLWJzLXRhYmxlLWJnOiB0cmFuc3BhcmVudDtcbiAgLS1icy10YWJsZS1hY2NlbnQtYmc6IHRyYW5zcGFyZW50O1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMyMTI1Mjk7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMyMTI1Mjk7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMyMTI1Mjk7XG4gIC0tYnMtdGFibGUtaG92ZXItYmc6IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cbi50YWJsZSA+IDpub3QoY2FwdGlvbikgPiAqID4gKiwgdGFibGUjY2hhbmdlLWhpc3RvcnkgPiA6bm90KGNhcHRpb24pID4gKiA+ICosIC50YWJ1bGFyIHRhYmxlID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtdGFibGUtYmcpO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS1icy10YWJsZS1hY2NlbnQtYmcpO1xufVxuLnRhYmxlID4gdGJvZHksIHRhYmxlI2NoYW5nZS1oaXN0b3J5ID4gdGJvZHksIC50YWJ1bGFyIHRhYmxlID4gdGJvZHkge1xuICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbn1cbi50YWJsZSA+IHRoZWFkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSA+IHRoZWFkLCAudGFidWxhciB0YWJsZSA+IHRoZWFkIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cbi50YWJsZSA+IDpub3QoOmZpcnN0LWNoaWxkKSwgdGFibGUjY2hhbmdlLWhpc3RvcnkgPiA6bm90KDpmaXJzdC1jaGlsZCksIC50YWJ1bGFyIHRhYmxlID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbn1cblxuLmNhcHRpb24tdG9wIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG59XG5cbi50YWJsZS1zbSA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC4yNXJlbTtcbn1cblxuLnRhYmxlLWJvcmRlcmVkID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xufVxuLnRhYmxlLWJvcmRlcmVkID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgYm9yZGVyLXdpZHRoOiAwIDFweDtcbn1cblxuLnRhYmxlLWJvcmRlcmxlc3MgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuLnRhYmxlLWJvcmRlcmxlc3MgPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuXG4udGFibGUtc3RyaXBlZCA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUob2RkKSA+ICoge1xuICAtLWJzLXRhYmxlLWFjY2VudC1iZzogdmFyKC0tYnMtdGFibGUtc3RyaXBlZC1iZyk7XG4gIGNvbG9yOiB2YXIoLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbn1cblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tYnMtdGFibGUtYWNjZW50LWJnOiB2YXIoLS1icy10YWJsZS1hY3RpdmUtYmcpO1xuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yKTtcbn1cblxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAtLWJzLXRhYmxlLWFjY2VudC1iZzogdmFyKC0tYnMtdGFibGUtaG92ZXItYmcpO1xuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtaG92ZXItY29sb3IpO1xufVxuXG4udGFibGUtcHJpbWFyeSB7XG4gIC0tYnMtdGFibGUtYmc6ICNjZmUyZmY7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2M1ZDdmMjtcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2JhY2JlNjtcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNiZmQxZWM7XG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjMDAwO1xuICBib3JkZXItY29sb3I6ICNiYWNiZTY7XG59XG5cbi50YWJsZS1zZWNvbmRhcnkge1xuICAtLWJzLXRhYmxlLWJnOiAjZTJlM2U1O1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNkN2Q4ZGE7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNjYmNjY2U7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZDFkMmQ0O1xuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogIzAwMDtcbiAgYm9yZGVyLWNvbG9yOiAjY2JjY2NlO1xufVxuXG4udGFibGUtc3VjY2VzcyB7XG4gIC0tYnMtdGFibGUtYmc6ICNkMWU3ZGQ7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2M3ZGJkMjtcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2JjZDBjNztcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNjMWQ2Y2M7XG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjMDAwO1xuICBib3JkZXItY29sb3I6ICNiY2QwYzc7XG59XG5cbi50YWJsZS1pbmZvIHtcbiAgLS1icy10YWJsZS1iZzogI2NmZjRmYztcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjYzVlOGVmO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjYmFkY2UzO1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2JmZTJlOTtcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlci1jb2xvcjogI2JhZGNlMztcbn1cblxuLnRhYmxlLXdhcm5pbmcge1xuICAtLWJzLXRhYmxlLWJnOiAjZmZmM2NkO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNmMmU3YzM7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNlNmRiYjk7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZWNlMWJlO1xuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogIzAwMDtcbiAgYm9yZGVyLWNvbG9yOiAjZTZkYmI5O1xufVxuXG4udGFibGUtZGFuZ2VyIHtcbiAgLS1icy10YWJsZS1iZzogI2Y4ZDdkYTtcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZWNjY2NmO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZGZjMmM0O1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2U1YzdjYTtcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlci1jb2xvcjogI2RmYzJjNDtcbn1cblxuLnRhYmxlLWxpZ2h0IHtcbiAgLS1icy10YWJsZS1iZzogI2Y4ZjlmYTtcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZWNlZGVlO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZGZlMGUxO1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2U1ZTZlNztcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlci1jb2xvcjogI2RmZTBlMTtcbn1cblxuLnRhYmxlLWRhcmsge1xuICAtLWJzLXRhYmxlLWJnOiAjMjEyNTI5O1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICMyYzMwMzQ7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogI2ZmZjtcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICMzNzNiM2U7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjZmZmO1xuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjMzIzNTM5O1xuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzczYjNlO1xufVxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLXNtIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLW1kIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLWxnIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS14bCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUteHhsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxufVxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4zNzVyZW0gKyAxcHgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC4zNXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMzVyZW0gKyAxcHgpO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmZvcm0tY29udHJvbCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3QsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBzZWxlY3QsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdCwgZmllbGRzZXQgaW5wdXRbdHlwZT10ZXh0XSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9dXJsXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZW1haWxdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPWRhdGVdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdLFxuZmllbGRzZXQgLnZUZXh0RmllbGQsXG5maWVsZHNldCAudlVSTEZpZWxkLFxuZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZCxcbmZpZWxkc2V0IC52VGltZUZpZWxkLFxuZmllbGRzZXQgLnZEYXRlRmllbGQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLWNvbnRyb2wsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0LCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XSwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0LCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3QsIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXSxcbmZpZWxkc2V0IC52VGV4dEZpZWxkLFxuZmllbGRzZXQgLnZVUkxGaWVsZCxcbmZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCAudlRpbWVGaWVsZCxcbmZpZWxkc2V0IC52RGF0ZUZpZWxkIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZm9ybS1jb250cm9sW3R5cGU9ZmlsZV0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0W3R5cGU9ZmlsZV0sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPWZpbGVdW3R5cGU9dGV4dF0sIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdFt0eXBlPWZpbGVdLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3RbdHlwZT1maWxlXSwgZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPXRleHRdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPXVybF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPWZpbGVdW3R5cGU9ZW1haWxdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPW51bWJlcl0sXG5maWVsZHNldCBpbnB1dFt0eXBlPWZpbGVdW3R5cGU9cGFzc3dvcmRdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPWRhdGVdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPXRlbF0sXG5maWVsZHNldCBbdHlwZT1maWxlXS52VGV4dEZpZWxkLFxuZmllbGRzZXQgW3R5cGU9ZmlsZV0udlVSTEZpZWxkLFxuZmllbGRzZXQgW3R5cGU9ZmlsZV0udkxhcmdlVGV4dEZpZWxkLFxuZmllbGRzZXQgW3R5cGU9ZmlsZV0udlRpbWVGaWVsZCxcbmZpZWxkc2V0IFt0eXBlPWZpbGVdLnZEYXRlRmllbGQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmZvcm0tY29udHJvbFt0eXBlPWZpbGVdOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3RbdHlwZT1maWxlXTpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSksICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPWZpbGVdW3R5cGU9dGV4dF06bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBzZWxlY3RbdHlwZT1maWxlXTpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSksIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdFt0eXBlPWZpbGVdOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSwgZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPXRleHRdOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZmlsZV1bdHlwZT11cmxdOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZmlsZV1bdHlwZT1lbWFpbF06bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPW51bWJlcl06bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPXBhc3N3b3JkXTpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSksXG5maWVsZHNldCBpbnB1dFt0eXBlPWZpbGVdW3R5cGU9ZGF0ZV06bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1maWxlXVt0eXBlPXRlbF06bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pLFxuZmllbGRzZXQgW3R5cGU9ZmlsZV0udlRleHRGaWVsZDpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSksXG5maWVsZHNldCBbdHlwZT1maWxlXS52VVJMRmllbGQ6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pLFxuZmllbGRzZXQgW3R5cGU9ZmlsZV0udkxhcmdlVGV4dEZpZWxkOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSxcbmZpZWxkc2V0IFt0eXBlPWZpbGVdLnZUaW1lRmllbGQ6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pLFxuZmllbGRzZXQgW3R5cGU9ZmlsZV0udkRhdGVGaWVsZDpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZm9ybS1jb250cm9sOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdDpmb2N1cywgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdDpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0OmZvY3VzLCBmaWVsZHNldCBpbnB1dFt0eXBlPXRleHRdOmZvY3VzLFxuZmllbGRzZXQgaW5wdXRbdHlwZT11cmxdOmZvY3VzLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsXG5maWVsZHNldCBpbnB1dFt0eXBlPW51bWJlcl06Zm9jdXMsXG5maWVsZHNldCBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZGF0ZV06Zm9jdXMsXG5maWVsZHNldCBpbnB1dFt0eXBlPXRlbF06Zm9jdXMsXG5maWVsZHNldCAudlRleHRGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC52VVJMRmllbGQ6Zm9jdXMsXG5maWVsZHNldCAudkxhcmdlVGV4dEZpZWxkOmZvY3VzLFxuZmllbGRzZXQgLnZUaW1lRmllbGQ6Zm9jdXMsXG5maWVsZHNldCAudkRhdGVGaWVsZDpmb2N1cyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xufVxuLmZvcm0tY29udHJvbDo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdDo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XTo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBzZWxlY3Q6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0Ojotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUsIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF06Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9dXJsXTo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF06Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1wYXNzd29yZF06Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXTo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlLFxuZmllbGRzZXQgLnZUZXh0RmllbGQ6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSxcbmZpZWxkc2V0IC52VVJMRmllbGQ6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSxcbmZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQ6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSxcbmZpZWxkc2V0IC52VGltZUZpZWxkOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUsXG5maWVsZHNldCAudkRhdGVGaWVsZDo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlIHtcbiAgaGVpZ2h0OiAxLjVlbTtcbn1cbi5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdDo6cGxhY2Vob2xkZXIsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOjpwbGFjZWhvbGRlciwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0OjpwbGFjZWhvbGRlciwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0OjpwbGFjZWhvbGRlciwgZmllbGRzZXQgaW5wdXRbdHlwZT10ZXh0XTo6cGxhY2Vob2xkZXIsXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF06OnBsYWNlaG9sZGVyLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF06OnBsYWNlaG9sZGVyLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZGF0ZV06OnBsYWNlaG9sZGVyLFxuZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IC52VGV4dEZpZWxkOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IC52VVJMRmllbGQ6OnBsYWNlaG9sZGVyLFxuZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZDo6cGxhY2Vob2xkZXIsXG5maWVsZHNldCAudlRpbWVGaWVsZDo6cGxhY2Vob2xkZXIsXG5maWVsZHNldCAudkRhdGVGaWVsZDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgb3BhY2l0eTogMTtcbn1cbi5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0OmRpc2FibGVkLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XTpkaXNhYmxlZCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0OmRpc2FibGVkLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3Q6ZGlzYWJsZWQsIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF06ZGlzYWJsZWQsXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF06ZGlzYWJsZWQsXG5maWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXTpkaXNhYmxlZCxcbmZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXTpkaXNhYmxlZCxcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOmRpc2FibGVkLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXTpkaXNhYmxlZCxcbmZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXTpkaXNhYmxlZCxcbmZpZWxkc2V0IC52VGV4dEZpZWxkOmRpc2FibGVkLFxuZmllbGRzZXQgLnZVUkxGaWVsZDpkaXNhYmxlZCxcbmZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQ6ZGlzYWJsZWQsXG5maWVsZHNldCAudlRpbWVGaWVsZDpkaXNhYmxlZCxcbmZpZWxkc2V0IC52RGF0ZUZpZWxkOmRpc2FibGVkLCAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3RbcmVhZG9ubHldLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbcmVhZG9ubHldW3R5cGU9dGV4dF0sIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdFtyZWFkb25seV0sIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdFtyZWFkb25seV0sIGZpZWxkc2V0IGlucHV0W3JlYWRvbmx5XVt0eXBlPXRleHRdLFxuZmllbGRzZXQgaW5wdXRbcmVhZG9ubHldW3R5cGU9dXJsXSxcbmZpZWxkc2V0IGlucHV0W3JlYWRvbmx5XVt0eXBlPWVtYWlsXSxcbmZpZWxkc2V0IGlucHV0W3JlYWRvbmx5XVt0eXBlPW51bWJlcl0sXG5maWVsZHNldCBpbnB1dFtyZWFkb25seV1bdHlwZT1wYXNzd29yZF0sXG5maWVsZHNldCBpbnB1dFtyZWFkb25seV1bdHlwZT1kYXRlXSxcbmZpZWxkc2V0IGlucHV0W3JlYWRvbmx5XVt0eXBlPXRlbF0sXG5maWVsZHNldCBbcmVhZG9ubHldLnZUZXh0RmllbGQsXG5maWVsZHNldCBbcmVhZG9ubHldLnZVUkxGaWVsZCxcbmZpZWxkc2V0IFtyZWFkb25seV0udkxhcmdlVGV4dEZpZWxkLFxuZmllbGRzZXQgW3JlYWRvbmx5XS52VGltZUZpZWxkLFxuZmllbGRzZXQgW3JlYWRvbmx5XS52RGF0ZUZpZWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgb3BhY2l0eTogMTtcbn1cbi5mb3JtLWNvbnRyb2w6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdDo6ZmlsZS1zZWxlY3Rvci1idXR0b24sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiwgZmllbGRzZXQgaW5wdXRbdHlwZT10ZXh0XTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF06OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF06OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZGF0ZV06OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IC52VGV4dEZpZWxkOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IC52VVJMRmllbGQ6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZDo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCAudlRpbWVGaWVsZDo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCAudkRhdGVGaWVsZDo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBtYXJnaW46IC0wLjM3NXJlbSAtMC43NXJlbTtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNzVyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZm9ybS1jb250cm9sOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3Q6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdDo6ZmlsZS1zZWxlY3Rvci1idXR0b24sIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdDo6ZmlsZS1zZWxlY3Rvci1idXR0b24sIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF06OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT11cmxdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZW1haWxdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPXBhc3N3b3JkXTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPWRhdGVdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCAudlRleHRGaWVsZDo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCAudlVSTEZpZWxkOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQ6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgLnZUaW1lRmllbGQ6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgLnZEYXRlRmllbGQ6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZm9ybS1jb250cm9sOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0OmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3Q6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiwgZmllbGRzZXQgaW5wdXRbdHlwZT10ZXh0XTpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT11cmxdOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXTpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPXBhc3N3b3JkXTpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXTpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG5maWVsZHNldCAudlRleHRGaWVsZDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgLnZVUkxGaWVsZDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uLFxuZmllbGRzZXQgLnZUaW1lRmllbGQ6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbmZpZWxkc2V0IC52RGF0ZUZpZWxkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRlMGUzO1xufVxuLmZvcm0tY29udHJvbDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBzZWxlY3Q6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3Q6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLCBmaWVsZHNldCBpbnB1dFt0eXBlPXRleHRdOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9dXJsXTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1wYXNzd29yZF06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPXRlbF06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgLnZUZXh0RmllbGQ6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgLnZVUkxGaWVsZDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCAudkxhcmdlVGV4dEZpZWxkOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IC52VGltZUZpZWxkOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IC52RGF0ZUZpZWxkOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIG1hcmdpbjogLTAuMzc1cmVtIC0wLjc1cmVtO1xuICBtYXJnaW4taW5saW5lLWVuZDogMC43NXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiwgZmllbGRzZXQgaW5wdXRbdHlwZT10ZXh0XTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IC52VGV4dEZpZWxkOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IC52VVJMRmllbGQ6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCAudlRpbWVGaWVsZDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCAudkRhdGVGaWVsZDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5mb3JtLWNvbnRyb2w6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3Q6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0OmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLCBmaWVsZHNldCBpbnB1dFt0eXBlPXRleHRdOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF06aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9ZW1haWxdOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPW51bWJlcl06aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPWRhdGVdOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCBpbnB1dFt0eXBlPXRlbF06aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbmZpZWxkc2V0IC52VGV4dEZpZWxkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCAudlVSTEZpZWxkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCAudkxhcmdlVGV4dEZpZWxkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG5maWVsZHNldCAudlRpbWVGaWVsZDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuZmllbGRzZXQgLnZEYXRlRmllbGQ6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGUwZTM7XG59XG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LCAuaW5saW5lLWdyb3VwIC50YWJ1bGFyIHRhYmxlIHRib2R5IHRkLm9yaWdpbmFsIHAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbn1cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1zbSwgLmlubGluZS1ncm91cCAudGFidWxhciB0YWJsZSB0Ym9keSB0ZC5vcmlnaW5hbCBwLmZvcm0tY29udHJvbC1zbSwgLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLWxnLCAuaW5saW5lLWdyb3VwIC50YWJ1bGFyIHRhYmxlIHRib2R5IHRkLm9yaWdpbmFsIHAuZm9ybS1jb250cm9sLWxnIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDAuNXJlbSArIDJweCk7XG4gIHBhZGRpbmc6IDAuMzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuLmZvcm0tY29udHJvbC1zbTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBwYWRkaW5nOiAwLjM1cmVtIDAuNzVyZW07XG4gIG1hcmdpbjogLTAuMzVyZW0gLTAuNzVyZW07XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjc1cmVtO1xufVxuLmZvcm0tY29udHJvbC1zbTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBwYWRkaW5nOiAwLjM1cmVtIDAuNzVyZW07XG4gIG1hcmdpbjogLTAuMzVyZW0gLTAuNzVyZW07XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjc1cmVtO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG4uZm9ybS1jb250cm9sLWxnOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBtYXJnaW46IC0wLjVyZW0gLTFyZW07XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAxcmVtO1xufVxuLmZvcm0tY29udHJvbC1sZzo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgbWFyZ2luOiAtMC41cmVtIC0xcmVtO1xuICBtYXJnaW4taW5saW5lLWVuZDogMXJlbTtcbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sLFxuZmllbGRzZXQgdGV4dGFyZWEudlRleHRGaWVsZCxcbmZpZWxkc2V0IHRleHRhcmVhLnZVUkxGaWVsZCxcbmZpZWxkc2V0IHRleHRhcmVhLnZMYXJnZVRleHRGaWVsZCxcbmZpZWxkc2V0IHRleHRhcmVhLnZUaW1lRmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS52RGF0ZUZpZWxkIHtcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0gKyAycHgpO1xufVxudGV4dGFyZWEuZm9ybS1jb250cm9sLXNtIHtcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDAuNXJlbSArIDJweCk7XG59XG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wtbGcge1xuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMXJlbSArIDJweCk7XG59XG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbn1cbi5mb3JtLWNvbnRyb2wtY29sb3I6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmZvcm0tY29udHJvbC1jb2xvcjo6LW1vei1jb2xvci1zd2F0Y2gge1xuICBoZWlnaHQ6IDEuNWVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmZvcm0tY29udHJvbC1jb2xvcjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xuICBoZWlnaHQ6IDEuNWVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uZm9ybS1zZWxlY3QsIGZpZWxkc2V0IHNlbGVjdDpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDIuMjVyZW0gMC4zNzVyZW0gMC43NXJlbTtcbiAgLW1vei1wYWRkaW5nLXN0YXJ0OiBjYWxjKDAuNzVyZW0gLSAzcHgpO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZvcm0tc2VsZWN0LCBmaWVsZHNldCBzZWxlY3Q6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZm9ybS1zZWxlY3Q6Zm9jdXMsIGZpZWxkc2V0IHNlbGVjdDpmb2N1czpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xufVxuLmZvcm0tc2VsZWN0W211bHRpcGxlXSwgZmllbGRzZXQgc2VsZWN0W211bHRpcGxlXTpub3QoW211bHRpcGxlPW11bHRpcGxlXSksIC5mb3JtLXNlbGVjdFtzaXplXTpub3QoW3NpemU9XCIxXCJdKSwgZmllbGRzZXQgc2VsZWN0W3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4uZm9ybS1zZWxlY3Q6ZGlzYWJsZWQsIGZpZWxkc2V0IHNlbGVjdDpkaXNhYmxlZDpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuLmZvcm0tc2VsZWN0Oi1tb3otZm9jdXNyaW5nLCBmaWVsZHNldCBzZWxlY3Q6LW1vei1mb2N1c3Jpbmc6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogMCAwIDAgIzIxMjUyOTtcbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuXG4uZm9ybS1zZWxlY3QtbGcge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xufVxuXG4uZm9ybS1jaGVjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAxLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMTI1cmVtO1xufVxuLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IC0xLjVlbTtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgbWFyZ2luLXRvcDogMC4yNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgY29sb3ItYWRqdXN0OiBleGFjdDtcbn1cbi5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNWVtO1xufVxuLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4uZm9ybS1jaGVjay1pbnB1dDphY3RpdmUge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoOTAlKTtcbn1cbi5mb3JtLWNoZWNrLWlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbn1cbi5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XG59XG4uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9Y2hlY2tib3hdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBsMyAzbDYtNicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWRbdHlwZT1yYWRpb10ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPScyJyBmaWxsPSclMjNmZmYnLyUzZSUzYy9zdmclM2VcIik7XG59XG4uZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmZmYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZmlsdGVyOiBub25lO1xuICBvcGFjaXR5OiAwLjU7XG59XG4uZm9ybS1jaGVjay1pbnB1dFtkaXNhYmxlZF0gfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjVlbTtcbn1cbi5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIHdpZHRoOiAyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMi41ZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9J3JnYmElMjgwLCAwLCAwLCAwLjI1JTI5Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPSclMjM4NmI3ZmUnLyUzZSUzYy9zdmclM2VcIik7XG59XG4uZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLmJ0bi1jaGVjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uYnRuLWNoZWNrW2Rpc2FibGVkXSArIC5idG4sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWNoZWNrW2Rpc2FibGVkXSArIGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWNoZWNrW2Rpc2FibGVkXSArIGJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tY2hlY2tbZGlzYWJsZWRdICsgaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tY2hlY2tbZGlzYWJsZWRdICsgaW5wdXRbdHlwZT1zdWJtaXRdLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IC5idG4tY2hlY2tbZGlzYWJsZWRdICsgYTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrW2Rpc2FibGVkXSArIGE6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrW2Rpc2FibGVkXSArIGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tY2hlY2tbZGlzYWJsZWRdICsgaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVja1tkaXNhYmxlZF0gKyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1jaGVja1tkaXNhYmxlZF0gKyAuZGVsZXRlbGluaywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1jaGVja1tkaXNhYmxlZF0gKyBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2tbZGlzYWJsZWRdICsgaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWNoZWNrW2Rpc2FibGVkXSArIGJ1dHRvbiwgLmJ0bi1jaGVjazpkaXNhYmxlZCArIC5idG4sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWNoZWNrOmRpc2FibGVkICsgaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tY2hlY2s6ZGlzYWJsZWQgKyBidXR0b24sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWNoZWNrOmRpc2FibGVkICsgaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6ZGlzYWJsZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazpkaXNhYmxlZCArIGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazpkaXNhYmxlZCArIGE6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmRpc2FibGVkICsgaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazpkaXNhYmxlZCArIGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6ZGlzYWJsZWQgKyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1jaGVjazpkaXNhYmxlZCArIC5kZWxldGVsaW5rLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWNoZWNrOmRpc2FibGVkICsgaW5wdXRbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWNoZWNrOmRpc2FibGVkICsgaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWNoZWNrOmRpc2FibGVkICsgYnV0dG9uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGZpbHRlcjogbm9uZTtcbiAgb3BhY2l0eTogMC42NTtcbn1cblxuLmZvcm0tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLmZvcm0tcmFuZ2U6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuLmZvcm0tcmFuZ2U6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmMWYxZjEsIDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xufVxuLmZvcm0tcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2YxZjFmMSwgMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XG59XG4uZm9ybS1yYW5nZTo6LW1vei1mb2N1cy1vdXRlciB7XG4gIGJvcmRlcjogMDtcbn1cbi5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IC0wLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiNmQ0ZmU7XG59XG4uZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjZkNGZlO1xufVxuLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuLmZvcm0tcmFuZ2U6ZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5mb3JtLXJhbmdlOmRpc2FibGVkOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZGI1YmQ7XG59XG4uZm9ybS1yYW5nZTpkaXNhYmxlZDo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZGI1YmQ7XG59XG5cbi5mb3JtLWZsb2F0aW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5mb3JtLWZsb2F0aW5nID4gc2VsZWN0LCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRleHRdLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3QsIGZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZXh0XSxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT11cmxdLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPWVtYWlsXSxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1udW1iZXJdLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1kYXRlXSxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZWxdLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudlRleHRGaWVsZCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZVUkxGaWVsZCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZMYXJnZVRleHRGaWVsZCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZUaW1lRmllbGQsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52RGF0ZUZpZWxkLFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1zZWxlY3QsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdDpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBoZWlnaHQ6IGNhbGMoMy41cmVtICsgMnB4KTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG4uZm9ybS1mbG9hdGluZyA+IGxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4xcyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLWZsb2F0aW5nID4gbGFiZWwge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdCwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZXh0XSwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3QsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIC5mb3JtLWZsb2F0aW5nID4gc2VsZWN0LCBmaWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dGV4dF0sXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dXJsXSxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1lbWFpbF0sXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9bnVtYmVyXSxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9ZGF0ZV0sXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dGVsXSxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZUZXh0RmllbGQsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52VVJMRmllbGQsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52VGltZUZpZWxkLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudkRhdGVGaWVsZCB7XG4gIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcbn1cbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6OnBsYWNlaG9sZGVyLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRleHRdOjpwbGFjZWhvbGRlciwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6OnBsYWNlaG9sZGVyLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdDo6cGxhY2Vob2xkZXIsIGZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZXh0XTo6cGxhY2Vob2xkZXIsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dXJsXTo6cGxhY2Vob2xkZXIsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9ZW1haWxdOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1udW1iZXJdOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1wYXNzd29yZF06OnBsYWNlaG9sZGVyLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPWRhdGVdOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZWxdOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZUZXh0RmllbGQ6OnBsYWNlaG9sZGVyLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudlVSTEZpZWxkOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZMYXJnZVRleHRGaWVsZDo6cGxhY2Vob2xkZXIsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52VGltZUZpZWxkOjpwbGFjZWhvbGRlcixcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZEYXRlRmllbGQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5mb3JtLWZsb2F0aW5nID4gc2VsZWN0OmZvY3VzLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRleHRdOmZvY3VzLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdDpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6Zm9jdXMsIGZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZXh0XTpmb2N1cyxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT11cmxdOmZvY3VzLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cyxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1kYXRlXTpmb2N1cyxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZWxdOmZvY3VzLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudlRleHRGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZVUkxGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZMYXJnZVRleHRGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZUaW1lRmllbGQ6Zm9jdXMsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52RGF0ZUZpZWxkOmZvY3VzLCAuZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6bm90KDpwbGFjZWhvbGRlci1zaG93biksICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dGV4dF06bm90KDpwbGFjZWhvbGRlci1zaG93biksIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIC5mb3JtLWZsb2F0aW5nID4gc2VsZWN0Om5vdCg6cGxhY2Vob2xkZXItc2hvd24pLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSwgZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRleHRdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXVybF06bm90KDpwbGFjZWhvbGRlci1zaG93biksXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9ZW1haWxdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPW51bWJlcl06bm90KDpwbGFjZWhvbGRlci1zaG93biksXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9cGFzc3dvcmRdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPWRhdGVdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRlbF06bm90KDpwbGFjZWhvbGRlci1zaG93biksXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52VGV4dEZpZWxkOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudlVSTEZpZWxkOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudkxhcmdlVGV4dEZpZWxkOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudlRpbWVGaWVsZDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZEYXRlRmllbGQ6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbn1cbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5mb3JtLWZsb2F0aW5nID4gc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGwsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dGV4dF06LXdlYmtpdC1hdXRvZmlsbCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbCwgZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRleHRdOi13ZWJraXQtYXV0b2ZpbGwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dXJsXTotd2Via2l0LWF1dG9maWxsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPWVtYWlsXTotd2Via2l0LWF1dG9maWxsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPW51bWJlcl06LXdlYmtpdC1hdXRvZmlsbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1wYXNzd29yZF06LXdlYmtpdC1hdXRvZmlsbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1kYXRlXTotd2Via2l0LWF1dG9maWxsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRlbF06LXdlYmtpdC1hdXRvZmlsbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZUZXh0RmllbGQ6LXdlYmtpdC1hdXRvZmlsbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZVUkxGaWVsZDotd2Via2l0LWF1dG9maWxsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudkxhcmdlVGV4dEZpZWxkOi13ZWJraXQtYXV0b2ZpbGwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52VGltZUZpZWxkOi13ZWJraXQtYXV0b2ZpbGwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52RGF0ZUZpZWxkOi13ZWJraXQtYXV0b2ZpbGwge1xuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbn1cbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0LCBmaWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdDpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbn1cbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpmb2N1cyB+IGxhYmVsLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5mb3JtLWZsb2F0aW5nID4gc2VsZWN0OmZvY3VzIH4gbGFiZWwsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dGV4dF06Zm9jdXMgfiBsYWJlbCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6Zm9jdXMgfiBsYWJlbCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6Zm9jdXMgfiBsYWJlbCwgZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRleHRdOmZvY3VzIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dXJsXTpmb2N1cyB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cyB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPW51bWJlcl06Zm9jdXMgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXMgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1kYXRlXTpmb2N1cyB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRlbF06Zm9jdXMgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZUZXh0RmllbGQ6Zm9jdXMgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZVUkxGaWVsZDpmb2N1cyB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudkxhcmdlVGV4dEZpZWxkOmZvY3VzIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52VGltZUZpZWxkOmZvY3VzIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52RGF0ZUZpZWxkOmZvY3VzIH4gbGFiZWwsXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcbiNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dGV4dF06bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcbi5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIC5mb3JtLWZsb2F0aW5nID4gc2VsZWN0Om5vdCg6cGxhY2Vob2xkZXItc2hvd24pIH4gbGFiZWwsXG4uc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRleHRdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dXJsXTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPWVtYWlsXTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPW51bWJlcl06bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1wYXNzd29yZF06bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1kYXRlXTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRlbF06bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZUZXh0RmllbGQ6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZVUkxGaWVsZDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudkxhcmdlVGV4dEZpZWxkOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52VGltZUZpZWxkOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52RGF0ZUZpZWxkOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIH4gbGFiZWwsXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pIH4gbGFiZWwge1xuICBvcGFjaXR5OiAwLjY1O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpIHRyYW5zbGF0ZVkoLTAuNXJlbSkgdHJhbnNsYXRlWCgwLjE1cmVtKTtcbn1cbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIH4gbGFiZWwsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPXRleHRdOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmZvcm0tZmxvYXRpbmcgPiBzZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiAuZm9ybS1mbG9hdGluZyA+IHNlbGVjdDotd2Via2l0LWF1dG9maWxsIH4gbGFiZWwsIGZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZXh0XTotd2Via2l0LWF1dG9maWxsIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9dXJsXTotd2Via2l0LWF1dG9maWxsIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IGlucHV0W3R5cGU9ZW1haWxdOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1udW1iZXJdOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT1wYXNzd29yZF06LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiBpbnB1dFt0eXBlPWRhdGVdOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gaW5wdXRbdHlwZT10ZWxdOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZUZXh0RmllbGQ6LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsLFxuZmllbGRzZXQgLmZvcm0tZmxvYXRpbmcgPiAudlVSTEZpZWxkOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZMYXJnZVRleHRGaWVsZDotd2Via2l0LWF1dG9maWxsIH4gbGFiZWwsXG5maWVsZHNldCAuZm9ybS1mbG9hdGluZyA+IC52VGltZUZpZWxkOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCxcbmZpZWxkc2V0IC5mb3JtLWZsb2F0aW5nID4gLnZEYXRlRmllbGQ6LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsIHtcbiAgb3BhY2l0eTogMC42NTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0wLjVyZW0pIHRyYW5zbGF0ZVgoMC4xNXJlbSk7XG59XG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5pbnB1dC1ncm91cCA+IHNlbGVjdCwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5pbnB1dC1ncm91cCA+IGlucHV0W3R5cGU9dGV4dF0sIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIC5pbnB1dC1ncm91cCA+IHNlbGVjdCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLmlucHV0LWdyb3VwID4gc2VsZWN0LCBmaWVsZHNldCAuaW5wdXQtZ3JvdXAgPiBpbnB1dFt0eXBlPXRleHRdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwID4gaW5wdXRbdHlwZT11cmxdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwID4gaW5wdXRbdHlwZT1lbWFpbF0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiBpbnB1dFt0eXBlPW51bWJlcl0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IGlucHV0W3R5cGU9ZGF0ZV0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiBpbnB1dFt0eXBlPXRlbF0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiAudlRleHRGaWVsZCxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IC52VVJMRmllbGQsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiAudkxhcmdlVGV4dEZpZWxkLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwID4gLnZUaW1lRmllbGQsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiAudkRhdGVGaWVsZCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLXNlbGVjdCxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IHNlbGVjdDpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB3aWR0aDogMSU7XG4gIG1pbi13aWR0aDogMDtcbn1cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmlucHV0LWdyb3VwID4gc2VsZWN0OmZvY3VzLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmlucHV0LWdyb3VwID4gaW5wdXRbdHlwZT10ZXh0XTpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmlucHV0LWdyb3VwID4gc2VsZWN0OmZvY3VzLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiAuaW5wdXQtZ3JvdXAgPiBzZWxlY3Q6Zm9jdXMsIGZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiBpbnB1dFt0eXBlPXVybF06Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IGlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IGlucHV0W3R5cGU9cGFzc3dvcmRdOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwID4gaW5wdXRbdHlwZT1kYXRlXTpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IGlucHV0W3R5cGU9dGVsXTpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IC52VGV4dEZpZWxkOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwID4gLnZVUkxGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IC52TGFyZ2VUZXh0RmllbGQ6Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgPiAudlRpbWVGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCA+IC52RGF0ZUZpZWxkOmZvY3VzLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0OmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwID4gc2VsZWN0OmZvY3VzOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSB7XG4gIHotaW5kZXg6IDM7XG59XG4uaW5wdXQtZ3JvdXAgLmJ0biwgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1zdWJtaXRdLCAuaW5wdXQtZ3JvdXAgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBidXR0b24sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmlucHV0LWdyb3VwIGJ1dHRvbiwgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1zdWJtaXRdLCAuaW5wdXQtZ3JvdXAgYm9keS5sb2dpbiAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9c3VibWl0XSwgLmlucHV0LWdyb3VwICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSksIC5pbnB1dC1ncm91cCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSksIC5pbnB1dC1ncm91cCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLmlucHV0LWdyb3VwIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuaW5wdXQtZ3JvdXAgLnN1Ym1pdC1yb3cgYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmlucHV0LWdyb3VwIGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksIC5pbnB1dC1ncm91cCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRlbGV0ZWxpbmssIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuaW5wdXQtZ3JvdXAgLmRlbGV0ZWxpbmssIC5pbnB1dC1ncm91cCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPWJ1dHRvbl0sIC5pbnB1dC1ncm91cCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXN1Ym1pdF0sIC5pbnB1dC1ncm91cCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b24sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cCBidXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uaW5wdXQtZ3JvdXAgLmJ0bjpmb2N1cywgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLCAuaW5wdXQtZ3JvdXAgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBidXR0b246Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmlucHV0LWdyb3VwIGJ1dHRvbjpmb2N1cywgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLCAuaW5wdXQtZ3JvdXAgYm9keS5sb2dpbiAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cywgLmlucHV0LWdyb3VwICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIC5pbnB1dC1ncm91cCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIC5pbnB1dC1ncm91cCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLmlucHV0LWdyb3VwIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9YnV0dG9uXTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuaW5wdXQtZ3JvdXAgLnN1Ym1pdC1yb3cgYnV0dG9uOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmlucHV0LWdyb3VwIGJ1dHRvbjpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIC5pbnB1dC1ncm91cCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRlbGV0ZWxpbms6Zm9jdXMsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuaW5wdXQtZ3JvdXAgLmRlbGV0ZWxpbms6Zm9jdXMsIC5pbnB1dC1ncm91cCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXMsIC5pbnB1dC1ncm91cCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIC5pbnB1dC1ncm91cCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b246Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cCBidXR0b246Zm9jdXMge1xuICB6LWluZGV4OiAzO1xufVxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3QsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPXRleHRdLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAuaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3QsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIC5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdCwgZmllbGRzZXQgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT10ZXh0XSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9dXJsXSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9ZW1haWxdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT1udW1iZXJdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPWRhdGVdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT10ZWxdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLWxnID4gLnZUZXh0RmllbGQsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAtbGcgPiAudlVSTEZpZWxkLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLWxnID4gLnZMYXJnZVRleHRGaWVsZCxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cC1sZyA+IC52VGltZUZpZWxkLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLWxnID4gLnZEYXRlRmllbGQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3Q6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9c3VibWl0XSxcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmlucHV0LWdyb3VwLWxnID4gYnV0dG9uLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9c3VibWl0XSxcbmJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuaW5wdXQtZ3JvdXAtbGcgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuaW5wdXQtZ3JvdXAtbGcgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmlucHV0LWdyb3VwLWxnID4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuaW5wdXQtZ3JvdXAtbGcgPiAuZGVsZXRlbGluayxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9YnV0dG9uXSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9c3VibWl0XSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cC1sZyA+IGJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3QsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dFt0eXBlPXRleHRdLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAuaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3QsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIC5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdCwgZmllbGRzZXQgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT10ZXh0XSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9dXJsXSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9ZW1haWxdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1udW1iZXJdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dFt0eXBlPWRhdGVdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT10ZWxdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLXNtID4gLnZUZXh0RmllbGQsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAtc20gPiAudlVSTEZpZWxkLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLXNtID4gLnZMYXJnZVRleHRGaWVsZCxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cC1zbSA+IC52VGltZUZpZWxkLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwLXNtID4gLnZEYXRlRmllbGQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3Q6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9c3VibWl0XSxcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmlucHV0LWdyb3VwLXNtID4gYnV0dG9uLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9c3VibWl0XSxcbmJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuaW5wdXQtZ3JvdXAtc20gPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuaW5wdXQtZ3JvdXAtc20gPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmlucHV0LWdyb3VwLXNtID4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuaW5wdXQtZ3JvdXAtc20gPiAuZGVsZXRlbGluayxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9YnV0dG9uXSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9c3VibWl0XSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5pbnB1dC1ncm91cC1zbSA+IGJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuMzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsIGZpZWxkc2V0IC5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdDpub3QoW211bHRpcGxlPW11bHRpcGxlXSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3Q6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbn1cblxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4rMykge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiA6bnRoLWxhc3QtY2hpbGQobiszKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobis0KSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5pbnB1dC1ncm91cCA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCgudmFsaWQtdG9vbHRpcCk6bm90KC52YWxpZC1mZWVkYmFjayk6bm90KC5pbnZhbGlkLXRvb2x0aXApOm5vdCguaW52YWxpZC1mZWVkYmFjaykge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLnZhbGlkLWZlZWRiYWNrIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgY29sb3I6ICMxOTg3NTQ7XG59XG5cbi52YWxpZC10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjUsIDEzNSwgODQsIDAuOSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC10b29sdGlwLFxuLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmlzLXZhbGlkIH4gLnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCwgLndhcy12YWxpZGF0ZWQgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3Q6dmFsaWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLndhcy12YWxpZGF0ZWQgc2VsZWN0OnZhbGlkLCAud2FzLXZhbGlkYXRlZCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XTp2YWxpZCwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9dGV4dF06dmFsaWQsIC53YXMtdmFsaWRhdGVkIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdDp2YWxpZCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLndhcy12YWxpZGF0ZWQgc2VsZWN0OnZhbGlkLCAud2FzLXZhbGlkYXRlZCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3Q6dmFsaWQsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIC53YXMtdmFsaWRhdGVkIHNlbGVjdDp2YWxpZCwgLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgaW5wdXRbdHlwZT10ZXh0XTp2YWxpZCwgZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT10ZXh0XTp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9dXJsXTp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9dXJsXTp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9ZW1haWxdOnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT1lbWFpbF06dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBpbnB1dFt0eXBlPW51bWJlcl06dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPW51bWJlcl06dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBpbnB1dFt0eXBlPXBhc3N3b3JkXTp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9cGFzc3dvcmRdOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXTp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9ZGF0ZV06dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBpbnB1dFt0eXBlPXRlbF06dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPXRlbF06dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCAudlRleHRGaWVsZDp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC52VGV4dEZpZWxkOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgLnZVUkxGaWVsZDp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC52VVJMRmllbGQ6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCAudkxhcmdlVGV4dEZpZWxkOnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZMYXJnZVRleHRGaWVsZDp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IC52VGltZUZpZWxkOnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZUaW1lRmllbGQ6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCAudkRhdGVGaWVsZDp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC52RGF0ZUZpZWxkOnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdC5pcy12YWxpZCwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0LmlzLXZhbGlkW3R5cGU9dGV4dF0sIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdC5pcy12YWxpZCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0LmlzLXZhbGlkLCBmaWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPXRleHRdLFxuZmllbGRzZXQgaW5wdXQuaXMtdmFsaWRbdHlwZT11cmxdLFxuZmllbGRzZXQgaW5wdXQuaXMtdmFsaWRbdHlwZT1lbWFpbF0sXG5maWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPW51bWJlcl0sXG5maWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPXBhc3N3b3JkXSxcbmZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9ZGF0ZV0sXG5maWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPXRlbF0sXG5maWVsZHNldCAuaXMtdmFsaWQudlRleHRGaWVsZCxcbmZpZWxkc2V0IC5pcy12YWxpZC52VVJMRmllbGQsXG5maWVsZHNldCAuaXMtdmFsaWQudkxhcmdlVGV4dEZpZWxkLFxuZmllbGRzZXQgLmlzLXZhbGlkLnZUaW1lRmllbGQsXG5maWVsZHNldCAuaXMtdmFsaWQudkRhdGVGaWVsZCB7XG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyMzE5ODc1NCcgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdDp2YWxpZDpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAud2FzLXZhbGlkYXRlZCBzZWxlY3Q6dmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOnZhbGlkOmZvY3VzLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT10ZXh0XTp2YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0OnZhbGlkOmZvY3VzLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAud2FzLXZhbGlkYXRlZCBzZWxlY3Q6dmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdDp2YWxpZDpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLndhcy12YWxpZGF0ZWQgc2VsZWN0OnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBpbnB1dFt0eXBlPXRleHRdOnZhbGlkOmZvY3VzLCBmaWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPXRleHRdOnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgaW5wdXRbdHlwZT11cmxdOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT11cmxdOnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF06dmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPWVtYWlsXTp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXTp2YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9bnVtYmVyXTp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT1wYXNzd29yZF06dmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBpbnB1dFt0eXBlPWRhdGVdOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT1kYXRlXTp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXTp2YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9dGVsXTp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IC52VGV4dEZpZWxkOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZUZXh0RmllbGQ6dmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCAudlVSTEZpZWxkOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZVUkxGaWVsZDp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQ6dmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAudkxhcmdlVGV4dEZpZWxkOnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgLnZUaW1lRmllbGQ6dmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAudlRpbWVGaWVsZDp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IC52RGF0ZUZpZWxkOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZEYXRlRmllbGQ6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXQuaXMtdmFsaWRbdHlwZT10ZXh0XTpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsIGZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9dGV4dF06Zm9jdXMsXG5maWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPXVybF06Zm9jdXMsXG5maWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPWVtYWlsXTpmb2N1cyxcbmZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9bnVtYmVyXTpmb2N1cyxcbmZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9cGFzc3dvcmRdOmZvY3VzLFxuZmllbGRzZXQgaW5wdXQuaXMtdmFsaWRbdHlwZT1kYXRlXTpmb2N1cyxcbmZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9dGVsXTpmb2N1cyxcbmZpZWxkc2V0IC5pcy12YWxpZC52VGV4dEZpZWxkOmZvY3VzLFxuZmllbGRzZXQgLmlzLXZhbGlkLnZVUkxGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pcy12YWxpZC52TGFyZ2VUZXh0RmllbGQ6Zm9jdXMsXG5maWVsZHNldCAuaXMtdmFsaWQudlRpbWVGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pcy12YWxpZC52RGF0ZUZpZWxkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjUsIDEzNSwgODQsIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCB0ZXh0YXJlYS52VGV4dEZpZWxkOnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEudlRleHRGaWVsZDp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IHRleHRhcmVhLnZVUkxGaWVsZDp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIHRleHRhcmVhLnZVUkxGaWVsZDp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IHRleHRhcmVhLnZMYXJnZVRleHRGaWVsZDp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIHRleHRhcmVhLnZMYXJnZVRleHRGaWVsZDp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IHRleHRhcmVhLnZUaW1lRmllbGQ6dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS52VGltZUZpZWxkOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgdGV4dGFyZWEudkRhdGVGaWVsZDp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIHRleHRhcmVhLnZEYXRlRmllbGQ6dmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy12YWxpZCxcbmZpZWxkc2V0IHRleHRhcmVhLmlzLXZhbGlkLnZUZXh0RmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS5pcy12YWxpZC52VVJMRmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS5pcy12YWxpZC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS5pcy12YWxpZC52VGltZUZpZWxkLFxuZmllbGRzZXQgdGV4dGFyZWEuaXMtdmFsaWQudkRhdGVGaWVsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OnZhbGlkLCAud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBzZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLCBmaWVsZHNldCAud2FzLXZhbGlkYXRlZCBzZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLCAuZm9ybS1zZWxlY3QuaXMtdmFsaWQsIGZpZWxkc2V0IHNlbGVjdC5pcy12YWxpZDpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLCAud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBzZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSwgZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgc2VsZWN0OnZhbGlkOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKTpub3QoW211bHRpcGxlPW11bHRpcGxlXSksIC53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDp2YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl0sIC53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IHNlbGVjdDp2YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl06bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLCBmaWVsZHNldCAud2FzLXZhbGlkYXRlZCBzZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSwgLmZvcm0tc2VsZWN0LmlzLXZhbGlkOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSwgZmllbGRzZXQgc2VsZWN0LmlzLXZhbGlkOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKTpub3QoW211bHRpcGxlPW11bHRpcGxlXSksIC5mb3JtLXNlbGVjdC5pcy12YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl0sIGZpZWxkc2V0IHNlbGVjdC5pcy12YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl06bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pIHtcbiAgcGFkZGluZy1yaWdodDogNC4xMjVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzM0M2E0MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J00yIDVsNiA2IDYtNicvJTNlJTNjL3N2ZyUzZVwiKSwgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyLCBjZW50ZXIgcmlnaHQgMi4yNXJlbTtcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHgsIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBzZWxlY3Q6dmFsaWQ6Zm9jdXM6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLCBmaWVsZHNldCAud2FzLXZhbGlkYXRlZCBzZWxlY3Q6dmFsaWQ6Zm9jdXM6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLCAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsIGZpZWxkc2V0IHNlbGVjdC5pcy12YWxpZDpmb2N1czpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkLCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkOmNoZWNrZWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkOmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogIzE5ODc1NDtcbn1cblxuLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IH4gLnZhbGlkLWZlZWRiYWNrIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDp2YWxpZCwgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0OnZhbGlkLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBzZWxlY3Q6dmFsaWQsIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XTp2YWxpZCwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXRleHRdOnZhbGlkLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0OnZhbGlkLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgc2VsZWN0OnZhbGlkLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0OnZhbGlkLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgc2VsZWN0OnZhbGlkLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT10ZXh0XTp2YWxpZCwgZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9dGV4dF06dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT11cmxdOnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9dXJsXTp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXTp2YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPWVtYWlsXTp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPW51bWJlcl06dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1udW1iZXJdOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9cGFzc3dvcmRdOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9ZGF0ZV06dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1kYXRlXTp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPXRlbF06dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT10ZWxdOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IC52VGV4dEZpZWxkOnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC52VGV4dEZpZWxkOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IC52VVJMRmllbGQ6dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnZVUkxGaWVsZDp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCAudkxhcmdlVGV4dEZpZWxkOnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC52TGFyZ2VUZXh0RmllbGQ6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgLnZUaW1lRmllbGQ6dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnZUaW1lRmllbGQ6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgLnZEYXRlRmllbGQ6dmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnZEYXRlRmllbGQ6dmFsaWQsIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLmlzLXZhbGlkLCAuaW5wdXQtZ3JvdXAgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3QuaXMtdmFsaWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmlucHV0LWdyb3VwIHNlbGVjdC5pcy12YWxpZCwgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dC5pcy12YWxpZFt0eXBlPXRleHRdLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmlucHV0LWdyb3VwIGlucHV0LmlzLXZhbGlkW3R5cGU9dGV4dF0sIC5pbnB1dC1ncm91cCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBzZWxlY3QuaXMtdmFsaWQsIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIC5pbnB1dC1ncm91cCBzZWxlY3QuaXMtdmFsaWQsIC5pbnB1dC1ncm91cCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3QuaXMtdmFsaWQsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIC5pbnB1dC1ncm91cCBzZWxlY3QuaXMtdmFsaWQsIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPXRleHRdLCBmaWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtdmFsaWRbdHlwZT10ZXh0XSxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPXVybF0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtdmFsaWRbdHlwZT11cmxdLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9ZW1haWxdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLXZhbGlkW3R5cGU9ZW1haWxdLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9bnVtYmVyXSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy12YWxpZFt0eXBlPW51bWJlcl0sXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtdmFsaWRbdHlwZT1wYXNzd29yZF0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtdmFsaWRbdHlwZT1wYXNzd29yZF0sXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtdmFsaWRbdHlwZT1kYXRlXSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy12YWxpZFt0eXBlPWRhdGVdLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9dGVsXSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy12YWxpZFt0eXBlPXRlbF0sXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgLmlzLXZhbGlkLnZUZXh0RmllbGQsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgLmlzLXZhbGlkLnZUZXh0RmllbGQsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgLmlzLXZhbGlkLnZVUkxGaWVsZCxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCAuaXMtdmFsaWQudlVSTEZpZWxkLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IC5pcy12YWxpZC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgLmlzLXZhbGlkLnZMYXJnZVRleHRGaWVsZCxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCAuaXMtdmFsaWQudlRpbWVGaWVsZCxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCAuaXMtdmFsaWQudlRpbWVGaWVsZCxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCAuaXMtdmFsaWQudkRhdGVGaWVsZCxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCAuaXMtdmFsaWQudkRhdGVGaWVsZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAuZm9ybS1zZWxlY3Q6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgc2VsZWN0OnZhbGlkOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBzZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLFxuLmlucHV0LWdyb3VwIC5mb3JtLXNlbGVjdC5pcy12YWxpZCxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBzZWxlY3QuaXMtdmFsaWQ6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIHNlbGVjdC5pcy12YWxpZDpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICB6LWluZGV4OiAxO1xufVxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdDp2YWxpZDpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgc2VsZWN0OnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06dmFsaWQ6Zm9jdXMsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT10ZXh0XTp2YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdDp2YWxpZDpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIHNlbGVjdDp2YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdDp2YWxpZDpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIHNlbGVjdDp2YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF06dmFsaWQ6Zm9jdXMsIGZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXRleHRdOnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9dXJsXTp2YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXVybF06dmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF06dmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1lbWFpbF06dmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9bnVtYmVyXTp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPXBhc3N3b3JkXTp2YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXBhc3N3b3JkXTp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPWRhdGVdOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9ZGF0ZV06dmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9dGVsXTp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCAudlRleHRGaWVsZDp2YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAudlRleHRGaWVsZDp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCAudlVSTEZpZWxkOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC52VVJMRmllbGQ6dmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZDp2YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAudkxhcmdlVGV4dEZpZWxkOnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IC52VGltZUZpZWxkOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC52VGltZUZpZWxkOnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IC52RGF0ZUZpZWxkOnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC52RGF0ZUZpZWxkOnZhbGlkOmZvY3VzLCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cywgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5pbnB1dC1ncm91cCBzZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsIC5pbnB1dC1ncm91cCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXQuaXMtdmFsaWRbdHlwZT10ZXh0XTpmb2N1cywgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5pbnB1dC1ncm91cCBpbnB1dC5pcy12YWxpZFt0eXBlPXRleHRdOmZvY3VzLCAuaW5wdXQtZ3JvdXAgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAuaW5wdXQtZ3JvdXAgc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAuaW5wdXQtZ3JvdXAgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiAuaW5wdXQtZ3JvdXAgc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtdmFsaWRbdHlwZT10ZXh0XTpmb2N1cywgZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLXZhbGlkW3R5cGU9dGV4dF06Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtdmFsaWRbdHlwZT11cmxdOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLXZhbGlkW3R5cGU9dXJsXTpmb2N1cyxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPWVtYWlsXTpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy12YWxpZFt0eXBlPWVtYWlsXTpmb2N1cyxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPW51bWJlcl06Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtdmFsaWRbdHlwZT1udW1iZXJdOmZvY3VzLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9cGFzc3dvcmRdOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLXZhbGlkW3R5cGU9cGFzc3dvcmRdOmZvY3VzLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLXZhbGlkW3R5cGU9ZGF0ZV06Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtdmFsaWRbdHlwZT1kYXRlXTpmb2N1cyxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy12YWxpZFt0eXBlPXRlbF06Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtdmFsaWRbdHlwZT10ZWxdOmZvY3VzLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IC5pcy12YWxpZC52VGV4dEZpZWxkOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIC5pcy12YWxpZC52VGV4dEZpZWxkOmZvY3VzLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IC5pcy12YWxpZC52VVJMRmllbGQ6Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgLmlzLXZhbGlkLnZVUkxGaWVsZDpmb2N1cyxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCAuaXMtdmFsaWQudkxhcmdlVGV4dEZpZWxkOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIC5pcy12YWxpZC52TGFyZ2VUZXh0RmllbGQ6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgLmlzLXZhbGlkLnZUaW1lRmllbGQ6Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgLmlzLXZhbGlkLnZUaW1lRmllbGQ6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgLmlzLXZhbGlkLnZEYXRlRmllbGQ6Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgLmlzLXZhbGlkLnZEYXRlRmllbGQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0OnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IHNlbGVjdDp2YWxpZDpmb2N1czpub3QoW211bHRpcGxlPW11bHRpcGxlXSksXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgc2VsZWN0OnZhbGlkOmZvY3VzOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSxcbi5pbnB1dC1ncm91cCAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgc2VsZWN0LmlzLXZhbGlkOmZvY3VzOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBzZWxlY3QuaXMtdmFsaWQ6Zm9jdXM6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pIHtcbiAgei1pbmRleDogMztcbn1cblxuLmludmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLmludmFsaWQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjFyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMCwgNTMsIDY5LCAwLjkpO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsIC53YXMtdmFsaWRhdGVkICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0OmludmFsaWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLndhcy12YWxpZGF0ZWQgc2VsZWN0OmludmFsaWQsIC53YXMtdmFsaWRhdGVkICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOmludmFsaWQsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPXRleHRdOmludmFsaWQsIC53YXMtdmFsaWRhdGVkIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdDppbnZhbGlkLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAud2FzLXZhbGlkYXRlZCBzZWxlY3Q6aW52YWxpZCwgLndhcy12YWxpZGF0ZWQgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0OmludmFsaWQsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIC53YXMtdmFsaWRhdGVkIHNlbGVjdDppbnZhbGlkLCAud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBpbnB1dFt0eXBlPXRleHRdOmludmFsaWQsIGZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9dGV4dF06aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9dXJsXTppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT11cmxdOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXTppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT1lbWFpbF06aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXTppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT1udW1iZXJdOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBpbnB1dFt0eXBlPXBhc3N3b3JkXTppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT1wYXNzd29yZF06aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9ZGF0ZV06aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9ZGF0ZV06aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXTppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT10ZWxdOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCAudlRleHRGaWVsZDppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZUZXh0RmllbGQ6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IC52VVJMRmllbGQ6aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC52VVJMRmllbGQ6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQ6aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC52TGFyZ2VUZXh0RmllbGQ6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IC52VGltZUZpZWxkOmludmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAudlRpbWVGaWVsZDppbnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgLnZEYXRlRmllbGQ6aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC52RGF0ZUZpZWxkOmludmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3QuaXMtaW52YWxpZCwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0LmlzLWludmFsaWRbdHlwZT10ZXh0XSwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0LmlzLWludmFsaWQsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdC5pcy1pbnZhbGlkLCBmaWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9dGV4dF0sXG5maWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9dXJsXSxcbmZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT1lbWFpbF0sXG5maWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9bnVtYmVyXSxcbmZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT1wYXNzd29yZF0sXG5maWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9ZGF0ZV0sXG5maWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9dGVsXSxcbmZpZWxkc2V0IC5pcy1pbnZhbGlkLnZUZXh0RmllbGQsXG5maWVsZHNldCAuaXMtaW52YWxpZC52VVJMRmllbGQsXG5maWVsZHNldCAuaXMtaW52YWxpZC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCAuaXMtaW52YWxpZC52VGltZUZpZWxkLFxuZmllbGRzZXQgLmlzLWludmFsaWQudkRhdGVGaWVsZCB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZGMzNTQ1JyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2RjMzU0NScgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3Q6aW52YWxpZDpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAud2FzLXZhbGlkYXRlZCBzZWxlY3Q6aW52YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06aW52YWxpZDpmb2N1cywgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC53YXMtdmFsaWRhdGVkIGlucHV0W3R5cGU9dGV4dF06aW52YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIC53YXMtdmFsaWRhdGVkIHNlbGVjdDppbnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3Q6aW52YWxpZDpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLndhcy12YWxpZGF0ZWQgc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF06aW52YWxpZDpmb2N1cywgZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT10ZXh0XTppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgaW5wdXRbdHlwZT11cmxdOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPXVybF06aW52YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9ZW1haWxdOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPWVtYWlsXTppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPW51bWJlcl06aW52YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPXBhc3N3b3JkXTppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXTppbnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgaW5wdXRbdHlwZT1kYXRlXTppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCBpbnB1dFt0eXBlPXRlbF06aW52YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IC52VGV4dEZpZWxkOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAudlRleHRGaWVsZDppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgLnZVUkxGaWVsZDppbnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZVUkxGaWVsZDppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZDppbnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZMYXJnZVRleHRGaWVsZDppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgLnZUaW1lRmllbGQ6aW52YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC52VGltZUZpZWxkOmludmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCAudkRhdGVGaWVsZDppbnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLnZEYXRlRmllbGQ6aW52YWxpZDpmb2N1cywgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXQuaXMtaW52YWxpZFt0eXBlPXRleHRdOmZvY3VzLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBzZWxlY3QuaXMtaW52YWxpZDpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsIGZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT10ZXh0XTpmb2N1cyxcbmZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT11cmxdOmZvY3VzLFxuZmllbGRzZXQgaW5wdXQuaXMtaW52YWxpZFt0eXBlPWVtYWlsXTpmb2N1cyxcbmZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT1udW1iZXJdOmZvY3VzLFxuZmllbGRzZXQgaW5wdXQuaXMtaW52YWxpZFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT1kYXRlXTpmb2N1cyxcbmZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT10ZWxdOmZvY3VzLFxuZmllbGRzZXQgLmlzLWludmFsaWQudlRleHRGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pcy1pbnZhbGlkLnZVUkxGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pcy1pbnZhbGlkLnZMYXJnZVRleHRGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pcy1pbnZhbGlkLnZUaW1lRmllbGQ6Zm9jdXMsXG5maWVsZHNldCAuaXMtaW52YWxpZC52RGF0ZUZpZWxkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IHRleHRhcmVhLnZUZXh0RmllbGQ6aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIHRleHRhcmVhLnZUZXh0RmllbGQ6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IHRleHRhcmVhLnZVUkxGaWVsZDppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEudlVSTEZpZWxkOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCBmaWVsZHNldCB0ZXh0YXJlYS52TGFyZ2VUZXh0RmllbGQ6aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIHRleHRhcmVhLnZMYXJnZVRleHRGaWVsZDppbnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgdGV4dGFyZWEudlRpbWVGaWVsZDppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEudlRpbWVGaWVsZDppbnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgdGV4dGFyZWEudkRhdGVGaWVsZDppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEudkRhdGVGaWVsZDppbnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbmZpZWxkc2V0IHRleHRhcmVhLmlzLWludmFsaWQudlRleHRGaWVsZCxcbmZpZWxkc2V0IHRleHRhcmVhLmlzLWludmFsaWQudlVSTEZpZWxkLFxuZmllbGRzZXQgdGV4dGFyZWEuaXMtaW52YWxpZC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS5pcy1pbnZhbGlkLnZUaW1lRmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS5pcy1pbnZhbGlkLnZEYXRlRmllbGQge1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDppbnZhbGlkLCAud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBzZWxlY3Q6aW52YWxpZDpub3QoW211bHRpcGxlPW11bHRpcGxlXSksIGZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIHNlbGVjdDppbnZhbGlkOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSwgLmZvcm0tc2VsZWN0LmlzLWludmFsaWQsIGZpZWxkc2V0IHNlbGVjdC5pcy1pbnZhbGlkOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDppbnZhbGlkOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSwgLndhcy12YWxpZGF0ZWQgZmllbGRzZXQgc2VsZWN0OmludmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSwgZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgc2VsZWN0OmludmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSwgLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWQ6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdLCAud2FzLXZhbGlkYXRlZCBmaWVsZHNldCBzZWxlY3Q6aW52YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl06bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLCBmaWVsZHNldCAud2FzLXZhbGlkYXRlZCBzZWxlY3Q6aW52YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl06bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLCAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksIGZpZWxkc2V0IHNlbGVjdC5pcy1pbnZhbGlkOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKTpub3QoW211bHRpcGxlPW11bHRpcGxlXSksIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSwgZmllbGRzZXQgc2VsZWN0LmlzLWludmFsaWQ6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSB7XG4gIHBhZGRpbmctcmlnaHQ6IDQuMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIiksIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZGMzNTQ1JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyLCBjZW50ZXIgcmlnaHQgMi4yNXJlbTtcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHgsIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkIGZpZWxkc2V0IHNlbGVjdDppbnZhbGlkOmZvY3VzOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSwgZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgc2VsZWN0OmludmFsaWQ6Zm9jdXM6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLCAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cywgZmllbGRzZXQgc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXM6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZDpjaGVja2VkLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkOmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZDpmb2N1cywgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQgfiAuaW52YWxpZC1mZWVkYmFjayB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6aW52YWxpZCwgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0OmludmFsaWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIHNlbGVjdDppbnZhbGlkLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06aW52YWxpZCwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXRleHRdOmludmFsaWQsIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBzZWxlY3Q6aW52YWxpZCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIHNlbGVjdDppbnZhbGlkLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0OmludmFsaWQsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBzZWxlY3Q6aW52YWxpZCwgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF06aW52YWxpZCwgZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9dGV4dF06aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPXVybF06aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXVybF06aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXTppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9ZW1haWxdOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdOmludmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1udW1iZXJdOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT1wYXNzd29yZF06aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXBhc3N3b3JkXTppbnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9ZGF0ZV06aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPWRhdGVdOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdOmludmFsaWQsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT10ZWxdOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgLnZUZXh0RmllbGQ6aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAudlRleHRGaWVsZDppbnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IC52VVJMRmllbGQ6aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAudlVSTEZpZWxkOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZDppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC52TGFyZ2VUZXh0RmllbGQ6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCAudlRpbWVGaWVsZDppbnZhbGlkLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC52VGltZUZpZWxkOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgLnZEYXRlRmllbGQ6aW52YWxpZCxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAudkRhdGVGaWVsZDppbnZhbGlkLCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLCAuaW5wdXQtZ3JvdXAgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzZWxlY3QuaXMtaW52YWxpZCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuaW5wdXQtZ3JvdXAgc2VsZWN0LmlzLWludmFsaWQsIC5pbnB1dC1ncm91cCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXQuaXMtaW52YWxpZFt0eXBlPXRleHRdLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmlucHV0LWdyb3VwIGlucHV0LmlzLWludmFsaWRbdHlwZT10ZXh0XSwgLmlucHV0LWdyb3VwIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdC5pcy1pbnZhbGlkLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSAuaW5wdXQtZ3JvdXAgc2VsZWN0LmlzLWludmFsaWQsIC5pbnB1dC1ncm91cCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3QuaXMtaW52YWxpZCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLmlucHV0LWdyb3VwIHNlbGVjdC5pcy1pbnZhbGlkLCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtaW52YWxpZFt0eXBlPXRleHRdLCBmaWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtaW52YWxpZFt0eXBlPXRleHRdLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT11cmxdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLWludmFsaWRbdHlwZT11cmxdLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT1lbWFpbF0sXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtaW52YWxpZFt0eXBlPWVtYWlsXSxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9bnVtYmVyXSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9bnVtYmVyXSxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9cGFzc3dvcmRdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLWludmFsaWRbdHlwZT1wYXNzd29yZF0sXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtaW52YWxpZFt0eXBlPWRhdGVdLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLWludmFsaWRbdHlwZT1kYXRlXSxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9dGVsXSxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9dGVsXSxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCAuaXMtaW52YWxpZC52VGV4dEZpZWxkLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIC5pcy1pbnZhbGlkLnZUZXh0RmllbGQsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgLmlzLWludmFsaWQudlVSTEZpZWxkLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIC5pcy1pbnZhbGlkLnZVUkxGaWVsZCxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCAuaXMtaW52YWxpZC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgLmlzLWludmFsaWQudkxhcmdlVGV4dEZpZWxkLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IC5pcy1pbnZhbGlkLnZUaW1lRmllbGQsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgLmlzLWludmFsaWQudlRpbWVGaWVsZCxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCAuaXMtaW52YWxpZC52RGF0ZUZpZWxkLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIC5pcy1pbnZhbGlkLnZEYXRlRmllbGQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0OmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgc2VsZWN0OmludmFsaWQ6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIHNlbGVjdDppbnZhbGlkOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSxcbi5pbnB1dC1ncm91cCAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZCxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBzZWxlY3QuaXMtaW52YWxpZDpub3QoW211bHRpcGxlPW11bHRpcGxlXSksXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgc2VsZWN0LmlzLWludmFsaWQ6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pIHtcbiAgei1pbmRleDogMjtcbn1cbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmludmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdDppbnZhbGlkOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBzZWxlY3Q6aW52YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOmludmFsaWQ6Zm9jdXMsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT10ZXh0XTppbnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBzZWxlY3Q6aW52YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdDppbnZhbGlkOmZvY3VzLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPXRleHRdOmludmFsaWQ6Zm9jdXMsIGZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPXRleHRdOmludmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT11cmxdOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT11cmxdOmludmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF06aW52YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBpbnB1dFt0eXBlPWVtYWlsXTppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXTppbnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9bnVtYmVyXTppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1wYXNzd29yZF06aW52YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dFt0eXBlPWRhdGVdOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgaW5wdXRbdHlwZT1kYXRlXTppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXTppbnZhbGlkOmZvY3VzLFxuZmllbGRzZXQgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9dGVsXTppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IC52VGV4dEZpZWxkOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnZUZXh0RmllbGQ6aW52YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBmaWVsZHNldCAudlVSTEZpZWxkOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnZVUkxGaWVsZDppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQ6aW52YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAudkxhcmdlVGV4dEZpZWxkOmludmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgZmllbGRzZXQgLnZUaW1lRmllbGQ6aW52YWxpZDpmb2N1cyxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCAudlRpbWVGaWVsZDppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IC52RGF0ZUZpZWxkOmludmFsaWQ6Zm9jdXMsXG5maWVsZHNldCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLnZEYXRlRmllbGQ6aW52YWxpZDpmb2N1cywgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cywgLmlucHV0LWdyb3VwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmlucHV0LWdyb3VwIHNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzLCAuaW5wdXQtZ3JvdXAgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0LmlzLWludmFsaWRbdHlwZT10ZXh0XTpmb2N1cywgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5pbnB1dC1ncm91cCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9dGV4dF06Zm9jdXMsIC5pbnB1dC1ncm91cCAuc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBzZWxlY3QuaXMtaW52YWxpZDpmb2N1cywgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmlucHV0LWdyb3VwIHNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzLCAuaW5wdXQtZ3JvdXAgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIC5pbnB1dC1ncm91cCBzZWxlY3QuaXMtaW52YWxpZDpmb2N1cywgLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT10ZXh0XTpmb2N1cywgZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLWludmFsaWRbdHlwZT10ZXh0XTpmb2N1cyxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9dXJsXTpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9dXJsXTpmb2N1cyxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9ZW1haWxdOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIGlucHV0LmlzLWludmFsaWRbdHlwZT1lbWFpbF06Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtaW52YWxpZFt0eXBlPW51bWJlcl06Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtaW52YWxpZFt0eXBlPW51bWJlcl06Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtaW52YWxpZFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9cGFzc3dvcmRdOmZvY3VzLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IGlucHV0LmlzLWludmFsaWRbdHlwZT1kYXRlXTpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCBpbnB1dC5pcy1pbnZhbGlkW3R5cGU9ZGF0ZV06Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgaW5wdXQuaXMtaW52YWxpZFt0eXBlPXRlbF06Zm9jdXMsXG5maWVsZHNldCAuaW5wdXQtZ3JvdXAgaW5wdXQuaXMtaW52YWxpZFt0eXBlPXRlbF06Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgLmlzLWludmFsaWQudlRleHRGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCAuaXMtaW52YWxpZC52VGV4dEZpZWxkOmZvY3VzLFxuLmlucHV0LWdyb3VwIGZpZWxkc2V0IC5pcy1pbnZhbGlkLnZVUkxGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCAuaXMtaW52YWxpZC52VVJMRmllbGQ6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgLmlzLWludmFsaWQudkxhcmdlVGV4dEZpZWxkOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIC5pcy1pbnZhbGlkLnZMYXJnZVRleHRGaWVsZDpmb2N1cyxcbi5pbnB1dC1ncm91cCBmaWVsZHNldCAuaXMtaW52YWxpZC52VGltZUZpZWxkOmZvY3VzLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIC5pcy1pbnZhbGlkLnZUaW1lRmllbGQ6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgLmlzLWludmFsaWQudkRhdGVGaWVsZDpmb2N1cyxcbmZpZWxkc2V0IC5pbnB1dC1ncm91cCAuaXMtaW52YWxpZC52RGF0ZUZpZWxkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5mb3JtLXNlbGVjdDppbnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIGZpZWxkc2V0IHNlbGVjdDppbnZhbGlkOmZvY3VzOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSxcbmZpZWxkc2V0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCBzZWxlY3Q6aW52YWxpZDpmb2N1czpub3QoW211bHRpcGxlPW11bHRpcGxlXSksXG4uaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgZmllbGRzZXQgc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXM6bm90KFttdWx0aXBsZT1tdWx0aXBsZV0pLFxuZmllbGRzZXQgLmlucHV0LWdyb3VwIHNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzOm5vdChbbXVsdGlwbGU9bXVsdGlwbGVdKSB7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5idG4sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRlbGV0ZWxpbmssIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuYnRuLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF0sICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5kZWxldGVsaW5rLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgYnV0dG9uIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uYnRuOmhvdmVyLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbjpob3ZlciwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1idXR0b25dOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgYnV0dG9uOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5kZWxldGVsaW5rOmhvdmVyLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXIsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0biwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9c3VibWl0XSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWNoZWNrOmZvY3VzICsgLmRlbGV0ZWxpbmssIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6Zm9jdXMgKyBidXR0b24sIC5idG46Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uOmZvY3VzLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b246Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRlbGV0ZWxpbms6Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0W3R5cGU9YnV0dG9uXTpmb2N1cywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbn1cbi5idG46ZGlzYWJsZWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF06ZGlzYWJsZWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uOmRpc2FibGVkLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XTpkaXNhYmxlZCwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b246ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRlbGV0ZWxpbms6ZGlzYWJsZWQsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0W3R5cGU9YnV0dG9uXTpkaXNhYmxlZCwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b246ZGlzYWJsZWQsIC5idG4uZGlzYWJsZWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dC5kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uLmRpc2FibGVkLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXQuZGlzYWJsZWRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0LmRpc2FibGVkW3R5cGU9c3VibWl0XSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhLmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dC5kaXNhYmxlZFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dC5kaXNhYmxlZFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b24uZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRpc2FibGVkLmRlbGV0ZWxpbmssIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0LmRpc2FibGVkW3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXQuZGlzYWJsZWRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b24uZGlzYWJsZWQsIGZpZWxkc2V0OmRpc2FibGVkIC5idG4sIGZpZWxkc2V0OmRpc2FibGVkICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBmaWVsZHNldDpkaXNhYmxlZCBpbnB1dFt0eXBlPXN1Ym1pdF0sIGZpZWxkc2V0OmRpc2FibGVkICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGZpZWxkc2V0OmRpc2FibGVkIGJ1dHRvbiwgZmllbGRzZXQ6ZGlzYWJsZWQgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGZpZWxkc2V0OmRpc2FibGVkIGlucHV0W3R5cGU9c3VibWl0XSwgZmllbGRzZXQ6ZGlzYWJsZWQgYm9keS5sb2dpbiAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgZmllbGRzZXQ6ZGlzYWJsZWQgaW5wdXRbdHlwZT1zdWJtaXRdLCBmaWVsZHNldDpkaXNhYmxlZCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCBmaWVsZHNldDpkaXNhYmxlZCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSksIGZpZWxkc2V0OmRpc2FibGVkIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGZpZWxkc2V0OmRpc2FibGVkIGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIGZpZWxkc2V0OmRpc2FibGVkIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGZpZWxkc2V0OmRpc2FibGVkIGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIGZpZWxkc2V0OmRpc2FibGVkIC5zdWJtaXQtcm93IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGZpZWxkc2V0OmRpc2FibGVkIGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksIGZpZWxkc2V0OmRpc2FibGVkIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuZGVsZXRlbGluaywgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IGZpZWxkc2V0OmRpc2FibGVkIC5kZWxldGVsaW5rLCBmaWVsZHNldDpkaXNhYmxlZCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGZpZWxkc2V0OmRpc2FibGVkIGlucHV0W3R5cGU9YnV0dG9uXSwgZmllbGRzZXQ6ZGlzYWJsZWQgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBmaWVsZHNldDpkaXNhYmxlZCBpbnB1dFt0eXBlPXN1Ym1pdF0sIGZpZWxkc2V0OmRpc2FibGVkIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGJ1dHRvbiwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgZmllbGRzZXQ6ZGlzYWJsZWQgYnV0dG9uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG5cbi5idG4tcHJpbWFyeSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBidXR0b24sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcbn1cbi5idG4tcHJpbWFyeTpob3ZlciwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBidXR0b246aG92ZXIsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBidXR0b246aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjVlZDc7XG4gIGJvcmRlci1jb2xvcjogIzBhNThjYTtcbn1cbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLXByaW1hcnksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tY2hlY2s6Zm9jdXMgKyBidXR0b24sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSk6Zmlyc3QtY2hpbGQsIC5idG4tcHJpbWFyeTpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBidXR0b246Zm9jdXMsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBidXR0b246Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjVlZDc7XG4gIGJvcmRlci1jb2xvcjogIzBhNThjYTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDQ5LCAxMzIsIDI1MywgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tcHJpbWFyeSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tY2hlY2s6Y2hlY2tlZCArIGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBidXR0b24sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazpjaGVja2VkICsgaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tcHJpbWFyeSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tY2hlY2s6YWN0aXZlICsgaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tY2hlY2s6YWN0aXZlICsgYnV0dG9uLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6YWN0aXZlICsgaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmFjdGl2ZSArIGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSk6Zmlyc3QtY2hpbGQsIC5idG4tcHJpbWFyeTphY3RpdmUsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbjphY3RpdmUsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06YWN0aXZlOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgYnV0dG9uOmFjdGl2ZTpub3QoW2NsYXNzKj1idG4tXSk6Zmlyc3QtY2hpbGQsIC5idG4tcHJpbWFyeS5hY3RpdmUsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbi5hY3RpdmUsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF0sIC5zdWJtaXQtcm93IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBpbnB1dC5hY3RpdmVbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgYnV0dG9uLmFjdGl2ZTpub3QoW2NsYXNzKj1idG4tXSk6Zmlyc3QtY2hpbGQsIC5zaG93ID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5zaG93ID4gaW5wdXQuZHJvcGRvd24tdG9nZ2xlW3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuc2hvdyA+IGJ1dHRvbi5kcm9wZG93bi10b2dnbGUsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuc2hvdyA+IGlucHV0LmRyb3Bkb3duLXRvZ2dsZVt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyAuc2hvdyA+IGlucHV0LmRyb3Bkb3duLXRvZ2dsZVt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuc2hvdyA+IGlucHV0LmRyb3Bkb3duLXRvZ2dsZVt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuc2hvdyA+IGJ1dHRvbi5kcm9wZG93bi10b2dnbGU6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTU4Y2E7XG4gIGJvcmRlci1jb2xvcjogIzBhNTNiZTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tcHJpbWFyeTpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tY2hlY2s6Y2hlY2tlZCArIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBidXR0b246Zm9jdXMsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazpjaGVja2VkICsgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBidXR0b246Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tcHJpbWFyeTpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tY2hlY2s6YWN0aXZlICsgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tY2hlY2s6YWN0aXZlICsgYnV0dG9uOmZvY3VzLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6YWN0aXZlICsgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmFjdGl2ZSArIGJ1dHRvbjpmb2N1czpub3QoW2NsYXNzKj1idG4tXSk6Zmlyc3QtY2hpbGQsIC5idG4tcHJpbWFyeTphY3RpdmU6Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbjphY3RpdmU6Zm9jdXMsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlOmZvY3VzLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmU6Zm9jdXMsIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmU6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06YWN0aXZlOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgYnV0dG9uOmFjdGl2ZTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSk6Zmlyc3QtY2hpbGQsIC5idG4tcHJpbWFyeS5hY3RpdmU6Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbi5hY3RpdmU6Zm9jdXMsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdOmZvY3VzLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF06Zm9jdXMsIC5zdWJtaXQtcm93IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBpbnB1dC5hY3RpdmVbdHlwZT1idXR0b25dOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgYnV0dG9uLmFjdGl2ZTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSk6Zmlyc3QtY2hpbGQsIC5zaG93ID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5zaG93ID4gaW5wdXQuZHJvcGRvd24tdG9nZ2xlW3R5cGU9c3VibWl0XTpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuc2hvdyA+IGJ1dHRvbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuc2hvdyA+IGlucHV0LmRyb3Bkb3duLXRvZ2dsZVt0eXBlPXN1Ym1pdF06Zm9jdXMsIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1zdWJtaXRdOmZvY3VzLCAuc3VibWl0LXJvdyAuc2hvdyA+IGlucHV0LmRyb3Bkb3duLXRvZ2dsZVt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuc2hvdyA+IGlucHV0LmRyb3Bkb3duLXRvZ2dsZVt0eXBlPWJ1dHRvbl06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyAuc2hvdyA+IGJ1dHRvbi5kcm9wZG93bi10b2dnbGU6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDQ5LCAxMzIsIDI1MywgMC41KTtcbn1cbi5idG4tcHJpbWFyeTpkaXNhYmxlZCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIGlucHV0W3R5cGU9c3VibWl0XTpkaXNhYmxlZCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBidXR0b246ZGlzYWJsZWQsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF06ZGlzYWJsZWQsIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuc3VibWl0LXJvdyBidXR0b246ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pOmZpcnN0LWNoaWxkLCAuYnRuLXByaW1hcnkuZGlzYWJsZWQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dC5kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uLmRpc2FibGVkLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXQuZGlzYWJsZWRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0LmRpc2FibGVkW3R5cGU9c3VibWl0XSwgLnN1Ym1pdC1yb3cgaW5wdXQuZGlzYWJsZWRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgaW5wdXQuZGlzYWJsZWRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCwgLnN1Ym1pdC1yb3cgYnV0dG9uLmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKTpmaXJzdC1jaGlsZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5idG4tc2Vjb25kYXJ5LCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbiwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuLmJ0bi1zZWNvbmRhcnk6aG92ZXIsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uOmhvdmVyLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b246aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXIsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWM2MzZhO1xuICBib3JkZXItY29sb3I6ICM1NjVlNjQ7XG59XG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1zZWNvbmRhcnksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbiwgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmZvY3VzICsgYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbiwgLmJ0bi1zZWNvbmRhcnk6Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uOmZvY3VzLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b246Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWM2MzZhO1xuICBib3JkZXItY29sb3I6ICM1NjVlNjQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1zZWNvbmRhcnksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1jaGVjazpjaGVja2VkICsgYnV0dG9uLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6Y2hlY2tlZCArIGJ1dHRvbiwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXNlY29uZGFyeSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWNoZWNrOmFjdGl2ZSArIGJ1dHRvbiwgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmFjdGl2ZSArIGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6YWN0aXZlICsgYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6YWN0aXZlICsgYnV0dG9uLCAuYnRuLXNlY29uZGFyeTphY3RpdmUsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uOmFjdGl2ZSwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9YnV0dG9uXTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b246YWN0aXZlOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1idXR0b25dOmFjdGl2ZSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgYnV0dG9uOmFjdGl2ZSwgLmJ0bi1zZWNvbmRhcnkuYWN0aXZlLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbi5hY3RpdmUsIC5zdWJtaXQtcm93IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dC5hY3RpdmVbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgYnV0dG9uLmFjdGl2ZTpub3QoW2NsYXNzKj1idG4tXSksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0LmFjdGl2ZVt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGJ1dHRvbi5hY3RpdmUsIC5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5zaG93ID4gYnV0dG9uLmRyb3Bkb3duLXRvZ2dsZSwgLnN1Ym1pdC1yb3cgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLnNob3cgPiBidXR0b24uZHJvcGRvd24tdG9nZ2xlOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuc2hvdyA+IGJ1dHRvbi5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2NWU2NDtcbiAgYm9yZGVyLWNvbG9yOiAjNTE1ODVlO1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1zZWNvbmRhcnk6Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1jaGVjazpjaGVja2VkICsgYnV0dG9uOmZvY3VzLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmNoZWNrZWQgKyBidXR0b246Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6Y2hlY2tlZCArIGJ1dHRvbjpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXNlY29uZGFyeTpmb2N1cywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWNoZWNrOmFjdGl2ZSArIGJ1dHRvbjpmb2N1cywgLnN1Ym1pdC1yb3cgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWNoZWNrOmFjdGl2ZSArIGlucHV0W3R5cGU9YnV0dG9uXTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tY2hlY2s6YWN0aXZlICsgYnV0dG9uOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6YWN0aXZlICsgYnV0dG9uOmZvY3VzLCAuYnRuLXNlY29uZGFyeTphY3RpdmU6Zm9jdXMsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYnV0dG9uOmFjdGl2ZTpmb2N1cywgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9YnV0dG9uXTphY3RpdmU6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b246YWN0aXZlOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1idXR0b25dOmFjdGl2ZTpmb2N1cywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgYnV0dG9uOmFjdGl2ZTpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuYWN0aXZlOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbi5hY3RpdmU6Zm9jdXMsIC5zdWJtaXQtcm93IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dC5hY3RpdmVbdHlwZT1idXR0b25dOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgYnV0dG9uLmFjdGl2ZTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0LmFjdGl2ZVt0eXBlPWJ1dHRvbl06Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGJ1dHRvbi5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5zaG93ID4gYnV0dG9uLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cywgLnN1Ym1pdC1yb3cgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1zdWJtaXRdOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1idXR0b25dOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLnNob3cgPiBidXR0b24uZHJvcGRvd24tdG9nZ2xlOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1idXR0b25dOmZvY3VzLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuc2hvdyA+IGJ1dHRvbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMwLCAxMzgsIDE0NSwgMC41KTtcbn1cbi5idG4tc2Vjb25kYXJ5OmRpc2FibGVkLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbjpkaXNhYmxlZCwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1idXR0b25dOmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgYnV0dG9uOmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1idXR0b25dOmRpc2FibGVkLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b246ZGlzYWJsZWQsIC5idG4tc2Vjb25kYXJ5LmRpc2FibGVkLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbi5kaXNhYmxlZCwgLnN1Ym1pdC1yb3cgaW5wdXQuZGlzYWJsZWRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgaW5wdXQuZGlzYWJsZWRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgYnV0dG9uLmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXQuZGlzYWJsZWRbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b24uZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuXG4uYnRuLXN1Y2Nlc3MsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xufVxuLmJ0bi1zdWNjZXNzOmhvdmVyLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuYWRkbGluazpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhLmFkZGxpbms6aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTczNDc7XG4gIGJvcmRlci1jb2xvcjogIzE0NmM0Mztcbn1cbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLXN1Y2Nlc3MsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazpmb2N1cyArIGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgLmJ0bi1zdWNjZXNzOmZvY3VzLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuYWRkbGluazpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhLmFkZGxpbms6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTczNDc7XG4gIGJvcmRlci1jb2xvcjogIzE0NmM0MztcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDYwLCAxNTMsIDExMCwgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tc3VjY2VzcywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXN1Y2Nlc3MsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazphY3RpdmUgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazphY3RpdmUgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuYWRkbGluazphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYS5hZGRsaW5rOmFjdGl2ZTpub3QoW2NsYXNzKj1idG4tXSksIC5idG4tc3VjY2Vzcy5hY3RpdmUsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYS5hY3RpdmUuYWRkbGluazpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhLmFjdGl2ZS5hZGRsaW5rOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5zaG93ID4gYS5kcm9wZG93bi10b2dnbGUuYWRkbGluazpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuc2hvdyA+IGEuZHJvcGRvd24tdG9nZ2xlLmFkZGxpbms6bm90KFtjbGFzcyo9YnRuLV0pIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDZjNDM7XG4gIGJvcmRlci1jb2xvcjogIzEzNjUzZjtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tc3VjY2Vzczpmb2N1cywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBhLmFkZGxpbms6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYS5hZGRsaW5rOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXN1Y2Nlc3M6Zm9jdXMsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazphY3RpdmUgKyBhLmFkZGxpbms6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazphY3RpdmUgKyBhLmFkZGxpbms6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlOmZvY3VzLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuYWRkbGluazphY3RpdmU6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYS5hZGRsaW5rOmFjdGl2ZTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIC5idG4tc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYS5hY3RpdmUuYWRkbGluazpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhLmFjdGl2ZS5hZGRsaW5rOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5zaG93ID4gYS5kcm9wZG93bi10b2dnbGUuYWRkbGluazpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuc2hvdyA+IGEuZHJvcGRvd24tdG9nZ2xlLmFkZGxpbms6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDYwLCAxNTMsIDExMCwgMC41KTtcbn1cbi5idG4tc3VjY2VzczpkaXNhYmxlZCwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhLmFkZGxpbms6ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYS5hZGRsaW5rOmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKSwgLmJ0bi1zdWNjZXNzLmRpc2FibGVkLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuZGlzYWJsZWQuYWRkbGluazpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhLmRpc2FibGVkLmFkZGxpbms6bm90KFtjbGFzcyo9YnRuLV0pIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTg3NTQ7XG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbn1cblxuLmJ0bi1pbmZvLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSkge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMDtcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwO1xufVxuLmJ0bi1pbmZvOmhvdmVyLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSkge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxZDJmMjtcbiAgYm9yZGVyLWNvbG9yOiAjMjVjZmYyO1xufVxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4taW5mbywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSksIC5idG4taW5mbzpmb2N1cywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMWQyZjI7XG4gIGJvcmRlci1jb2xvcjogIzI1Y2ZmMjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDExLCAxNzIsIDIwNCwgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4taW5mbywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGE6bm90KFtjbGFzcyo9YnRuLV0pLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4taW5mbywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmFjdGl2ZSArIGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazphY3RpdmUgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLmJ0bi1pbmZvOmFjdGl2ZSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOmFjdGl2ZTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOmFjdGl2ZTpub3QoW2NsYXNzKj1idG4tXSksIC5idG4taW5mby5hY3RpdmUsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYS5hY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYS5hY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLCAuc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGUsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLnNob3cgPiBhLmRyb3Bkb3duLXRvZ2dsZTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuc2hvdyA+IGEuZHJvcGRvd24tdG9nZ2xlOm5vdChbY2xhc3MqPWJ0bi1dKSB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2RkNWYzO1xuICBib3JkZXItY29sb3I6ICMyNWNmZjI7XG59XG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWluZm86Zm9jdXMsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBhOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWluZm86Zm9jdXMsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gLmJ0bi1jaGVjazphY3RpdmUgKyBhOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IC5idG4tY2hlY2s6YWN0aXZlICsgYTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksIC5idG4taW5mbzphY3RpdmU6Zm9jdXMsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTphY3RpdmU6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTphY3RpdmU6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAuYnRuLWluZm8uYWN0aXZlOmZvY3VzLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuYWN0aXZlOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuYWN0aXZlOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnNob3cgPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlOmZvY3VzLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5zaG93ID4gYS5kcm9wZG93bi10b2dnbGU6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLnNob3cgPiBhLmRyb3Bkb3duLXRvZ2dsZTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSkge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTEsIDE3MiwgMjA0LCAwLjUpO1xufVxuLmJ0bi1pbmZvOmRpc2FibGVkLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6ZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpkaXNhYmxlZDpub3QoW2NsYXNzKj1idG4tXSksIC5idG4taW5mby5kaXNhYmxlZCwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhLmRpc2FibGVkOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGEuZGlzYWJsZWQ6bm90KFtjbGFzcyo9YnRuLV0pIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7XG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMDtcbn1cblxuLmJ0bi13YXJuaW5nIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcbn1cbi5idG4td2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjYTJjO1xuICBib3JkZXItY29sb3I6ICNmZmM3MjA7XG59XG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi13YXJuaW5nLCAuYnRuLXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2EyYztcbiAgYm9yZGVyLWNvbG9yOiAjZmZjNzIwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjE3LCAxNjQsIDYsIDAuNSk7XG59XG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXdhcm5pbmcsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi13YXJuaW5nLCAuYnRuLXdhcm5pbmc6YWN0aXZlLCAuYnRuLXdhcm5pbmcuYWN0aXZlLCAuc2hvdyA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2QzOTtcbiAgYm9yZGVyLWNvbG9yOiAjZmZjNzIwO1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi13YXJuaW5nOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4td2FybmluZzpmb2N1cywgLmJ0bi13YXJuaW5nOmFjdGl2ZTpmb2N1cywgLmJ0bi13YXJuaW5nLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIxNywgMTY0LCA2LCAwLjUpO1xufVxuLmJ0bi13YXJuaW5nOmRpc2FibGVkLCAuYnRuLXdhcm5pbmcuZGlzYWJsZWQge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xufVxuXG4uYnRuLWRhbmdlciwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cbi5idG4tZGFuZ2VyOmhvdmVyLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JiMmQzYjtcbiAgYm9yZGVyLWNvbG9yOiAjYjAyYTM3O1xufVxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tZGFuZ2VyLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1zdWJtaXRdLCAuYnRuLWRhbmdlcjpmb2N1cywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiYjJkM2I7XG4gIGJvcmRlci1jb2xvcjogI2IwMmEzNztcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyNSwgODMsIDk3LCAwLjUpO1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1kYW5nZXIsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6Y2hlY2tlZCArIGlucHV0W3R5cGU9c3VibWl0XSwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhbmdlciwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1jaGVjazphY3RpdmUgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sIC5idG4tZGFuZ2VyOmFjdGl2ZSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSwgLmJ0bi1kYW5nZXIuYWN0aXZlLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdLCAuc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLnNob3cgPiBpbnB1dC5kcm9wZG93bi10b2dnbGVbdHlwZT1zdWJtaXRdIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMDJhMzc7XG4gIGJvcmRlci1jb2xvcjogI2E1MjgzNDtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tZGFuZ2VyOmZvY3VzLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1kYW5nZXI6Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tY2hlY2s6YWN0aXZlICsgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLCAuYnRuLWRhbmdlcjphY3RpdmU6Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmU6Zm9jdXMsIC5idG4tZGFuZ2VyLmFjdGl2ZTpmb2N1cywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXQuYWN0aXZlW3R5cGU9c3VibWl0XTpmb2N1cywgLnNob3cgPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGU6Zm9jdXMsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5zaG93ID4gaW5wdXQuZHJvcGRvd24tdG9nZ2xlW3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjUsIDgzLCA5NywgMC41KTtcbn1cbi5idG4tZGFuZ2VyOmRpc2FibGVkLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPXN1Ym1pdF06ZGlzYWJsZWQsIC5idG4tZGFuZ2VyLmRpc2FibGVkLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dC5kaXNhYmxlZFt0eXBlPXN1Ym1pdF0ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4uYnRuLWxpZ2h0IHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cbi5idG4tbGlnaHQ6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcbiAgYm9yZGVyLWNvbG9yOiAjZjlmYWZiO1xufVxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tbGlnaHQsIC5idG4tbGlnaHQ6Zm9jdXMge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcbiAgYm9yZGVyLWNvbG9yOiAjZjlmYWZiO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjExLCAyMTIsIDIxMywgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tbGlnaHQsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1saWdodCwgLmJ0bi1saWdodDphY3RpdmUsIC5idG4tbGlnaHQuYWN0aXZlLCAuc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWZhZmI7XG4gIGJvcmRlci1jb2xvcjogI2Y5ZmFmYjtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tbGlnaHQ6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1saWdodDpmb2N1cywgLmJ0bi1saWdodDphY3RpdmU6Zm9jdXMsIC5idG4tbGlnaHQuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIxMSwgMjEyLCAyMTMsIDAuNSk7XG59XG4uYnRuLWxpZ2h0OmRpc2FibGVkLCAuYnRuLWxpZ2h0LmRpc2FibGVkIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cblxuLmJ0bi1kYXJrIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcbn1cbi5idG4tZGFyazpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIzO1xuICBib3JkZXItY29sb3I6ICMxYTFlMjE7XG59XG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1kYXJrLCAuYnRuLWRhcms6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMztcbiAgYm9yZGVyLWNvbG9yOiAjMWExZTIxO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNjYsIDcwLCA3MywgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tZGFyaywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhcmssIC5idG4tZGFyazphY3RpdmUsIC5idG4tZGFyay5hY3RpdmUsIC5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWExZTIxO1xuICBib3JkZXItY29sb3I6ICMxOTFjMWY7XG59XG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWRhcms6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1kYXJrOmZvY3VzLCAuYnRuLWRhcms6YWN0aXZlOmZvY3VzLCAuYnRuLWRhcmsuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tZGFyay5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNjYsIDcwLCA3MywgMC41KTtcbn1cbi5idG4tZGFyazpkaXNhYmxlZCwgLmJ0bi1kYXJrLmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnkge1xuICBjb2xvcjogIzBkNmVmZDtcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xufVxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xufVxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1wcmltYXJ5LCAuYnRuLW91dGxpbmUtcHJpbWFyeTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuNSk7XG59XG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtcHJpbWFyeSwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtcHJpbWFyeSwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6YWN0aXZlLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5hY3RpdmUsIC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5LmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1zZWNvbmRhcnksIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1zZWNvbmRhcnksIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTphY3RpdmUsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYWN0aXZlLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRpc2FibGVkIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMTk4NzU0O1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG59XG4uYnRuLW91dGxpbmUtc3VjY2Vzczpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG59XG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsIC5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjUpO1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsIC5idG4tb3V0bGluZS1zdWNjZXNzOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuYWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUuc2hvdyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG59XG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkIHtcbiAgY29sb3I6ICMxOTg3NTQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtaW5mbyB7XG4gIGNvbG9yOiAjMGRjYWYwO1xuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XG59XG4uYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGRjYWYwO1xuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XG59XG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLWluZm8sIC5idG4tb3V0bGluZS1pbmZvOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAyMDIsIDI0MCwgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1pbmZvLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1pbmZvLCAuYnRuLW91dGxpbmUtaW5mbzphY3RpdmUsIC5idG4tb3V0bGluZS1pbmZvLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm8uZHJvcGRvd24tdG9nZ2xlLnNob3cge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMDtcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwO1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm8uYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMjAyLCAyNDAsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtaW5mbzpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWluZm8uZGlzYWJsZWQge1xuICBjb2xvcjogIzBkY2FmMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idG4tb3V0bGluZS13YXJuaW5nIHtcbiAgY29sb3I6ICNmZmMxMDc7XG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcbn1cbi5idG4tb3V0bGluZS13YXJuaW5nOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcbn1cbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7XG59XG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6YWN0aXZlLCAuYnRuLW91dGxpbmUtd2FybmluZy5hY3RpdmUsIC5idG4tb3V0bGluZS13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS13YXJuaW5nOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS13YXJuaW5nOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZzphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nLmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmYzEwNztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idG4tb3V0bGluZS1kYW5nZXIsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuZGVsZXRlbGluayB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG59XG4uYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRlbGV0ZWxpbms6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1kYW5nZXIsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWNoZWNrOmZvY3VzICsgLmRlbGV0ZWxpbmssIC5idG4tb3V0bGluZS1kYW5nZXI6Zm9jdXMsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuZGVsZXRlbGluazpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1kYW5nZXIsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuZGVsZXRlbGluaywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtZGFuZ2VyLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1jaGVjazphY3RpdmUgKyAuZGVsZXRlbGluaywgLmJ0bi1vdXRsaW5lLWRhbmdlcjphY3RpdmUsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuZGVsZXRlbGluazphY3RpdmUsIC5idG4tb3V0bGluZS1kYW5nZXIuYWN0aXZlLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmFjdGl2ZS5kZWxldGVsaW5rLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZS5zaG93LCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRyb3Bkb3duLXRvZ2dsZS5zaG93LmRlbGV0ZWxpbmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tY2hlY2s6Y2hlY2tlZCArIC5kZWxldGVsaW5rOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1kYW5nZXI6Zm9jdXMsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5kZWxldGVsaW5rOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyOmFjdGl2ZTpmb2N1cywgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5kZWxldGVsaW5rOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlci5hY3RpdmU6Zm9jdXMsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYWN0aXZlLmRlbGV0ZWxpbms6Zm9jdXMsIC5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuZHJvcGRvd24tdG9nZ2xlLnNob3cuZGVsZXRlbGluazpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXI6ZGlzYWJsZWQsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuZGVsZXRlbGluazpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhbmdlci5kaXNhYmxlZCwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5kaXNhYmxlZC5kZWxldGVsaW5rIHtcbiAgY29sb3I6ICNkYzM1NDU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtbGlnaHQge1xuICBjb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuLmJ0bi1vdXRsaW5lLWxpZ2h0OmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtbGlnaHQsIC5idG4tb3V0bGluZS1saWdodDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWxpZ2h0LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1saWdodCwgLmJ0bi1vdXRsaW5lLWxpZ2h0OmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWxpZ2h0LmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1saWdodDpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodDphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWxpZ2h0OmRpc2FibGVkLCAuYnRuLW91dGxpbmUtbGlnaHQuZGlzYWJsZWQge1xuICBjb2xvcjogI2Y4ZjlmYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idG4tb3V0bGluZS1kYXJrIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcbn1cbi5idG4tb3V0bGluZS1kYXJrOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcbn1cbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtZGFyaywgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzMsIDM3LCA0MSwgMC41KTtcbn1cbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1kYXJrLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1kYXJrLCAuYnRuLW91dGxpbmUtZGFyazphY3RpdmUsIC5idG4tb3V0bGluZS1kYXJrLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xufVxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMsIC5idG4tb3V0bGluZS1kYXJrOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcmsuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyay5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMywgMzcsIDQxLCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWRhcms6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYXJrLmRpc2FibGVkIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzBkNjRhMjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnRuLWxpbms6aG92ZXIge1xuICBjb2xvcjogIzBhNTA4Mjtcbn1cbi5idG4tbGluazpkaXNhYmxlZCwgLmJ0bi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5idG4tbGcsIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgYnV0dG9uLCAuYnRuLWdyb3VwLWxnID4gLmJ0biwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC1sZyA+IGJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC1sZyA+IGlucHV0W3R5cGU9c3VibWl0XSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLWxnID4gYTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLWxnID4gYTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtbGcgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC1sZyA+IC5kZWxldGVsaW5rIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xufVxuXG4uYnRuLXNtLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSksIC5idG4tZ3JvdXAtc20gPiAuYnRuLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC1zbSA+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXNtID4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC1zbSA+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXNtID4gaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXNtID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC1zbSA+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtc20gPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC1zbSA+IC5kZWxldGVsaW5rLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXNtID4gaW5wdXRbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXNtID4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXNtID4gYnV0dG9uIHtcbiAgcGFkZGluZzogMC4zNXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG59XG5cbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDEwcmVtO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAwLjEyNXJlbTtcbn1cblxuLmRyb3Bkb3duLW1lbnUtc3RhcnQge1xuICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcbn1cbi5kcm9wZG93bi1tZW51LXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG4uZHJvcGRvd24tbWVudS1lbmQge1xuICAtLWJzLXBvc2l0aW9uOiBlbmQ7XG59XG4uZHJvcGRvd24tbWVudS1lbmRbZGF0YS1icy1wb3BwZXJdIHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZHJvcGRvd24tbWVudS1zbS1zdGFydCB7XG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG4gIH1cbiAgLmRyb3Bkb3duLW1lbnUtc20tc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUtc20tZW5kIHtcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XG4gIH1cbiAgLmRyb3Bkb3duLW1lbnUtc20tZW5kW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5kcm9wZG93bi1tZW51LW1kLXN0YXJ0IHtcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcbiAgfVxuICAuZHJvcGRvd24tbWVudS1tZC1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1tZC1lbmQge1xuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcbiAgfVxuICAuZHJvcGRvd24tbWVudS1tZC1lbmRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUtbGctc3RhcnQge1xuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xuICB9XG4gIC5kcm9wZG93bi1tZW51LWxnLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LWxnLWVuZCB7XG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xuICB9XG4gIC5kcm9wZG93bi1tZW51LWxnLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUteGwtc3RhcnQge1xuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xuICB9XG4gIC5kcm9wZG93bi1tZW51LXhsLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LXhsLWVuZCB7XG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xuICB9XG4gIC5kcm9wZG93bi1tZW51LXhsLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUteHhsLXN0YXJ0IHtcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcbiAgfVxuICAuZHJvcGRvd24tbWVudS14eGwtc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUteHhsLWVuZCB7XG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xuICB9XG4gIC5kcm9wZG93bi1tZW51LXh4bC1lbmRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG4uZHJvcHVwIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcbn1cbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmRyb3BlbmQgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgdG9wOiAwO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtO1xufVxuLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZDtcbn1cbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIHZlcnRpY2FsLWFsaWduOiAwO1xufVxuXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XG59XG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjU1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSB7XG4gIHZlcnRpY2FsLWFsaWduOiAwO1xufVxuXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1cmVtIDFyZW07XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcbiAgY29sb3I6ICMxZTIxMjU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG59XG4uZHJvcGRvd24taXRlbS5hY3RpdmUsIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XG59XG4uZHJvcGRvd24taXRlbS5kaXNhYmxlZCwgLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWQge1xuICBjb2xvcjogI2FkYjViZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC45MjlyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5kcm9wZG93bi1tZW51LWRhcmsge1xuICBjb2xvcjogI2RlZTJlNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbSB7XG4gIGNvbG9yOiAjZGVlMmU2O1xufVxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTpob3ZlciwgLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbS5hY3RpdmUsIC5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XG59XG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcbiAgY29sb3I6ICNhZGI1YmQ7XG59XG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1kaXZpZGVyIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgY29sb3I6ICNkZWUyZTY7XG59XG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1oZWFkZXIge1xuICBjb2xvcjogI2FkYjViZDtcbn1cblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLmJ0bi1ncm91cCA+IC5idG4sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAgPiBidXR0b24sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cCA+IC5kZWxldGVsaW5rLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gYnV0dG9uLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4sXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSxcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbixcbiNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSksXG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluayxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl0sXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0biwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGlucHV0W3R5cGU9c3VibWl0XSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuZGVsZXRlbGluaywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGJ1dHRvbixcbi5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9c3VibWl0XSxcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Zm9jdXMgKyBidXR0b24sXG4jY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sXG5ib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1zdWJtaXRdLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpmb2N1cyArIGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssXG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSksXG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Zm9jdXMgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuZGVsZXRlbGluayxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1idXR0b25dLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbixcbi5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAgPiBidXR0b246aG92ZXIsXG4jY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpob3ZlcixcbmJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpob3ZlcixcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IGEuYWRkbGluazpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSksXG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiBhOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYS5hZGRsaW5rOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYTpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGJ1dHRvbjpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cCA+IC5kZWxldGVsaW5rOmhvdmVyLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9YnV0dG9uXTpob3ZlcixcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gYnV0dG9uOmhvdmVyLFxuLmJ0bi1ncm91cCA+IC5idG46Zm9jdXMsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyxcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cCA+IGJ1dHRvbjpmb2N1cyxcbiNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYS5hZGRsaW5rOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IGE6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiBhLmFkZGxpbms6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiBhOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9YnV0dG9uXTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gYnV0dG9uOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwID4gLmRlbGV0ZWxpbms6Zm9jdXMsXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiBidXR0b246Zm9jdXMsXG4uYnRuLWdyb3VwID4gLmJ0bjphY3RpdmUsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAgPiBidXR0b246YWN0aXZlLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IGEuYWRkbGluazphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiBhLmFkZGxpbms6YWN0aXZlOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9YnV0dG9uXTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGJ1dHRvbjphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAgPiAuZGVsZXRlbGluazphY3RpdmUsXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1idXR0b25dOmFjdGl2ZSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IGJ1dHRvbjphY3RpdmUsXG4uYnRuLWdyb3VwID4gLmJ0bi5hY3RpdmUsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cCA+IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF0sXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAgPiBidXR0b24uYWN0aXZlLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAgPiBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gaW5wdXQuYWN0aXZlW3R5cGU9c3VibWl0XSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IGEuYWN0aXZlLmFkZGxpbms6bm90KFtjbGFzcyo9YnRuLV0pLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYS5hY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiBhLmFjdGl2ZS5hZGRsaW5rOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYS5hY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0LmFjdGl2ZVt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGJ1dHRvbi5hY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAgPiAuYWN0aXZlLmRlbGV0ZWxpbmssXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gaW5wdXQuYWN0aXZlW3R5cGU9YnV0dG9uXSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IGJ1dHRvbi5hY3RpdmUsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpjaGVja2VkICsgaW5wdXRbdHlwZT1zdWJtaXRdLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYnV0dG9uLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sXG5ib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpjaGVja2VkICsgYTpub3QoW2NsYXNzKj1idG4tXSksXG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssXG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGE6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpjaGVja2VkICsgaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuZGVsZXRlbGluayxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyBpbnB1dFt0eXBlPWJ1dHRvbl0sXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpjaGVja2VkICsgaW5wdXRbdHlwZT1zdWJtaXRdLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIGJ1dHRvbixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9c3VibWl0XSxcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Zm9jdXMgKyBidXR0b24sXG4jY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sXG5ib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1zdWJtaXRdLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpmb2N1cyArIGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssXG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSksXG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Zm9jdXMgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmZvY3VzICsgYTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpmb2N1cyArIGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuZGVsZXRlbGluayxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmZvY3VzICsgaW5wdXRbdHlwZT1idXR0b25dLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Zm9jdXMgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpmb2N1cyArIGJ1dHRvbixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmhvdmVyLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246aG92ZXIsXG4jY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpob3ZlcixcbmJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpob3ZlcixcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGEuYWRkbGluazpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSksXG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYS5hZGRsaW5rOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXI6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpob3Zlcjpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5kZWxldGVsaW5rOmhvdmVyLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXTpob3ZlcixcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uOmhvdmVyLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zm9jdXMsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyxcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpmb2N1cyxcbiNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYS5hZGRsaW5rOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhLmFkZGxpbms6Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXTpmb2N1czpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uOmZvY3VzOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbms6Zm9jdXMsXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246Zm9jdXMsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjphY3RpdmUsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246YWN0aXZlLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGEuYWRkbGluazphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhLmFkZGxpbms6YWN0aXZlOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXTphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjphY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluazphY3RpdmUsXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOmFjdGl2ZSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjphY3RpdmUsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi5hY3RpdmUsXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF0sXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24uYWN0aXZlLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXQuYWN0aXZlW3R5cGU9c3VibWl0XSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGEuYWN0aXZlLmFkZGxpbms6bm90KFtjbGFzcyo9YnRuLV0pLFxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYS5hY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhLmFjdGl2ZS5hZGRsaW5rOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYS5hY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0LmFjdGl2ZVt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0LmFjdGl2ZVt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbi5hY3RpdmU6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYWN0aXZlLmRlbGV0ZWxpbmssXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXQuYWN0aXZlW3R5cGU9YnV0dG9uXSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dC5hY3RpdmVbdHlwZT1zdWJtaXRdLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbi5hY3RpdmUge1xuICB6LWluZGV4OiAxO1xufVxuXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXAge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdCg6Zmlyc3QtY2hpbGQpLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAgPiBidXR0b246bm90KDpmaXJzdC1jaGlsZCksICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdCg6Zmlyc3QtY2hpbGQpLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpmaXJzdC1jaGlsZCksICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IGE6bm90KDpmaXJzdC1jaGlsZCk6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IGE6bm90KDpmaXJzdC1jaGlsZCk6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoOmZpcnN0LWNoaWxkKTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiBidXR0b246bm90KDpmaXJzdC1jaGlsZCk6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cCA+IC5kZWxldGVsaW5rOm5vdCg6Zmlyc3QtY2hpbGQpLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdCg6Zmlyc3QtY2hpbGQpLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdCg6Zmlyc3QtY2hpbGQpLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwID4gYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiBhOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAgPiBhOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAgPiAuZGVsZXRlbGluazpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IGJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBidXR0b24sXG4jY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IGlucHV0W3R5cGU9c3VibWl0XSxcbmJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IGlucHV0W3R5cGU9c3VibWl0XSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scy5idG4tZ3JvdXAgPiBsaS5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLFxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMuYnRuLWdyb3VwID4gbGkuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmRlbGV0ZWxpbmssXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gaW5wdXRbdHlwZT1idXR0b25dLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IGlucHV0W3R5cGU9c3VibWl0XSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBidXR0b24ge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwID4gLmJ0bjpudGgtY2hpbGQobiszKSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bnRoLWNoaWxkKG4rMyksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cCA+IGJ1dHRvbjpudGgtY2hpbGQobiszKSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bnRoLWNoaWxkKG4rMyksIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGlucHV0W3R5cGU9c3VibWl0XTpudGgtY2hpbGQobiszKSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYTpudGgtY2hpbGQobiszKTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gYTpudGgtY2hpbGQobiszKTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bnRoLWNoaWxkKG4rMyk6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gaW5wdXRbdHlwZT1idXR0b25dOm50aC1jaGlsZChuKzMpOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IGJ1dHRvbjpudGgtY2hpbGQobiszKTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwID4gLmRlbGV0ZWxpbms6bnRoLWNoaWxkKG4rMyksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bnRoLWNoaWxkKG4rMyksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bnRoLWNoaWxkKG4rMyksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiBidXR0b246bnRoLWNoaWxkKG4rMyksXG4uYnRuLWdyb3VwID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cCA+IDpub3QoLmJ0bi1jaGVjaykgKyBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAgPiA6bm90KC5idG4tY2hlY2spICsgYnV0dG9uLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAgPiA6bm90KC5idG4tY2hlY2spICsgaW5wdXRbdHlwZT1zdWJtaXRdLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gOm5vdCguYnRuLWNoZWNrKSArIGlucHV0W3R5cGU9c3VibWl0XSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cCA+IDpub3QoLmJ0bi1jaGVjaykgKyBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwID4gOm5vdCguYnRuLWNoZWNrKSArIGE6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IDpub3QoLmJ0bi1jaGVjaykgKyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IDpub3QoLmJ0bi1jaGVjaykgKyBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IDpub3QoLmJ0bi1jaGVjaykgKyBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAgPiA6bm90KC5idG4tY2hlY2spICsgLmRlbGV0ZWxpbmssXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gOm5vdCguYnRuLWNoZWNrKSArIGlucHV0W3R5cGU9YnV0dG9uXSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiA6bm90KC5idG4tY2hlY2spICsgaW5wdXRbdHlwZT1zdWJtaXRdLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IDpub3QoLmJ0bi1jaGVjaykgKyBidXR0b24sXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gYnV0dG9uLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IGlucHV0W3R5cGU9c3VibWl0XSxcbiN0b29sYmFyID4gLm9iamVjdC10b29scy5idG4tZ3JvdXAgPiBsaS5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzLmJ0bi1ncm91cCA+IGxpLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmRlbGV0ZWxpbmssXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IGlucHV0W3R5cGU9YnV0dG9uXSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBidXR0b24ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC41NjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNTYyNXJlbTtcbn1cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcHVwIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjpiZWZvcmUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1zbSA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC1zbSA+IGlucHV0W3R5cGU9c3VibWl0XSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC1zbSA+IGJ1dHRvbiArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXNtID4gaW5wdXRbdHlwZT1zdWJtaXRdICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXNtID4gaW5wdXRbdHlwZT1zdWJtaXRdICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC1zbSA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSkgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXNtID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtc20gPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtc20gPiAuZGVsZXRlbGluayArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtc20gPiBpbnB1dFt0eXBlPWJ1dHRvbl0gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXNtID4gaW5wdXRbdHlwZT1zdWJtaXRdICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC1zbSA+IGJ1dHRvbiArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjU2MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41NjI1cmVtO1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF0gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5zdWJtaXQtcm93IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl0gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPXN1Ym1pdF0gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b24gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuYnRuLWdyb3VwLWxnID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLWxnID4gaW5wdXRbdHlwZT1zdWJtaXRdICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLWxnID4gYnV0dG9uICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtbGcgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLWxnID4gYTpub3QoW2NsYXNzKj1idG4tXSkgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLWxnID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC1sZyA+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC1sZyA+IC5kZWxldGVsaW5rICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC1sZyA+IGlucHV0W3R5cGU9YnV0dG9uXSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLWxnID4gYnV0dG9uICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluaywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpmaXJzdC1jaGlsZCksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpmaXJzdC1jaGlsZCksIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoOmZpcnN0LWNoaWxkKSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoOmZpcnN0LWNoaWxkKTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoOmZpcnN0LWNoaWxkKTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpmaXJzdC1jaGlsZCk6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbms6bm90KDpmaXJzdC1jaGlsZCksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KDpmaXJzdC1jaGlsZCksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpmaXJzdC1jaGlsZCksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbms6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gYnV0dG9uLFxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sXG5ib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMuYnRuLWdyb3VwLXZlcnRpY2FsID4gbGkuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGxpLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gYTpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSxcbi5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksXG4uc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5kZWxldGVsaW5rLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IGlucHV0W3R5cGU9YnV0dG9uXSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gYnV0dG9uIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB+IC5idG4sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gLmJ0biwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gLmJ0biwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGJ1dHRvbiwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBidXR0b24sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiAuYnRuLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGJ1dHRvbiwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IC5idG4sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGJ1dHRvbiwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93ICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmsgfiAuYnRuLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gLmJ0biwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYTpub3QoW2NsYXNzKj1idG4tXSksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gYTpub3QoW2NsYXNzKj1idG4tXSksICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gLmJ0biwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGJ1dHRvbiwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gYTpub3QoW2NsYXNzKj1idG4tXSksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gYTpub3QoW2NsYXNzKj1idG4tXSksICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93ICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSkgfiAuYnRuLCAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XSwgLnN1Ym1pdC1yb3cgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGJ1dHRvbiwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGJ1dHRvbiwgLnN1Ym1pdC1yb3cgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIC5zdWJtaXQtcm93ICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSkgfiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLCAuc3VibWl0LXJvdyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pIH4gYTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93ICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSB+IC5idG4sIC5zdWJtaXQtcm93ICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pIH4gYnV0dG9uLCAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XSwgLnN1Ym1pdC1yb3cgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssIC5zdWJtaXQtcm93ICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSkgfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pIH4gYTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pIH4gLmJ0biwgLnN1Ym1pdC1yb3cgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIC5zdWJtaXQtcm93ICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgfiBidXR0b24sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgfiBidXR0b24sIC5zdWJtaXQtcm93ICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pIH4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgLnN1Ym1pdC1yb3cgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4gfiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93ICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmsgfiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93ICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1zdWJtaXRdOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93ICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayB+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93ICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pIH4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93ICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93ICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rIH4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSkgfiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pIH4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluayB+IC5idG4sIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5kZWxldGVsaW5rIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluayB+IGlucHV0W3R5cGU9c3VibWl0XSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94ICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5kZWxldGVsaW5rIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbmsgfiBidXR0b24sIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5kZWxldGVsaW5rIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluayB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5kZWxldGVsaW5rIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbmsgfiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbmsgfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94ICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbmsgfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluayB+IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbmsgfiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5kZWxldGVsaW5rIH4gYnV0dG9uOm5vdChbY2xhc3MqPWJ0bi1dKSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gLmRlbGV0ZWxpbmssIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IC5kZWxldGVsaW5rLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiAuZGVsZXRlbGluaywgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94ICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IC5kZWxldGVsaW5rLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gLmRlbGV0ZWxpbmssIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IC5kZWxldGVsaW5rLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiAuZGVsZXRlbGluaywgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IC5kZWxldGVsaW5rLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayB+IC5kZWxldGVsaW5rLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiAuZGVsZXRlbGluaywgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94ICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiAuZGVsZXRlbGluaywgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pIH4gLmRlbGV0ZWxpbmssIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSB+IC5kZWxldGVsaW5rLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgfiAuZGVsZXRlbGluaywgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluayB+IC5kZWxldGVsaW5rLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gLmJ0biwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl0gfiBidXR0b24sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXSB+IGJ1dHRvbiwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluaywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gYTpub3QoW2NsYXNzKj1idG4tXSksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gYTpub3QoW2NsYXNzKj1idG4tXSksIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gLmRlbGV0ZWxpbmssIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gLmRlbGV0ZWxpbmssIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiAuYnRuLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGJ1dHRvbiwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYnV0dG9uLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBhOm5vdChbY2xhc3MqPWJ0bi1dKSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiAuZGVsZXRlbGluaywgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiAuZGVsZXRlbGluaywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IC5idG4sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBidXR0b24sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmssIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IC5kZWxldGVsaW5rLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IC5kZWxldGVsaW5rLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB+IGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPWJ1dHRvbl0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBpbnB1dFt0eXBlPWJ1dHRvbl0sICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPWJ1dHRvbl0sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayB+IGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkuYnRuLWdyb3VwLXZlcnRpY2FsID4gYTpub3QoW2NsYXNzKj1idG4tXSkgfiBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbmsgfiBpbnB1dFt0eXBlPWJ1dHRvbl0sIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmRlbGV0ZWxpbmsgfiBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPWJ1dHRvbl0gfiBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBpbnB1dFt0eXBlPWJ1dHRvbl0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5sb2dpbiAuc3VibWl0LXJvdyBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rIH4gaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaS5idG4tZ3JvdXAtdmVydGljYWwgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluayB+IGlucHV0W3R5cGU9c3VibWl0XSwgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuZGVsZXRlbGluayB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9YnV0dG9uXSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGJ1dHRvbiB+IGlucHV0W3R5cGU9c3VibWl0XSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4gfiBidXR0b24sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGJ1dHRvbiwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBidXR0b24gfiBidXR0b24sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYnV0dG9uLCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGlucHV0W3R5cGU9c3VibWl0XSB+IGJ1dHRvbiwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgYm9keS5sb2dpbiAuc3VibWl0LXJvdyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYnV0dG9uLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiBpbnB1dFt0eXBlPXN1Ym1pdF0gfiBidXR0b24sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmsgfiBidXR0b24sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gYnV0dG9uLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGE6bm90KFtjbGFzcyo9YnRuLV0pIH4gYnV0dG9uLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5kZWxldGVsaW5rIH4gYnV0dG9uLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5kZWxldGVsaW5rIH4gYnV0dG9uLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1idXR0b25dIH4gYnV0dG9uLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gaW5wdXRbdHlwZT1zdWJtaXRdIH4gYnV0dG9uLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gYnV0dG9uIH4gYnV0dG9uLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IGJ1dHRvbixcbiNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IGlucHV0W3R5cGU9c3VibWl0XSxcbmJvZHkubG9naW4gLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMuYnRuLWdyb3VwLXZlcnRpY2FsID4gbGkuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayxcbiN0b29sYmFyID4gLm9iamVjdC10b29scy5idG4tZ3JvdXAtdmVydGljYWwgPiBsaS5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSxcbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IGxpLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBpbnB1dFt0eXBlPWJ1dHRvbl06bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBidXR0b246bm90KFtjbGFzcyo9YnRuLV0pLFxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmRlbGV0ZWxpbmssXG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IGlucHV0W3R5cGU9YnV0dG9uXSxcbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiBidXR0b24ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGNvbG9yOiAjMGQ2NGEyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAubmF2LWxpbmsge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5uYXYtbGluazpob3ZlciwgLm5hdi1saW5rOmZvY3VzIHtcbiAgY29sb3I6ICMwYTUwODI7XG59XG4ubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG59XG4ubmF2LXRhYnMgLm5hdi1saW5rIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xufVxuLm5hdi10YWJzIC5uYXYtbGluazpob3ZlciwgLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2U5ZWNlZiAjZTllY2VmICNkZWUyZTY7XG4gIGlzb2xhdGlvbjogaXNvbGF0ZTtcbn1cbi5uYXYtdGFicyAubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbi5uYXYtdGFicyAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2ICNkZWUyZTYgI2YxZjFmMTtcbn1cbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4ubmF2LXBpbGxzIC5uYXYtbGluayB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSxcbi5uYXYtcGlsbHMgLnNob3cgPiAubmF2LWxpbmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcbn1cblxuLm5hdi1maWxsID4gLm5hdi1saW5rLFxuLm5hdi1maWxsIC5uYXYtaXRlbSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5uYXYtanVzdGlmaWVkID4gLm5hdi1saW5rLFxuLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIHtcbiAgZmxleC1iYXNpczogMDtcbiAgZmxleC1ncm93OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5uYXYtZmlsbCAubmF2LWl0ZW0gLm5hdi1saW5rLFxuLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udGFiLWNvbnRlbnQgPiAudGFiLXBhbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnRhYi1jb250ZW50ID4gLmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cbi5uYXZiYXIgPiAuY29udGFpbmVyLFxuLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXIgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhciA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyID4gLmNvbnRhaW5lci14bCxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXh4bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLm5hdmJhci1icmFuZCB7XG4gIHBhZGRpbmctdG9wOiAwLjMxMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjMxMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuLm5hdmJhci10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5uYXZiYXItdG9nZ2xlcjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5uYXZiYXItdG9nZ2xlcjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbTtcbn1cblxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IHZhcigtLWJzLXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtc20ge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5vZmZjYW52YXMge1xuICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5vZmZjYW52YXMtdG9wLFxuLm5hdmJhci1leHBhbmQtc20gLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm9mZmNhbnZhcy1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2YmFyLWV4cGFuZC1tZCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm9mZmNhbnZhcyB7XG4gICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm9mZmNhbnZhcy10b3AsXG4ubmF2YmFyLWV4cGFuZC1tZCAub2ZmY2FudmFzLWJvdHRvbSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAub2ZmY2FudmFzLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLWxnIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAub2ZmY2FudmFzIHtcbiAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAub2ZmY2FudmFzLXRvcCxcbi5uYXZiYXItZXhwYW5kLWxnIC5vZmZjYW52YXMtYm90dG9tIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5vZmZjYW52YXMtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAub2ZmY2FudmFzIHtcbiAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAub2ZmY2FudmFzLXRvcCxcbi5uYXZiYXItZXhwYW5kLXhsIC5vZmZjYW52YXMtYm90dG9tIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5vZmZjYW52YXMtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXh4bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteHhsIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXh4bCAub2ZmY2FudmFzIHtcbiAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhcy10b3AsXG4ubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteHhsIC5vZmZjYW52YXMtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG59XG4ubmF2YmFyLWV4cGFuZCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2Uge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm5hdmJhci1leHBhbmQgLm9mZmNhbnZhcy1oZWFkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm5hdmJhci1leHBhbmQgLm9mZmNhbnZhcyB7XG4gIHBvc2l0aW9uOiBpbmhlcml0O1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuLm5hdmJhci1leHBhbmQgLm9mZmNhbnZhcy10b3AsXG4ubmF2YmFyLWV4cGFuZCAub2ZmY2FudmFzLWJvdHRvbSB7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cbi5uYXZiYXItZXhwYW5kIC5vZmZjYW52YXMtYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NSk7XG59XG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuc2hvdyA+IC5uYXYtbGluayxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MCwgMCwgMCwgMC41NSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIik7XG59XG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYSxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6aG92ZXIsXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MjU1LCAyNTUsIDI1NSwgMC41NSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIik7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGEsXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6aG92ZXIsXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmNhcmQgPiBociB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uY2FyZCA+IC5saXN0LWdyb3VwIHtcbiAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcbn1cbi5jYXJkID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cbi5jYXJkID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuLmNhcmQgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbi5jYXJkID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4uY2FyZC1ib2R5IHtcbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsgKyAuY2FyZC1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVkNjQ3ODtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpIDAgMDtcbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWQ2NDc4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uY2FyZC1mb290ZXI6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC41cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cbi5jYXJkLWhlYWRlci10YWJzIC5uYXYtbGluay5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xufVxuXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkICsgLmNhcmQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaGVhZGVyIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbSxcbi5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxufVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjMGQ2NGEyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucGFnZS1saW5rIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4ucGFnZS1saW5rOmhvdmVyIHtcbiAgei1pbmRleDogMjtcbiAgY29sb3I6ICMwYTUwODI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cbi5wYWdlLWxpbms6Zm9jdXMge1xuICB6LWluZGV4OiAzO1xuICBjb2xvcjogIzBhNTA4MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XG59XG5cbi5wYWdlLWl0ZW06bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7XG4gIHotaW5kZXg6IDM7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XG59XG4ucGFnZS1pdGVtLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG59XG5cbi5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG59XG4ucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDEuMTQzcmVtO1xufVxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zcmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjNyZW07XG59XG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjNyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjNyZW07XG59XG5cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWxpbmsge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbn1cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMnJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4ycmVtO1xufVxuLnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xufVxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjY1ZW07XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmJhZGdlOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmJ0biAuYmFkZ2UsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF0gLmJhZGdlLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbiAuYmFkZ2UsICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF0gLmJhZGdlLCBib2R5LmxvZ2luIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XSAuYmFkZ2UsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSkgLmJhZGdlLCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSkgLmJhZGdlLCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KFtjbGFzcyo9YnRuLV0pIC5iYWRnZSwgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1idXR0b25dOm5vdChbY2xhc3MqPWJ0bi1dKSAuYmFkZ2UsIC5zdWJtaXQtcm93IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSkgLmJhZGdlLCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggLmRlbGV0ZWxpbmsgLmJhZGdlLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPWJ1dHRvbl0gLmJhZGdlLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPXN1Ym1pdF0gLmJhZGdlLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBidXR0b24gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi5hbGVydCwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAsIC5tZXNzYWdlbGlzdCBsaSwgLmVycm9ybm90ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmFsZXJ0LWhlYWRpbmcge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xufVxuLmFsZXJ0LWRpc21pc3NpYmxlIC5idG4tY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbn1cblxuLmFsZXJ0LXByaW1hcnkge1xuICBjb2xvcjogIzA4NDI5ODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZTJmZjtcbiAgYm9yZGVyLWNvbG9yOiAjYjZkNGZlO1xufVxuLmFsZXJ0LXByaW1hcnkgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogIzA2MzU3YTtcbn1cblxuLmFsZXJ0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjNDE0NjRiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlM2U1O1xuICBib3JkZXItY29sb3I6ICNkM2Q2ZDg7XG59XG4uYWxlcnQtc2Vjb25kYXJ5IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMzNDM4M2M7XG59XG5cbi5hbGVydC1zdWNjZXNzLCAubWVzc2FnZWxpc3QgbGkuc3VjY2VzcyB7XG4gIGNvbG9yOiAjMGY1MTMyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlN2RkO1xuICBib3JkZXItY29sb3I6ICNiYWRiY2M7XG59XG4uYWxlcnQtc3VjY2VzcyAuYWxlcnQtbGluaywgLm1lc3NhZ2VsaXN0IGxpLnN1Y2Nlc3MgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogIzBjNDEyODtcbn1cblxuLmFsZXJ0LWluZm8sIC5tZXNzYWdlbGlzdCBsaS5pbmZvIHtcbiAgY29sb3I6ICMwNTUxNjA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmY0ZmM7XG4gIGJvcmRlci1jb2xvcjogI2I2ZWZmYjtcbn1cbi5hbGVydC1pbmZvIC5hbGVydC1saW5rLCAubWVzc2FnZWxpc3QgbGkuaW5mbyAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMDQ0MTRkO1xufVxuXG4uYWxlcnQtd2FybmluZywgLm1lc3NhZ2VsaXN0IGxpLndhcm5pbmcge1xuICBjb2xvcjogIzY2NGQwMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNjZDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZlY2I1O1xufVxuLmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWxpbmssIC5tZXNzYWdlbGlzdCBsaS53YXJuaW5nIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM1MjNlMDI7XG59XG5cbi5hbGVydC1kYW5nZXIsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwLCAubWVzc2FnZWxpc3QgbGkuZGFuZ2VyLCAubWVzc2FnZWxpc3QgbGkuZXJyb3IsIC5lcnJvcm5vdGUge1xuICBjb2xvcjogIzg0MjAyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjVjMmM3O1xufVxuLmFsZXJ0LWRhbmdlciAuYWxlcnQtbGluaywgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmFsZXJ0LWxpbmssIC5tZXNzYWdlbGlzdCBsaS5kYW5nZXIgLmFsZXJ0LWxpbmssIC5tZXNzYWdlbGlzdCBsaS5lcnJvciAuYWxlcnQtbGluaywgLmVycm9ybm90ZSAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjNmExYTIxO1xufVxuXG4uYWxlcnQtbGlnaHQge1xuICBjb2xvcjogIzYzNjQ2NDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyLWNvbG9yOiAjZmRmZGZlO1xufVxuLmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM0ZjUwNTA7XG59XG5cbi5hbGVydC1kYXJrIHtcbiAgY29sb3I6ICMxNDE2MTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2QzZDQ7XG4gIGJvcmRlci1jb2xvcjogI2JjYmViZjtcbn1cbi5hbGVydC1kYXJrIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMxMDEyMTQ7XG59XG5cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAxcmVtO1xuICB9XG59XG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDFyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucHJvZ3Jlc3MtYmFyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMXJlbTtcbn1cblxuLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gIGFuaW1hdGlvbjogMXMgbGluZWFyIGluZmluaXRlIHByb2dyZXNzLWJhci1zdHJpcGVzO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbi5mYWRlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZmFkZSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmZhZGU6bm90KC5zaG93KSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jb2xsYXBzZTpub3QoLnNob3cpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbGxhcHNpbmcge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNvbGxhcHNpbmcge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jb2xsYXBzaW5nLmNvbGxhcHNlLWhvcml6b250YWwge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjM1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNvbGxhcHNpbmcuY29sbGFwc2UtaG9yaXpvbnRhbCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uYnRuLWNsb3NlIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC4yNWVtO1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMDAwJyUzZSUzY3BhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAxMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMTExLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwMTAtMS40MTR6Jy8lM2UlM2Mvc3ZnJTNlXCIpIGNlbnRlci8xZW0gYXV0byBuby1yZXBlYXQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgb3BhY2l0eTogMC41O1xufVxuLmJ0bi1jbG9zZTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG9wYWNpdHk6IDAuNzU7XG59XG4uYnRuLWNsb3NlOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XG4gIG9wYWNpdHk6IDE7XG59XG4uYnRuLWNsb3NlOmRpc2FibGVkLCAuYnRuLWNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBvcGFjaXR5OiAwLjI1O1xufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgZmlsdGVyOiBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSk7XG59XG5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDU1O1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG91dGxpbmU6IDA7XG59XG5cbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAuNXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MHB4KTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4ubW9kYWwubW9kYWwtc3RhdGljIC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xufVxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtYm9keSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbn1cblxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG4gIG91dGxpbmU6IDA7XG59XG5cbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDUwO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG4ubW9kYWwtYmFja2Ryb3AuZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG59XG4ubW9kYWwtYmFja2Ryb3Auc2hvdyB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbn1cbi5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XG4gIG1hcmdpbjogLTAuNXJlbSAtMC41cmVtIC0wLjVyZW0gYXV0bztcbn1cblxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbn1cbi5tb2RhbC1mb290ZXIgPiAqIHtcbiAgbWFyZ2luOiAwLjI1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW46IDEuNzVyZW0gYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tb2RhbC1sZyxcbi5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG4ubW9kYWwtZnVsbHNjcmVlbiB7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1jb250ZW50IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4ubW9kYWwtZnVsbHNjcmVlbiAubW9kYWwtaGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1ib2R5IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1mb290ZXIge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biB7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWNvbnRlbnQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1oZWFkZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIHtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtY29udGVudCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24gLm1vZGFsLWhlYWRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24gLm1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24ge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtaGVhZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIC5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24gLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtZm9vdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24ge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtaGVhZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtZm9vdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIHtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWNvbnRlbnQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtaGVhZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIC5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG4gIC5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDgwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xufVxuLnRvb2x0aXAuc2hvdyB7XG4gIG9wYWNpdHk6IDAuOTtcbn1cbi50b29sdGlwIC50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAuOHJlbTtcbiAgaGVpZ2h0OiAwLjRyZW07XG59XG4udG9vbHRpcCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuXG4uYnMtdG9vbHRpcC10b3AsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdIHtcbiAgcGFkZGluZzogMC40cmVtIDA7XG59XG4uYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3csIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiAwO1xufVxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xuICB0b3A6IC0xcHg7XG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAuNHJlbSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjMDAwO1xufVxuXG4uYnMtdG9vbHRpcC1lbmQsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0ge1xuICBwYWRkaW5nOiAwIDAuNHJlbTtcbn1cbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSAudG9vbHRpcC1hcnJvdyB7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwLjRyZW07XG4gIGhlaWdodDogMC44cmVtO1xufVxuLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XG4gIHJpZ2h0OiAtMXB4O1xuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMC40cmVtIDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzAwMDtcbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSB7XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogMDtcbn1cbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgYm90dG9tOiAtMXB4O1xuICBib3JkZXItd2lkdGg6IDAgMC40cmVtIDAuNHJlbTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDtcbn1cblxuLmJzLXRvb2x0aXAtc3RhcnQsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSB7XG4gIHBhZGRpbmc6IDAgMC40cmVtO1xufVxuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3csIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdyB7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMC40cmVtO1xuICBoZWlnaHQ6IDAuOHJlbTtcbn1cbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgbGVmdDogLTFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRyZW0gMCAwLjRyZW0gMC40cmVtO1xuICBib3JkZXItbGVmdC1jb2xvcjogIzAwMDtcbn1cblxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmxpbmstcHJpbWFyeSB7XG4gIGNvbG9yOiAjMGQ2ZWZkO1xufVxuLmxpbmstcHJpbWFyeTpob3ZlciwgLmxpbmstcHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjMGE1OGNhO1xufVxuXG4ubGluay1zZWNvbmRhcnkge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cbi5saW5rLXNlY29uZGFyeTpob3ZlciwgLmxpbmstc2Vjb25kYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICM1NjVlNjQ7XG59XG5cbi5saW5rLXN1Y2Nlc3Mge1xuICBjb2xvcjogIzE5ODc1NDtcbn1cbi5saW5rLXN1Y2Nlc3M6aG92ZXIsIC5saW5rLXN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogIzE0NmM0Mztcbn1cblxuLmxpbmstaW5mbyB7XG4gIGNvbG9yOiAjMGRjYWYwO1xufVxuLmxpbmstaW5mbzpob3ZlciwgLmxpbmstaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjM2RkNWYzO1xufVxuXG4ubGluay13YXJuaW5nIHtcbiAgY29sb3I6ICNmZmMxMDc7XG59XG4ubGluay13YXJuaW5nOmhvdmVyLCAubGluay13YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6ICNmZmNkMzk7XG59XG5cbi5saW5rLWRhbmdlciB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuLmxpbmstZGFuZ2VyOmhvdmVyLCAubGluay1kYW5nZXI6Zm9jdXMge1xuICBjb2xvcjogI2IwMmEzNztcbn1cblxuLmxpbmstbGlnaHQge1xuICBjb2xvcjogI2Y4ZjlmYTtcbn1cbi5saW5rLWxpZ2h0OmhvdmVyLCAubGluay1saWdodDpmb2N1cyB7XG4gIGNvbG9yOiAjZjlmYWZiO1xufVxuXG4ubGluay1kYXJrIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG4ubGluay1kYXJrOmhvdmVyLCAubGluay1kYXJrOmZvY3VzIHtcbiAgY29sb3I6ICMxYTFlMjE7XG59XG5cbi5yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4ucmF0aW86OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tYnMtYXNwZWN0LXJhdGlvKTtcbiAgY29udGVudDogXCJcIjtcbn1cbi5yYXRpbyA+ICoge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnJhdGlvLTF4MSB7XG4gIC0tYnMtYXNwZWN0LXJhdGlvOiAxMDAlO1xufVxuXG4ucmF0aW8tNHgzIHtcbiAgLS1icy1hc3BlY3QtcmF0aW86IDc1JTtcbn1cblxuLnJhdGlvLTE2eDkge1xuICAtLWJzLWFzcGVjdC1yYXRpbzogNTYuMjUlO1xufVxuXG4ucmF0aW8tMjF4OSB7XG4gIC0tYnMtYXNwZWN0LXJhdGlvOiA0Mi44NTcxNDI4NTcxJTtcbn1cblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDtcbn1cblxuLnN0aWNreS10b3Age1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDEwMjA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuc3RpY2t5LXNtLXRvcCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAyMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGlja3ktbWQtdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnN0aWNreS1sZy10b3Age1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMjA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnN0aWNreS14bC10b3Age1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMjA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLnN0aWNreS14eGwtdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG59XG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4udmlzdWFsbHktaGlkZGVuLFxuLnZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGU6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zdHJldGNoZWQtbGluazo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLnRleHQtdHJ1bmNhdGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnZyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICB3aWR0aDogMXB4O1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3BhY2l0eTogMC4yNTtcbn1cblxuLnRleHQtbGlnaHRlciB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG59XG5cbi50ZXh0LWxpZ2h0LCBib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgI3VzZXItdG9vbHM6bm90KC5zdWl0LXVzZXItdG9vbHMpIHN0cm9uZywgYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNoZWFkZXIgI3VzZXItdG9vbHMgc3Ryb25nLCAudGV4dC1saWdodC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLnRleHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLnRleHQtc2VtaWJvbGQsIGJvZHkubG9naW4gI2hlYWRlciAjYnJhbmRpbmcgI3NpdGUtbmFtZSBhLCAubmF2LXRhYnMtc3VpdCAubmF2LWxpbmsuYWN0aXZlLCAubmF2LXRhYnMtc3VpdCAubmF2LWxpbmsuYWN0aXZlOmZvY3VzLCAjcmVzdWx0X2xpc3QgdGJvZHkgPiB0ciA+IHRoLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyID4gdGgsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIgPiB0aCwgLnRleHQtbGlnaHQtYm9sZCBzdHJvbmcge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG5hOm5vdChbbXljbGFzc3RvaWdub3JlXSkge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmE6bm90KFtteWNsYXNzdG9pZ25vcmVdKTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5mb3JtLWNvbnRyb2wsICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0LCAjY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XSwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0LCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBzZWxlY3QsIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXSxcbmZpZWxkc2V0IC52VGV4dEZpZWxkLFxuZmllbGRzZXQgLnZVUkxGaWVsZCxcbmZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCAudlRpbWVGaWVsZCxcbmZpZWxkc2V0IC52RGF0ZUZpZWxkIHtcbiAgYXBwZWFyYW5jZTogYXV0bztcbn1cblxuLmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wsIC5mb3JtLWlubGluZSAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNlbGVjdCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuZm9ybS1pbmxpbmUgc2VsZWN0LCAuZm9ybS1pbmxpbmUgI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9dGV4dF0sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuZm9ybS1pbmxpbmUgaW5wdXRbdHlwZT10ZXh0XSwgLmZvcm0taW5saW5lIC5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmZvcm0taW5saW5lIHNlbGVjdCwgLmZvcm0taW5saW5lIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIHNlbGVjdCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLmZvcm0taW5saW5lIHNlbGVjdCwgLmZvcm0taW5saW5lIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF0sIGZpZWxkc2V0IC5mb3JtLWlubGluZSBpbnB1dFt0eXBlPXRleHRdLFxuLmZvcm0taW5saW5lIGZpZWxkc2V0IGlucHV0W3R5cGU9dXJsXSxcbmZpZWxkc2V0IC5mb3JtLWlubGluZSBpbnB1dFt0eXBlPXVybF0sXG4uZm9ybS1pbmxpbmUgZmllbGRzZXQgaW5wdXRbdHlwZT1lbWFpbF0sXG5maWVsZHNldCAuZm9ybS1pbmxpbmUgaW5wdXRbdHlwZT1lbWFpbF0sXG4uZm9ybS1pbmxpbmUgZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdLFxuZmllbGRzZXQgLmZvcm0taW5saW5lIGlucHV0W3R5cGU9bnVtYmVyXSxcbi5mb3JtLWlubGluZSBmaWVsZHNldCBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbmZpZWxkc2V0IC5mb3JtLWlubGluZSBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbi5mb3JtLWlubGluZSBmaWVsZHNldCBpbnB1dFt0eXBlPWRhdGVdLFxuZmllbGRzZXQgLmZvcm0taW5saW5lIGlucHV0W3R5cGU9ZGF0ZV0sXG4uZm9ybS1pbmxpbmUgZmllbGRzZXQgaW5wdXRbdHlwZT10ZWxdLFxuZmllbGRzZXQgLmZvcm0taW5saW5lIGlucHV0W3R5cGU9dGVsXSxcbi5mb3JtLWlubGluZSBmaWVsZHNldCAudlRleHRGaWVsZCxcbmZpZWxkc2V0IC5mb3JtLWlubGluZSAudlRleHRGaWVsZCxcbi5mb3JtLWlubGluZSBmaWVsZHNldCAudlVSTEZpZWxkLFxuZmllbGRzZXQgLmZvcm0taW5saW5lIC52VVJMRmllbGQsXG4uZm9ybS1pbmxpbmUgZmllbGRzZXQgLnZMYXJnZVRleHRGaWVsZCxcbmZpZWxkc2V0IC5mb3JtLWlubGluZSAudkxhcmdlVGV4dEZpZWxkLFxuLmZvcm0taW5saW5lIGZpZWxkc2V0IC52VGltZUZpZWxkLFxuZmllbGRzZXQgLmZvcm0taW5saW5lIC52VGltZUZpZWxkLFxuLmZvcm0taW5saW5lIGZpZWxkc2V0IC52RGF0ZUZpZWxkLFxuZmllbGRzZXQgLmZvcm0taW5saW5lIC52RGF0ZUZpZWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xufVxuXG5sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnRleHQtbXV0ZWQsIC50aW1lem9uZXdhcm5pbmcsIGZpZWxkc2V0IC50ZXh0LWhlbHAsIGZpZWxkc2V0ID4gLmRlc2NyaXB0aW9uIHtcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLXdpdGgtaWNvbiAuZmEge1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG59XG5cbi5idG4tcm91bmQsICN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSksICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG59XG5cbi5idG4tb3V0bGluZS1kYW5nZXIsIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuZGVsZXRlbGluayB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyMjQsIDc5LCA2MCwgMC43NSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCxcbmZpZWxkc2V0IHRleHRhcmVhLnZUZXh0RmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS52VVJMRmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCB0ZXh0YXJlYS52VGltZUZpZWxkLFxuZmllbGRzZXQgdGV4dGFyZWEudkRhdGVGaWVsZCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbmZpZWxkc2V0IHtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICNlNGU0ZTQ7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbmZpZWxkc2V0ID4gaDIsIGZpZWxkc2V0ID4gLmgyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG5maWVsZHNldCA+IC5kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45MjlyZW07XG4gIHBhZGRpbmctdG9wOiAwLjM1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5maWVsZHNldCBoMiArIC5kZXNjcmlwdGlvbiArICosIGZpZWxkc2V0IC5oMiArIC5kZXNjcmlwdGlvbiArICosIGZpZWxkc2V0IC5pbmxpbmUtcmVsYXRlZCB7XG4gIGNsZWFyOiBib3RoO1xufVxuZmllbGRzZXQgLmZvcm0tcm93Om5vdCguZm9ybS1ncm91cCk6bm90KHRyKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjFyZW07XG59XG5maWVsZHNldCAuZm9ybS1yb3c6bm90KC5mb3JtLWdyb3VwKTpub3QodHIpOmxhc3QtY2hpbGQgPiBsYWJlbDpub3QoLmZvcm0tY29udHJvbC1sYWJlbCkge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIGZpZWxkc2V0IC5mb3JtLXJvdzpub3QoLmZvcm0tZ3JvdXApOm5vdCh0cikge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuZmllbGRzZXQgLmZvcm0tcm93Om5vdCguZm9ybS1ncm91cCk6bm90KHRyKSA+ICoge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuZmllbGRzZXQgLmZvcm0tcm93Om5vdCguZm9ybS1ncm91cCk6bm90KHRyKSA+IGxhYmVsOm5vdCguZm9ybS1jb250cm9sLWxhYmVsKSB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIG1hcmdpbjogLTAuNXJlbSAxLjFyZW0gLTAuNXJlbSAtMS4xcmVtO1xufVxuZmllbGRzZXQgLmZvcm0tcm93Om5vdCguZm9ybS1ncm91cCk6bm90KHRyKSA+IGxhYmVsOm5vdCguZm9ybS1jb250cm9sLWxhYmVsKS5yZXF1aXJlZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICBmaWVsZHNldCAuZm9ybS1yb3c6bm90KC5mb3JtLWdyb3VwKTpub3QodHIpID4gbGFiZWw6bm90KC5mb3JtLWNvbnRyb2wtbGFiZWwpIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgZmllbGRzZXQgLmZvcm0tcm93Om5vdCguZm9ybS1ncm91cCk6bm90KHRyKSA+IGxhYmVsOm5vdCguZm9ybS1jb250cm9sLWxhYmVsKSB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gIH1cbn1cblxuLnN1aXQtaW5jbHVkZSBmaWVsZHNldDpub3QoLnN1aXQtZm9ybSk6bm90KC5tb2R1bGUpIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5zdWl0LWluY2x1ZGUgLmNhcmQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmZpZWxkc2V0IC50ZXh0LWhlbHAge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuZmllbGRzZXQgaW5wdXRbdHlwZT1jaGVja2JveF0gKyAudGV4dC1oZWxwLFxuZmllbGRzZXQgLmZvcm0taW5saW5lIC50ZXh0LWhlbHAge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG5maWVsZHNldCAuZm9ybS1pbmxpbmUgLnRleHQtaGVscCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cblxuZmllbGRzZXQgLmZvcm0tcm93LCBmaWVsZHNldCAuc3VpdC1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5maWVsZHNldCAuZm9ybS1yb3cgbGFiZWwsIGZpZWxkc2V0IC5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAgbGFiZWwge1xuICBmb250LXNpemU6IDAuOTI5cmVtO1xufVxuZmllbGRzZXQgLmZvcm0tcm93IGxhYmVsLnJlcXVpcmVkOmFmdGVyLCBmaWVsZHNldCAuc3VpdC1mb3JtIC5mb3JtLWdyb3VwIGxhYmVsLnJlcXVpcmVkOmFmdGVyIHtcbiAgY29udGVudDogXCIqXCI7XG4gIG1hcmdpbjogMCAwIDAgNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjY2NjO1xufVxuZmllbGRzZXQgLmZvcm0tcm93ID4gbGFiZWwsIGZpZWxkc2V0IC5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAgPiBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nLXRvcDogMS4wNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuOXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWVlZWU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgZmllbGRzZXQgLmZvcm0tcm93ID4gbGFiZWwsIGZpZWxkc2V0IC5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAgPiBsYWJlbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNTI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuZmllbGRzZXQgLmZvcm0tcm93Lmhhcy1kYW5nZXIsIGZpZWxkc2V0IC5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAuaGFzLWRhbmdlciB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbn1cbmZpZWxkc2V0IC5mb3JtLXJvdzpsYXN0LWNoaWxkID4gbGFiZWwsIGZpZWxkc2V0IC5zdWl0LWZvcm0gLmZvcm0tZ3JvdXA6bGFzdC1jaGlsZCA+IGxhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbmZpZWxkc2V0IC5mb3JtLXJvdyA+IHVsLCBmaWVsZHNldCAuZm9ybS1yb3cgLmVycm9ybGlzdCwgZmllbGRzZXQgLnN1aXQtZm9ybSAuZm9ybS1ncm91cCA+IHVsLCBmaWVsZHNldCAuc3VpdC1mb3JtIC5mb3JtLWdyb3VwIC5lcnJvcmxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgZm9udC1zaXplOiAwLjg1N3JlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICBmaWVsZHNldCAuZm9ybS1yb3cgPiB1bCwgZmllbGRzZXQgLmZvcm0tcm93IC5lcnJvcmxpc3QsIGZpZWxkc2V0IC5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAgPiB1bCwgZmllbGRzZXQgLnN1aXQtZm9ybSAuZm9ybS1ncm91cCAuZXJyb3JsaXN0IHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gIH1cbn1cblxuLmVycm9ybm90ZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTJweDtcbiAgcGFkZGluZzogMTBweCAxMnB4O1xufVxuXG51bC5lcnJvcmxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBmb250LXNpemU6IDAuODU3cmVtO1xuICBjb2xvcjogI0UwNEYzQztcbn1cblxudWwuZXJyb3JsaXN0IGxpIHtcbiAgZm9udC1zaXplOiAwLjg1N3JlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxudWwuZXJyb3JsaXN0IGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxudWwuZXJyb3JsaXN0IGxpIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAuZXJyb3JzIGlucHV0LCAuc3VpdC1mb3JtIC5mb3JtLWdyb3VwLmVycm9ycyBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICNFMDRGM0M7XG59XG5cbi5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAge1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnN1aXQtZm9ybSAuZm9ybS1ncm91cCB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIH1cbn1cbi5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAgbGFiZWwge1xuICBtYXJnaW46IDA7XG59XG4uc3VpdC1mb3JtIC5mb3JtLWdyb3VwIGxhYmVsLnJlcXVpcmVkIHtcbiAgcGFkZGluZy1yaWdodDogMC41NXJlbTtcbn1cbi5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbC1sYWJlbCArIGRpdltjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbC1sYWJlbCArIGRpdltjbGFzcyo9Y29sLV0ge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4uc3VpdC1mb3JtIC5mb3JtLWdyb3VwIHAuZm9ybS1jb250cm9sLXBsYWludGV4dCwgLnN1aXQtZm9ybSAuZm9ybS1ncm91cCAuaW5saW5lLWdyb3VwIC50YWJ1bGFyIHRhYmxlIHRib2R5IHRkLm9yaWdpbmFsIHAsIC5pbmxpbmUtZ3JvdXAgLnRhYnVsYXIgdGFibGUgdGJvZHkgdGQub3JpZ2luYWwgLnN1aXQtZm9ybSAuZm9ybS1ncm91cCBwIHtcbiAgbWFyZ2luOiAwO1xufVxuLnN1aXQtZm9ybSAuZm9ybS1ncm91cDpmaXJzdC1jaGlsZCAuZm9ybS1jb250cm9sLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IDEuM3JlbTtcbn1cbi5zdWl0LWZvcm0gLmZvcm0tZ3JvdXA6Zmlyc3QtY2hpbGQgLmZvcm0tY29udHJvbC1sYWJlbCArIGRpdltjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbn1cbi5zdWl0LWZvcm0gLmZvcm0tZ3JvdXA6bGFzdC1jaGlsZCAuZm9ybS1jb250cm9sLWxhYmVsICsgZGl2W2NsYXNzKj1jb2wtXSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xufVxuXG4uY29sLW11bHRpLWZpZWxkcyB7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuY29sLW11bHRpLWZpZWxkcyB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuLmNvbC1tdWx0aS1maWVsZHMgLm11bHRpLWZpZWxkIHtcbiAgZmxleC1iYXNpczogMTVyZW07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuY29sLW11bHRpLWZpZWxkcyAubXVsdGktZmllbGQge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cbi5jb2wtbXVsdGktZmllbGRzIC5tdWx0aS1maWVsZCAuZm9ybS1jb250cm9sLWxhYmVsIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMC41NXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY29sLW11bHRpLWZpZWxkcyAubXVsdGktZmllbGQgLmZvcm0tY29udHJvbC1sYWJlbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuY29sLW11bHRpLWZpZWxkcyAubXVsdGktZmllbGQgLmZvcm0tY29udHJvbC1sYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cbi5jb2wtbXVsdGktZmllbGRzIC5tdWx0aS1maWVsZCAubXVsdGktZmllbGQtY29udGVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY29sLW11bHRpLWZpZWxkcyAubXVsdGktZmllbGQgLm11bHRpLWZpZWxkLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmNvbC1tdWx0aS1maWVsZHMgLm11bHRpLWZpZWxkIC5tdWx0aS1maWVsZC1jb250ZW50IGlucHV0LCAuY29sLW11bHRpLWZpZWxkcyAubXVsdGktZmllbGQgLm11bHRpLWZpZWxkLWNvbnRlbnQgc2VsZWN0IHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5jb2wtbXVsdGktZmllbGRzIC5tdWx0aS1maWVsZCAuZm9ybS1jb250cm9sLWxhYmVsLCAuY29sLW11bHRpLWZpZWxkcyAubXVsdGktZmllbGQgLm11bHRpLWZpZWxkLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBDT0xMQVBTRUQgRklFTERTRVRTICovXG5maWVsZHNldC5jb2xsYXBzZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmZpZWxkc2V0LmNvbGxhcHNlZCA+ICoge1xuICBkaXNwbGF5OiBub25lO1xufVxuZmllbGRzZXQuY29sbGFwc2VkIGgyLCBmaWVsZHNldC5jb2xsYXBzZWQgLmgyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4xNDNyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG59XG5maWVsZHNldC5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBJTi1MSU5FUyAqL1xuLmVtcHR5LWZvcm0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pbmxpbmUtZ3JvdXAgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCB7XG4gIHBhZGRpbmc6IDAuN3JlbSAwLjhyZW07XG59XG4uaW5saW5lLWdyb3VwIC50YWJ1bGFyIHRhYmxlIHRoLCAuaW5saW5lLWdyb3VwIC50YWJ1bGFyIHRhYmxlIHRkIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmlubGluZS1ncm91cCAudGFidWxhciB0YWJsZSB0Ym9keSB0ZC5vcmlnaW5hbCBwIHtcbiAgbWFyZ2luOiAwO1xufVxuLmlubGluZS1ncm91cCAudGFidWxhciB0YWJsZSB0Ym9keSB0ZC5vcmlnaW5hbCBwIGEge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMC44NTdyZW07XG59XG4uaW5saW5lLWdyb3VwIC50YWJ1bGFyIHRhYmxlIHRib2R5IHRkIC5lcnJvcmxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBmb250LXNpemU6IDAuODU3cmVtO1xuICBjb2xvcjogI0UwNEYzQztcbn1cbi5pbmxpbmUtZ3JvdXAgLnRhYnVsYXIgdGFibGUgdGJvZHkgdGQgLmVycm9ybGlzdCArIGlucHV0IHtcbiAgYm9yZGVyLWNvbG9yOiAjRTA0RjNDO1xufVxuLnN1aXQtaW5saW5lcy1oaWRlLW9yaWdpbmFsOm5vdCguc3VpdC1pbmxpbmVzLXNob3ctb3JpZ2luYWwpIC5pbmxpbmUtZ3JvdXAgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ciB0ZC5vcmlnaW5hbCwgLnN1aXQtaW5saW5lcy1oaWRlLW9yaWdpbmFsOm5vdCguc3VpdC1pbmxpbmVzLXNob3ctb3JpZ2luYWwpIC5pbmxpbmUtZ3JvdXAgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ciB0aC5vcmlnaW5hbCwgLnN1aXQtaW5saW5lcy1oaWRlLW9yaWdpbmFsOm5vdCguc3VpdC1pbmxpbmVzLXNob3ctb3JpZ2luYWwpIC5pbmxpbmUtZ3JvdXAgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0ZC5vcmlnaW5hbCwgLnN1aXQtaW5saW5lcy1oaWRlLW9yaWdpbmFsOm5vdCguc3VpdC1pbmxpbmVzLXNob3ctb3JpZ2luYWwpIC5pbmxpbmUtZ3JvdXAgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aC5vcmlnaW5hbCB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgd2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uc3VpdC1pbmxpbmVzLWhpZGUtb3JpZ2luYWw6bm90KC5zdWl0LWlubGluZXMtc2hvdy1vcmlnaW5hbCkgLmlubGluZS1ncm91cCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyIHRkLm9yaWdpbmFsID4gKiwgLnN1aXQtaW5saW5lcy1oaWRlLW9yaWdpbmFsOm5vdCguc3VpdC1pbmxpbmVzLXNob3ctb3JpZ2luYWwpIC5pbmxpbmUtZ3JvdXAgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ciB0aC5vcmlnaW5hbCA+ICosIC5zdWl0LWlubGluZXMtaGlkZS1vcmlnaW5hbDpub3QoLnN1aXQtaW5saW5lcy1zaG93LW9yaWdpbmFsKSAuaW5saW5lLWdyb3VwIC50YWJ1bGFyIHRhYmxlIHRoZWFkID4gdHIgdGQub3JpZ2luYWwgPiAqLCAuc3VpdC1pbmxpbmVzLWhpZGUtb3JpZ2luYWw6bm90KC5zdWl0LWlubGluZXMtc2hvdy1vcmlnaW5hbCkgLmlubGluZS1ncm91cCAudGFidWxhciB0YWJsZSB0aGVhZCA+IHRyIHRoLm9yaWdpbmFsID4gKiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3VpdC1pbmxpbmVzLWhpZGUtb3JpZ2luYWw6bm90KC5zdWl0LWlubGluZXMtc2hvdy1vcmlnaW5hbCkgLmlubGluZS1ncm91cCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyIHRoLm9yaWdpbmFsOmVtcHR5ICsgdGgsIC5zdWl0LWlubGluZXMtaGlkZS1vcmlnaW5hbDpub3QoLnN1aXQtaW5saW5lcy1zaG93LW9yaWdpbmFsKSAuaW5saW5lLWdyb3VwIC50YWJ1bGFyIHRhYmxlIHRoZWFkID4gdHIgdGgub3JpZ2luYWw6ZW1wdHkgKyB0aCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uaW5saW5lLWdyb3VwIC50YWJ1bGFyIGZpZWxkc2V0IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5pbmxpbmUtZ3JvdXAgLmlubGluZS1yZWxhdGVkIGgzLCAuaW5saW5lLWdyb3VwIC5pbmxpbmUtcmVsYXRlZCAuaDMge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmc6IDAuN3JlbSAwLjhyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZDY0Nzg7XG59XG4uaW5saW5lLWdyb3VwIC5pbmxpbmUtcmVsYXRlZCBoMyBiLCAuaW5saW5lLWdyb3VwIC5pbmxpbmUtcmVsYXRlZCAuaDMgYiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxNy41JTtcbn1cbi5pbmxpbmUtZ3JvdXAgLmlubGluZS1yZWxhdGVkIGgzIGEsIC5pbmxpbmUtZ3JvdXAgLmlubGluZS1yZWxhdGVkIC5oMyBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmlubGluZS1ncm91cCAuaW5saW5lLXJlbGF0ZWQgaDMgYS5pbmxpbmUtZGVsZXRlbGluaywgLmlubGluZS1ncm91cCAuaW5saW5lLXJlbGF0ZWQgLmgzIGEuaW5saW5lLWRlbGV0ZWxpbmsge1xuICBmbG9hdDogcmlnaHQ7XG59XG4uaW5saW5lLWdyb3VwIC5pbmxpbmUtcmVsYXRlZCBoMyBsYWJlbCwgLmlubGluZS1ncm91cCAuaW5saW5lLXJlbGF0ZWQgLmgzIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xufVxuLmlubGluZS1ncm91cCAuaW5saW5lLXJlbGF0ZWQgaDMgc3Bhbi5kZWxldGUsIC5pbmxpbmUtZ3JvdXAgLmlubGluZS1yZWxhdGVkIC5oMyBzcGFuLmRlbGV0ZSwgLmlubGluZS1ncm91cCAuaW5saW5lLXJlbGF0ZWQgaDMgc3Bhbjpub3QoLmlubGluZV9sYWJlbCk6bm90KDpmaXJzdC1jaGlsZCksIC5pbmxpbmUtZ3JvdXAgLmlubGluZS1yZWxhdGVkIC5oMyBzcGFuOm5vdCguaW5saW5lX2xhYmVsKTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5pbmxpbmUtZ3JvdXAgLmlubGluZS1yZWxhdGVkIGgzIC5zdGFja2VkLWlubGluZS1zb3J0YWJsZSwgLmlubGluZS1ncm91cCAuaW5saW5lLXJlbGF0ZWQgLmgzIC5zdGFja2VkLWlubGluZS1zb3J0YWJsZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbn1cbi5pbmxpbmUtZ3JvdXAgLmlubGluZS1yZWxhdGVkIGZpZWxkc2V0LnN1aXQtZm9ybSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uaW5saW5lLWdyb3VwIC5pbmxpbmUtcmVsYXRlZCArIC5lbXB0eS1mb3JtICsgLmFkZC1yb3cge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbn1cbi5pbmxpbmUtZ3JvdXAgZGl2LmFkZC1yb3cge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2YxZjFmMTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMC40cmVtIDAuOHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiBjYWxjKGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KSAtIDJweCAtIDVweCk7XG59XG5cbi50YWJ1bGFyIC5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdztcbn1cblxuLyogVGFidWxhcklubGluZXMgU29ydGFibGVzICovXG4uaW5saW5lLXNvcnRhYmxlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5pbmxpbmUtc29ydGFibGUgYSB7XG4gIGNvbG9yOiAjMDAwO1xuICBwYWRkaW5nOiAwLjNyZW0gMC40cmVtIDAgMC4ycmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9wYWNpdHk6IDAuNDtcbn1cbiNyZXN1bHRfbGlzdCAuaW5saW5lLXNvcnRhYmxlIGEsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IC5pbmxpbmUtc29ydGFibGUgYSwgLnRhYnVsYXIgdGFibGUgLmlubGluZS1zb3J0YWJsZSBhIHtcbiAgcGFkZGluZy10b3A6IDAuMDVyZW07XG59XG4uaW5saW5lLXNvcnRhYmxlIGE6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG4uaW5saW5lLXNvcnRhYmxlIGE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5zdWl0LXNvcnRhYmxlIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5zZWxlY3RlZCB0ZCAuaW5saW5lLXNvcnRhYmxlIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbnRyOmZpcnN0LWNoaWxkIHRkIC5pbmxpbmUtc29ydGFibGUgLnNvcnRhYmxlLXVwIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi50YWJ1bGFyIHRyLmxhc3Qtc29ydGFibGUgdGQgLmlubGluZS1zb3J0YWJsZSAuc29ydGFibGUtZG93bixcbi50YWJ1bGFyIHRyLmZvcm0tcm93Om50aC1sYXN0LWNoaWxkKDIpIHRkIC5pbmxpbmUtc29ydGFibGUgLnNvcnRhYmxlLWRvd24ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuI3Jlc3VsdF9saXN0IHRyOmxhc3QtY2hpbGQgdGQgLmlubGluZS1zb3J0YWJsZSAuc29ydGFibGUtZG93biwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdHI6bGFzdC1jaGlsZCB0ZCAuaW5saW5lLXNvcnRhYmxlIC5zb3J0YWJsZS1kb3duLCAudGFidWxhciB0YWJsZSB0cjpsYXN0LWNoaWxkIHRkIC5pbmxpbmUtc29ydGFibGUgLnNvcnRhYmxlLWRvd24ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyogU3RhY2tlZElubGluZSBzb3J0YWJsZXMgKi9cbi5zdGFja2VkLWlubGluZS1zb3J0YWJsZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnN0YWNrZWQtaW5saW5lLXNvcnRhYmxlIDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDFweDtcbn1cbi5zdGFja2VkLWlubGluZS1zb3J0YWJsZTpudGgtbGFzdC1jaGlsZCgyKSB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cbi5zdGFja2VkLWlubGluZS1zb3J0YWJsZSBhIHtcbiAgY29sb3I6ICNlY2VlZWY7XG59XG4uc3RhY2tlZC1pbmxpbmUtc29ydGFibGUgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uaW5saW5lLWdyb3VwID4gZGl2OmZpcnN0LW9mLXR5cGUgLnN0YWNrZWQtaW5saW5lLXNvcnRhYmxlIC5zb3J0YWJsZS11cCxcbi5pbmxpbmUtZ3JvdXAgPiBkaXY6bnRoLWxhc3QtY2hpbGQoMykgLnN0YWNrZWQtaW5saW5lLXNvcnRhYmxlIC5zb3J0YWJsZS1kb3duIHtcbiAgb3BhY2l0eTogMC4xNSAhaW1wb3J0YW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbmZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXSxcbmZpZWxkc2V0IC52VGV4dEZpZWxkLFxuZmllbGRzZXQgLnZVUkxGaWVsZCxcbmZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCAudlRpbWVGaWVsZCxcbmZpZWxkc2V0IC52RGF0ZUZpZWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIGZpZWxkc2V0IGlucHV0W3R5cGU9dGV4dF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPXVybF0sXG5maWVsZHNldCBpbnB1dFt0eXBlPWVtYWlsXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9bnVtYmVyXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuZmllbGRzZXQgaW5wdXRbdHlwZT1kYXRlXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9dGVsXSxcbmZpZWxkc2V0IC52VGV4dEZpZWxkLFxuZmllbGRzZXQgLnZVUkxGaWVsZCxcbmZpZWxkc2V0IC52TGFyZ2VUZXh0RmllbGQsXG5maWVsZHNldCAudlRpbWVGaWVsZCxcbmZpZWxkc2V0IC52RGF0ZUZpZWxkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cbmZpZWxkc2V0IHNlbGVjdDpub3QoW211bHRpcGxlPW11bHRpcGxlXSkge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuZmllbGRzZXQgaW5wdXRbdHlwZT1udW1iZXJdLCBmaWVsZHNldCBpbnB1dFt0eXBlPWRhdGVdLCBmaWVsZHNldCBpbnB1dC52SW50ZWdlckZpZWxkLCBmaWVsZHNldCBpbnB1dC52SW50ZWdlckZpZWxkLCBmaWVsZHNldCBpbnB1dC52RGF0ZUZpZWxkLCBmaWVsZHNldCBpbnB1dC52VGltZUZpZWxkLCBmaWVsZHNldCBpbnB1dC52Rm9yZWlnbktleVJhd0lkQWRtaW5GaWVsZCB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udGltZXpvbmV3YXJuaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG5cbi5yZWxhdGVkLWxvb2t1cDpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBjb250ZW50OiBcIlxcZjAwMlwiO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgZm9udC1zaXplOiAxLjE0M3JlbTtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLmF1dG9zaXplIHtcbiAgbWF4LWhlaWdodDogMTJyZW07XG59XG5cbi5JbWFnZVdpZGdldCAuZmxvYXQteHMtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWF4LXdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQge1xuICBmb250LXNpemU6IDA7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lIHAsIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IHAsIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IHAge1xuICBtYXJnaW46IDA7XG59XG4ud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSAuZGF0ZXRpbWVzaG9ydGN1dHMsIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cywgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMS41cmVtIDAgMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG4ud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSAuZGF0ZXRpbWVzaG9ydGN1dHMgYSwgLndpZGdldC1BZG1pbkRhdGVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGEsIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbn1cbi53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lIC5kYXRldGltZXNob3J0Y3V0cyBhOmZpcnN0LWNoaWxkLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYTpmaXJzdC1jaGlsZCwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGE6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMy4xNXJlbTtcbiAgbWFyZ2luLXRvcDogMC40NXJlbTtcbn1cbi53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lIC5kYXRldGltZXNob3J0Y3V0cyBhOm5vdCg6Zmlyc3QtY2hpbGQpLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYTpub3QoOmZpcnN0LWNoaWxkKSwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGE6bm90KDpmaXJzdC1jaGlsZCkge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNhbGVuZGFybGlua10sIC53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lIC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jbG9ja2xpbmtdLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2FsZW5kYXJsaW5rXSwgLndpZGdldC1BZG1pbkRhdGVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNsb2NrbGlua10sIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jYWxlbmRhcmxpbmtdLCAud2lkZ2V0LUFkbWluVGltZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2xvY2tsaW5rXSB7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTFweDtcbiAgei1pbmRleDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNhbGVuZGFybGlua106aG92ZXIsIC53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lIC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jYWxlbmRhcmxpbmtdOmZvY3VzLCAud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2xvY2tsaW5rXTpob3ZlciwgLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNsb2NrbGlua106Zm9jdXMsIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jYWxlbmRhcmxpbmtdOmhvdmVyLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2FsZW5kYXJsaW5rXTpmb2N1cywgLndpZGdldC1BZG1pbkRhdGVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNsb2NrbGlua106aG92ZXIsIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jbG9ja2xpbmtdOmZvY3VzLCAud2lkZ2V0LUFkbWluVGltZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2FsZW5kYXJsaW5rXTpob3ZlciwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNhbGVuZGFybGlua106Zm9jdXMsIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jbG9ja2xpbmtdOmhvdmVyLCAud2lkZ2V0LUFkbWluVGltZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2xvY2tsaW5rXTpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwZDY0YTI7XG59XG4ud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2FsZW5kYXJsaW5rXSAuZGF0ZS1pY29uLCAud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2FsZW5kYXJsaW5rXSAuY2xvY2staWNvbiwgLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNsb2NrbGlua10gLmRhdGUtaWNvbiwgLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNsb2NrbGlua10gLmNsb2NrLWljb24sIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jYWxlbmRhcmxpbmtdIC5kYXRlLWljb24sIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jYWxlbmRhcmxpbmtdIC5jbG9jay1pY29uLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2xvY2tsaW5rXSAuZGF0ZS1pY29uLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2xvY2tsaW5rXSAuY2xvY2staWNvbiwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNhbGVuZGFybGlua10gLmRhdGUtaWNvbiwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNhbGVuZGFybGlua10gLmNsb2NrLWljb24sIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jbG9ja2xpbmtdIC5kYXRlLWljb24sIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jbG9ja2xpbmtdIC5jbG9jay1pY29uIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG59XG4ud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2FsZW5kYXJsaW5rXSAuZGF0ZS1pY29uOmJlZm9yZSwgLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNsb2NrbGlua10gLmRhdGUtaWNvbjpiZWZvcmUsIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jYWxlbmRhcmxpbmtdIC5kYXRlLWljb246YmVmb3JlLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2xvY2tsaW5rXSAuZGF0ZS1pY29uOmJlZm9yZSwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNhbGVuZGFybGlua10gLmRhdGUtaWNvbjpiZWZvcmUsIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jbG9ja2xpbmtdIC5kYXRlLWljb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzNcIjtcbn1cbi53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lIC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jYWxlbmRhcmxpbmtdIC5jbG9jay1pY29uOmJlZm9yZSwgLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNsb2NrbGlua10gLmNsb2NrLWljb246YmVmb3JlLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2FsZW5kYXJsaW5rXSAuY2xvY2staWNvbjpiZWZvcmUsIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IC5kYXRldGltZXNob3J0Y3V0cyBhW2lkXj1jbG9ja2xpbmtdIC5jbG9jay1pY29uOmJlZm9yZSwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgLmRhdGV0aW1lc2hvcnRjdXRzIGFbaWRePWNhbGVuZGFybGlua10gLmNsb2NrLWljb246YmVmb3JlLCAud2lkZ2V0LUFkbWluVGltZVdpZGdldCAuZGF0ZXRpbWVzaG9ydGN1dHMgYVtpZF49Y2xvY2tsaW5rXSAuY2xvY2staWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxN1wiO1xufVxuLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgaW5wdXQsIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IGlucHV0LCAud2lkZ2V0LUFkbWluVGltZVdpZGdldCBpbnB1dCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4ud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSBpbnB1dC52RGF0ZUZpZWxkLCAud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSBpbnB1dC52VGltZUZpZWxkLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCBpbnB1dC52RGF0ZUZpZWxkLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCBpbnB1dC52VGltZUZpZWxkLCAud2lkZ2V0LUFkbWluVGltZVdpZGdldCBpbnB1dC52RGF0ZUZpZWxkLCAud2lkZ2V0LUFkbWluVGltZVdpZGdldCBpbnB1dC52VGltZUZpZWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHRleHQtaW5kZW50OiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lIGJyLCAud2lkZ2V0LUFkbWluRGF0ZVdpZGdldCBiciwgLndpZGdldC1BZG1pblRpbWVXaWRnZXQgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi53aWRnZXQtQWRtaW5TcGxpdERhdGVUaW1lIC50aW1lem9uZXdhcm5pbmcsIC53aWRnZXQtQWRtaW5EYXRlV2lkZ2V0IC50aW1lem9uZXdhcm5pbmcsIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IC50aW1lem9uZXdhcm5pbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUgaW5wdXQudkRhdGVGaWVsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuICB9XG59XG5cbi5jYWxlbmRhcmJveCwgLmNsb2NrYm94IHtcbiAgbWFyZ2luOiAwIDAgMCAycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG4uY2FsZW5kYXJib3ggLmNhbGVuZGFyLWNhbmNlbCwgLmNsb2NrYm94IC5jYWxlbmRhci1jYW5jZWwge1xuICBtYXJnaW46IDA7XG59XG4uY2FsZW5kYXJib3ggLmNhbGVuZGFyLWNhbmNlbCBhLCAuY2xvY2tib3ggLmNhbGVuZGFyLWNhbmNlbCBhIHtcbiAgcGFkZGluZzogMC4zcmVtIDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgyOGE5Zjtcbn1cbi5jYWxlbmRhcmJveCAuY2FsZW5kYXItY2FuY2VsIGE6aG92ZXIsIC5jbG9ja2JveCAuY2FsZW5kYXItY2FuY2VsIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZDY0Nzg7XG59XG5cbi53aWRnZXQtQ2hlY2tib3hJbnB1dCBpbnB1dFt0eXBlPWNoZWNrYm94XSwgW2NsYXNzKj1DaGVja2JveElucHV0XSBpbnB1dFt0eXBlPWNoZWNrYm94XSwgLnRhYnVsYXIgLmZvcm0tcm93IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLXRvcDogMC42NXJlbTtcbn1cbi53aWRnZXQtQ2hlY2tib3hJbnB1dCA+IC50ZXh0LWhlbHAsIFtjbGFzcyo9Q2hlY2tib3hJbnB1dF0gPiAudGV4dC1oZWxwLCAudGFidWxhciAuZm9ybS1yb3cgPiAudGV4dC1oZWxwIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLmNhbGVuZGFyYm94IHtcbiAgei1pbmRleDogMztcbn1cbi5jYWxlbmRhcmJveCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjg3MDg2O1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi5jYWxlbmRhcmJveCA+IGRpdjpmaXJzdC1jaGlsZCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zcmVtIDAuMnJlbSAwLjNyZW0gMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xufVxuLmNhbGVuZGFyYm94ID4gZGl2OmZpcnN0LWNoaWxkIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDY0YzViO1xufVxuLmNhbGVuZGFyYm94ID4gZGl2OmZpcnN0LWNoaWxkIGE6aG92ZXIsIC5jYWxlbmRhcmJveCA+IGRpdjpmaXJzdC1jaGlsZCBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmNhbGVuZGFyYm94ID4gZGl2OmZpcnN0LWNoaWxkIGEuY2FsZW5kYXJuYXYtcHJldmlvdXMge1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNhbGVuZGFyYm94ID4gZGl2OmZpcnN0LWNoaWxkIGEuY2FsZW5kYXJuYXYtcHJldmlvdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTNcIjtcbiAgY29sb3I6ICNmZmY7XG59XG4uY2FsZW5kYXJib3ggPiBkaXY6Zmlyc3QtY2hpbGQgYS5jYWxlbmRhcm5hdi1uZXh0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmNhbGVuZGFyYm94ID4gZGl2OmZpcnN0LWNoaWxkIGEuY2FsZW5kYXJuYXYtbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jYWxlbmRhcmJveCB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNhbGVuZGFyYm94IHRhYmxlIGNhcHRpb24ge1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwLjNyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jYWxlbmRhcmJveCB0YWJsZSB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbn1cbi5jYWxlbmRhcmJveCB0YWJsZSB0Ym9keSB0ZC5ub25kYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5jYWxlbmRhcmJveCB0YWJsZSB0Ym9keSB0ZCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzVyZW0gMC41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiBpbnNldCAtMXB4IC0xcHggMCAwICNmMWYxZjE7XG59XG4uY2FsZW5kYXJib3ggdGFibGUgdGJvZHkgdGQudG9kYXkgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNWYzZGM7XG4gIGJveC1zaGFkb3c6IGluc2V0IC0xcHggLTFweCAwIDAgI2Q1ZjNkYztcbn1cbi5jYWxlbmRhcmJveCB0YWJsZSB0Ym9keSB0ZCBhOmhvdmVyLCAuY2FsZW5kYXJib3ggdGFibGUgdGJvZHkgdGQgLnRvZGF5IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODI4YTlmO1xuICBib3gtc2hhZG93OiBpbnNldCAtMXB4IC0xcHggMCAwICM4MjhhOWY7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY2FsZW5kYXJib3ggdGFibGUgdGJvZHkgdGQuc2VsZWN0ZWQgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZDY0Nzg7XG4gIGNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5jYWxlbmRhcmJveCB0YWJsZSB0Ym9keSB0ZC5zZWxlY3RlZC50b2RheSBhIHtcbiAgY29sb3I6ICNkNWYzZGM7XG59XG4uY2FsZW5kYXJib3ggdGFibGUgdGJvZHkgdGgge1xuICBwYWRkaW5nOiAwLjRyZW0gMCAwLjNyZW07XG4gIGZvbnQtc2l6ZTogMC45MjlyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jYWxlbmRhcmJveCAuY2FsZW5kYXItc2hvcnRjdXRzIHtcbiAgcGFkZGluZzogMC43NXJlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjYzVjOWNjO1xuICBmb250LXNpemU6IDAuOTI5cmVtO1xufVxuLmNhbGVuZGFyYm94IC5jYWxlbmRhci1zaG9ydGN1dHMgYSB7XG4gIGNvbG9yOiAjMGQ2NGEyO1xuICBwYWRkaW5nOiAwIDAuMnJlbTtcbn1cblxuLmNsb2NrYm94IGgyLCAuY2xvY2tib3ggLmgyIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ODcwODY7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW46IDA7XG59XG4uY2xvY2tib3ggLnRpbWVsaXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmNsb2NrYm94IC50aW1lbGlzdCBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zcmVtIDA7XG4gIGZvbnQtc2l6ZTogMC45MjlyZW07XG59XG4uY2xvY2tib3ggLnRpbWVsaXN0IGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmNsb2NrYm94IC50aW1lbGlzdCBsaTpub3QoOmxhc3QtY2hpbGQpIGEge1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG59XG5cbi8qIFR3byBjb2x1bW4gc2VsZWN0b3IgKi9cbi5zZWxlY3RvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4uc2VsZWN0b3IgLnNlbGVjdG9yLWNob29zZXIge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cbi5zZWxlY3RvciAuc2VsZWN0b3ItY2hvb3NlciA+ICoge1xuICBoZWlnaHQ6IDIwcHg7XG59XG4uc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4ge1xuICBmbGV4OiAxIDEgMjAwcHg7XG59XG4uc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBoMiwgLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgLmgyLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBoMiwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gLmgyIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tdG9wOiAwLjFyZW07XG59XG4uc2VsZWN0b3IgLnNlbGVjdG9yLWF2YWlsYWJsZSBwLCAuc2VsZWN0b3IgLnNlbGVjdG9yLWNob3NlbiBwIHtcbiAgbWFyZ2luOiAwO1xufVxuLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgbGFiZWwsIC5zZWxlY3RvciAuc2VsZWN0b3ItY2hvc2VuIGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIHNlbGVjdCwgLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0IHtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zZWxlY3RvciAuc2VsZWN0b3ItYXZhaWxhYmxlIGlucHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLnNlbGVjdG9yIC5zZWxlY3Rvci1hdmFpbGFibGUgc2VsZWN0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIG1pbi1oZWlnaHQ6IDE0MnB4O1xufVxuLnNlbGVjdG9yIC5zZWxlY3Rvci1jaG9zZW4gc2VsZWN0IHtcbiAgbWluLWhlaWdodDogMTYycHg7XG59XG5cbi5yYWRpb2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDAuMzc1cmVtO1xufVxuLnJhZGlvbGlzdCBpbnB1dCB7XG4gIG1hcmdpbi1yaWdodDogMC4zNXJlbTtcbn1cbi5yYWRpb2xpc3QuaW5saW5lIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnJhZGlvbGlzdC5pbmxpbmUgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG4uc3VpdC1jaGFyLWNvdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHJpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW4tdG9wOiAtMS4xNXJlbTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogIzljYTNhOTtcbn1cbi5zdWl0LWNoYXItY291bnQgYSB7XG4gIGNvbG9yOiAjOWNhM2E5O1xufVxuLnN1aXQtY2hhci1jb3VudCBhOmhvdmVyLCAuc3VpdC1jaGFyLWNvdW50IGE6Zm9jdXMge1xuICBjb2xvcjogIzU1YWNlZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnN1aXQtY2hhci1jb3VudCBhIC5mYSB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDJweDtcbn1cblxuLnJlbGF0ZWQtd2lkZ2V0LXdyYXBwZXIgdWwsIC53aWRnZXQtQWRtaW5SYWRpb1NlbGVjdCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5yZWxhdGVkLXdpZGdldC13cmFwcGVyIHVsID4gbGkgbGFiZWwgaW5wdXRbdHlwZT1jaGVja2JveF0sIC5yZWxhdGVkLXdpZGdldC13cmFwcGVyIHVsID4gbGkgbGFiZWwgaW5wdXRbdHlwZT1yYWRpb10sIC53aWRnZXQtQWRtaW5SYWRpb1NlbGVjdCB1bCA+IGxpIGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdLCAud2lkZ2V0LUFkbWluUmFkaW9TZWxlY3QgdWwgPiBsaSBsYWJlbCBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xufVxuXG4ucmVsYXRlZC13aWRnZXQtd3JhcHBlci1saW5rOm5vdChbaHJlZl0pIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5yZWxhdGVkLXdpZGdldC13cmFwcGVyLWxpbms6aG92ZXIsIC5yZWxhdGVkLXdpZGdldC13cmFwcGVyLWxpbms6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5tZXNzYWdlbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMXJlbSAxLjg3NXJlbSAwO1xufVxuLm1lc3NhZ2VsaXN0IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxLjVyZW0gMi42MjVyZW07XG59XG5ib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBoMSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmgxLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBoMiwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLmgyLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCB1bCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbn1cbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGgxLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuaDEge1xuICBmb250LXNpemU6IDEuNTcxcmVtO1xufVxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaDIsIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5oMiB7XG4gIG1hcmdpbi10b3A6IDEuMnJlbTtcbiAgZm9udC1zaXplOiAxLjE0M3JlbTtcbn1cbmJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGZvcm0ge1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgaW5wdXRbdHlwZT1idXR0b25dLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGJ1dHRvbiB7XG4gIG1hcmdpbi1yaWdodDogMS41cmVtO1xufVxuLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDA7XG59XG4uc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF0sIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9YnV0dG9uXSwgLnN1Ym1pdC1yb3cgYnV0dG9uLCAuc3VibWl0LXJvdyAuYnRuLCAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgaW5wdXRbdHlwZT1zdWJtaXRdLCAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIGJ1dHRvbiwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyAuc3VibWl0LXJvdyBidXR0b24sIC5zdWJtaXQtcm93ICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkubG9naW4gLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdLCAuc3VibWl0LXJvdyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLCAuc3VibWl0LXJvdyAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9YnV0dG9uXTpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGJ1dHRvbjpub3QoW2NsYXNzKj1idG4tXSksIC5zdWJtaXQtcm93IGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIGlucHV0W3R5cGU9YnV0dG9uXSwgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1idXR0b25dLCAuc3VibWl0LXJvdyBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJvZHkuZGVsZXRlLWNvbmZpcm1hdGlvbiAuY29udGVudC13cmFwIC5zdWJtaXQtcm93IGlucHV0W3R5cGU9c3VibWl0XSwgLnN1Ym1pdC1yb3cgYm9keS5kZWxldGUtY29uZmlybWF0aW9uIC5jb250ZW50LXdyYXAgYnV0dG9uLCBib2R5LmRlbGV0ZS1jb25maXJtYXRpb24gLmNvbnRlbnQtd3JhcCAuc3VibWl0LXJvdyBidXR0b24sIC5zdWJtaXQtcm93IC5kZWxldGVsaW5rLWJveCAuZGVsZXRlbGluayB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5zdWJtaXQtcm93LmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxLjJyZW0gMS44NzVyZW0gMXJlbTtcbiAgei1pbmRleDogNTAwMDtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgYm9keS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5jb2wtcmlnaHQgLnN1Ym1pdC1yb3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgI2U0ZTRlNDtcbiAgfVxuICBib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAuc3VibWl0LXJvdyBhLmJ0bjpub3QoLmRlbGV0ZWxpbmspLCBib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAuc3VibWl0LXJvdyAjdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KC5kZWxldGVsaW5rKTpub3QoW2NsYXNzKj1idG4tXSksIGJvZHkuc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAuY29sLXJpZ2h0IC5zdWJtaXQtcm93ICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOm5vdCguZGVsZXRlbGluayk6bm90KFtjbGFzcyo9YnRuLV0pLCBib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAuc3VibWl0LXJvdyAuZGVsZXRlbGluay1ib3ggYS5kZWxldGVsaW5rOm5vdCguZGVsZXRlbGluayksIGJvZHkuc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAuY29sLXJpZ2h0IC5zdWJtaXQtcm93IGJ1dHRvbiwgYm9keS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5jb2wtcmlnaHQgLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdLCBib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAuc3VibWl0LXJvdyBpbnB1dFt0eXBlPWJ1dHRvbl0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gIGJvZHkuc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAuY29sLXJpZ2h0IC5zdWJtaXQtcm93ID4gKiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgYm9keS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5jb2wtcmlnaHQgLnN1Ym1pdC1yb3cgLmRlbGV0ZWxpbmstYm94IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgb3JkZXI6IDEwO1xuICB9XG59XG5ib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAub2JqZWN0LXRvb2xzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICBib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAub2JqZWN0LXRvb2xzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGJvZHkuc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAuY29sLXJpZ2h0IC5vYmplY3QtdG9vbHMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbiAgYm9keS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5jb2wtcmlnaHQgLm9iamVjdC10b29scyBsaS5oZWFkaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGJvZHkuc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAuY29sLXJpZ2h0IC5vYmplY3QtdG9vbHMgbGkubGlzdC1pdGVtLCBib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAub2JqZWN0LXRvb2xzIGxpOm5vdCgubGlzdC1pdGVtKSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgI2U0ZTRlNDtcbiAgfVxuICBib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAub2JqZWN0LXRvb2xzIGxpOm5vdCgubGlzdC1pdGVtKSBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICBib2R5LnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmNvbC1yaWdodCAub2JqZWN0LXRvb2xzIGxpOm5vdCgubGlzdC1pdGVtKSBhIC5mYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG4gIH1cbiAgYm9keS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5jb2wtcmlnaHQgLm9iamVjdC10b29scyBsaS5oZWFkaW5nIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMS4xNDNyZW07XG4gICAgcGFkZGluZzogMCAwLjYyNXJlbSAwLjQ2ODc1cmVtO1xuICB9XG4gIGJvZHkuc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAuY29sLXJpZ2h0IC5vYmplY3QtdG9vbHMgbGkuaGVhZGluZy5oZWFkaW5nLWludmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZDY0Nzg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgcGFkZGluZzogMC40Njg3NXJlbSAwLjYyNXJlbTtcbiAgfVxufVxuXG4uYnJlYWRjcnVtYnMge1xuICBmb250LXNpemU6IDAuOTI5cmVtO1xuICBjb2xvcjogIzY4NzA4NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmJyZWFkY3J1bWJzIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uYnJlYWRjcnVtYnMgYSB7XG4gIGNvbG9yOiAjMGQ2NGEyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCAwLjJyZW07XG59XG4uYnJlYWRjcnVtYnMgYTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsIHtcbiAgLyomLmNoYW5nZS1mb3JtIHtcbiAgICAjY29udGFpbmVyIHtcbiAgICAgID4gLmJyZWFkY3J1bWJzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgI2NvbnRlbnQge1xuICAgICAgLmJyZWFkY3J1bWJzIHtcbiAgICAgIH1cbiAgICB9XG4gIH0qL1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjY29udGFpbmVyID4gLmJyZWFkY3J1bWJzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogMS41cmVtIDEuODc1cmVtO1xuICBsZWZ0OiAyMzBweDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2NvbnRhaW5lciAjY29udGVudCAuYnJlYWRjcnVtYnMge1xuICBkaXNwbGF5OiBub25lO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjY29udGFpbmVyICNjb250ZW50IC5tZXNzYWdlbGlzdCB7XG4gIG1hcmdpbjogMCAwIDAuOTM3NXJlbSAwO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjY29udGFpbmVyID4gLm1lc3NhZ2VsaXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsIC5icmVhZGNydW1icyB7XG4gIHBhZGRpbmc6IDEuNXJlbSAyLjYyNXJlbSAwO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsLmNoYW5nZS1saXN0IC5icmVhZGNydW1icyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwuY2hhbmdlLWZvcm0gI2NvbnRlbnQgLmJyZWFkY3J1bWJzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMS41cmVtIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNjtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbC5jaGFuZ2UtZm9ybSAjY29udGVudCAuYnJlYWRjcnVtYnMgbGkge1xuICBmbG9hdDogbGVmdDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjY29udGVudCAuY29udGVudC13cmFwIC5tZXNzYWdlbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNyZXN1bHRfbGlzdCwgdGFibGUjY2hhbmdlLWhpc3RvcnksIC50YWJ1bGFyIHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cbiNyZXN1bHRfbGlzdCB0aGVhZCA+IHRyIHRoLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoLCAudGFidWxhciB0YWJsZSB0aGVhZCA+IHRyIHRoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZDY0Nzg7XG4gIGNvbG9yOiAjZWNlZWVmO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG4jcmVzdWx0X2xpc3QgdGhlYWQgPiB0ciB0aC5hY3Rpb24tY2hlY2tib3gtY29sdW1uLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoLmFjdGlvbi1jaGVja2JveC1jb2x1bW4sIC50YWJ1bGFyIHRhYmxlIHRoZWFkID4gdHIgdGguYWN0aW9uLWNoZWNrYm94LWNvbHVtbiB7XG4gIHdpZHRoOiAycmVtO1xufVxuI3Jlc3VsdF9saXN0IHRoZWFkID4gdHIgdGguc29ydGVkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoLnNvcnRlZCwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aC5zb3J0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDY0YzViO1xufVxuI3Jlc3VsdF9saXN0IHRoZWFkID4gdHIgdGguc29ydGVkOmFmdGVyLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoLnNvcnRlZDphZnRlciwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aC5zb3J0ZWQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGhlaWdodDogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjc5YmVlO1xufVxuI3Jlc3VsdF9saXN0IHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucywgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMC44NTdyZW07XG4gIG1hcmdpbjogMC4xcmVtIDAuM3JlbSAwIDA7XG59XG4jcmVzdWx0X2xpc3QgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnNvcnRwcmlvcml0eSwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnNvcnRwcmlvcml0eSwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnNvcnRwcmlvcml0eSwgI3Jlc3VsdF9saXN0IHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zIC5zb3J0cmVtb3ZlLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAuc29ydHJlbW92ZSwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnNvcnRyZW1vdmUsICNyZXN1bHRfbGlzdCB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlLCAudGFidWxhciB0YWJsZSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZzogMC4ycmVtO1xufVxuI3Jlc3VsdF9saXN0IHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zIC5zb3J0cmVtb3ZlOmhvdmVyLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAuc29ydHJlbW92ZTpob3ZlciwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnNvcnRyZW1vdmU6aG92ZXIsICNyZXN1bHRfbGlzdCB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlOmhvdmVyLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlOmhvdmVyLCAudGFidWxhciB0YWJsZSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuI3Jlc3VsdF9saXN0IHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zIC5zb3J0cmVtb3ZlOmhvdmVyOmJlZm9yZSwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnNvcnRyZW1vdmU6aG92ZXI6YmVmb3JlLCAudGFidWxhciB0YWJsZSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAuc29ydHJlbW92ZTpob3ZlcjpiZWZvcmUsICNyZXN1bHRfbGlzdCB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlOmhvdmVyOmJlZm9yZSwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnRvZ2dsZTpob3ZlcjpiZWZvcmUsIC50YWJ1bGFyIHRhYmxlIHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zIC50b2dnbGU6aG92ZXI6YmVmb3JlIHtcbiAgY29sb3I6ICMyNzliZWU7XG59XG4jcmVzdWx0X2xpc3QgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnNvcnRyZW1vdmU6YmVmb3JlLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAuc29ydHJlbW92ZTpiZWZvcmUsIC50YWJ1bGFyIHRhYmxlIHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zIC5zb3J0cmVtb3ZlOmJlZm9yZSwgI3Jlc3VsdF9saXN0IHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zIC50b2dnbGU6YmVmb3JlLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlOmJlZm9yZSwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnRvZ2dsZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbn1cbiNyZXN1bHRfbGlzdCB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAuc29ydHJlbW92ZTpiZWZvcmUsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zIC5zb3J0cmVtb3ZlOmJlZm9yZSwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnNvcnRyZW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cbiNyZXN1bHRfbGlzdCB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlLmFzY2VuZGluZzpiZWZvcmUsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRoZWFkID4gdHIgdGggLnNvcnRvcHRpb25zIC50b2dnbGUuYXNjZW5kaW5nOmJlZm9yZSwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCAuc29ydG9wdGlvbnMgLnRvZ2dsZS5hc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzdcIjtcbn1cbiNyZXN1bHRfbGlzdCB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlLmRlc2NlbmRpbmc6YmVmb3JlLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlLmRlc2NlbmRpbmc6YmVmb3JlLCAudGFidWxhciB0YWJsZSB0aGVhZCA+IHRyIHRoIC5zb3J0b3B0aW9ucyAudG9nZ2xlLmRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzhcIjtcbn1cbiNyZXN1bHRfbGlzdCB0aGVhZCA+IHRyIHRoIGRpdi50ZXh0IHNwYW4sIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRoZWFkID4gdHIgdGggZGl2LnRleHQgc3BhbiwgLnRhYnVsYXIgdGFibGUgdGhlYWQgPiB0ciB0aCBkaXYudGV4dCBzcGFuLCAjcmVzdWx0X2xpc3QgdGhlYWQgPiB0ciB0aCBkaXYudGV4dCBhLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIGRpdi50ZXh0IGEsIC50YWJ1bGFyIHRhYmxlIHRoZWFkID4gdHIgdGggZGl2LnRleHQgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjdyZW0gMC44cmVtO1xufVxuI3Jlc3VsdF9saXN0IHRoZWFkID4gdHIgdGggYSwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGhlYWQgPiB0ciB0aCBhLCAudGFidWxhciB0YWJsZSB0aGVhZCA+IHRyIHRoIGEge1xuICBjb2xvcjogI2VjZWVlZjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jcmVzdWx0X2xpc3QgdGJvZHkgPiB0ciA+IHRkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyID4gdGQsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIgPiB0ZCwgI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIgPiB0aCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ciA+IHRoLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyID4gdGgge1xuICBwYWRkaW5nOiAwLjRyZW0gMC44cmVtO1xuICBmb250LXNpemU6IDAuODU3cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjJmMmYyO1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHI6bnRoLWNoaWxkKGV2ZW4pLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyOm50aC1jaGlsZChldmVuKSwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHI6bnRoLWNoaWxkKGV2ZW4pOmhvdmVyLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyOm50aC1jaGlsZChldmVuKTpob3ZlciwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0cjpudGgtY2hpbGQoZXZlbik6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4O1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHI6aG92ZXIsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHI6aG92ZXIsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHI6aG92ZXIgPiB0aCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0cjpob3ZlciA+IHRoLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyOmhvdmVyID4gdGgsICNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyOmhvdmVyID4gdGQsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHI6aG92ZXIgPiB0ZCwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0cjpob3ZlciA+IHRkIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyOmZpcnN0LWNoaWxkID4gdGgsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLCAjcmVzdWx0X2xpc3QgdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyOmZpcnN0LWNoaWxkID4gdGQsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCB7XG4gIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcbn1cbiNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnNlbGVjdGVkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnNlbGVjdGVkLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgyOGE5ZiAhaW1wb3J0YW50O1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIuc2VsZWN0ZWQ6aG92ZXIsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIuc2VsZWN0ZWQ6aG92ZXIsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIuc2VsZWN0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTE1ODZhO1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIuc2VsZWN0ZWQ6bnRoLWNoaWxkKGV2ZW4pLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnNlbGVjdGVkOm50aC1jaGlsZChldmVuKSwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci5zZWxlY3RlZDpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjg3MDg2ICFpbXBvcnRhbnQ7XG59XG4jcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci5zZWxlY3RlZDpudGgtY2hpbGQoZXZlbik6aG92ZXIsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIuc2VsZWN0ZWQ6bnRoLWNoaWxkKGV2ZW4pOmhvdmVyLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnNlbGVjdGVkOm50aC1jaGlsZChldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MTU4NmE7XG59XG4jcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci5zZWxlY3RlZCA+IHRoLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnNlbGVjdGVkID4gdGgsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIuc2VsZWN0ZWQgPiB0aCwgI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIuc2VsZWN0ZWQgPiB0ZCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci5zZWxlY3RlZCA+IHRkLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnNlbGVjdGVkID4gdGQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIuc2VsZWN0ZWQgPiB0aCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci5zZWxlY3RlZCA+IHRoLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnNlbGVjdGVkID4gdGgsICNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnNlbGVjdGVkID4gdGggYSwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci5zZWxlY3RlZCA+IHRoIGEsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIuc2VsZWN0ZWQgPiB0aCBhLCAjcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci5zZWxlY3RlZCA+IHRkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnNlbGVjdGVkID4gdGQsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIuc2VsZWN0ZWQgPiB0ZCwgI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIuc2VsZWN0ZWQgPiB0ZCBhLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnNlbGVjdGVkID4gdGQgYSwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci5zZWxlY3RlZCA+IHRkIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbiNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnRhYmxlLWRhbmdlci5zZWxlY3RlZCA+IHRkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnRhYmxlLWRhbmdlci5zZWxlY3RlZCA+IHRkLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnRhYmxlLWRhbmdlci5zZWxlY3RlZCA+IHRkLCAjcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci50YWJsZS1kYW5nZXIuc2VsZWN0ZWQgPiB0aCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci50YWJsZS1kYW5nZXIuc2VsZWN0ZWQgPiB0aCwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci50YWJsZS1kYW5nZXIuc2VsZWN0ZWQgPiB0aCwgI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIudGFibGUtd2FybmluZy5zZWxlY3RlZCA+IHRkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnRhYmxlLXdhcm5pbmcuc2VsZWN0ZWQgPiB0ZCwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci50YWJsZS13YXJuaW5nLnNlbGVjdGVkID4gdGQsICNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnRhYmxlLXdhcm5pbmcuc2VsZWN0ZWQgPiB0aCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci50YWJsZS13YXJuaW5nLnNlbGVjdGVkID4gdGgsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIudGFibGUtd2FybmluZy5zZWxlY3RlZCA+IHRoLCAjcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci50YWJsZS1pbmZvLnNlbGVjdGVkID4gdGQsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIudGFibGUtaW5mby5zZWxlY3RlZCA+IHRkLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnRhYmxlLWluZm8uc2VsZWN0ZWQgPiB0ZCwgI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIudGFibGUtaW5mby5zZWxlY3RlZCA+IHRoLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnRhYmxlLWluZm8uc2VsZWN0ZWQgPiB0aCwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci50YWJsZS1pbmZvLnNlbGVjdGVkID4gdGgsICNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnRhYmxlLXN1Y2Nlc3Muc2VsZWN0ZWQgPiB0ZCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci50YWJsZS1zdWNjZXNzLnNlbGVjdGVkID4gdGQsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIudGFibGUtc3VjY2Vzcy5zZWxlY3RlZCA+IHRkLCAjcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci50YWJsZS1zdWNjZXNzLnNlbGVjdGVkID4gdGgsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIudGFibGUtc3VjY2Vzcy5zZWxlY3RlZCA+IHRoLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnRhYmxlLXN1Y2Nlc3Muc2VsZWN0ZWQgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIudGFibGUtZGFuZ2VyLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnRhYmxlLWRhbmdlciwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci50YWJsZS1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJkZWRlO1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIudGFibGUtZGFuZ2VyID4gdGQsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIudGFibGUtZGFuZ2VyID4gdGQsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIudGFibGUtZGFuZ2VyID4gdGQsICNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnRhYmxlLWRhbmdlciA+IHRoLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnRhYmxlLWRhbmdlciA+IHRoLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnRhYmxlLWRhbmdlciA+IHRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYmNjY2M7XG59XG4jcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci50YWJsZS13YXJuaW5nLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnRhYmxlLXdhcm5pbmcsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIudGFibGUtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG59XG4jcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci50YWJsZS13YXJuaW5nID4gdGQsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIudGFibGUtd2FybmluZyA+IHRkLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnRhYmxlLXdhcm5pbmcgPiB0ZCwgI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIudGFibGUtd2FybmluZyA+IHRoLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnRhYmxlLXdhcm5pbmcgPiB0aCwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci50YWJsZS13YXJuaW5nID4gdGgge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZhZjJjYztcbn1cbiNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnRhYmxlLWluZm8sIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIudGFibGUtaW5mbywgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci50YWJsZS1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZWRmNztcbn1cbiNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnRhYmxlLWluZm8gPiB0ZCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci50YWJsZS1pbmZvID4gdGQsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIudGFibGUtaW5mbyA+IHRkLCAjcmVzdWx0X2xpc3QgdGJvZHkgPiB0ci50YWJsZS1pbmZvID4gdGgsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIudGFibGUtaW5mbyA+IHRoLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnRhYmxlLWluZm8gPiB0aCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmNkZmYxO1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIudGFibGUtc3VjY2VzcywgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci50YWJsZS1zdWNjZXNzLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyLnRhYmxlLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZmMGQ4O1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIudGFibGUtc3VjY2VzcyA+IHRkLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyLnRhYmxlLXN1Y2Nlc3MgPiB0ZCwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ci50YWJsZS1zdWNjZXNzID4gdGQsICNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyLnRhYmxlLXN1Y2Nlc3MgPiB0aCwgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ci50YWJsZS1zdWNjZXNzID4gdGgsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIudGFibGUtc3VjY2VzcyA+IHRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMGU5YzY7XG59XG4jcmVzdWx0X2xpc3QgdGJvZHkgPiB0ciB0aC50YWJsZS1kYW5nZXIsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIgdGgudGFibGUtZGFuZ2VyLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyIHRoLnRhYmxlLWRhbmdlciwgI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIgdGQudGFibGUtZGFuZ2VyLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyIHRkLnRhYmxlLWRhbmdlciwgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ciB0ZC50YWJsZS1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJkZWRlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ViY2NjYztcbn1cbiNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyIHRoLnRhYmxlLXdhcm5pbmcsIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIgdGgudGFibGUtd2FybmluZywgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ciB0aC50YWJsZS13YXJuaW5nLCAjcmVzdWx0X2xpc3QgdGJvZHkgPiB0ciB0ZC50YWJsZS13YXJuaW5nLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyIHRkLnRhYmxlLXdhcm5pbmcsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIgdGQudGFibGUtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmFmMmNjO1xufVxuI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIgdGgudGFibGUtaW5mbywgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ciB0aC50YWJsZS1pbmZvLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyIHRoLnRhYmxlLWluZm8sICNyZXN1bHRfbGlzdCB0Ym9keSA+IHRyIHRkLnRhYmxlLWluZm8sIHRhYmxlI2NoYW5nZS1oaXN0b3J5IHRib2R5ID4gdHIgdGQudGFibGUtaW5mbywgLnRhYnVsYXIgdGFibGUgdGJvZHkgPiB0ciB0ZC50YWJsZS1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZWRmNztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiY2RmZjE7XG59XG4jcmVzdWx0X2xpc3QgdGJvZHkgPiB0ciB0aC50YWJsZS1zdWNjZXNzLCB0YWJsZSNjaGFuZ2UtaGlzdG9yeSB0Ym9keSA+IHRyIHRoLnRhYmxlLXN1Y2Nlc3MsIC50YWJ1bGFyIHRhYmxlIHRib2R5ID4gdHIgdGgudGFibGUtc3VjY2VzcywgI3Jlc3VsdF9saXN0IHRib2R5ID4gdHIgdGQudGFibGUtc3VjY2VzcywgdGFibGUjY2hhbmdlLWhpc3RvcnkgdGJvZHkgPiB0ciB0ZC50YWJsZS1zdWNjZXNzLCAudGFidWxhciB0YWJsZSB0Ym9keSA+IHRyIHRkLnRhYmxlLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZmMGQ4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2QwZTljNjtcbn1cblxuLm5hdi10YWJzLXN1aXQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLm5hdi10YWJzLXN1aXQgLm5hdi1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNzVyZW07XG59XG4ubmF2LXRhYnMtc3VpdCAubmF2LWl0ZW0gKyAubmF2LWl0ZW0ge1xuICBtYXJnaW4tbGVmdDogMC4zcmVtO1xufVxuLm5hdi10YWJzLXN1aXQgLm5hdi1saW5rIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBwYWRkaW5nOiAwLjY1ZW0gMS41ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cbi5uYXYtdGFicy1zdWl0IC5uYXYtbGluazpob3ZlciwgLm5hdi10YWJzLXN1aXQgLm5hdi1saW5rOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTFiNmQwICM5MWI2ZDAgI2RlZTJlNjtcbn1cbi5uYXYtdGFicy1zdWl0IC5uYXYtbGluay5hY3RpdmUsIC5uYXYtdGFicy1zdWl0IC5uYXYtbGluay5hY3RpdmU6Zm9jdXMge1xuICBjb2xvcjogIzIyMjtcbn1cbi5uYXYtdGFicy1zdWl0IC5uYXYtbGluay5oYXMtZXJyb3IsIC5uYXYtdGFicy1zdWl0IC5uYXYtbGluay5oYXMtZXJyb3IuYWN0aXZlLCAubmF2LXRhYnMtc3VpdCAubmF2LWxpbmsuaGFzLWVycm9yOmZvY3VzIHtcbiAgY29sb3I6ICNhOTQ0NDI7XG59XG5cbi50YWJsZSwgdGFibGUjY2hhbmdlLWhpc3RvcnksIC50YWJ1bGFyIHRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogI2VjZWVlZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi50YWJsZS1kYXJrIHRoLFxuLnRhYmxlLWRhcmsgdGQsXG4udGFibGUtZGFyayB0aGVhZCB0aCB7XG4gIGJvcmRlci1jb2xvcjogI2YyZjJmMjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi50YWJsZS1kYXJrIHRoZWFkIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVkNjQ3ODtcbn1cbi50YWJsZS1kYXJrOm5vdCgudGFibGUtYm9yZGVyZWQpIHRoZWFkIHRoOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udGFibGUtZGFyayB0Ym9keSB0aCwgLnRhYmxlLWRhcmsgdGJvZHkgdGQge1xuICBjb2xvcjogIzIxMjUyOTtcbn1cblxuLnRoZWFkLWRhcmsgdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWQ2NDc4O1xuICBjb2xvcjogI2VjZWVlZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmNhcmQge1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgI2U0ZTRlNDtcbiAgYm9yZGVyOiBub25lO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWw6bm90KC5sb2dpbikge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWw6bm90KC5sb2dpbikgI2NvbnRhaW5lciB7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWw6bm90KC5sb2dpbikgI2NvbnRhaW5lciAjaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDIzMHB4O1xuICBmbGV4LXNocmluazogMDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWw6bm90KC5sb2dpbikgI2NvbnRhaW5lciAjY29udGVudCB7XG4gIGZsZXg6IDE7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctYm90dG9tOiA5NnB4O1xuICBwYWRkaW5nLXRvcDogNHJlbTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWw6bm90KC5sb2dpbikgI2NvbnRhaW5lciAjZm9vdGVyIHtcbiAgbGVmdDogMjMwcHg7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbDpub3QoLmxvZ2luKS5kYXNoYm9hcmQ6bm90KFtjbGFzcyo9YXBwLV0pICNjb250YWluZXIgI2NvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG59XG5cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1MjgzMDtcbiAgcGFkZGluZy10b3A6IDEuMDQxNjY2NjY2N3JlbTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyICNicmFuZGluZywgYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNoZWFkZXIgI3VzZXItdG9vbHMge1xuICBmbGV4LWJhc2lzOiAyODhweDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyIC5oZWFkZXItbGFiZWwge1xuICBmb250LXNpemU6IDAuODU3cmVtO1xuICBjb2xvcjogIzY4NzA4NjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyICNicmFuZGluZyB7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI2hlYWRlciAjYnJhbmRpbmcgI3NpdGUtbmFtZSB7XG4gIGZvbnQtc2l6ZTogMS43MTRyZW07XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI2hlYWRlciAjYnJhbmRpbmcgI3NpdGUtbmFtZSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNoZWFkZXIgI2JyYW5kaW5nICNzaXRlLW5hbWUgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyICNicmFuZGluZyAjc2l0ZS1uYW1lIGEgLmhlYWRlci1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIGJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyICNicmFuZGluZyAjc2l0ZS1uYW1lIGEgLmhlYWRlci1sYWJlbCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNoZWFkZXIgI3VzZXItdG9vbHMge1xuICBmbGV4LWdyb3c6IDI7XG4gIHBhZGRpbmc6IDAgMS44NzVyZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogIzY4NzA4Njtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyICN1c2VyLXRvb2xzIHN0cm9uZyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNoZWFkZXIgI3VzZXItdG9vbHMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDJweDtcbiAgY29sb3I6ICM1YmIwZWQ7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI2hlYWRlciAjdXNlci10b29scyBhOm50aC1jaGlsZCgyKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI2hlYWRlciAjdXNlci10b29scyBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyIC5zdWl0LXVzZXItdG9vbHMgLndlbGNvbWUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI2hlYWRlciAuc3VpdC11c2VyLXRvb2xzIC51c2VyLWxpbmtzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNoZWFkZXIgI3NpdGUtbmFtZSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjaGVhZGVyICNzaXRlLW5hbWUgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUyODMwO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjaGVhZGVyICNicmFuZGluZyB7XG4gIHBhZGRpbmc6IDEuMDQxNjY2NjY2N3JlbSAwLjYyNXJlbSAxLjA0MTY2NjY2NjdyZW07XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgI2JyYW5kaW5nICNzaXRlLW5hbWUge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMS40MjlyZW07XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgI2JyYW5kaW5nICNzaXRlLW5hbWUgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciAjYnJhbmRpbmcgI3NpdGUtbmFtZSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjaGVhZGVyICNicmFuZGluZyAjc2l0ZS1uYW1lIGEgLmhlYWRlci1sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciAjc2l0ZS1uYW1lIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgLmhlYWRlci1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC44NTdyZW07XG4gIGNvbG9yOiAjNjg3MDg2O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjaGVhZGVyICN1c2VyLXRvb2xzOm5vdCguc3VpdC11c2VyLXRvb2xzKSB7XG4gIHBhZGRpbmc6IDAuODY4MDU1NTU1NnJlbSAwLjYyNXJlbTtcbiAgZm9udC1zaXplOiAwLjg1N3JlbTtcbiAgY29sb3I6ICM2ODcwODY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODJjMzc7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgI3VzZXItdG9vbHM6bm90KC5zdWl0LXVzZXItdG9vbHMpIHN0cm9uZyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjaGVhZGVyICN1c2VyLXRvb2xzOm5vdCguc3VpdC11c2VyLXRvb2xzKSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMnB4O1xuICBjb2xvcjogIzViYjBlZDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciAjdXNlci10b29sczpub3QoLnN1aXQtdXNlci10b29scykgYTpudGgtY2hpbGQoMik6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgLnN1aXQtdXNlci10b29scyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODNkNGI7XG4gIHBhZGRpbmc6IDEuMTQ1ODMzMzMzM3JlbSAwLjkzNzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjaGVhZGVyIC5zdWl0LXVzZXItdG9vbHMgLnNlcGFyYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgLnN1aXQtdXNlci10b29scyAud2VsY29tZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjNjg3MDg2O1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjaGVhZGVyIC5zdWl0LXVzZXItdG9vbHMgLndlbGNvbWUgc3Ryb25nIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgLnN1aXQtdXNlci10b29scyAud2VsY29tZSAuZmEsIGJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciAuc3VpdC11c2VyLXRvb2xzIC53ZWxjb21lIC5pY29uLWxpbms6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciAuc3VpdC11c2VyLXRvb2xzIC51c2VyLWxpbmtzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgLnN1aXQtdXNlci10b29scyAuaWNvbi1saW5rIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC40cmVtIDA7XG4gIHdpZHRoOiAyNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsIGNvbG9yIDAuMnM7XG4gIGNvbG9yOiAjZmZmO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjaGVhZGVyIC5zdWl0LXVzZXItdG9vbHMgLmljb24tbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODJjMzc7XG4gIGNvbG9yOiAjMjc5YmVlO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjaGVhZGVyIC5zdWl0LXVzZXItdG9vbHMgLmljb24tbGluazpob3ZlcjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgLnN1aXQtdXNlci10b29scyAuaWNvbi1saW5rOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBmb250LXNpemU6IDEuMTQzcmVtO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgLnN1aXQtdXNlci10b29scyAuaWNvbi1saW5rOmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogYXR0cihkYXRhLXRpdGxlKTtcbiAgbGVmdDogMDtcbiAgdG9wOiA0MHB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciAuc3VpdC11c2VyLXRvb2xzIC5pY29uLWxpbmsudmlldy1zaXRlLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTVcIjtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciAuc3VpdC11c2VyLXRvb2xzIC5pY29uLWxpbmsuY2hhbmdlLXBhc3N3b3JkLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODRcIjtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI2hlYWRlciAuc3VpdC11c2VyLXRvb2xzIC5pY29uLWxpbmsuZG9jdW1lbnRhdGlvbi1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJkXCI7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNoZWFkZXIgLnN1aXQtdXNlci10b29scyAuaWNvbi1saW5rLmxvZ291dC1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhiXCI7XG59XG5cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1uYXYge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAxLjA0MTY2NjY2NjdyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODNkNGI7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI3N1aXQtbmF2ID4gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAxLjg3NXJlbTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1uYXYgPiB1bCA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI3N1aXQtbmF2ID4gdWwgPiBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI3N1aXQtbmF2ID4gdWwgPiBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1uYXYgPiB1bCA+IGxpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMC42OTQ0NDQ0NDQ0cmVtIDEuMzM5Mjg1NzE0M3JlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMjUyODMwO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNzdWl0LW5hdiA+IHVsID4gbGk6bGFzdC1jaGlsZCA+IGEge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMjUyODMwO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNzdWl0LW5hdiA+IHVsID4gbGkuYWN0aXZlIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDAgIzI3OWJlZTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1uYXYgPiB1bCA+IGxpLmFjdGl2ZSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2U5ZTllOSwgI2ZmZik7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI3N1aXQtbmF2ID4gdWwgPiBsaTpob3ZlciA+IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDM0OTVhO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNzdWl0LW5hdiA+IHVsID4gbGk6aG92ZXIgPiB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MzQ5NWE7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNzdWl0LW5hdiA+IHVsID4gbGkgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4M2Q0YjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtaW4td2lkdGg6IDE4MHB4O1xuICBib3gtc2hhZG93OiAwIC0xcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA3KTtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1uYXYgPiB1bCA+IGxpID4gdWwgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41MjA4MzMzMzMzcmVtIDEuMzM5Mjg1NzE0M3JlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyZDMxM2Q7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI3N1aXQtbmF2ID4gdWwgPiBsaSA+IHVsID4gbGkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzg0NTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1uYXYgPiB1bC5zdWl0LW5hdi1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1uYXYgPiB1bC5zdWl0LW5hdi1yaWdodCA+IGxpID4gdWwge1xuICByaWdodDogMDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1zdWItbmF2IHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsICNzdWl0LXN1Yi1uYXYgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAyLjYyNXJlbTtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1zdWItbmF2IHVsID4gbGkgPiBhIHtcbiAgY29sb3I6ICMwZDY0YTI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbiAgcGFkZGluZzogMC44MDEyODIwNTEzcmVtIDRweDtcbiAgbWFyZ2luOiAycHggMC41cmVtIDA7XG4gIG1hcmdpbi1ib3R0b206IC0zcHg7XG59XG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwgI3N1aXQtc3ViLW5hdiB1bCA+IGxpOmZpcnN0LWNoaWxkIGEge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjc3VpdC1zdWItbmF2IHVsID4gbGkuYWN0aXZlIGEge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMTA4MWQyO1xufVxuXG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODNkNGI7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpIGE6aG92ZXIsIGJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI3N1aXQtbmF2ID4gdWwgPiBsaSBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTI4MzA7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGkuYWN0aXZlOmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGNvbG9yOiAjNWQ2NDc4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDAuODVyZW07XG4gIGZvbnQtc2l6ZTogOXB4O1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpLmFjdGl2ZS5oYXMtY2hpbGRyZW46YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjA3OFwiO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpLmFjdGl2ZTpub3QoLmhhcy1jaGlsZHJlbik6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjA1NFwiO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpLmFjdGl2ZSA+IGEsIGJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI3N1aXQtbmF2ID4gdWwgPiBsaS5hY3RpdmUgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGkuYWN0aXZlID4gdWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI3N1aXQtbmF2ID4gdWwgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC42cmVtIDEuMjVyZW07XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGkgPiBhIC5mYSB7XG4gIG1hcmdpbi1yaWdodDogMC43cmVtO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpOm5vdCguYWN0aXZlKSBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGk6bm90KC5hY3RpdmUpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzEzZDtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI3N1aXQtbmF2ID4gdWwgPiBsaTpub3QoLmFjdGl2ZSk6aG92ZXIgPiB1bCB7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA3MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHBhZGRpbmc6IDA7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGk6bm90KC5hY3RpdmUpOmhvdmVyID4gdWwgPiBsaSA+IGEge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpOm5vdCguYWN0aXZlKTpob3ZlciA+IHVsID4gbGkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ2NGM1Yjtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI3N1aXQtbmF2ID4gdWwgPiBsaSA+IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXNpemU6IDEzcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGkgPiB1bCA+IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y2ZjZmNjtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI3N1aXQtbmF2ID4gdWwgPiBsaSA+IHVsID4gbGkuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwgI3N1aXQtbmF2ID4gdWwgPiBsaSA+IHVsID4gbGkuYWN0aXZlIGEge1xuICBib3gtc2hhZG93OiBpbnNldCA0cHggMCAwICMyNzliZWU7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGkgPiB1bCA+IGxpLmFjdGl2ZSBhLCBib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGkgPiB1bCA+IGxpLmFjdGl2ZSBhOmhvdmVyLCBib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGkgPiB1bCA+IGxpLmFjdGl2ZSBhOmZvY3VzIHtcbiAgY29sb3I6ICMyNzliZWU7XG59XG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsICNzdWl0LW5hdiA+IHVsID4gbGkgPiB1bCA+IGxpIGEge1xuICBjb2xvcjogIzY4NzA4NjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNHJlbSAxLjI1cmVtO1xufVxuYm9keS5zdWl0X2xheW91dF92ZXJ0aWNhbCAjc3VpdC1uYXYgPiB1bCA+IGxpID4gdWwgPiBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgY29sb3I6ICMzMDM0M2U7XG59XG5cbmJvZHkuY2hhbmdlLWZvcm0gI2NvbnRhaW5lciBici5jbGVhcjpsYXN0LWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQmVnaW4gRGphbmdvMy4xICovXG4vKiBIaWRlIHRoZSBjaGFuZ2VsaXN0LWZpbHRlciAqL1xuI2NoYW5nZWxpc3QtZmlsdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2NoYW5nZWxpc3QgLmNoYW5nZWxpc3QtZm9ybS1jb250YWluZXIge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLXdpZHRoOiAwO1xufVxuXG5ib2R5LmNoYW5nZS1saXN0ICNjb250YWluZXIgPiBkaXYsIGJvZHkuY2hhbmdlLWZvcm0gI2NvbnRhaW5lciA+IGRpdiB7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuYm9keS5jaGFuZ2UtbGlzdCAjY29udGFpbmVyID4gLm1haW4sIGJvZHkuY2hhbmdlLWZvcm0gI2NvbnRhaW5lciA+IC5tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAxIGF1dG87XG59XG5ib2R5LmNoYW5nZS1saXN0IC5tYWluID4gLmNvbnRlbnQsIGJvZHkuY2hhbmdlLWZvcm0gLm1haW4gPiAuY29udGVudCB7XG4gIGZsZXg6IDEgMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKiBFbmQgRGphbmdvMy4xICovXG4jY29udGVudCB7XG4gIHBhZGRpbmc6IDEuNXJlbSAxLjg3NXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbiNjb250ZW50IC5jb250ZW50LXdyYXAge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuYm9keS5kYXNoYm9hcmQgI2NvbnRlbnQgLmNvbnRlbnQtd3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4jY29udGVudCAuY29udGVudC13cmFwID4gaDEsICNjb250ZW50IC5jb250ZW50LXdyYXAgPiAuaDEge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuI2NvbnRlbnQgLmNvbnRlbnQtd3JhcCA+IGgxOmZpcnN0LWNoaWxkLCAjY29udGVudCAuY29udGVudC13cmFwID4gLmgxOmZpcnN0LWNoaWxkLCAjY29udGVudCAuY29udGVudC13cmFwID4gLm1lc3NhZ2VsaXN0ICsgaDEsICNjb250ZW50IC5jb250ZW50LXdyYXAgPiAubWVzc2FnZWxpc3QgKyAuaDEge1xuICBkaXNwbGF5OiBub25lO1xufVxuI2NvbnRlbnQgI2NvbnRlbnQtbWFpbiB7XG4gIGZsZXgtZ3JvdzogMTtcbn1cbiNjb250ZW50ICNjb250ZW50LXJlbGF0ZWQge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDY7XG59XG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgPiBsaTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDcwcHg7XG59XG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSk6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4jY29udGVudC1tYWluID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSkuYWRkbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNzBweDtcbn1cbiNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKS5hZGRsaW5rOmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBjb250ZW50OiBcIlxcZjA1NVwiO1xufVxuXG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogNjtcbn1cbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGk6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuI3Rvb2xiYXIgPiAub2JqZWN0LXRvb2xzID4gbGkgPiBhOm5vdChbY2xhc3MqPWJ0bi1dKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNzBweDtcbn1cbiN0b29sYmFyID4gLm9iamVjdC10b29scyA+IGxpID4gYTpub3QoW2NsYXNzKj1idG4tXSk6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDcwcHg7XG59XG4jdG9vbGJhciA+IC5vYmplY3QtdG9vbHMgPiBsaSA+IGE6bm90KFtjbGFzcyo9YnRuLV0pLmFkZGxpbms6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGNvbnRlbnQ6IFwiXFxmMDU1XCI7XG59XG5cbi8qIFN0aWNreSBmb290ZXIgc3R5bGVzICAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIGh0bWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsLCBib2R5LmxvZ2luIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2NnB4O1xuICB9XG4gIGJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCAjZm9vdGVyLCBib2R5LmxvZ2luICNmb290ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA2NnB4O1xuICAgIG1hcmdpbi10b3A6IC02NnB4O1xuICB9XG59XG4vKiBTdHlsZXMgKi9cbi5mb290ZXIge1xuICBtaW4taGVpZ2h0OiA2NnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbn1cbi5mb290ZXIgPiAuY29udGFpbmVyLWZsdWlkLCAuZm9vdGVyID4gLmNvbnRhaW5lci1zbSwgLmZvb3RlciA+IC5jb250YWluZXItbWQsIC5mb290ZXIgPiAuY29udGFpbmVyLWxnLCAuZm9vdGVyID4gLmNvbnRhaW5lci14bCwgLmZvb3RlciA+IC5jb250YWluZXIteHhsIHtcbiAgcGFkZGluZzogMXJlbSAxLjg3NXJlbTtcbn1cbi5mb290ZXIgPiAuY29udGFpbmVyLWZsdWlkID4gLnJvdywgLmZvb3RlciA+IC5jb250YWluZXItc20gPiAucm93LCAuZm9vdGVyID4gLmNvbnRhaW5lci1tZCA+IC5yb3csIC5mb290ZXIgPiAuY29udGFpbmVyLWxnID4gLnJvdywgLmZvb3RlciA+IC5jb250YWluZXIteGwgPiAucm93LCAuZm9vdGVyID4gLmNvbnRhaW5lci14eGwgPiAucm93IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuZm9vdGVyID4gLmNvbnRhaW5lci1mbHVpZCA+IC5yb3cgPiBkaXY6bm90KDpmaXJzdC1jaGlsZCksIC5mb290ZXIgPiAuY29udGFpbmVyLXNtID4gLnJvdyA+IGRpdjpub3QoOmZpcnN0LWNoaWxkKSwgLmZvb3RlciA+IC5jb250YWluZXItbWQgPiAucm93ID4gZGl2Om5vdCg6Zmlyc3QtY2hpbGQpLCAuZm9vdGVyID4gLmNvbnRhaW5lci1sZyA+IC5yb3cgPiBkaXY6bm90KDpmaXJzdC1jaGlsZCksIC5mb290ZXIgPiAuY29udGFpbmVyLXhsID4gLnJvdyA+IGRpdjpub3QoOmZpcnN0LWNoaWxkKSwgLmZvb3RlciA+IC5jb250YWluZXIteHhsID4gLnJvdyA+IGRpdjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgfVxufVxuLmZvb3RlciAuZm9vdGVyLWxpbmtzIGEge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmZvb3RlciAuZm9vdGVyLWxpbmtzIGE6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cblxuLyogT3ZlcnJpZGUgQlM0IFtoaWRkZW5dIGluIHJlYm9vdC5zY3NzIHRvIHNob3cgRGphbmdvIGRlYnVnIHRvb2xiYXIgKi9cbiNkakRlYnVnW2hpZGRlbl0sICNkakRlYnVnIFtoaWRkZW5dW3N0eWxlKj1cImRpc3BsYXk6IGJsb2NrXCJdLCAjZGpEZWJ1ZyBbaGlkZGVuXVtzdHlsZSo9XCJkaXNwbGF5OmJsb2NrXCJdIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmxvZ2luICNjb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAyOGVtO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubG9naW4gI2NvbnRhaW5lciB7XG4gICAgbWluLXdpZHRoOiA0MDBweDtcbiAgICBtYXJnaW4tdG9wOiAxNXZoO1xuICB9XG59XG5cbmJvZHkubG9naW4gc3ZnICoge1xuICBmaWxsOiAjMjEyNTI5O1xufVxuYm9keS5sb2dpbiAuc3VpdC1sb2dpbi1ncmFwaGljIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMnJlbSBhdXRvIDEuNXJlbTtcbn1cbmJvZHkubG9naW4gI2NvbnRlbnQge1xuICBwYWRkaW5nOiAxLjVyZW07XG59XG5ib2R5LmxvZ2luICNjb250ZW50IC5lcnJvcm5vdGUge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IDA7XG59XG5ib2R5LmxvZ2luICNoZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbn1cbmJvZHkubG9naW4gI2hlYWRlciAjYnJhbmRpbmcge1xuICBwYWRkaW5nOiAwO1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5ib2R5LmxvZ2luICNoZWFkZXIgI2JyYW5kaW5nICNzaXRlLW5hbWUge1xuICBtYXJnaW46IDAgYXV0bztcbn1cbmJvZHkubG9naW4gI2hlYWRlciAjYnJhbmRpbmcgI3NpdGUtbmFtZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDIuMjVyZW07XG59XG5ib2R5LmxvZ2luICNoZWFkZXIgI2JyYW5kaW5nICNzaXRlLW5hbWUgYSwgYm9keS5sb2dpbiAjaGVhZGVyICNicmFuZGluZyAjc2l0ZS1uYW1lIGE6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbn1cbmJvZHkubG9naW4gI2hlYWRlciAjYnJhbmRpbmcgI3NpdGUtbmFtZSBhIC5oZWFkZXItbGFiZWwge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDAuM3JlbTtcbn1cbmJvZHkubG9naW4gLmVycm9ybGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMC41cmVtIDAuNzVyZW0gMS41cmVtO1xuICBjb2xvcjogI2E5NDQ0Mjtcbn1cbmJvZHkubG9naW4gLmZvcm0tcm93IGlucHV0Om5vdChbdHlwZT1oaWRkZW5dKSB7XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC44NTcxNDI4NTcxcmVtO1xufVxuYm9keS5sb2dpbiAuZm9ybS1yb3cgaW5wdXQ6bm90KFt0eXBlPWhpZGRlbl0pOm5vdCg6Zm9jdXMpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLWNvbG9yOiAjZjFmMWYxO1xufVxuYm9keS5sb2dpbiAuZm9ybS1yb3cuaGFzLWRhbmdlciBpbnB1dDpub3QoW3R5cGU9aGlkZGVuXSkge1xuICBib3JkZXItY29sb3I6ICNhOTQ0NDI7XG59XG5ib2R5LmxvZ2luIC5zdWJtaXQtcm93IGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmJvZHkubG9naW4gLnN1Ym1pdC1yb3cgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEuNXJlbSAwIDAgMDtcbiAgYm9yZGVyOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xufVxuXG5ib2R5LmRhc2hib2FyZCAubW9kdWxlIHtcbiAgbWFyZ2luOiAwIDEuODc1cmVtIDAuOTM3NXJlbSAwO1xufVxuYm9keS5kYXNoYm9hcmQgLm1vZHVsZSB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItc3BhY2luZzogMXB4O1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xufVxuYm9keS5kYXNoYm9hcmQgLm1vZHVsZSB0YWJsZSBjYXB0aW9uIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS4yODZyZW07XG4gIHBhZGRpbmc6IDA7XG59XG5ib2R5LmRhc2hib2FyZCAubW9kdWxlIHRhYmxlIHRyIHRkLCBib2R5LmRhc2hib2FyZCAubW9kdWxlIHRhYmxlIHRyIHRoIHtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbiAgcGFkZGluZzogMC40cmVtIDAuOHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbn1cbmJvZHkuZGFzaGJvYXJkIC5tb2R1bGUgdGFibGUgdHIgdGgge1xuICB3aWR0aDogMjAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5ib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIGgyLCBib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIC5oMiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIGgzLCBib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4yODZyZW07XG59XG5ib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIHVsLmFjdGlvbmxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5ib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIHVsLmFjdGlvbmxpc3QgPiBsaSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gIG1hcmdpbi1ib3R0b206IDFweDtcbiAgcGFkZGluZzogMC40cmVtIDAuOHJlbTtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAyLjhyZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5ib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIHVsLmFjdGlvbmxpc3QgPiBsaSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgY29sb3I6ICM5Y2EzYTk7XG4gIGZvbnQtc2l6ZTogMC44NTdyZW07XG59XG5ib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIHVsLmFjdGlvbmxpc3QgPiBsaSBiciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5LmRhc2hib2FyZCAjcmVjZW50LWFjdGlvbnMtbW9kdWxlIHVsLmFjdGlvbmxpc3QgPiBsaTpiZWZvcmUge1xuICBtaW4td2lkdGg6IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2YxZjFmMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nLXRvcDogMC40cmVtO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbn1cbmJvZHkuZGFzaGJvYXJkIC5hZGRsaW5rOmJlZm9yZSwgYm9keS5kYXNoYm9hcmQgLmNoYW5nZWxpbms6YmVmb3JlLCBib2R5LmRhc2hib2FyZCAuZGVsZXRlbGluazpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6IDEuMnJlbTtcbn1cbmJvZHkuZGFzaGJvYXJkIC5hZGRsaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XG4gIGNvbG9yOiAjNEFDQjY4O1xufVxuYm9keS5kYXNoYm9hcmQgLmNoYW5nZWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDBcIjtcbiAgY29sb3I6ICNGM0M1NDQ7XG59XG5ib2R5LmRhc2hib2FyZCAuZGVsZXRlbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICBjb2xvcjogI0UwNEYzQztcbn1cblxuI2NoYW5nZWxpc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI2NoYW5nZWxpc3QuZmlsdGVyZWQge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuI2NoYW5nZWxpc3QuZmlsdGVyZWQgI3Rvb2xiYXIge1xuICBmbGV4OiAxMDtcbiAgZmxleC1iYXNpczogMTAwJTtcbn1cbiNjaGFuZ2VsaXN0LmZpbHRlcmVkICNjaGFuZ2VsaXN0LWZpbHRlcjpub3QoOmVtcHR5KSB7XG4gIGZsZXgtYmFzaXM6IDE1cmVtO1xuICBvcmRlcjogMztcbn1cbiNjaGFuZ2VsaXN0LmZpbHRlcmVkICNjaGFuZ2VsaXN0LWZpbHRlcjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1maWx0ZXI6bm90KDplbXB0eSkgKyAjY2hhbmdlbGlzdC1mb3JtIHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG59XG4jY2hhbmdlbGlzdCAjdG9vbGJhciAjY2hhbmdlbGlzdC1zZWFyY2ggaW5wdXRbdHlwZT1zdWJtaXRdOmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBjb250ZW50OiBcIlxcZjA1NVwiO1xufVxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIGlucHV0W3R5cGU9dGV4dF0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTtcbn1cbiNjaGFuZ2VsaXN0ICN0b29sYmFyICNjaGFuZ2VsaXN0LXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBjb250ZW50OiBcIlxcZjA2N1wiO1xufVxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIHNlbGVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xufVxuI2NoYW5nZWxpc3QgI3Rvb2xiYXIgI2NoYW5nZWxpc3Qtc2VhcmNoIC5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC45MjlyZW07XG59XG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1maWx0ZXIge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAxNXJlbTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbn1cbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZpbHRlciBoMiwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZmlsdGVyIC5oMiB7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZpbHRlciBoMywgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZmlsdGVyIC5oMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZDY0Nzg7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDAuOTI5cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwLjQ2ODc1cmVtIDAuNjI1cmVtO1xuICBtYXJnaW46IDA7XG59XG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1maWx0ZXIgdWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1maWx0ZXIgdWwgbGkge1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBtYXJnaW4tbGVmdDogLTNweDtcbn1cbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZpbHRlciB1bCBsaS5zZWxlY3RlZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMTA4MWQyO1xufVxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZmlsdGVyIHVsIGxpLnNlbGVjdGVkIGEge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1maWx0ZXIgdWwgbGkgYSB7XG4gIHBhZGRpbmc6IDAuMXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0ge1xuICBmbGV4OiAxO1xufVxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyB7XG4gIG1hcmdpbjogLTAuNXJlbSAwIDFyZW0gMDtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xufVxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9uc1tzdHlsZSo9YmxvY2tdIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBidXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLmFjdGlvbnMgc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAyLjA1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHNwYW4uYWxsLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzcGFuLmFjdGlvbi1jb3VudGVyLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzcGFuLmNsZWFyLFxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAuYWN0aW9ucyBzcGFuLnF1ZXN0aW9uIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBtYXJnaW46IDAgMC41ZW07XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3VpdF90b2dnbGVfY2hhbmdlbGlzdF90b3BfYWN0aW9ucyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5hY3Rpb25zIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnJlc3VsdHMgKyAuYWN0aW9ucyB7XG4gIG1hcmdpbjogMXJlbSAwIDA7XG59XG4uc3VpdF90b2dnbGVfY2hhbmdlbGlzdF90b3BfYWN0aW9ucyAjY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5yZXN1bHRzICsgLmFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgZm9udC1zaXplOiAwLjkyOXJlbTtcbn1cbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBhOm5vdCguc2hvd2FsbCksICNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBzcGFuIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWluLXdpZHRoOiAyLjNyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IC0wLjFyZW07XG59XG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3IgYTpub3QoLnNob3dhbGwpLmVuZCwgI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIHNwYW4uZW5kIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuI2NoYW5nZWxpc3QgI2NoYW5nZWxpc3QtZm9ybSAucGFnaW5hdG9yIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4jY2hhbmdlbGlzdCAjY2hhbmdlbGlzdC1mb3JtIC5wYWdpbmF0b3Igc3Bhbi50aGlzLXBhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWQ2NDc4O1xuICBjb2xvcjogI2ZmZjtcbn1cbiNjaGFuZ2VsaXN0ICNjaGFuZ2VsaXN0LWZvcm0gLnBhZ2luYXRvciBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi10b3A6IC0wLjc1cmVtO1xufVxuI2NoYW5nZWxpc3QgLnhmdWxsIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbn1cbiNjaGFuZ2VsaXN0IC50b3BsaW5rcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxN3JlbTtcbn1cbiNjaGFuZ2VsaXN0IC50b3BsaW5rcyBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiNjaGFuZ2VsaXN0IC50b3BsaW5rcyBsaSBhIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI4cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5vYmplY3QtdG9vbHMgKyAjY2hhbmdlbGlzdC5maWx0ZXJlZCAjdG9vbGJhciB7XG4gIG1hcmdpbi10b3A6IC0zLjVyZW07XG59XG5cbmJvZHkuY2hhbmdlLWxpc3QgI2NvbnRlbnQtbWFpbiAub2JqZWN0LXRvb2xzIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIG1pbi1oZWlnaHQ6IDJyZW07XG59XG5ib2R5LmNoYW5nZS1saXN0IC5oaWRkZW5maWVsZHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5LmNoYW5nZS1mb3JtICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAtMi44NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmJvZHkuY2hhbmdlLWZvcm0gI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5ib2R5LmNoYW5nZS1mb3JtICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzIGxpLmxpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5LmNoYW5nZS1mb3JtICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzICsgZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xuICBjbGVhcjogYm90aDtcbn1cbmJvZHkuY2hhbmdlLWZvcm0gLmVkaXQtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuYm9keS5jaGFuZ2UtZm9ybSAuZWRpdC1yb3cgPiBkaXYge1xuICBtYXJnaW46IDAgMC45Mzc1cmVtO1xufVxuYm9keS5jaGFuZ2UtZm9ybTpub3QoLnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQpIC5lZGl0LXJvdyA+IGRpdi5jb2wtbGVmdCwgYm9keS5jaGFuZ2UtZm9ybTpub3QoLnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQpIC5lZGl0LXJvdyA+IGRpdi5jb2wtcmlnaHQge1xuICBmbGV4OiAxO1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuYm9keS5jaGFuZ2UtZm9ybTpub3QoLnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQpIC5lZGl0LXJvdyA+IGRpdi5jb2wtcmlnaHQgLm9iamVjdC10b29scyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5LmNoYW5nZS1mb3JtLnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgI2NvbnRlbnQtbWFpbiA+IC5vYmplY3QtdG9vbHMge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuYm9keS5jaGFuZ2UtZm9ybS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0ICNjb250ZW50LW1haW4gPiAub2JqZWN0LXRvb2xzIGxpLmhlYWRpbmcge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGJvZHkuY2hhbmdlLWZvcm0uc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAjY29udGVudC1tYWluID4gLm9iamVjdC10b29scyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuYm9keS5jaGFuZ2UtZm9ybS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5lZGl0LXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5ib2R5LmNoYW5nZS1mb3JtLnN1aXRfZm9ybV9zdWJtaXRfb25fcmlnaHQgLmVkaXQtcm93ID4gZGl2IHtcbiAgbWFyZ2luOiAwIDAuOTM3NXJlbTtcbn1cbmJvZHkuY2hhbmdlLWZvcm0uc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAuZWRpdC1yb3cgPiBkaXYuY29sLWxlZnQge1xuICBmbGV4OiAxO1xufVxuYm9keS5jaGFuZ2UtZm9ybS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5lZGl0LXJvdyA+IGRpdi5jb2wtcmlnaHQge1xuICB3aWR0aDogMjIlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIGJvZHkuY2hhbmdlLWZvcm0uc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCAuZWRpdC1yb3cgPiBkaXYuY29sLXJpZ2h0IHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgYm9keS5jaGFuZ2UtZm9ybS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5lZGl0LXJvdyA+IGRpdi5jb2wtcmlnaHQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsZXg6IDE7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgfVxufVxuXG50YWJsZSNjaGFuZ2UtaGlzdG9yeSB0aGVhZCA+IHRyIHRoIHtcbiAgcGFkZGluZzogMC43cmVtIDAuOHJlbSAhaW1wb3J0YW50O1xufSIsIi8qIVxyXG4gKiBCb290c3RyYXAgdjUuMC4yIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxyXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9yc1xyXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFR3aXR0ZXIsIEluYy5cclxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXHJcbiAqL1xyXG5cclxuLy8gMS4gSW5jbHVkZSBmdW5jdGlvbnMgZmlyc3QgKHNvIHlvdSBjYW4gbWFuaXB1bGF0ZSBjb2xvcnMsIFNWR3MsIGNhbGMsIGV0YylcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcclxuXHJcbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcclxuLy9AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlc1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGluc1wiO1xyXG5cclxuLy8gUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xyXG4vL0BpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3Mvbm9ybWFsaXplXCI7XHJcbi8vQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9wcmludFwiO1xyXG5cclxuLy8gQ29yZSBDU1NcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9yb290XCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvcmVib290XCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdHlwZVwiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2ltYWdlc1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2NvbnRhaW5lcnNcIjtcclxuLy9AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2NvZGVcIjtcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ncmlkXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdGFibGVzXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXNcIjtcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9idXR0b25zXCI7XHJcblxyXG4vLyBDb21wb25lbnRzXHJcbi8vQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9hbmltYXRpb25cIjtcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9kcm9wZG93blwiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2J1dHRvbi1ncm91cFwiO1xyXG4vL0BpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaW5wdXQtZ3JvdXBcIjtcclxuLy9AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2N1c3RvbS1mb3Jtc1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL25hdlwiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL25hdmJhclwiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2NhcmRcIjtcclxuLy9AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2JyZWFkY3J1bWJcIjtcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9wYWdpbmF0aW9uXCI7XHJcbi8vQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy90YWdzXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYmFkZ2VcIjtcclxuLy9AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2p1bWJvdHJvblwiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2FsZXJ0XCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvcHJvZ3Jlc3NcIjtcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy90cmFuc2l0aW9uc1wiO1xyXG4vL0BpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWVkaWFcIjtcclxuLy9AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2xpc3QtZ3JvdXBcIjtcclxuLy9AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3Jlc3BvbnNpdmUtZW1iZWRcIjtcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9jbG9zZVwiO1xyXG5cclxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbW9kYWxcIjtcclxuQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy90b29sdGlwXCI7XHJcbi8vQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9wb3BvdmVyXCI7XHJcbi8vQGltcG9ydCBcIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9jYXJvdXNlbFwiO1xyXG5cclxuLy8gVXRpbGl0eSBjbGFzc2VzXHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVyc1wiO1xyXG4iLCI6cm9vdCB7XG4gIC8vIE5vdGU6IEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuXG4gIC8vIENvbG9yc1xuICAvL1xuICAvLyBHZW5lcmF0ZSBwYWxldHRlcyBmb3IgZnVsbCBjb2xvcnMsIGdyYXlzLCBhbmQgdGhlbWUgY29sb3JzLlxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGdyYXlzIHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmF5LSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXJnYiB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skY29sb3J9LXJnYjogI3skdmFsdWV9O1xuICB9XG5cbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9d2hpdGUtcmdiOiAje3RvLXJnYigkd2hpdGUpfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9YmxhY2stcmdiOiAje3RvLXJnYigkYmxhY2spfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yKX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZyl9O1xuXG4gIC8vIEZvbnRzXG5cbiAgLy8gTm90ZTogVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudDogI3skZ3JhZGllbnR9O1xuXG4gIC8vIFJvb3QgYW5kIGJvZHlcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUgY3VzdG9tLXByb3BlcnR5LWVtcHR5LWxpbmUtYmVmb3JlXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWJvZHktdmFyaWFibGVzXG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9cm9vdC1mb250LXNpemU6ICN7JGZvbnQtc2l6ZS1yb290fTtcbiAgfVxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWZvbnQtZmFtaWx5OiAjeyRmb250LWZhbWlseS1iYXNlfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1mb250LXNpemU6ICN7JGZvbnQtc2l6ZS1iYXNlfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtYmFzZX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktbGluZS1oZWlnaHQ6ICN7JGxpbmUtaGVpZ2h0LWJhc2V9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgQGlmICRib2R5LXRleHQtYWxpZ24gIT0gbnVsbCB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS10ZXh0LWFsaWduOiAjeyRib2R5LXRleHQtYWxpZ259O1xuICB9XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9keS12YXJpYWJsZXNcbiAgLy8gc3R5bGVsaW50LWVuYWJsZSBjdXN0b20tcHJvcGVydHktZW1wdHktbGluZS1iZWZvcmVcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuXG4vLyBSb290XG4vL1xuLy8gQWJpbGl0eSB0byB0aGUgdmFsdWUgb2YgdGhlIHJvb3QgZm9udCBzaXplcywgYWZmZWN0aW5nIHRoZSB2YWx1ZSBvZiBgcmVtYC5cbi8vIG51bGwgYnkgZGVmYXVsdCwgdGh1cyBub3RoaW5nIGlzIGdlbmVyYXRlZC5cblxuOnJvb3Qge1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXJvb3QtZm9udC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXNtb290aC1zY3JvbGwge1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuLy8gNC4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZWJvb3QtYm9keS1ydWxlc1xuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktZm9udC1mYW1pbHkpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1saW5lLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1jb2xvcik7XG4gIHRleHQtYWxpZ246IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LXRleHQtYWxpZ24pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1iZyk7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA0XG59XG4vLyBzY3NzLWRvY3MtZW5kIHJlYm9vdC1ib2R5LXJ1bGVzXG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIFJlc2V0IEZpcmVmb3gncyBncmF5IGNvbG9yXG4vLyAyLiBTZXQgY29ycmVjdCBoZWlnaHQgYW5kIHByZXZlbnQgdGhlIGBzaXplYCBhdHRyaWJ1dGUgdG8gbWFrZSB0aGUgYGhyYCBsb29rIGxpa2UgYW4gaW5wdXQgZmllbGRcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuaHI6bm90KFtzaXplXSkge1xuICBoZWlnaHQ6ICRoci1oZWlnaHQ7IC8vIDJcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtYnMtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLWJzLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDRcbn1cblxuXG4vLyBBZGRyZXNzXG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5cbi8vIExpc3RzXG5cbm9sLFxudWwge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG4vLyAxLiBVbmRvIGJyb3dzZXIgZGVmYXVsdFxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gMVxufVxuXG5cbi8vIEJsb2NrcXVvdGVcblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gU3Ryb25nXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7XG59XG5cblxuLy8gU21hbGxcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbn1cblxuXG4vLyBNYXJrXG5cbm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vLyBTdWIgYW5kIFN1cFxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc3ViLXN1cC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vIExpbmtzXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgJixcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ29kZVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgZGlyZWN0aW9uOiBsdHIgI3tcIi8qIHJ0bDppZ25vcmUgKi9cIn07XG4gIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTtcbn1cblxuLy8gMS4gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4vLyAyLiBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuLy8gMy4gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206IDFyZW07IC8vIDJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG5cbmltZyxcbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xuXG50YWJsZSB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcblxudGgge1xuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290LFxudHIsXG50ZCxcbnRoIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cblxuLy8gRm9ybXNcbi8vXG4vLyAxLiBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbiAgd29yZC13cmFwOiBub3JtYWw7XG5cbiAgLy8gVW5kbyB0aGUgb3BhY2l0eSBjaGFuZ2UgZnJvbSBDaHJvbWVcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLyBSZW1vdmUgdGhlIGRyb3Bkb3duIGFycm93IGluIENocm9tZSBmcm9tIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cy5cbi8vIFNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNTQ5OTcxMThcblxuW2xpc3RdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAzLiBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcblxuICBAaWYgJGVuYWJsZS1idXR0b24tcG9pbnRlcnMge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vLyAxLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLy8gMVxufVxuXG4vLyAxLiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuLy8gICAgdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4vLyAgICBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuLy8gICAgYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuLy8gMi4gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAyXG4gIGJvcmRlcjogMDsgLy8gMlxufVxuXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50LlxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXG4vLyAyLiBGaXggd3JhcHBpbmcgYnVnLlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcblxubGVnZW5kIHtcbiAgZmxvYXQ6IGxlZnQ7IC8vIDFcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsZWdlbmQtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWdlbmQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICsgKiB7XG4gICAgY2xlYXI6IGxlZnQ7IC8vIDJcbiAgfVxufVxuXG4vLyBGaXggaGVpZ2h0IG9mIGlucHV0cyB3aXRoIGEgdHlwZSBvZiBkYXRldGltZS1sb2NhbCwgZGF0ZSwgbW9udGgsIHdlZWssIG9yIHRpbWVcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4ODQyXG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuLy8gMi4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAyXG59XG5cbi8vIDEuIEEgZmV3IGlucHV0IHR5cGVzIHNob3VsZCBzdGF5IExUUlxuLy8gU2VlIGh0dHBzOi8vcnRsc3R5bGluZy5jb20vcG9zdHMvcnRsLXN0eWxpbmcjZm9ybS1pbnB1dHNcbi8vIDIuIFJUTCBvbmx5IG91dHB1dFxuLy8gU2VlIGh0dHBzOi8vcnRsY3NzLmNvbS9sZWFybi91c2FnZS1ndWlkZS9jb250cm9sLWRpcmVjdGl2ZXMvI3Jhd1xuXG4vKiBydGw6cmF3OlxuW3R5cGU9XCJ0ZWxcIl0sXG5bdHlwZT1cInVybFwiXSxcblt0eXBlPVwiZW1haWxcIl0sXG5bdHlwZT1cIm51bWJlclwiXSB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuKi9cblxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFJlbW92ZSBwYWRkaW5nIGFyb3VuZCBjb2xvciBwaWNrZXJzIGluIHdlYmtpdCBicm93c2Vyc1xuXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG5cbi8vIEluaGVyaXQgZm9udCBmYW1pbHkgYW5kIGxpbmUgaGVpZ2h0IGZvciBmaWxlIGlucHV0IGJ1dHRvbnNcblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbi8vIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMVxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBSZW1vdmUgYm9yZGVyIGZyb20gaWZyYW1lXG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gU3VtbWFyeVxuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyAxXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG4vLyBQcm9ncmVzc1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5cbi8vIEhpZGRlbiBhdHRyaWJ1dGVcbi8vXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlLlxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIHZhbHVlcyBmb3IgZm9udCBzaXplcywgcGFkZGluZ3MsIG1hcmdpbnMgYW5kIG11Y2ggbW9yZVxuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvbWFpbi9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgdmFsdWVcbiRyZnMtYmFzZS12YWx1ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy11bml0ICE9IHJlbSBhbmQgJHJmcy11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSB2YWx1ZXMgc3RhcnQgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgdmFsdWVzIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gbnVtYmVyIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gTW9kZS4gUG9zc2liaWxpdGllczogXCJtaW4tbWVkaWEtcXVlcnlcIiwgXCJtYXgtbWVkaWEtcXVlcnlcIlxuJHJmcy1tb2RlOiBtaW4tbWVkaWEtcXVlcnkgIWRlZmF1bHQ7XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZnMgdG8gZmFsc2VcbiRlbmFibGUtcmZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtdmFsdWUgdW5pdFxuJHJmcy1iYXNlLXZhbHVlLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLXZhbHVlKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHB4IHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSByZW0ge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsIGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHB4IHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSByZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCBkaXZpZGUoJHJmcy1icmVha3BvaW50ICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgbWVkaWEgcXVlcnkgdmFsdWVcbiRyZnMtbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuJHJmcy1tcS1wcm9wZXJ0eS13aWR0aDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LXdpZHRoLCBtaW4td2lkdGgpO1xuJHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHQ6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC1oZWlnaHQsIG1pbi1oZWlnaHQpO1xuXG4vLyBJbnRlcm5hbCBtaXhpbiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBtZWRpYSBxdWVyeSBuZWVkcyB0byBiZSB1c2VkXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSwgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIGFuZCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1ydWxlIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSwgd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBwcm9wZXJ0eVxuICAgICYsXG4gICAgLmRpc2FibGUtcmZzICYsXG4gICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgIC5lbmFibGUtcmZzICYsXG4gICAgJi5lbmFibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGVuYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcblxuICBAaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgLmVuYWJsZS1yZnMgJixcbiAgICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgZm9ybWF0dGVkIG5vbi1yZXNwb25zaXZlIHZhbHVlXG5AZnVuY3Rpb24gcmZzLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogJyc7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyAnIDAnO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgQGlmICR1bml0ID09IHB4IHtcbiAgICAgICAgLy8gQ29udmVydCB0byByZW0gaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAkcmZzLXJlbS12YWx1ZSl9cmVtLCAkdmFsdWUpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHVuaXQgPT0gcmVtIHtcbiAgICAgICAgLy8gQ29udmVydCB0byBweCBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSByZXNwb25zaXZlIHZhbHVlIGNhbGN1bGF0ZWQgYnkgUkZTXG5AZnVuY3Rpb24gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogJyc7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyAnIDAnO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgIEBpZiBub3QgJHVuaXQgb3IgJHVuaXQgIT0gcHggYW5kICR1bml0ICE9IHJlbSB7XG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWV9cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtbWluOiAkcmZzLWJhc2UtdmFsdWUgKyBkaXZpZGUoYWJzKCR2YWx1ZSkgLSAkcmZzLWJhc2UtdmFsdWUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJHZhbHVlIGFuZCB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1kaWZmOiBhYnMoJHZhbHVlKSAtICR2YWx1ZS1taW47XG5cbiAgICAgICAgICAvLyBCYXNlIHZhbHVlIGZvcm1hdHRpbmdcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZS1taW59cHgpO1xuXG4gICAgICAgICAgLy8gVXNlIG5lZ2F0aXZlIHZhbHVlIGlmIG5lZWRlZFxuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCR2YWx1ZSA8IDAsIC0kbWluLXdpZHRoLCAkbWluLXdpZHRoKTtcblxuICAgICAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICAgICAkdmFyaWFibGUtd2lkdGg6ICN7ZGl2aWRlKCR2YWx1ZS1kaWZmICogMTAwLCAkcmZzLWJyZWFrcG9pbnQpfSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAgICAgLy8gUmV0dXJuIHRoZSBjYWxjdWxhdGVkIHZhbHVlXG4gICAgICAgICAgJHZhbDogJHZhbCArICcgY2FsYygnICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsICcgLSAnLCAnICsgJykgKyAkdmFyaWFibGUtd2lkdGggKyAnKSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkVmFsOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcyk7XG5cbiAgICAvLyBEbyBub3QgcHJpbnQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHJlc3BvbnNpdmUgJiBub24tcmVzcG9uc2l2ZSB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgQGlmICR2YWwgPT0gJGZsdWlkVmFsIHtcbiAgICAgICN7JHByb3BlcnR5fTogJHZhbDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgX3Jmcy1ydWxlIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkdmFsLCAkZmx1aWRWYWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWRWYWwsICR2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBTaG9ydGhhbmQgaGVscGVyIG1peGluc1xuQG1peGluIGZvbnQtc2l6ZSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nKTtcbn1cblxuQG1peGluIHBhZGRpbmctdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXRvcCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXJpZ2h0KTtcbn1cblxuQG1peGluIHBhZGRpbmctYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctbGVmdCk7XG59XG5cbkBtaXhpbiBtYXJnaW4oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbik7XG59XG5cbkBtaXhpbiBtYXJnaW4tdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tdG9wKTtcbn1cblxuQG1peGluIG1hcmdpbi1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXJpZ2h0KTtcbn1cblxuQG1peGluIG1hcmdpbi1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1ib3R0b20pO1xufVxuXG5AbWl4aW4gbWFyZ2luLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1sZWZ0KTtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvci12YXJpYWJsZXNcbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvci12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvcnMtbWFwXG4kZ3JheXM6IChcbiAgXCIxMDBcIjogJGdyYXktMTAwLFxuICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgXCI0MDBcIjogJGdyYXktNDAwLFxuICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgXCI3MDBcIjogJGdyYXktNzAwLFxuICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gIFwiOTAwXCI6ICRncmF5LTkwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvcnMtbWFwXG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItdmFyaWFibGVzXG4kYmx1ZTogICAgIzBkNmVmZCAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2Q2MzM4NCAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMTk4NzU0ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzBkY2FmMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvcnMtbWFwXG4kY29sb3JzOiAoXG4gIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvcnMtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvci12YXJpYWJsZXNcbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiR0aGVtZS1jb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICBcImluZm9cIjogICAgICAgJGluZm8sXG4gIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFya1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLXJnYlxuJHRoZW1lLWNvbG9ycy1yZ2I6IG1hcC1sb29wKCR0aGVtZS1jb2xvcnMsIHRvLXJnYiwgXCIkdmFsdWVcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1yZ2JcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuXG4kYmx1ZXM6IChcbiAgXCJibHVlLTEwMFwiOiAkYmx1ZS0xMDAsXG4gIFwiYmx1ZS0yMDBcIjogJGJsdWUtMjAwLFxuICBcImJsdWUtMzAwXCI6ICRibHVlLTMwMCxcbiAgXCJibHVlLTQwMFwiOiAkYmx1ZS00MDAsXG4gIFwiYmx1ZS01MDBcIjogJGJsdWUtNTAwLFxuICBcImJsdWUtNjAwXCI6ICRibHVlLTYwMCxcbiAgXCJibHVlLTcwMFwiOiAkYmx1ZS03MDAsXG4gIFwiYmx1ZS04MDBcIjogJGJsdWUtODAwLFxuICBcImJsdWUtOTAwXCI6ICRibHVlLTkwMFxuKSAhZGVmYXVsdDtcblxuJGluZGlnb3M6IChcbiAgXCJpbmRpZ28tMTAwXCI6ICRpbmRpZ28tMTAwLFxuICBcImluZGlnby0yMDBcIjogJGluZGlnby0yMDAsXG4gIFwiaW5kaWdvLTMwMFwiOiAkaW5kaWdvLTMwMCxcbiAgXCJpbmRpZ28tNDAwXCI6ICRpbmRpZ28tNDAwLFxuICBcImluZGlnby01MDBcIjogJGluZGlnby01MDAsXG4gIFwiaW5kaWdvLTYwMFwiOiAkaW5kaWdvLTYwMCxcbiAgXCJpbmRpZ28tNzAwXCI6ICRpbmRpZ28tNzAwLFxuICBcImluZGlnby04MDBcIjogJGluZGlnby04MDAsXG4gIFwiaW5kaWdvLTkwMFwiOiAkaW5kaWdvLTkwMFxuKSAhZGVmYXVsdDtcblxuJHB1cnBsZXM6IChcbiAgXCJwdXJwbGUtMTAwXCI6ICRwdXJwbGUtMjAwLFxuICBcInB1cnBsZS0yMDBcIjogJHB1cnBsZS0xMDAsXG4gIFwicHVycGxlLTMwMFwiOiAkcHVycGxlLTMwMCxcbiAgXCJwdXJwbGUtNDAwXCI6ICRwdXJwbGUtNDAwLFxuICBcInB1cnBsZS01MDBcIjogJHB1cnBsZS01MDAsXG4gIFwicHVycGxlLTYwMFwiOiAkcHVycGxlLTYwMCxcbiAgXCJwdXJwbGUtNzAwXCI6ICRwdXJwbGUtNzAwLFxuICBcInB1cnBsZS04MDBcIjogJHB1cnBsZS04MDAsXG4gIFwicHVycGxlLTkwMFwiOiAkcHVycGxlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHBpbmtzOiAoXG4gIFwicGluay0xMDBcIjogJHBpbmstMTAwLFxuICBcInBpbmstMjAwXCI6ICRwaW5rLTIwMCxcbiAgXCJwaW5rLTMwMFwiOiAkcGluay0zMDAsXG4gIFwicGluay00MDBcIjogJHBpbmstNDAwLFxuICBcInBpbmstNTAwXCI6ICRwaW5rLTUwMCxcbiAgXCJwaW5rLTYwMFwiOiAkcGluay02MDAsXG4gIFwicGluay03MDBcIjogJHBpbmstNzAwLFxuICBcInBpbmstODAwXCI6ICRwaW5rLTgwMCxcbiAgXCJwaW5rLTkwMFwiOiAkcGluay05MDBcbikgIWRlZmF1bHQ7XG5cbiRyZWRzOiAoXG4gIFwicmVkLTEwMFwiOiAkcmVkLTEwMCxcbiAgXCJyZWQtMjAwXCI6ICRyZWQtMjAwLFxuICBcInJlZC0zMDBcIjogJHJlZC0zMDAsXG4gIFwicmVkLTQwMFwiOiAkcmVkLTQwMCxcbiAgXCJyZWQtNTAwXCI6ICRyZWQtNTAwLFxuICBcInJlZC02MDBcIjogJHJlZC02MDAsXG4gIFwicmVkLTcwMFwiOiAkcmVkLTcwMCxcbiAgXCJyZWQtODAwXCI6ICRyZWQtODAwLFxuICBcInJlZC05MDBcIjogJHJlZC05MDBcbikgIWRlZmF1bHQ7XG5cbiRvcmFuZ2VzOiAoXG4gIFwib3JhbmdlLTEwMFwiOiAkb3JhbmdlLTEwMCxcbiAgXCJvcmFuZ2UtMjAwXCI6ICRvcmFuZ2UtMjAwLFxuICBcIm9yYW5nZS0zMDBcIjogJG9yYW5nZS0zMDAsXG4gIFwib3JhbmdlLTQwMFwiOiAkb3JhbmdlLTQwMCxcbiAgXCJvcmFuZ2UtNTAwXCI6ICRvcmFuZ2UtNTAwLFxuICBcIm9yYW5nZS02MDBcIjogJG9yYW5nZS02MDAsXG4gIFwib3JhbmdlLTcwMFwiOiAkb3JhbmdlLTcwMCxcbiAgXCJvcmFuZ2UtODAwXCI6ICRvcmFuZ2UtODAwLFxuICBcIm9yYW5nZS05MDBcIjogJG9yYW5nZS05MDBcbikgIWRlZmF1bHQ7XG5cbiR5ZWxsb3dzOiAoXG4gIFwieWVsbG93LTEwMFwiOiAkeWVsbG93LTEwMCxcbiAgXCJ5ZWxsb3ctMjAwXCI6ICR5ZWxsb3ctMjAwLFxuICBcInllbGxvdy0zMDBcIjogJHllbGxvdy0zMDAsXG4gIFwieWVsbG93LTQwMFwiOiAkeWVsbG93LTQwMCxcbiAgXCJ5ZWxsb3ctNTAwXCI6ICR5ZWxsb3ctNTAwLFxuICBcInllbGxvdy02MDBcIjogJHllbGxvdy02MDAsXG4gIFwieWVsbG93LTcwMFwiOiAkeWVsbG93LTcwMCxcbiAgXCJ5ZWxsb3ctODAwXCI6ICR5ZWxsb3ctODAwLFxuICBcInllbGxvdy05MDBcIjogJHllbGxvdy05MDBcbikgIWRlZmF1bHQ7XG5cbiRncmVlbnM6IChcbiAgXCJncmVlbi0xMDBcIjogJGdyZWVuLTEwMCxcbiAgXCJncmVlbi0yMDBcIjogJGdyZWVuLTIwMCxcbiAgXCJncmVlbi0zMDBcIjogJGdyZWVuLTMwMCxcbiAgXCJncmVlbi00MDBcIjogJGdyZWVuLTQwMCxcbiAgXCJncmVlbi01MDBcIjogJGdyZWVuLTUwMCxcbiAgXCJncmVlbi02MDBcIjogJGdyZWVuLTYwMCxcbiAgXCJncmVlbi03MDBcIjogJGdyZWVuLTcwMCxcbiAgXCJncmVlbi04MDBcIjogJGdyZWVuLTgwMCxcbiAgXCJncmVlbi05MDBcIjogJGdyZWVuLTkwMFxuKSAhZGVmYXVsdDtcblxuJHRlYWxzOiAoXG4gIFwidGVhbC0xMDBcIjogJHRlYWwtMTAwLFxuICBcInRlYWwtMjAwXCI6ICR0ZWFsLTIwMCxcbiAgXCJ0ZWFsLTMwMFwiOiAkdGVhbC0zMDAsXG4gIFwidGVhbC00MDBcIjogJHRlYWwtNDAwLFxuICBcInRlYWwtNTAwXCI6ICR0ZWFsLTUwMCxcbiAgXCJ0ZWFsLTYwMFwiOiAkdGVhbC02MDAsXG4gIFwidGVhbC03MDBcIjogJHRlYWwtNzAwLFxuICBcInRlYWwtODAwXCI6ICR0ZWFsLTgwMCxcbiAgXCJ0ZWFsLTkwMFwiOiAkdGVhbC05MDBcbikgIWRlZmF1bHQ7XG5cbiRjeWFuczogKFxuICBcImN5YW4tMTAwXCI6ICRjeWFuLTEwMCxcbiAgXCJjeWFuLTIwMFwiOiAkY3lhbi0yMDAsXG4gIFwiY3lhbi0zMDBcIjogJGN5YW4tMzAwLFxuICBcImN5YW4tNDAwXCI6ICRjeWFuLTQwMCxcbiAgXCJjeWFuLTUwMFwiOiAkY3lhbi01MDAsXG4gIFwiY3lhbi02MDBcIjogJGN5YW4tNjAwLFxuICBcImN5YW4tNzAwXCI6ICRjeWFuLTcwMCxcbiAgXCJjeWFuLTgwMFwiOiAkY3lhbi04MDAsXG4gIFwiY3lhbi05MDBcIjogJGN5YW4tOTAwXG4pICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY3NzZ3JpZDogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1idXR0b24tcG9pbnRlcnM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmZzOiAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zOiAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzOiAgdHJ1ZSAhZGVmYXVsdDtcblxuLy8gUHJlZml4IGZvciA6cm9vdCBDU1MgdmFyaWFibGVzXG5cbiR2YXJpYWJsZS1wcmVmaXg6ICAgICAgICAgICAgIGJzLSAhZGVmYXVsdDtcblxuLy8gR3JhZGllbnRcbi8vXG4vLyBUaGUgZ3JhZGllbnQgd2hpY2ggaXMgYWRkZWQgdG8gY29tcG9uZW50cyBpZiBgJGVuYWJsZS1ncmFkaWVudHNgIGlzIGB0cnVlYFxuLy8gVGhpcyBncmFkaWVudCBpcyBhbHNvIGFkZGVkIHRvIGVsZW1lbnRzIHdpdGggYC5iZy1ncmFkaWVudGBcbi8vIHNjc3MtZG9jcy1zdGFydCB2YXJpYWJsZS1ncmFkaWVudFxuJGdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR3aGl0ZSwgLjE1KSwgcmdiYSgkd2hpdGUsIDApKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdmFyaWFibGUtZ3JhZGllbnRcblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGFjZXItdmFyaWFibGVzLW1hcHNcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAwLFxuICAxOiAkc3BhY2VyICogLjI1LFxuICAyOiAkc3BhY2VyICogLjUsXG4gIDM6ICRzcGFjZXIsXG4gIDQ6ICRzcGFjZXIgKiAxLjUsXG4gIDU6ICRzcGFjZXIgKiAzLFxuKSAhZGVmYXVsdDtcblxuJG5lZ2F0aXZlLXNwYWNlcnM6IGlmKCRlbmFibGUtbmVnYXRpdmUtbWFyZ2lucywgbmVnYXRpdmlmeS1tYXAoJHNwYWNlcnMpLCBudWxsKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG5cbi8vIFBvc2l0aW9uXG4vL1xuLy8gRGVmaW5lIHRoZSBlZGdlIHBvc2l0aW9uaW5nIGFuY2hvcnMgb2YgdGhlIHBvc2l0aW9uIHV0aWxpdGllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvc2l0aW9uLW1hcFxuJHBvc2l0aW9uLXZhbHVlczogKFxuICAwOiAwLFxuICA1MDogNTAlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvc2l0aW9uLW1hcFxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRib2R5LXRleHQtYWxpZ246ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4vLyBVdGlsaXRpZXMgbWFwc1xuLy9cbi8vIEV4dGVuZHMgdGhlIGRlZmF1bHQgYCR0aGVtZS1jb2xvcnNgIG1hcHMgdG8gaGVscCBjcmVhdGUgb3VyIHV0aWxpdGllcy5cblxuLy8gQ29tZSB2Niwgd2UnbGwgZGUtZHVwZSB0aGVzZSB2YXJpYWJsZXMuIFVudGlsIHRoZW4sIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSBrZWVwIHRoZW0gdG8gcmVhc3NpZ24uXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWNvbG9yc1xuJHV0aWxpdGllcy1jb2xvcnM6ICR0aGVtZS1jb2xvcnMtcmdiICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB1dGlsaXRpZXMtdGV4dC1jb2xvcnNcbiR1dGlsaXRpZXMtdGV4dDogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKSxcbiAgICBcImJvZHlcIjogdG8tcmdiKCRib2R5LWNvbG9yKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy10ZXh0LWNvbG9yczogbWFwLWxvb3AoJHV0aWxpdGllcy10ZXh0LCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcInRleHRcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy10ZXh0LWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWJnLWNvbG9yc1xuJHV0aWxpdGllcy1iZzogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKSxcbiAgICBcImJvZHlcIjogdG8tcmdiKCRib2R5LWJnKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy1iZy1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtYmcsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwiYmdcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy1iZy1jb2xvcnNcblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuJGxpbmstc2hhZGUtcGVyY2VudGFnZTogICAgICAgICAgICAgICAgICAgMjAlICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgc2hpZnQtY29sb3IoJGxpbmstY29sb3IsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50OiAgICAgICAgICAgYWZ0ZXIgIWRlZmF1bHQ7XG4kc3RyZXRjaGVkLWxpbmstei1pbmRleDogICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmlkLWJyZWFrcG9pbnRzXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweCxcbiAgeHhsOiAxNDAwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyaWQtYnJlYWtwb2ludHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb250YWluZXItbWF4LXdpZHRoc1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHgsXG4gIHh4bDogMTMyMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb250YWluZXItbWF4LXdpZHRoc1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cbiRndXR0ZXJzOiAkc3BhY2VycyAhZGVmYXVsdDtcblxuLy8gQ29udGFpbmVyIHBhZGRpbmdcblxuJGNvbnRhaW5lci1wYWRkaW5nLXg6ICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoczogKFxuICAxOiAxcHgsXG4gIDI6IDJweCxcbiAgMzogM3B4LFxuICA0OiA0cHgsXG4gIDU6IDVweFxuKSAhZGVmYXVsdDtcblxuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXBpbGw6ICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm94LXNoYWRvdy12YXJpYWJsZXNcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctaW5zZXQ6ICAgICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm94LXNoYWRvdy12YXJpYWJsZXNcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC12YXJpYWJsZXNcbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LXZhcmlhYmxlc1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS10cmFuc2l0aW9uXG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGg6ICAgd2lkdGggLjM1cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS10cmFuc2l0aW9uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFzcGVjdC1yYXRpb3NcbiRhc3BlY3QtcmF0aW9zOiAoXG4gIFwiMXgxXCI6IDEwMCUsXG4gIFwiNHgzXCI6IGNhbGMoMyAvIDQgKiAxMDAlKSxcbiAgXCIxNng5XCI6IGNhbGMoOSAvIDE2ICogMTAwJSksXG4gIFwiMjF4OVwiOiBjYWxjKDkgLyAyMSAqIDEwMCUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhc3BlY3QtcmF0aW9zXG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXZhcmlhYmxlc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWNvZGU6ICAgICAgICAgICAgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtbW9ub3NwYWNlKSAhZGVmYXVsdDtcblxuLy8gJGZvbnQtc2l6ZS1yb290IGFmZmVjdHMgdGhlIHZhbHVlIG9mIGByZW1gLCB3aGljaCBpcyB1c2VkIGZvciBhcyB3ZWxsIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGFmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXN0eWxlOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkaW5ncy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcbiAgMTogNXJlbSxcbiAgMjogNC41cmVtLFxuICAzOiA0cmVtLFxuICA0OiAzLjVyZW0sXG4gIDU6IDNyZW0sXG4gIDY6IDIuNXJlbVxuKSAhZGVmYXVsdDtcblxuJGRpc3BsYXktZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRpc3BsYXktaGVhZGluZ3NcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHR5cGUtdmFyaWFibGVzXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XG5cbiRzdWItc3VwLWZvbnQtc2l6ZTogICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRpbml0aWFsaXNtLWZvbnQtc2l6ZTogICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRoci1jb2xvcjogICAgICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGhyLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgLjI1ICFkZWZhdWx0O1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHR5cGUtdmFyaWFibGVzXG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFibGVzXG4kdGFibGUtY2VsbC1wYWRkaW5nLXk6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteDogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjogICB0b3AgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Q29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYmx1cjogICAgICAgICAgMCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogICAgMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYWJsZXNcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1jb2xvcjogICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDUwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAqIC41KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tY29sb3Itd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDNyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0taW5wdXQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuJGZvcm0tY2hlY2staW5wdXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWluLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0OiAgICAgICAgICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyOiAgICAgICAgICBicmlnaHRuZXNzKDkwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgIDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBsMyAzbDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1czogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXRyYW5zaXRpb246ICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2U6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZTogICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpbnB1dC1ncm91cC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgICAgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgZm9yIGJhY2tncm91bmQtaW1hZ2VcbiRmb3JtLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uOiAgICAgICAgICAgcmlnaHQgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAxNnB4IDEycHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2Jz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kOiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMi41ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgIGNlbnRlciByaWdodCAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbTogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXRyYW5zaXRpb246ICAgICAgICAgICRpbnB1dC10cmFuc2l0aW9uICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tcmFuZ2UtdmFyaWFibGVzXG4kZm9ybS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuXG4kZm9ybS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkZm9ybS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gRWRnZVxuJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDcwJSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbjogICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1yYW5nZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmlsZS12YXJpYWJsZXNcbiRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc6ICAgICAgIHNoYWRlLWNvbG9yKCRmb3JtLWZpbGUtYnV0dG9uLWJnLCA1JSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmlsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG4kZm9ybS1mbG9hdGluZy1oZWlnaHQ6ICAgICAgICAgICAgYWRkKDMuNXJlbSwgJGlucHV0LWhlaWdodC1ib3JkZXIpICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ6ICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg6ICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10OiAgIDEuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iOiAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5OiAgICAgLjY1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtOiAgIHNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIC4xcyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJGZvcm0tdGV4dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXN0eWxlOiAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc3R5bGUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICAkc3VjY2VzcyAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICRkYW5nZXIgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IChcbiAgXCJ2YWxpZFwiOiAoXG4gICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICApLFxuICBcImludmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXM6ICAgICAgICAgICAgICAgICAgMTA0NSAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDU1ICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1zdGFja1xuXG5cbi8vIE5hdnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi12YXJpYWJsZXNcbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtbGluay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LXZhcmlhYmxlc1xuXG5cbi8vIE5hdmJhclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXZhcmlhYmxlc1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICAgICAgICAkYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICAgICAgICAgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItdGhlbWUtdmFyaWFibGVzXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjU1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLXRoZW1lLXZhcmlhYmxlc1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLXZhcmlhYmxlc1xuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgc2hhZGUtY29sb3IoJGRyb3Bkb3duLWxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgJHNwYWNlciAqIC4yNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG4kZHJvcGRvd24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnOiAgICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcblxuXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydDogICAgICAgICAgIC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBQbGFjZWhvbGRlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBsYWNlaG9sZGVyc1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItb3BhY2l0eS1taW46ICAgICAgICAgICAuMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGxhY2Vob2xkZXJzXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteCAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLXZhcmlhYmxlc1xuXG4vLyBBY2NvcmRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi12YXJpYWJsZXNcbiRhY2NvcmRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgIHN1YnRyYWN0KCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cywgJGFjY29yZGlvbi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGFjY29yZGlvbi1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tYmcgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgOTAlKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCAxMCUpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGFjY29yZGlvbi1idXR0b24tY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybTogICAgICAgICAgICAgICAgcm90YXRlKC0xODBkZWcpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1pY29uOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1jb2xvcn0nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcn0nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLXZhcmlhYmxlc1xuXG4vLyBUb29sdGlwc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC12YXJpYWJsZXNcbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcblxuXG4vLyBQb3BvdmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci12YXJpYWJsZXNcbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIHNoYWRlLWNvbG9yKCRwb3BvdmVyLWJnLCA2JSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci12YXJpYWJsZXNcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC12YXJpYWJsZXNcblxuXG4vLyBCYWRnZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJhZGdlLXZhcmlhYmxlc1xuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4zNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjY1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtdmFyaWFibGVzXG5cblxuLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC12YXJpYWJsZXNcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAkYm94LXNoYWRvdy1zbSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLXZhcmlhYmxlc1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFibGVzXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1zY2FsZTogICAgICAgICAgICAgNDAlICFkZWZhdWx0O1xuJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjogICAkYWxlcnQtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gM3ggY292ZXJzIHdpZHRoIG9mIHggcGx1cyBkZWZhdWx0IHBhZGRpbmcgb24gZWl0aGVyIHNpZGVcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtdmFyaWFibGVzXG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtdmFyaWFibGVzXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLXZhcmlhYmxlc1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtdmFyaWFibGVzXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAgICAgICAgICAtODAlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogICAgICAgNDAlICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC12YXJpYWJsZXNcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aHVtYm5haWwtdmFyaWFibGVzXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgICRib3gtc2hhZG93LXNtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aHVtYm5haWwtdmFyaWFibGVzXG5cblxuLy8gRmlndXJlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZmlndXJlLXZhcmlhYmxlc1xuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZmlndXJlLXZhcmlhYmxlc1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLXZhcmlhYmxlc1xuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZDogICAgICAgICRicmVhZGNydW1iLWRpdmlkZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLXZhcmlhYmxlc1xuXG4vLyBDYXJvdXNlbFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtdmFyaWFibGVzXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk6ICAxICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6ICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG4kY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjogICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLXZhcmlhYmxlc1xuXG5cbi8vIFNwaW5uZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLXZhcmlhYmxlc1xuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IC43NXMgIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItdmFyaWFibGVzXG5cblxuLy8gQ2xvc2VcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLXZhcmlhYmxlc1xuJGJ0bi1jbG9zZS13aWR0aDogICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhlaWdodDogICAgICAgICAgICRidG4tY2xvc2Utd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteDogICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXk6ICAgICAgICAkYnRuLWNsb3NlLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtY29sb3I6ICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1iZzogICAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYnRuLWNsb3NlLWNvbG9yfSc+PHBhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAxMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMTExLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwMTAtMS40MTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1iZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWNvbG9yICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICRtb2RhbC1iYWNrZHJvcC1iZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBvZmZjYW52YXMtdmFyaWFibGVzXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuIiwiLy8gRW5hYmxlIEZsZXggfCBXZWxjb21lIHRvIHRoZSBmdXR1cmUgOilcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQHVzZSBcInNhc3M6bWF0aFwiO1xyXG5cclxuJGVuYWJsZS1mbGV4OiB0cnVlO1xyXG5cclxuLy8gQ29sb3JzXHJcbiRicmFuZC1wcmltYXJ5OiAjMjc5YmVlO1xyXG4kYnJhbmQtcHJpbWFyeTogIzQyOThERTtcclxuJGJyYW5kLXN1Y2Nlc3M6ICM0QUNCNjg7XHJcbiRicmFuZC1kYW5nZXI6ICNFMDRGM0M7XHJcbiRicmFuZC13YXJuaW5nOiAjRjFDNDBGO1xyXG4kYnJhbmQtd2FybmluZzogI0YzQzU0NDtcclxuJGxpbmstY29sb3ItYnJpZ2h0ZXI6ICMyNzliZWU7XHJcbiRsaW5rLWNvbG9yLWJyaWdodDogZGFya2VuKCRsaW5rLWNvbG9yLWJyaWdodGVyLCAxMCUpO1xyXG4kbGluay1jb2xvcjogZGFya2VuKCRsaW5rLWNvbG9yLWJyaWdodGVyLCAyMCUpO1xyXG4kYm9keS1iZzogI2YxZjFmMTtcclxuJGlucHV0LWJnOiAjZmZmO1xyXG4kaW52ZXJzZTogIzI1MjgzMDtcclxuLy8kaW52ZXJzZTogIzI5MkMzQTtcclxuJGhlYWRlci1iZzogJGludmVyc2U7XHJcbiRpbnZlcnNlLWxpZ2h0OiBsaWdodGVuKCRpbnZlcnNlLCAxMCUpO1xyXG4kaW52ZXJzZS1saWdodGVyOiBsaWdodGVuKCRpbnZlcnNlLCAxNSUpO1xyXG4kaW52ZXJzZS1saWdodGVzdDogbGlnaHRlbigkaW52ZXJzZSwgMjUlKTtcclxuJHRvcC1uYXYtYmc6IHNhdHVyYXRlKGxpZ2h0ZW4oJGludmVyc2UsIDklKSwgMiUpO1xyXG4vLyR0b3AtbmF2LWJnOiBkZXNhdHVyYXRlKCMzNjNCNEQsIDElKTtcclxuJGhlYWRlci1jb2xvcjogI2ZmZjtcclxuJGhlYWRlci1tdXRlZC1jb2xvcjogbGlnaHRlbigkaGVhZGVyLWJnLCAzMCUpO1xyXG5cclxuLy8gRGlzY29udGludWVkIGNvbG9ycyBmcm9tIGJvb3RzdHJhcDQuMC4wLWFscGhhLjVcclxuJGdyYXk6ICM2Yzc1N2Q7XHJcbiRncmF5LWxpZ2h0OiAjODE4YTkxO1xyXG4kZ3JheS1saWdodGVyOiAjZWNlZWVmO1xyXG4kc3RhdGUtc3VjY2Vzcy1iZzogI2RmZjBkODtcclxuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiBkYXJrZW4oJHN0YXRlLXN1Y2Nlc3MtYmcsIDUlKTtcclxuJHN0YXRlLWluZm8tYmc6ICNkOWVkZjc7XHJcbiRzdGF0ZS1pbmZvLWJvcmRlcjogZGFya2VuKCRzdGF0ZS1pbmZvLWJnLCA3JSk7XHJcbiRzdGF0ZS13YXJuaW5nLWJnOiAjZmNmOGUzO1xyXG4kc3RhdGUtd2FybmluZy1ib3JkZXI6IGRhcmtlbigkc3RhdGUtd2FybmluZy1iZywgNSUpO1xyXG4kc3RhdGUtZGFuZ2VyLWJnOiAjZjJkZWRlO1xyXG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogZGFya2VuKCRzdGF0ZS1kYW5nZXItYmcsIDUlKTtcclxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogIzNjNzYzZDtcclxuJHN0YXRlLWluZm8tdGV4dDogIzMxNzA4ZjtcclxuJHN0YXRlLXdhcm5pbmctdGV4dDogIzhhNmQzYjtcclxuJHN0YXRlLWRhbmdlci10ZXh0OiAjYTk0NDQyO1xyXG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAkc3RhdGUtc3VjY2Vzcy10ZXh0O1xyXG4kYWxlcnQtaW5mby10ZXh0OiAkc3RhdGUtaW5mby10ZXh0O1xyXG4kYWxlcnQtd2FybmluZy10ZXh0OiAkc3RhdGUtd2FybmluZy10ZXh0O1xyXG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICRzdGF0ZS1kYW5nZXItdGV4dDtcclxuXHJcbi8vIEltcG9ydCBCb290c3RyYXAgZnVuY3Rpb25zXHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XHJcbi8vIEltcG9ydCBhbGwgQm9vdHN0cmFwIHZhcmlhYmxlc1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlc1wiO1xyXG5cclxuXHJcbi8vIFR5cG9ncmFwaHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuJGZvbnQtc2l6ZS1oMTogMS43MTRyZW07XHJcbiRmb250LXNpemUtaDI6IDEuNTcxcmVtO1xyXG4kZm9udC1zaXplLWgzOiAxLjQyOXJlbTtcclxuJGZvbnQtc2l6ZS1oNDogMS4yODZyZW07XHJcbiRmb250LXNpemUtaDU6IDEuMTQzcmVtO1xyXG4kZm9udC1zaXplLWg2OiAxcmVtO1xyXG4kZm9udC1zaXplLXNtOiAuOTI5cmVtO1xyXG4kZm9udC1zaXplLXhzOiAuODU3cmVtO1xyXG4vLyBCb290c3RyYXAgNFxyXG4kaDEtZm9udC1zaXplOiAkZm9udC1zaXplLWgxO1xyXG4kaDItZm9udC1zaXplOiAkZm9udC1zaXplLWgyO1xyXG4kaDMtZm9udC1zaXplOiAkZm9udC1zaXplLWgzO1xyXG4kaDQtZm9udC1zaXplOiAkZm9udC1zaXplLWg0O1xyXG4kaDUtZm9udC1zaXplOiAkZm9udC1zaXplLWg1O1xyXG4kaDYtZm9udC1zaXplOiAkZm9udC1zaXplLWg2O1xyXG5cclxuXHJcbiRmb250LXNpemUtcm9vdDogMTNweDtcclxuLy8kZm9udC1zaXplLWJhc2U6IDE0cHg7XHJcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAnUm9ib3RvJywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuJGZvbnQtZmFtaWx5LWJhc2U6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDUwMDtcclxuJGZvbnQtc2l6ZS1sZzogJGZvbnQtc2l6ZS1oNTtcclxuXHJcbi8vIGh0dHA6Ly9weHRvZW0uY29tL1xyXG5cclxuLy8gU3VpdFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4kZ3JheS1saWdodDogbGlnaHRlbigkZ3JheS1saWdodCwgMTAlKTtcclxuJHRleHQtbXV0ZWQ6ICRncmF5LWxpZ2h0O1xyXG4kc2lkZWJhci13aWR0aDogMjAwcHg7XHJcbiRncmlkLWd1dHRlci13aWR0aC1iYXNlOiAxLjg3NXJlbTtcclxuJGhlYWRlci1wYWRkaW5nLWhvcml6b250YWw6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlO1xyXG4kaGVhZGVyLXBhZGRpbmctdmVydGljYWw6IG1hdGguZGl2KCRncmlkLWd1dHRlci13aWR0aC1iYXNlLCAxLjgpO1xyXG4kbmF2LXBhZGRpbmctaG9yaXpvbnRhbDogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UgKyAuNzVyZW07XHJcbiRmb290ZXItaGVpZ2h0OiA2NnB4O1xyXG4kdmVydGljYWwtbWVudS13aWR0aDogMjMwcHg7XHJcblxyXG4vLyBCdXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vJGJ0bi1saW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbi8vJGJ0bi1wYWRkaW5nLXg6IDEuMnJlbTtcclxuLy8kYnRuLXBhZGRpbmcteTogLjM1cmVtO1xyXG4kYnRuLXBhZGRpbmcteC1zbTogLjc1cmVtO1xyXG4kYnRuLXBhZGRpbmcteS1zbTogLjM1cmVtO1xyXG4vLyRidG4tcGFkZGluZy14LW1kOiAuODVyZW07XHJcbi8vJGJ0bi1wYWRkaW5nLXktbWQ6IC4zNXJlbTtcclxuJGZvbnQtc2l6ZS1tZDogMC45Mzc1cmVtO1xyXG4vLyRidG4tcGFkZGluZy14LXNtOiAuNzVyZW07XHJcblxyXG4vLyBJbnB1dHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuJGlucHV0LXBhZGRpbmcteC1zbTogJGJ0bi1wYWRkaW5nLXgtc207XHJcbiRpbnB1dC1wYWRkaW5nLXktc206ICRidG4tcGFkZGluZy15LXNtO1xyXG4kdGV4dGFyZWEtbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4kZm9ybS1zZWxlY3Qtc20tcGFkZGluZy15OiAkYnRuLXBhZGRpbmcteC1zbTtcclxuJGZvcm0tc2VsZWN0LXNtLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuXHJcbiRpbnB1dC1wYWRkaW5nLXk6ICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xyXG5cclxuLy8gVGFibGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiR0YWJsZS10aC1wYWRkaW5nOiAuN3JlbSAuOHJlbTtcclxuJHRhYmxlLXRoLXBhZGRpbmc6IC43cmVtIC44cmVtO1xyXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAuNHJlbSAuOHJlbTtcclxuJHRhYmxlLXNtLWNlbGwtcGFkZGluZzogLjNyZW07XHJcbiR0YWJsZS1iZy1hY2NlbnQ6IGRhcmtlbigjZmZmLCAzJSk7XHJcblxyXG4vLyBGb3Jtc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4kZm9ybS1iZzogbGlnaHRlbigkYm9keS1iZywgMiUpO1xyXG4kZm9ybS1ib3JkZXItY29sb3I6IGRhcmtlbigkYm9keS1iZywgMSUpO1xyXG4kZm9ybS1sYWJlbC1iZzogI2ZmZjtcclxuXHJcbi8vIENhcmRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiRjYXJkLWJvcmRlci1yYWRpdXM6IDA7XHJcbiRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXI6IDA7XHJcbiRjYXJkLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiRjYXJkLWNhcC1iZzogJGludmVyc2UtbGlnaHRlc3Q7XHJcbiRjYXJkLWNhcC1jb2xvcjogI2ZmZjtcclxuXHJcblxyXG4vLyBCbG9ja3F1b3Rlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGdyYXktbGlnaHRlciwgMTAlKTtcclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiLy9cbi8vIEhlYWRpbmdzXG4vL1xuLmgxIHtcbiAgQGV4dGVuZCBoMTtcbn1cblxuLmgyIHtcbiAgQGV4dGVuZCBoMjtcbn1cblxuLmgzIHtcbiAgQGV4dGVuZCBoMztcbn1cblxuLmg0IHtcbiAgQGV4dGVuZCBoNDtcbn1cblxuLmg1IHtcbiAgQGV4dGVuZCBoNTtcbn1cblxuLmg2IHtcbiAgQGV4dGVuZCBoNjtcbn1cblxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG5AZWFjaCAkZGlzcGxheSwgJGZvbnQtc2l6ZSBpbiAkZGlzcGxheS1mb250LXNpemVzIHtcbiAgLmRpc3BsYXktI3skZGlzcGxheX0ge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogJGRpc3BsYXktZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xuICB9XG59XG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cbi5zbWFsbCB7XG4gIEBleHRlbmQgc21hbGw7XG59XG5cbi5tYXJrIHtcbiAgQGV4dGVuZCBtYXJrO1xufVxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbml0aWFsaXNtLWZvbnQtc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IC0kYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIC41O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciBtaXhpbnNcblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgsICN7JGd1dHRlcn0pO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCwgI3skZ3V0dGVyfSk7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1jc3NncmlkIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXJvd3MsIDEpLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1jb2x1bW5zLCAjeyRncmlkLWNvbHVtbnN9KSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1nYXAsICN7JGdyaWQtZ3V0dGVyLXdpZHRofSk7XG5cbiAgICBAaW5jbHVkZSBtYWtlLWNzc2dyaWQoKTtcbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLy8gVE9ETzogUmV2aXNpdCBjYWxjIG9yZGVyIGFmdGVyIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy82MDM5IGlzIGZpeGVkXG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZTogZmFsc2UsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiAkc2l6ZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuXG4gIH0gQGVsc2Uge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIC8vXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cbiAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3V0dGVycyB7XG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY3NzZ3JpZCgkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZy1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXJ0IHdpdGggYDFgIGJlY2F1c2UgYDBgIGlzIGFuZCBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1iZzogI3skdGFibGUtYmd9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY2NlbnQtYmc6ICN7JHRhYmxlLWFjY2VudC1iZ307XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7JHRhYmxlLXN0cmlwZWQtY29sb3J9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyR0YWJsZS1zdHJpcGVkLWJnfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAjeyR0YWJsZS1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JHRhYmxlLWFjdGl2ZS1iZ307XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAjeyR0YWJsZS1ob3Zlci1jb2xvcn07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyR0YWJsZS1ob3Zlci1iZ307XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiAkdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIFRhcmdldCB0aCAmIHRkXG4gIC8vIFdlIG5lZWQgdGhlIGNoaWxkIGNvbWJpbmF0b3IgdG8gcHJldmVudCBzdHlsZXMgbGVha2luZyB0byBuZXN0ZWQgdGFibGVzIHdoaWNoIGRvZXNuJ3QgaGF2ZSBhIGAudGFibGVgIGNsYXNzLlxuICAvLyBXZSB1c2UgdGhlIHVuaXZlcnNhbCBzZWxlY3RvcnMgaGVyZSB0byBzaW1wbGlmeSB0aGUgc2VsZWN0b3IgKGVsc2Ugd2Ugd291bGQgbmVlZCA2IGRpZmZlcmVudCBzZWxlY3RvcnMpLlxuICAvLyBBbm90aGVyIGFkdmFudGFnZSBpcyB0aGF0IHRoaXMgZ2VuZXJhdGVzIGxlc3MgY29kZSBhbmQgbWFrZXMgdGhlIHNlbGVjdG9yIGxlc3Mgc3BlY2lmaWMgbWFraW5nIGl0IGVhc2llciB0byBvdmVycmlkZS5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteSAkdGFibGUtY2VsbC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnKTtcbiAgfVxuXG4gID4gdGJvZHkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICB9XG5cbiAgPiB0aGVhZCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxuXG4gIC8vIEhpZ2hsaWdodCBib3JkZXIgY29sb3IgYmV0d2VlbiB0aGVhZCwgdGJvZHkgYW5kIHRmb290LlxuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENoYW5nZSBwbGFjZW1lbnQgb2YgY2FwdGlvbnMgd2l0aCBhIGNsYXNzXG4vL1xuXG4uY2FwdGlvbi10b3Age1xuICBjYXB0aW9uLXNpZGU6IHRvcDtcbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbSAkdGFibGUtY2VsbC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuLy9cbi8vIFdoZW4gYm9yZGVycyBhcmUgYWRkZWQgb24gYWxsIHNpZGVzIG9mIHRoZSBjZWxscywgdGhlIGNvcm5lcnMgY2FuIHJlbmRlciBvZGQgd2hlblxuLy8gdGhlc2UgYm9yZGVycyBkbyBub3QgaGF2ZSB0aGUgc2FtZSBjb2xvciBvciBpZiB0aGV5IGFyZSBzZW1pLXRyYW5zcGFyZW50LlxuLy8gVGhlcmVmb3Igd2UgYWRkIHRvcCBhbmQgYm9yZGVyIGJvdHRvbXMgdG8gdGhlIGB0cmBzIGFuZCBsZWZ0IGFuZCByaWdodCBib3JkZXJzXG4vLyB0byB0aGUgYHRkYHMgb3IgYHRoYHNcblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgPiA6bm90KGNhcHRpb24pID4gKiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICAgID4gKiB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pID4gKiB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gICAgY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgfVxufVxuXG4vLyBBY3RpdmUgdGFibGVcbi8vXG4vLyBUaGUgYC50YWJsZS1hY3RpdmVgIGNsYXNzIGNhbiBiZSBhZGRlZCB0byBoaWdobGlnaHQgcm93cyBvciBjZWxsc1xuXG4udGFibGUtYWN0aXZlIHtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWJnKTtcbiAgY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtY29sb3IpO1xufVxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIHZhcmlhbnRzXG4vL1xuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXG4vLyBhbmQgdGhlIGNvbG9ycyBvZiB0aGUgc3RyaXBlZCwgaG92ZXJlZCAmIGFjdGl2ZSB0YWJsZXNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcbiAgQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLnRhYmxlLXJlc3BvbnNpdmUjeyRpbmZpeH0ge1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHN0cmlwZWQtYmd9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJHN0cmlwZWQtYmcpfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iZ307XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skaG92ZXItYmd9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRob3Zlci1iZyl9O1xuXG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxuIiwiLy9cbi8vIExhYmVsc1xuLy9cblxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG59XG4iLCIvL1xuLy8gRm9ybSB0ZXh0XG4vL1xuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tdGV4dC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS10ZXh0LWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS10ZXh0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbn1cbiIsIi8vXG4vLyBHZW5lcmFsIGZvcm0gY29udHJvbHMgKHBsdXMgYSBmZXcgc3BlY2lmaWMgaGlnaC1sZXZlbCBpbnRlcnZlbnRpb25zKVxuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJmaWxlXCJdIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBwcmV2ZW50IHBzZXVkbyBlbGVtZW50IGJ1dHRvbiBvdmVybGFwXG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFkZCBzb21lIGhlaWdodCB0byBkYXRlIGlucHV0cyBvbiBpT1NcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMzMwN1xuICAvLyBUT0RPOiB3ZSBjYW4gcmVtb3ZlIHRoaXMgd29ya2Fyb3VuZCBvbmNlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5NTkgaXMgcmVzb2x2ZWRcbiAgJjo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlIHtcbiAgICAvLyBNdWx0aXBseSBsaW5lLWhlaWdodCBieSAxZW0gaWYgaXQgaGFzIG5vIHVuaXRcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBGaWxlIGlucHV0IGJ1dHRvbnMgdGhlbWluZ1xuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxuXG4gICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXkpICgtJGlucHV0LXBhZGRpbmcteCk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG4gIH1cblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnO1xuICB9XG59XG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktc20pICgtJGlucHV0LXBhZGRpbmcteC1zbSk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIH1cblxuICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LXNtKSAoLSRpbnB1dC1wYWRkaW5nLXgtc20pO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1sZykgKC0kaW5wdXQtcGFkZGluZy14LWxnKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1sZztcbiAgfVxuXG4gICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cbn1cblxuLy8gTWFrZSBzdXJlIHRleHRhcmVhcyBkb24ndCBzaHJpbmsgdG9vIG11Y2ggd2hlbiByZXNpemVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yOTEyNFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG50ZXh0YXJlYSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLmZvcm0tY29udHJvbC1jb2xvciB7XG4gIHdpZHRoOiAkZm9ybS1jb2xvci13aWR0aDtcbiAgaGVpZ2h0OiBhdXRvOyAvLyBPdmVycmlkZSBmaXhlZCBicm93c2VyIGhlaWdodFxuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsIi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG5cbi5mb3JtLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuICAtbW96LXBhZGRpbmctc3RhcnQ6IHN1YnRyYWN0KCRmb3JtLXNlbGVjdC1wYWRkaW5nLXgsIDNweCk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzMyNjM2XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb247XG4gIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc2VsZWN0LXRyYW5zaXRpb24pO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uZm9ybS1zZWxlY3Qtc20ge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tc2VsZWN0LWxnIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG4iLCIvL1xuLy8gQ2hlY2svcmFkaW9cbi8vXG5cbi5mb3JtLWNoZWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHdpZHRoOiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgaGVpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1iYXNlIC0gJGZvcm0tY2hlY2staW5wdXQtd2lkdGgpICogLjU7IC8vIGxpbmUtaGVpZ2h0IG1pbnVzIGNoZWNrIGhlaWdodFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1iZztcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJvcmRlcjogJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBjb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWNoZWNrLXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGZpbHRlcjogJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuXG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKSwgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG5cbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKSwgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZmlsdGVyOiBub25lO1xuICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk7XG4gIH1cblxuICAvLyBVc2UgZGlzYWJsZWQgYXR0cmlidXRlIGluIGFkZGl0aW9uIG9mIDpkaXNhYmxlZCBwc2V1ZG8tY2xhc3NcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yO1xuICBjdXJzb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjtcbn1cblxuLy9cbi8vIFN3aXRjaFxuLy9cblxuLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgd2lkdGg6ICRmb3JtLXN3aXRjaC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlKTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb247XG5cbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ7XG59XG5cbi5idG4tY2hlY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICArIC5idG4ge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmZvcm0tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodCAtICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIuZm9ybS1mbG9hdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ7XG4gIH1cblxuICA+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBhbGxvdyB0ZXh0YXJlYXNcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gUmVxdWlyZWQgZm9yIGFsaWduaW5nIGxhYmVsJ3MgdGV4dCB3aXRoIHRoZSBpbnB1dCBhcyBpdCBhZmZlY3RzIGlubmVyIGJveCBtb2RlbFxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICA+IC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gICAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIH4gbGFiZWwge1xuICAgICAgb3BhY2l0eTogJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cbiAgLy8gc3R5bGVsaW50LWVuYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXkgJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmlucHV0LWdyb3VwIHtcbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gOm50aC1sYXN0LWNoaWxkKG4gKyAzKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDQpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiBcIlwiO1xuICBAZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMpIHtcbiAgICAkdmFsaWRhdGlvbi1tZXNzYWdlczogJHZhbGlkYXRpb24tbWVzc2FnZXMgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItdG9vbHRpcClcIiArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi1mZWVkYmFjaylcIjtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSkjeyR2YWxpZGF0aW9uLW1lc3NhZ2VzfSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXG4gICRzdGF0ZSxcbiAgJGNvbG9yLFxuICAkaWNvbixcbiAgJHRvb2x0aXAtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICR0b29sdGlwLWJnLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpXG4pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGZvbnQtc3R5bGU6ICRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmctY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpLCBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb24sICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemUsICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cCAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkc3RhdGUgPT0gXCJ2YWxpZFwiIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH0gQGVsc2UgaWYgJHN0YXRlID09IFwiaW52YWxpZFwiIHtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgIH1cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRidG4tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IGlmKCRlbmFibGUtYnV0dG9uLXBvaW50ZXJzLCBwb2ludGVyLCBudWxsKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cyArICYsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LWxvb3BzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGJ0bi1saW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRidG4tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXG4gICRiYWNrZ3JvdW5kLFxuICAkYm9yZGVyLFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXG4gICRkaXNhYmxlZC1ib3JkZXI6ICRib3JkZXIsXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXG4pIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzICsgJixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRob3Zlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peCgkY29sb3IsICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmNoZWNrZWQgKyAmLFxuICAuYnRuLWNoZWNrOmFjdGl2ZSArICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRhY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtYmFja2dyb3VuZDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWQtYm9yZGVyO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gIC5idG4tY2hlY2s6Zm9jdXMgKyAmLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAuYnRuLWNoZWNrOmNoZWNrZWQgKyAmLFxuICAuYnRuLWNoZWNrOmFjdGl2ZSArICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJi5kcm9wZG93bi10b2dnbGUuc2hvdyB7XG4gICAgY29sb3I6ICRhY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXNpemUtbWl4aW5cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wZW5kLFxuLmRyb3Bkb3duLFxuLmRyb3BzdGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQoZW5kKTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BzdGFydCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGRyb3Bkb3duLWRpdmlkZXItYmc7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG5cbi8vIERhcmsgZHJvcGRvd25zXG4uZHJvcGRvd24tbWVudS1kYXJrIHtcbiAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGFyay1iZztcbiAgYm9yZGVyLWNvbG9yOiAkZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdyk7XG5cbiAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWNvbG9yO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZyk7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmcpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tZGl2aWRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnO1xuICB9XG5cbiAgLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtbWl4aW5zXG5AbWl4aW4gY2FyZXQtZG93biB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1lbmQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtc3RhcnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWVuZCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1zdGFydCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC1taXhpbnNcbiIsIi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcbiAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcbiAgPiAuYnRuOmhvdmVyLFxuICA+IC5idG46Zm9jdXMsXG4gID4gLmJ0bjphY3RpdmUsXG4gID4gLmJ0bi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gIH1cblxuICAvLyBUaGUgbGVmdCByYWRpdXMgc2hvdWxkIGJlIDAgaWYgdGhlIGJ1dHRvbiBpczpcbiAgLy8gLSB0aGUgXCJ0aGlyZCBvciBtb3JlXCIgY2hpbGRcbiAgLy8gLSB0aGUgc2Vjb25kIGNoaWxkIGFuZCB0aGUgcHJldmlvdXMgZWxlbWVudCBpc24ndCBgLmJ0bi1jaGVja2AgKG1ha2luZyBpdCB0aGUgZmlyc3QgY2hpbGQgdmlzdWFsbHkpXG4gIC8vIC0gcGFydCBvZiBhIGJ0bi1ncm91cCB3aGljaCBpc24ndCB0aGUgZmlyc3QgY2hpbGRcbiAgPiAuYnRuOm50aC1jaGlsZChuICsgMyksXG4gID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wZW5kICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wc3RhcnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0biB+IC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbmF2LWxpbmstZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkbmF2LWxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLXBhZGRpbmcteTtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7IC8vIGRlZmF1bHQ6IG51bGxcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy15O1xuICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItcGFkZGluZy14OyAvLyBkZWZhdWx0OiBudWxsXG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAvLyBUaGUgYGZsZXgtd3JhcGAgcHJvcGVydHkgaXMgaW5oZXJpdGVkIHRvIHNpbXBsaWZ5IHRoZSBleHBhbmRlZCBuYXZiYXJzXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kO1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcyB7XG4gICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm9mZmNhbnZhcy10b3AsXG4gICAgICAgIC5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWV4cGFuZC1sb29wXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgYSxcbiAgICBhOmhvdmVyLFxuICAgIGE6Zm9jdXMgIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEsXG4gICAgYTpob3ZlcixcbiAgICBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGNhcmQtYm94LXNoYWRvdyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC10aXRsZS1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtdGl0bGUtc3BhY2VyLXkgKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtY2FwLXBhZGRpbmcteSAkY2FyZC1jYXAtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1jYXAtcGFkZGluZy15ICRjYXJkLWNhcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAqIC41O1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtY2FwLXBhZGRpbmcteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1jYXAtcGFkZGluZy14ICogLjU7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgQGlmICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhPSAkY2FyZC1iZyB7XG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjYXJkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1jYXAtcGFkZGluZy14ICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAqIC41O1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcGFnaW5hdGlvbi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWZvY3VzLWJnO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKSAucGFnZS1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0O1xuICB9XG5cbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRwYWdpbmF0aW9uLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteSwgJHBhZ2luYXRpb24tcGFkZGluZy14LCBudWxsLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKTtcblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLW1peGluXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICBAaWYgJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0ID09ICgtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAvL0FkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1taXhpblxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5idG4tY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXggKyAxO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgKiAxLjI1ICRhbGVydC1wYWRkaW5nLXg7XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtbW9kaWZpZXJzXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkc3RhdGUsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgJGFsZXJ0LWJhY2tncm91bmQ6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGFsZXJ0LWJnLXNjYWxlKTtcbiAgJGFsZXJ0LWJvcmRlcjogc2hpZnQtY29sb3IoJHZhbHVlLCAkYWxlcnQtYm9yZGVyLXNjYWxlKTtcbiAgJGFsZXJ0LWNvbG9yOiBzaGlmdC1jb2xvcigkdmFsdWUsICRhbGVydC1jb2xvci1zY2FsZSk7XG4gIEBpZiAoY29udHJhc3QtcmF0aW8oJGFsZXJ0LWJhY2tncm91bmQsICRhbGVydC1jb2xvcikgPCAkbWluLWNvbnRyYXN0LXJhdGlvKSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtaXgoJHZhbHVlLCBjb2xvci1jb250cmFzdCgkYWxlcnQtYmFja2dyb3VuZCksIGFicygkYWxlcnQtY29sb3Itc2NhbGUpKTtcbiAgfVxuICAuYWxlcnQtI3skc3RhdGV9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1iYWNrZ3JvdW5kLCAkYWxlcnQtYm9yZGVyLCAkYWxlcnQtY29sb3IpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LW1vZGlmaWVyc1xuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBzaGFkZS1jb2xvcigkY29sb3IsIDIwJSk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtdmFyaWFudC1taXhpblxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1rZXlmcmFtZXNcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgMCUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6ICRwcm9ncmVzcy1oZWlnaHQ7IH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1rZXlmcmFtZXNcblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwcm9ncmVzcy1mb250LXNpemUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmcgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XG5cbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS1jbGFzc2VzXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xuXG4gICYuY29sbGFwc2UtaG9yaXpvbnRhbCB7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGgpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLWNsYXNzZXNcbiIsIi8vIHRyYW5zcGFyZW50IGJhY2tncm91bmQgYW5kIGJvcmRlciBwcm9wZXJ0aWVzIGluY2x1ZGVkIGZvciBidXR0b24gdmVyc2lvbi5cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLmJ0bi1jbG9zZSB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogJGJ0bi1jbG9zZS13aWR0aDtcbiAgaGVpZ2h0OiAkYnRuLWNsb3NlLWhlaWdodDtcbiAgcGFkZGluZzogJGJ0bi1jbG9zZS1wYWRkaW5nLXkgJGJ0bi1jbG9zZS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkYnRuLWNsb3NlLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBlc2NhcGUtc3ZnKCRidG4tY2xvc2UtYmcpIGNlbnRlciAvICRidG4tY2xvc2Utd2lkdGggYXV0byBuby1yZXBlYXQ7IC8vIGluY2x1ZGUgdHJhbnNwYXJlbnQgZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBib3JkZXI6IDA7IC8vIGZvciBidXR0b24gZWxlbWVudHNcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xuICBvcGFjaXR5OiAkYnRuLWNsb3NlLW9wYWNpdHk7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRidG4tY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtaG92ZXItb3BhY2l0eTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c7XG4gICAgb3BhY2l0eTogJGJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5O1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgb3BhY2l0eTogJGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG59XG5cbi5idG4tY2xvc2Utd2hpdGUge1xuICBmaWx0ZXI6ICRidG4tY2xvc2Utd2hpdGUtZmlsdGVyO1xufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1tb2RhbC1iYWNrZHJvcCwgJG1vZGFsLWJhY2tkcm9wLWJnLCAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogKCRtb2RhbC1oZWFkZXItcGFkZGluZy15ICogLjUpICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAqIC41KTtcbiAgICBtYXJnaW46ICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAqIC0uNSkgKCRtb2RhbC1oZWFkZXItcGFkZGluZy14ICogLS41KSAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgKiAtLjUpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gKiAuNTtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJHBvc3RmaXg6IGlmKCRpbmZpeCAhPSBcIlwiLCAkaW5maXggKyBcIi1kb3duXCIsIFwiXCIpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC5tb2RhbC1mdWxsc2NyZWVuI3skcG9zdGZpeH0ge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG4iLCIvLyBTaGFyZWQgYmV0d2VlbiBtb2RhbHMgYW5kIG9mZmNhbnZhc2VzXG5AbWl4aW4gb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LCAkYmFja2Ryb3AtYmcsICRiYWNrZHJvcC1vcGFjaXR5KSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRiYWNrZHJvcC1vcGFjaXR5OyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtZW5kIHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAtMXB4O1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IC0xcHg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1zdGFydCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLTFweDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDAgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtZW5kO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1zdGFydDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igb3ZlcmZsb3ctd3JhcCAvIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxuIiwiQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5saW5rLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6ICR2YWx1ZTtcblxuICAgIEBpZiAkbGluay1zaGFkZS1wZXJjZW50YWdlICE9IDAge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogaWYoY29sb3ItY29udHJhc3QoJHZhbHVlKSA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSksIHRpbnQtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLnJhdGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9YXNwZWN0LXJhdGlvKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgPiAqIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBlYWNoICRrZXksICRyYXRpbyBpbiAkYXNwZWN0LXJhdGlvcyB7XG4gIC5yYXRpby0jeyRrZXl9IHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1hc3BlY3QtcmF0aW86ICN7JHJhdGlvfTtcbiAgfVxufVxuIiwiLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi8vIFJlc3BvbnNpdmUgc3RpY2t5IHRvcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnN0aWNreSN7JGluZml4fS10b3Age1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHN0YWNrc1xuLmhzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi52c3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3RhY2tzXG4iLCIvL1xuLy8gVmlzdWFsbHkgaGlkZGVuXG4vL1xuXG4udmlzdWFsbHktaGlkZGVuLFxuLnZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGU6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gSGlkZSBjb250ZW50IHZpc3VhbGx5IHdoaWxlIGtlZXBpbmcgaXQgYWNjZXNzaWJsZSB0byBhc3Npc3RpdmUgdGVjaG5vbG9naWVzXG4vL1xuLy8gU2VlOiBodHRwczovL3d3dy5hMTF5cHJvamVjdC5jb20vcG9zdHMvMjAxMy0wMS0xMS1ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2tpdHR5Z2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4oKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLy8gVXNlIHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLCBvciBvbmUgb2YgaXRzIGNoaWxkIGVsZW1lbnRzIGlzIGZvY3VzZWRcbi8vIChpLmUuIHdoZW4gZm9jdXMgaXMgd2l0aGluIHRoZSBlbGVtZW50L2NvbnRhaW5lciB0aGF0IHRoZSBjbGFzcyB3YXMgYXBwbGllZCB0bylcbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG5cbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlKCkge1xuICAmOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6I3skc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnR9IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBUZXh0IHRydW5jYXRpb25cbi8vXG5cbi50ZXh0LXRydW5jYXRlIHtcbiAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIudnIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxcHg7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cbiIsIkBtaXhpbiByZXNldC1saXN0KCkge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuQG1peGluIHN1aXQtYm94LXNoYWRvdygkZGFya2VuOiA1JSkge1xyXG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCBkYXJrZW4oJGJvZHktYmcsICRkYXJrZW4pO1xyXG59XHJcbkBtaXhpbiB0ZXh0LXNlbWlib2xkKCkgeyBmb250LXdlaWdodDogNTAwOyB9XHJcbi50ZXh0LWxpZ2h0ZXIgeyBmb250LXdlaWdodDogMjAwOyB9XHJcbi50ZXh0LWxpZ2h0IHsgZm9udC13ZWlnaHQ6IDMwMDsgfVxyXG4udGV4dC1ub3JtYWwgeyBmb250LXdlaWdodDogNDAwOyB9XHJcbi50ZXh0LXNlbWlib2xkIHsgQGluY2x1ZGUgdGV4dC1zZW1pYm9sZCgpOyB9XHJcbi50ZXh0LWxpZ2h0LWJvbGQge1xyXG4gIEBleHRlbmQgLnRleHQtbGlnaHQ7XHJcbiAgc3Ryb25nIHtcclxuICAgIEBleHRlbmQgLnRleHQtc2VtaWJvbGQ7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBoaWRlLXRleHQtaW5kZW50KCkge1xyXG4gIHRleHQtaW5kZW50OiAxMDAlO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4iLCIvL01pZ3JhdGlvbiBCb290c3RyYXA1XHJcblxyXG5hOm5vdChbbXljbGFzc3RvaWdub3JlXSkge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5hOm5vdChbbXljbGFzc3RvaWdub3JlXSk6aG92ZXIge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn1cclxuXHJcbi5mb3JtLWdyb3VwIHtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4uZm9ybS1jb250cm9sIHtcclxuICBhcHBlYXJhbmNlOiBhdXRvO1xyXG59XHJcblxyXG4uZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbCB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi5mb3JtLXJvdyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG59XHJcblxyXG5sYWJlbCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG59XHJcblxyXG4udGV4dC1tdXRlZCB7XHJcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XHJcbiAgY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcclxufSIsIkBtaXhpbiBmYS1pY29uLWZvbnQoKSB7XHJcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XHJcbn1cclxuXHJcbiRpY29uLW9rOiBcIlxcZjAwY1wiO1xyXG4kaWNvbi1yZW1vdmU6IFwiXFxmMDBkXCI7XHJcbiRpY29uLWNvZzogXCJcXGYwMTNcIjtcclxuJGljb24taG9tZTogXCJcXGYwMTVcIjtcclxuJGljb24tcGx1czogXCJcXGYwNjdcIjtcclxuJGljb24tcGx1cy1jaXJjbGU6IFwiXFxmMDU1XCI7XHJcbiRpY29uLXBlbmNpbDogXCJcXGYwNDBcIjtcclxuJGljb24tY2hldnJvbi11cDogXCJcXGYwNzdcIjtcclxuJGljb24tY2hldnJvbi1kb3duOiBcIlxcZjA3OFwiO1xyXG4kaWNvbi1zZWFyY2g6IFwiXFxmMDAyXCI7XHJcbiRpY29uLWNhbGVuZGFyOiBcIlxcZjA3M1wiO1xyXG4kaWNvbi1jYWxlbmRhci1vOiBcIlxcZjEzM1wiO1xyXG4kaWNvbi10aW1lOiBcIlxcZjAxN1wiO1xyXG4ubGluay13aXRoLWljb24ge1xyXG4gIC5mYSB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XHJcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xyXG4gIH1cclxufVxyXG4iLCJcclxuLmJ0bi1yb3VuZCB7XHJcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcclxufVxyXG5AbWl4aW4gYnRuLW1peGluKCRzdGF0ZSwgJGljb246IG5vbmUsICRzaXplOiBub25lLCAkcm91bmQ6IGZhbHNlKSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIEBleHRlbmQgLmJ0bjtcclxuICBAZXh0ZW5kIC5idG4tI3skc3RhdGV9O1xyXG4gIEBpZiAkc2l6ZSB7XHJcbiAgICBAZXh0ZW5kIC5idG4tI3skc2l6ZX0gIW9wdGlvbmFsO1xyXG4gIH1cclxuICBAaWYgJHJvdW5kIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDcwcHg7XHJcbiAgfVxyXG4gIEBpZiAkaWNvbiB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIEBpbmNsdWRlIGZhLWljb24tZm9udCgpO1xyXG4gICAgICBjb250ZW50OiAkaWNvbjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5idG4tb3V0bGluZS1kYW5nZXIge1xyXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnRpemUoJGJyYW5kLWRhbmdlciwgLjI1KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG59XHJcbiIsIiRzdWl0LWZvcm0tcGFkZGluZy12ZXJ0aWNhbDogLjVyZW07XHJcbiRzdWl0LWZvcm0tcGFkZGluZy1ob3Jpem9udGFsOiAxLjFyZW07XHJcbiRzdWl0LWxhYmVsLXBhZGRpbmctdG9wOiAkc3VpdC1mb3JtLXBhZGRpbmctdmVydGljYWwgKyAuNTVyZW07XHJcbiRzdWl0LWxhYmVsLXBhZGRpbmctYm90dG9tOiAkc3VpdC1mb3JtLXBhZGRpbmctdmVydGljYWwgKyAuNHJlbTtcclxuJHN1aXQtcGFkZGluZy1maXJzdC1leHRyYTogLjI1cmVtO1xyXG5cclxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcclxuICBsaW5lLWhlaWdodDogJHRleHRhcmVhLWxpbmUtaGVpZ2h0O1xyXG59XHJcblxyXG5maWVsZHNldCB7XHJcbiAgQGluY2x1ZGUgc3VpdC1ib3gtc2hhZG93KCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxufVxyXG5cclxuLy8gRGphbmdvIHBsYWluL29yaWdpbmFsIG1hcmt1cFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5maWVsZHNldCB7XHJcbiAgPiBoMiB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XHJcbiAgfVxyXG4gID4gLmRlc2NyaXB0aW9uIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcclxuICAgIHBhZGRpbmctdG9wOiAuMzVyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBAZXh0ZW5kIC50ZXh0LW11dGVkO1xyXG4gIH1cclxuICAvLyBDbGVhciBmbG9hdFxyXG4gIGgyICsgLmRlc2NyaXB0aW9uICsgKiwgLmlubGluZS1yZWxhdGVkIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxuICAuZm9ybS1yb3c6bm90KC5mb3JtLWdyb3VwKTpub3QodHIpIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1iZztcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgID4gbGFiZWw6bm90KC5mb3JtLWNvbnRyb2wtbGFiZWwpIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBTaW5jZSBjb250ZW50IGFmdGVyIGxhYmVsIGlzIG5vdCB3cmFwcGVkIGluIGNvbnRhaW5lclxyXG4gICAgLy8gd2UgbXVzdCBmYWtlIHBhZGRpbmcgZm9yIGlucHV0XHJcbiAgICBwYWRkaW5nOiAkc3VpdC1mb3JtLXBhZGRpbmctdmVydGljYWwgJHN1aXQtZm9ybS1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgfVxyXG4gICAgPiAqIHtcclxuICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgIH1cclxuICAgID4gbGFiZWw6bm90KC5mb3JtLWNvbnRyb2wtbGFiZWwpIHtcclxuICAgICAgQGV4dGVuZCAuY29sLXNtLTI7XHJcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XHJcbiAgICAgIG1hcmdpbjogKC0kc3VpdC1mb3JtLXBhZGRpbmctdmVydGljYWwpICRzdWl0LWZvcm0tcGFkZGluZy1ob3Jpem9udGFsICgtJHN1aXQtZm9ybS1wYWRkaW5nLXZlcnRpY2FsKSAoLSRzdWl0LWZvcm0tcGFkZGluZy1ob3Jpem9udGFsKTtcclxuICAgICAgJi5yZXF1aXJlZCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgIC8vIFVzZSBhcyAuY29sLXNtLTNcclxuICAgICAgICBmbGV4OiAwIDAgMjUlO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBSZW1vdmUgYm90dG9tIGJvcmRlciBmcm9tIHN1aXQtaW5jbHVkZSBmaWVsZHNldHNcclxuLnN1aXQtaW5jbHVkZSB7XHJcbiAgZmllbGRzZXQ6bm90KC5zdWl0LWZvcm0pOm5vdCgubW9kdWxlKSB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gIH1cclxuICAuY2FyZDpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBEamFuZ28gXCJwbGFpblwiIGFuZCBCUzQgbWFya3VwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbmZpZWxkc2V0IHtcclxuICAudGV4dC1oZWxwIHtcclxuICAgIEBleHRlbmQgLnRleHQtbXV0ZWQ7XHJcbiAgICBtYXJnaW4tdG9wOiAuNXJlbTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICAvLyBIZWxwIHRleHQgcmlnaHQgYWZ0ZXIgY2hlY2tib3ggb25seSAoVXNlciBwZXJtaXNzaW9ucyBmb3IgZXhhbXBsZSlcclxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyAudGV4dC1oZWxwLFxyXG4gIC5mb3JtLWlubGluZSAudGV4dC1oZWxwIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcclxuICB9XHJcbiAgLmZvcm0taW5saW5lIHtcclxuICAgIC50ZXh0LWhlbHAge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmZpZWxkc2V0IHtcclxuICAuZm9ybS1yb3csIC5zdWl0LWZvcm0gLmZvcm0tZ3JvdXAge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcclxuICAgICAgJi5yZXF1aXJlZCB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiAnKic7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDVweDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGNvbG9yOiAjY2NjO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiBsYWJlbCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1sYWJlbC1iZztcclxuICAgICAgcGFkZGluZy10b3A6ICRzdWl0LWxhYmVsLXBhZGRpbmctdG9wO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHN1aXQtbGFiZWwtcGFkZGluZy1ib3R0b207XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZm9ybS1ib3JkZXItY29sb3I7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAkc3VpdC1sYWJlbC1wYWRkaW5nLXRvcCowLjU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmhhcy1kYW5nZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICA+IGxhYmVsIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IHVsLCAuZXJyb3JsaXN0IHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLjVyZW07XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEVycm9yc1xyXG4uZXJyb3Jub3RlIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTJweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMTJweDtcclxufVxyXG51bC5lcnJvcmxpc3Qge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUteHM7XHJcbiAgY29sb3I6ICRicmFuZC1kYW5nZXI7XHJcbn1cclxudWwuZXJyb3JsaXN0IGxpIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG59XHJcbnVsLmVycm9ybGlzdCBsaTpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG51bC5lcnJvcmxpc3QgbGkgYSB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG59XHJcbi5zdWl0LWZvcm0ge1xyXG4gIC5mb3JtLWdyb3VwLmVycm9ycyB7XHJcbiAgICBpbnB1dCwgc2VsZWN0IHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1kYW5nZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCUzQgbWFya3VwIGluIC5zdWl0LWZvcm1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnN1aXQtZm9ybSB7XHJcbiAgLmZvcm0tZ3JvdXAge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tYmc7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XHJcbiAgICB9XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgJi5yZXF1aXJlZCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogLjU1cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9ybS1jb250cm9sLWxhYmVsICsgZGl2W2NsYXNzKj0nY29sLSddIHtcclxuICAgICAgcGFkZGluZy10b3A6ICRzdWl0LWZvcm0tcGFkZGluZy12ZXJ0aWNhbDtcclxuICAgICAgcGFkZGluZy1ib3R0b206ICRzdWl0LWZvcm0tcGFkZGluZy12ZXJ0aWNhbDtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICAgIC8vIE1vcmUgc3BhY2luZyBmb3IgZmlyc3QgYW5kIGxhc3Qgcm93c1xyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIC5mb3JtLWNvbnRyb2wtbGFiZWwge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAkc3VpdC1sYWJlbC1wYWRkaW5nLXRvcCArICRzdWl0LXBhZGRpbmctZmlyc3QtZXh0cmE7XHJcbiAgICAgIH1cclxuICAgICAgLmZvcm0tY29udHJvbC1sYWJlbCArIGRpdltjbGFzcyo9J2NvbC0nXSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICRzdWl0LWZvcm0tcGFkZGluZy12ZXJ0aWNhbCArICRzdWl0LXBhZGRpbmctZmlyc3QtZXh0cmE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIC5mb3JtLWNvbnRyb2wtbGFiZWwgKyBkaXZbY2xhc3MqPSdjb2wtJ10ge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc3VpdC1mb3JtLXBhZGRpbmctdmVydGljYWwgKyAkc3VpdC1wYWRkaW5nLWZpcnN0LWV4dHJhO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNdWx0aXBsZSBpbiBzaW5nbGUgbGluZSBmaWVsZHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNvbC1tdWx0aS1maWVsZHMge1xyXG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuICAubXVsdGktZmllbGQge1xyXG4gICAgZmxleC1iYXNpczogMTVyZW07XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHN1aXQtZm9ybS1wYWRkaW5nLXZlcnRpY2FsO1xyXG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC5mb3JtLWNvbnRyb2wtbGFiZWwge1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAkc3VpdC1mb3JtLXBhZGRpbmctdmVydGljYWwgIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkc3VpdC1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbCAqIDAuNTtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubXVsdGktZmllbGQtY29udGVudCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgaW5wdXQsIHNlbGVjdCB7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAuZm9ybS1jb250cm9sLWxhYmVsLCAubXVsdGktZmllbGQtY29udGVudCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5oaWRkZW4ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIENPTExBUFNFRCBGSUVMRFNFVFMgKi9cclxuZmllbGRzZXQge1xyXG4gICYuY29sbGFwc2VkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWJnO1xyXG4gICAgbWFyZ2luLXRvcDogLTFyZW07XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgPiAqIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAuNXJlbSAxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLmNvbGxhcHNlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLyogSU4tTElORVMgKi9cclxuLmVtcHR5LWZvcm0ge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRhYnVsYXIge1xyXG4gIHRhYmxlIHtcclxuICAgIEBleHRlbmQgLnRhYmxlO1xyXG4gICAgQGV4dGVuZCAjcmVzdWx0X2xpc3Q7XHJcbiAgfVxyXG59XHJcblxyXG4uaW5saW5lLWdyb3VwIHtcclxuICAvLyBUYWJ1bGFyIGlubGluZXNcclxuICAudGFidWxhciB7XHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIHRoZWFkIHtcclxuICAgICAgICA+IHRyIHRoIHtcclxuICAgICAgICAgIC8vIE92ZXJyaWRlIHBhZGRpbmcgYnkgcHJldmlvdXMgQGV4dGVuZCAjcmVzdWx0X2xpc3Q7XHJcbiAgICAgICAgICBwYWRkaW5nOiAkdGFibGUtdGgtcGFkZGluZztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGgsIHRkIHtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICAgICAgfVxyXG4gICAgICB0Ym9keSB7XHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgJi5vcmlnaW5hbCB7XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICBAZXh0ZW5kIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0O1xyXG4gICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLmVycm9ybGlzdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuZXJyb3JsaXN0ICsgaW5wdXQge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1kYW5nZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBIaWRlIFwib3JpZ2luYWxcIi9uYW1lIGNvbHVtblxyXG4gICAgICAuc3VpdC1pbmxpbmVzLWhpZGUtb3JpZ2luYWw6bm90KC5zdWl0LWlubGluZXMtc2hvdy1vcmlnaW5hbCkgJiB7XHJcbiAgICAgICAgdGJvZHksIHRoZWFkIHtcclxuICAgICAgICAgID4gdHIge1xyXG4gICAgICAgICAgICB0ZCwgdGgge1xyXG4gICAgICAgICAgICAgICYub3JpZ2luYWwge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICA+ICoge1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aC5vcmlnaW5hbDplbXB0eSArIHRoIHtcclxuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBmaWVsZHNldCB7XHJcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIFN0YWNrZWRcclxuICAuaW5saW5lLXJlbGF0ZWQge1xyXG4gICAgaDMge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICAgICAgcGFkZGluZzogJHRhYmxlLXRoLXBhZGRpbmc7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWxpZ2h0ZXN0O1xyXG4gICAgICBiIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxNy41JTtcclxuICAgICAgfVxyXG4gICAgICBhIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAmLmlubGluZS1kZWxldGVsaW5rIHtcclxuICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgICBzcGFuLmRlbGV0ZSwgc3Bhbjpub3QoLmlubGluZV9sYWJlbCk6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgfVxyXG4gICAgICAuc3RhY2tlZC1pbmxpbmUtc29ydGFibGUge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBmaWVsZHNldC5zdWl0LWZvcm0ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAuaW5saW5lLXJlbGF0ZWQgKyAuZW1wdHktZm9ybSArIC5hZGQtcm93IHtcclxuICAgIG1hcmdpbi10b3A6IC0xcmVtO1xyXG4gIH1cclxuICBkaXYuYWRkLXJvdyB7XHJcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJvZHktYmc7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWJnO1xyXG4gIH1cclxufVxyXG5cclxuLmZvcm0tc2VsZWN0LXNtIHtcclxuICAkc2VsZWN0LWJvcmRlci13aWR0aDogKCRib3JkZXItd2lkdGggKiAyKTtcclxuICBoZWlnaHQ6IGNhbGMoI3skaW5wdXQtaGVpZ2h0fSAtICN7JHNlbGVjdC1ib3JkZXItd2lkdGh9IC0gNXB4KTtcclxufVxyXG5cclxuLy8gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBib290c3RyYXAtYWxwaGE2XHJcbi50YWJ1bGFyIC5mb3JtLXJvdyB7XHJcbiAgZGlzcGxheTogdGFibGUtcm93O1xyXG59XHJcbiIsIi8qIFRhYnVsYXJJbmxpbmVzIFNvcnRhYmxlcyAqL1xyXG4uaW5saW5lLXNvcnRhYmxlIHtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIGEge1xyXG4gICAgY29sb3I6ICMwMDA7XHJcbiAgICBwYWRkaW5nOiAuM3JlbSAuNHJlbSAwIC4ycmVtO1xyXG4gICAgI3Jlc3VsdF9saXN0ICYge1xyXG4gICAgICBwYWRkaW5nLXRvcDogLjA1cmVtO1xyXG4gICAgfVxyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgb3BhY2l0eTogLjQ7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIG9wYWNpdHk6IC43O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBGb3IgZGVidWdnaW5nIHB1cnBvc2VzXHJcbi5zdWl0LXNvcnRhYmxlIHtcclxuICAvL2Rpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xyXG59XHJcbi5zZWxlY3RlZCB0ZCB7XHJcbiAgLmlubGluZS1zb3J0YWJsZSBhIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbnRyOmZpcnN0LWNoaWxkIHRkIC5pbmxpbmUtc29ydGFibGUgLnNvcnRhYmxlLXVwIHtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcbi50YWJ1bGFyIHtcclxuICAvLyBDbGFzcyBhZGRlZCBieSBzb3J0YWJsZSBKU1xyXG4gIHRyLmxhc3Qtc29ydGFibGUsXHJcbiAgdHIuZm9ybS1yb3c6bnRoLWxhc3QtY2hpbGQoMilcclxuICAgIC8vIENhbid0IHVzZSBmb2xsb3dpbmcgM3JkIGNoaWxkIGFzIGl0IHdpbGwgYmUgd3JvbmcgaWYgbWF4IGlubGluZXMgbGltaXQgaXMgcmVhY2hlZFxyXG4gICAgLy90ci5mb3JtLXJvdzpudGgtbGFzdC1jaGlsZCgzKSxcclxuICB7XHJcbiAgICB0ZCAuaW5saW5lLXNvcnRhYmxlIC5zb3J0YWJsZS1kb3duIHtcclxuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiNyZXN1bHRfbGlzdCB0cjpsYXN0LWNoaWxkIHtcclxuICB0ZCAuaW5saW5lLXNvcnRhYmxlIC5zb3J0YWJsZS1kb3duIHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICB9XHJcbn1cclxuLyogU3RhY2tlZElubGluZSBzb3J0YWJsZXMgKi9cclxuLnN0YWNrZWQtaW5saW5lLXNvcnRhYmxlIHtcclxuICBmbG9hdDogbGVmdDtcclxuICA6Zmlyc3QtY2hpbGQge1xyXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xyXG4gIH1cclxuICAmOm50aC1sYXN0LWNoaWxkKDIpIHtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICB9XHJcbiAgYSB7XHJcbiAgICBjb2xvcjogJGdyYXktbGlnaHRlcjtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmlubGluZS1ncm91cCA+IGRpdjpmaXJzdC1vZi10eXBlIC5zdGFja2VkLWlubGluZS1zb3J0YWJsZSAuc29ydGFibGUtdXAsXHJcbi5pbmxpbmUtZ3JvdXAgPiBkaXY6bnRoLWxhc3QtY2hpbGQoMykgLnN0YWNrZWQtaW5saW5lLXNvcnRhYmxlIC5zb3J0YWJsZS1kb3duIHtcclxuICBvcGFjaXR5OiAuMTUgIWltcG9ydGFudDtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuIiwiZmllbGRzZXQge1xyXG4gIGlucHV0W3R5cGU9dGV4dF0sXHJcbiAgaW5wdXRbdHlwZT11cmxdLFxyXG4gIGlucHV0W3R5cGU9ZW1haWxdLFxyXG4gIGlucHV0W3R5cGU9bnVtYmVyXSxcclxuICBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcclxuICBpbnB1dFt0eXBlPWRhdGVdLFxyXG4gIGlucHV0W3R5cGU9dGVsXSxcclxuICAudlRleHRGaWVsZCxcclxuICAudlVSTEZpZWxkLFxyXG4gIC52TGFyZ2VUZXh0RmllbGQsXHJcbiAgLnZUaW1lRmllbGQsXHJcbiAgLnZEYXRlRmllbGQge1xyXG4gICAgQGV4dGVuZCAuZm9ybS1jb250cm9sO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgc2VsZWN0Om5vdChbbXVsdGlwbGU9XCJtdWx0aXBsZVwiXSkge1xyXG4gICAgQGV4dGVuZCAuZm9ybS1zZWxlY3QgIW9wdGlvbmFsO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XHJcbiAgfVxyXG4gIGlucHV0IHtcclxuICAgICZbdHlwZT1udW1iZXJdLFxyXG4gICAgJlt0eXBlPWRhdGVdLFxyXG4gICAgJi52SW50ZWdlckZpZWxkLFxyXG4gICAgJi52SW50ZWdlckZpZWxkLFxyXG4gICAgJi52RGF0ZUZpZWxkLFxyXG4gICAgJi52VGltZUZpZWxkLFxyXG4gICAgJi52Rm9yZWlnbktleVJhd0lkQWRtaW5GaWVsZCB7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBEYXRlIGZpZWxkc1xyXG4udGltZXpvbmV3YXJuaW5nIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luLXRvcDogLjVyZW07XHJcbiAgQGV4dGVuZCAudGV4dC1tdXRlZDtcclxuICBAZXh0ZW5kIHNtYWxsO1xyXG59XHJcbi5yZWxhdGVkLWxvb2t1cCB7XHJcbiAgJjpiZWZvcmUge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICBAaW5jbHVkZSBmYS1pY29uLWZvbnQoKTtcclxuICAgIGNvbnRlbnQ6ICRpY29uLXNlYXJjaDtcclxuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgfVxyXG5cclxufVxyXG4uYXV0b3NpemUge1xyXG4gIG1heC1oZWlnaHQ6IDEycmVtO1xyXG59XHJcbi5JbWFnZVdpZGdldCB7XHJcbiAgLmZsb2F0LXhzLWxlZnQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xyXG4gICAgbWF4LXdpZHRoOiA3NXB4O1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG4ud2lkZ2V0LUFkbWluU3BsaXREYXRlVGltZSwgLndpZGdldC1BZG1pbkRhdGVXaWRnZXQsIC53aWRnZXQtQWRtaW5UaW1lV2lkZ2V0IHtcclxuICAvLyBIaWRlIGFsbCB0ZXh0XHJcbiAgZm9udC1zaXplOiAwO1xyXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBwIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gIC5kYXRldGltZXNob3J0Y3V0cyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDAgMS41cmVtIDAgMDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGEge1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzLjE1cmVtO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC40NXJlbTtcclxuICAgICAgfVxyXG4gICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICB9XHJcbiAgICAgICRpY29uLXdpZHRoOiAycmVtO1xyXG4gICAgICAmW2lkXj0nY2FsZW5kYXJsaW5rJ10sICZbaWRePSdjbG9ja2xpbmsnXSB7XHJcbiAgICAgICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwLjc1cmVtO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAtMXB4O1xyXG4gICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgLy93aWR0aDogJGljb24td2lkdGg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtZ3JvdXAtYWRkb24gIW9wdGlvbmFsO1xyXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZGF0ZS1pY29uLCAuY2xvY2staWNvbiB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmYS1pY29uLWZvbnQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRhdGUtaWNvbiB7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWNhbGVuZGFyO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY2xvY2staWNvbiB7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLXRpbWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbaWRePSdjbG9ja2xpbmsnXSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBpbnB1dCB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICYudkRhdGVGaWVsZCwgJi52VGltZUZpZWxkIHtcclxuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgICAvL3BhZGRpbmctcmlnaHQ6IDJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIGJyIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgLnRpbWV6b25ld2FybmluZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICB9XHJcbn1cclxuLndpZGdldC1BZG1pblNwbGl0RGF0ZVRpbWUge1xyXG4gIGlucHV0LnZEYXRlRmllbGQge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IC4ycmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uY2FsZW5kYXJib3gsIC5jbG9ja2JveCB7XHJcbiAgbWFyZ2luOiAwIDAgMCAycmVtO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpO1xyXG4gIC5jYWxlbmRhci1jYW5jZWwge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIHBhZGRpbmc6IC4zcmVtIDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRpbnZlcnNlLWxpZ2h0ZXN0LCAxNSUpO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbGlnaHRlc3Q7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuLndpZGdldC1DaGVja2JveElucHV0LCBbY2xhc3MqPSdDaGVja2JveElucHV0J10sIC50YWJ1bGFyIC5mb3JtLXJvdyB7XHJcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgIG1hcmdpbi10b3A6IC42NXJlbTtcclxuICB9XHJcbiAgPiAudGV4dC1oZWxwIHtcclxuICAgIG1hcmdpbi10b3A6IC4yNXJlbTtcclxuICB9XHJcbn1cclxuLmNhbGVuZGFyYm94IHtcclxuICB6LWluZGV4OiAzO1xyXG4gID4gZGl2OmZpcnN0LWNoaWxkIHtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkaW52ZXJzZS1saWdodGVzdCwgNSUpO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBhIHtcclxuICAgICAgLy9jb2xvcjogI2ZmZjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIC8vd2lkdGg6IDJyZW07XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcGFkZGluZzogLjNyZW0gLjJyZW0gLjNyZW0gMXJlbTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIEBpbmNsdWRlIGZhLWljb24tZm9udCgpO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1saWdodGVyO1xyXG4gICAgICB9XHJcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgICAmLmNhbGVuZGFybmF2LXByZXZpb3VzIHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLmNhbGVuZGFybmF2LW5leHQge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHRhYmxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLy9ib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xyXG4gICAgLy9ib3JkZXItc3BhY2luZzogMXB4IDFweDtcclxuICAgIGNhcHRpb24ge1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgdG9wOiAuM3JlbTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG4gICAgdGJvZHkge1xyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xyXG4gICAgICAgICYubm9uZGF5IHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcGFkZGluZzogLjM1cmVtIC41cmVtO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IC0xcHggLTFweCAwIDAgJGJvZHktYmc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudG9kYXkge1xyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICRiZ2NvbDogbGlnaHRlbigkYnJhbmQtc3VjY2VzcywgMzUlKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnY29sO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAtMXB4IC0xcHggMCAwICRiZ2NvbDtcclxuICAgICAgICAgICAgLy9jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgLy9ib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDJweCAwIHJnYmEoMCwwLDAsLjIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLCAudG9kYXkge1xyXG4gICAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICAgICRiZ2NvbDogbGlnaHRlbigkaW52ZXJzZS1saWdodGVzdCwgMTUlKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnY29sO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAtMXB4IC0xcHggMCAwICRiZ2NvbDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbGlnaHRlc3Q7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgLjIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi50b2RheSB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRicmFuZC1zdWNjZXNzLCAzNSUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHRoIHtcclxuICAgICAgICBwYWRkaW5nOiAuNHJlbSAwIC4zcmVtO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmNhbGVuZGFyLXNob3J0Y3V0cyB7XHJcbiAgICBwYWRkaW5nOiAuNzVyZW0gMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiBsaWdodGVuKCR0ZXh0LW11dGVkLCAxNSUpO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcclxuICAgICAgcGFkZGluZzogMCAuMnJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmNsb2NrYm94IHtcclxuICBoMiB7XHJcbiAgICBwYWRkaW5nOiAuNzVyZW0gMS41cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRpbnZlcnNlLWxpZ2h0ZXN0LCA1JSk7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbiAgLnRpbWVsaXN0IHtcclxuICAgIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcclxuICAgIGxpIHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogLjNyZW0gMDtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpe1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBUd28gY29sdW1uIHNlbGVjdG9yICovXHJcbi5zZWxlY3RvciB7XHJcbiBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAuc2VsZWN0b3ItY2hvb3NlciB7XHJcbiAgICAvL2FsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSByZXNldC1saXN0KCk7XHJcbiAgICAvL3BhZGRpbmc6IDFyZW07XHJcbiAgICBtaW4taGVpZ2h0OiAyMDBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMCAxcmVtO1xyXG4gICAgPiAqIHtcclxuICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuc2VsZWN0b3ItYXZhaWxhYmxlLCAuc2VsZWN0b3ItY2hvc2VuIHtcclxuICAgIGZsZXg6IDEgMSAyMDBweDtcclxuICAgIGgyIHtcclxuICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAuMXJlbTtcclxuICAgICAgLy9tYXJnaW46IDA7XHJcbiAgICAgIC8vcGFkZGluZzogMDtcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICBAZXh0ZW5kIC5mb3JtLWNvbnRyb2w7XHJcbiAgICAgIHBhZGRpbmc6IC4yNXJlbSAwO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgLnNlbGVjdG9yLWF2YWlsYWJsZSB7XHJcbiAgICAvL21hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBwIHtcclxuICAgICAgLy9tYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAvL3BhZGRpbmctYm90dG9tOiAtMjBweDtcclxuICAgIH1cclxuICAgIGlucHV0IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgfVxyXG4gICAgc2VsZWN0IHtcclxuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDE0MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuc2VsZWN0b3ItY2hvc2VuIHtcclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDE2MnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4ucmFkaW9saXN0IHtcclxuICBAaW5jbHVkZSByZXNldC1saXN0KCk7XHJcbiAgbWFyZ2luLXRvcDogMC4zNzVyZW07XHJcbiAgaW5wdXQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAuMzVyZW07XHJcbiAgfVxyXG4gICYuaW5saW5lIHtcclxuICAgIGxpIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLnN1aXQtY2hhci1jb3VudCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGhlaWdodDogMXJlbTtcclxuICByaWdodDogMS4yNXJlbTtcclxuICBtYXJnaW4tdG9wOiAtMS4xNXJlbTtcclxuICBmb250LXNpemU6IDExcHg7XHJcbiAgY29sb3I6ICRncmF5LWxpZ2h0O1xyXG4gIGEge1xyXG4gICAgY29sb3I6ICRncmF5LWxpZ2h0O1xyXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAjNTVhY2VlO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuZmEge1xyXG4gICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZy1sZWZ0OiAycHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBDaGVja2JveFNlbGVjdE11bHRpcGxlIGFuZCBBZG1pblJhZGlvU2VsZWN0IHdpZGdldFxyXG4ucmVsYXRlZC13aWRnZXQtd3JhcHBlciwgLndpZGdldC1BZG1pblJhZGlvU2VsZWN0IHtcclxuICB1bCB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgID4gbGkge1xyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSwgaW5wdXRbdHlwZT0ncmFkaW8nXSB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEVkaXQgcmVsYXRlZCBmb3IgZGphbmdvIGZvcmVpZ24ga2V5c1xyXG4ucmVsYXRlZC13aWRnZXQtd3JhcHBlci1saW5rIHtcclxuICAmOm5vdChbaHJlZl0pIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAvL2JhY2tncm91bmQtY29sb3I6IHJlZDtcclxuICB9XHJcbiAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG59XHJcbiIsIi5lcnJvcm5vdGUge1xyXG4gIEBleHRlbmQgLmFsZXJ0O1xyXG4gIEBleHRlbmQgLmFsZXJ0LWRhbmdlcjtcclxufVxyXG4ubWVzc2FnZWxpc3Qge1xyXG4gIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW46IDFyZW0gJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UgMDtcclxuICBsaSB7XHJcbiAgICBAZXh0ZW5kIC5hbGVydDtcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICAmLnN1Y2Nlc3Mge1xyXG4gICAgICBAZXh0ZW5kIC5hbGVydC1zdWNjZXNzO1xyXG4gICAgfVxyXG4gICAgJi5pbmZvIHtcclxuICAgICAgQGV4dGVuZCAuYWxlcnQtaW5mbztcclxuICAgIH1cclxuICAgICYud2FybmluZyB7XHJcbiAgICAgIEBleHRlbmQgLmFsZXJ0LXdhcm5pbmc7XHJcbiAgICB9XHJcbiAgICAmLmRhbmdlciwgJi5lcnJvciB7XHJcbiAgICAgIEBleHRlbmQgLmFsZXJ0LWRhbmdlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiYm9keS5kZWxldGUtY29uZmlybWF0aW9uIHtcclxuICAuY29udGVudC13cmFwIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgQGV4dGVuZCAuYWxlcnQ7XHJcbiAgICBAZXh0ZW5kIC5hbGVydC1kYW5nZXI7XHJcbiAgICBtYXJnaW46IDEuNXJlbSAkbmF2LXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICAgIC8vcGFkZGluZzogMS41cmVtICRoZWFkZXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgaDEsIGgyLCB1bCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgIH1cclxuICAgIGgxIHtcclxuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWgyO1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTtcclxuICAgIH1cclxuICAgIGZvcm0ge1xyXG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgfVxyXG4gICAgaW5wdXRbdHlwZT0nYnV0dG9uJ10sIGlucHV0W3R5cGU9J3N1Ym1pdCddLCBidXR0b24ge1xyXG4gICAgICBAZXh0ZW5kIC5idG47XHJcbiAgICAgIEBleHRlbmQgLmJ0bi1sZztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XHJcbiAgICB9XHJcbiAgICBpbnB1dFt0eXBlPSdidXR0b24nXSwgYnV0dG9uIHtcclxuICAgICAgQGV4dGVuZCAuYnRuLXNlY29uZGFyeTtcclxuICAgIH1cclxuICAgIGlucHV0W3R5cGU9J3N1Ym1pdCddIHtcclxuICAgICAgQGV4dGVuZCAuYnRuLWRhbmdlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xyXG5cclxuLnN1Ym1pdC1yb3cge1xyXG4gIC5kZWxldGVsaW5rLWJveCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICAuZGVsZXRlbGluayB7XHJcbiAgICAgIEBleHRlbmQgLmJ0bjtcclxuICAgICAgQGV4dGVuZCAuYnRuLW91dGxpbmUtZGFuZ2VyO1xyXG4gICAgfVxyXG4gIH1cclxuICBpbnB1dFt0eXBlPSdzdWJtaXQnXSwgaW5wdXRbdHlwZT0nYnV0dG9uJ10sIGJ1dHRvbiwgLmJ0biB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcclxuICB9XHJcbiAgaW5wdXRbdHlwZT0nc3VibWl0J10sIGlucHV0W3R5cGU9J2J1dHRvbiddLCBidXR0b24ge1xyXG4gICAgJjpub3QoW2NsYXNzKj1cImJ0bi1cIl0pIHtcclxuICAgICAgQGV4dGVuZCAuYnRuO1xyXG4gICAgICBAZXh0ZW5kIC5idG4tbGc7XHJcbiAgICAgIEBleHRlbmQgLmJ0bi1zZWNvbmRhcnk7XHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIEBleHRlbmQgLmJ0bi1wcmltYXJ5O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuZml4ZWQge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIHBhZGRpbmc6IDEuMnJlbSAkaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbCAxcmVtO1xyXG4gICAgei1pbmRleDogNTAwMDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICB9XHJcbn1cclxuYm9keS5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0IC5jb2wtcmlnaHQge1xyXG4gIC5zdWJtaXQtcm93IHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSowLjU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWJnO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIEBpbmNsdWRlIHN1aXQtYm94LXNoYWRvdygpO1xyXG4gICAgICBhLmJ0bjpub3QoLmRlbGV0ZWxpbmspLCBidXR0b24sIGlucHV0W3R5cGU9J3N1Ym1pdCddLCBpbnB1dFt0eXBlPSdidXR0b24nXSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgPiAqIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgICAuZGVsZXRlbGluay1ib3gge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbi10b3A6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlKjAuNTtcclxuICAgICAgICBvcmRlcjogMTA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLm9iamVjdC10b29scyB7XHJcbiAgICBAaW5jbHVkZSByZXNldC1saXN0KCk7XHJcbiAgICBtYXJnaW4tdG9wOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZTtcclxuICAgIC8vcGFkZGluZzogJGdyaWQtZ3V0dGVyLXdpZHRoLzI7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgJi5oZWFkaW5nIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICAmLmxpc3QtaXRlbSwgJjpub3QoLmxpc3QtaXRlbSkgPiBhIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tYmc7XHJcbiAgICAgICAgICBwYWRkaW5nOiBtYXRoLmRpdigkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSwgMykgJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UqMC41O1xyXG4gICAgICAgICAgQGluY2x1ZGUgc3VpdC1ib3gtc2hhZG93KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bm90KC5saXN0LWl0ZW0pIGEge1xyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5mYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjJyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaGVhZGluZyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXNlbWlib2xkKCk7XHJcbiAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIG1hdGguZGl2KCRncmlkLWd1dHRlci13aWR0aC1iYXNlLCAzKSAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSowLjI1O1xyXG4gICAgICAgICAgJi5oZWFkaW5nLWludmVyc2Uge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1saWdodGVzdDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSowLjI1IG1hdGguZGl2KCRncmlkLWd1dHRlci13aWR0aC1iYXNlLCAzKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJyZWFkY3J1bWJzIHtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgY29sb3I6ICRoZWFkZXItbXV0ZWQtY29sb3I7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGxpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuICBhIHtcclxuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogMCAuMnJlbTtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwge1xyXG4gICNjb250YWluZXIge1xyXG4gICAgPiAuYnJlYWRjcnVtYnMge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBwYWRkaW5nOiAxLjVyZW0gJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2U7XHJcbiAgICAgIGxlZnQ6ICR2ZXJ0aWNhbC1tZW51LXdpZHRoO1xyXG4gICAgfVxyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICAuYnJlYWRjcnVtYnMge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgLm1lc3NhZ2VsaXN0IHtcclxuICAgICAgICBtYXJnaW46IDAgMCAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSowLjUgMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAjY29udGFpbmVyIHtcclxuICAgID4gLm1lc3NhZ2VsaXN0IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgLyomLmNoYW5nZS1mb3JtIHtcclxuICAgICNjb250YWluZXIge1xyXG4gICAgICA+IC5icmVhZGNydW1icyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICAuYnJlYWRjcnVtYnMge1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSovXHJcbn1cclxuXHJcbmJvZHkuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCB7XHJcbiAgLmJyZWFkY3J1bWJzIHtcclxuICAgIHBhZGRpbmc6IDEuNXJlbSAkbmF2LXBhZGRpbmctaG9yaXpvbnRhbCAwO1xyXG4gIH1cclxuICAmLmNoYW5nZS1saXN0IHtcclxuICAgIC5icmVhZGNydW1icyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuY2hhbmdlLWZvcm0ge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICAuYnJlYWRjcnVtYnMge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDY7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICNjb250ZW50IHtcclxuICAgIC5jb250ZW50LXdyYXAge1xyXG4gICAgICAubWVzc2FnZWxpc3Qge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiJHRhYmxlLWJvcmRlci1jb2xvcjogZGFya2VuKCNmZmYsIDUlKTtcclxuJHRyLW9kZC1iZy1jb2xvcjogJHRhYmxlLWJnLWFjY2VudDtcclxuJHRyLWhvdmVyLWJnLWNvbG9yOiBkYXJrZW4oI2ZmZiwgMTAlKTtcclxuJHRyLW9kZC1ob3Zlci1iZy1jb2xvcjogZGFya2VuKCR0ci1vZGQtYmctY29sb3IsIDYlKTtcclxuXHJcbiNyZXN1bHRfbGlzdCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgLy9ib3JkZXItc3BhY2luZzogMXB4O1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgdGhlYWQge1xyXG4gICAgPiB0ciB7XHJcbiAgICAgIHRoIHtcclxuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbGlnaHRlc3Q7XHJcbiAgICAgICAgY29sb3I6ICRncmF5LWxpZ2h0ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAmLmFjdGlvbi1jaGVja2JveC1jb2x1bW4ge1xyXG4gICAgICAgICAgd2lkdGg6IDJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc29ydGVkIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWxpZ2h0ZXI7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWNvbG9yLWJyaWdodGVyO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc29ydG9wdGlvbnMge1xyXG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xyXG4gICAgICAgICAgbWFyZ2luOiAuMXJlbSAuM3JlbSAwIDA7XHJcbiAgICAgICAgICAuc29ydHByaW9yaXR5LCAuc29ydHJlbW92ZSwgLnRvZ2dsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IC4ycmVtO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnNvcnRyZW1vdmUsIC50b2dnbGUge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLWJyaWdodGVyO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmEtaWNvbi1mb250KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5zb3J0cmVtb3ZlOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLXJlbW92ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC50b2dnbGUuYXNjZW5kaW5nOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWNoZXZyb24tdXA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudG9nZ2xlLmRlc2NlbmRpbmc6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJGljb24tY2hldnJvbi1kb3duO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBkaXYudGV4dCB7XHJcbiAgICAgICAgICBzcGFuLCBhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICR0YWJsZS10aC1wYWRkaW5nO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodGVyO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHRib2R5IHtcclxuICAgID4gdHIge1xyXG4gICAgICA+IHRkLCA+IHRoIHtcclxuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgICAgICAvL2JveC1zaGFkb3c6IGluc2V0IDFweCAxcHggMCAjZmZmO1xyXG4gICAgICAgIC8vYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICAgID4gdGgge1xyXG4gICAgICAgIEBleHRlbmQgLnRleHQtc2VtaWJvbGQ7XHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ci1vZGQtYmctY29sb3I7XHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtY2hpbGQoZXZlbik6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ci1vZGQtaG92ZXItYmctY29sb3I7XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRyLWhvdmVyLWJnLWNvbG9yO1xyXG4gICAgICAgID4gdGgsID4gdGQge1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgPiB0aCwgPiB0ZCB7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGludmVyc2UtbGlnaHRlc3QsIDE1JSkgIWltcG9ydGFudDtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkaW52ZXJzZS1saWdodGVzdCwgNSUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRpbnZlcnNlLWxpZ2h0ZXN0LCA1JSkgIWltcG9ydGFudDtcclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGludmVyc2UtbGlnaHRlc3QsIDUlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiB0aCwgPiB0ZCB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgJiwgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAvLyBCb290c3RyYXAgY29sb3JzXHJcbiAgICAgICYudGFibGUtZGFuZ2VyLCAmLnRhYmxlLXdhcm5pbmcsICYudGFibGUtaW5mbywgJi50YWJsZS1zdWNjZXNzIHtcclxuICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgID4gdGQsID4gdGgge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi50YWJsZS1kYW5nZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS1kYW5nZXItYmc7XHJcbiAgICAgICAgPiB0ZCwgPiB0aCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHN0YXRlLWRhbmdlci1ib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYudGFibGUtd2FybmluZyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLXdhcm5pbmctYmc7XHJcbiAgICAgICAgPiB0ZCwgPiB0aCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHN0YXRlLXdhcm5pbmctYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLnRhYmxlLWluZm8ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS1pbmZvLWJnO1xyXG4gICAgICAgID4gdGQsID4gdGgge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzdGF0ZS1pbmZvLWJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi50YWJsZS1zdWNjZXNzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGUtc3VjY2Vzcy1iZztcclxuICAgICAgICA+IHRkLCA+IHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc3RhdGUtc3VjY2Vzcy1ib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC8vIFBlciBjZWxsIHN0eWxpbmdcclxuICAgICAgdGgsIHRkIHtcclxuICAgICAgICAmLnRhYmxlLWRhbmdlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGUtZGFuZ2VyLWJnO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzdGF0ZS1kYW5nZXItYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnRhYmxlLXdhcm5pbmcge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLXdhcm5pbmctYmc7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHN0YXRlLXdhcm5pbmctYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnRhYmxlLWluZm8ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLWluZm8tYmc7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHN0YXRlLWluZm8tYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnRhYmxlLXN1Y2Nlc3Mge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLXN1Y2Nlc3MtYmc7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIubmF2LXRhYnMtc3VpdCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAubmF2LWl0ZW0ge1xyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNzVyZW07XHJcbiAgICB9XHJcbiAgICArIC5uYXYtaXRlbSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAuM3JlbTtcclxuICAgIH1cclxuICB9XHJcbiAgLm5hdi1saW5rIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgIHBhZGRpbmc6IDAuNjVlbSAxLjVlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG5cdCY6Zm9jdXMge1xyXG4gICAgICAkYm9yZGVyLWhvdmVyOiBsaWdodGVuKGRlc2F0dXJhdGUoJGxpbmstY29sb3ItYnJpZ2h0ZXIsIDQ1JSksIDE1JSk7XHJcbiAgICAgIC8vJGJvcmRlci1ob3ZlcjogI2ZmZjtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWhvdmVyICRib3JkZXItaG92ZXIgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcclxuICAgIH1cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgJiwgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICMyMjI7XHJcbiAgICAgICAgQGV4dGVuZCAudGV4dC1zZW1pYm9sZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5oYXMtZXJyb3Ige1xyXG4gICAgICAmLCAmLmFjdGl2ZSwgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRzdGF0ZS1kYW5nZXItdGV4dDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIudGFibGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbn1cclxuLnRhYmxlLWRhcmsge1xyXG4gIGNvbG9yOiAkZ3JheS1saWdodGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgdGgsXHJcbiAgdGQsXHJcbiAgdGhlYWQgdGgge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICB9XHJcbiAgdGhlYWQgdGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbGlnaHRlc3Q7XHJcbiAgfVxyXG4gICY6bm90KC50YWJsZS1ib3JkZXJlZCkge1xyXG4gICAgdGhlYWQgdGg6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpO1xyXG4gICAgfVxyXG4gIH1cclxuICB0Ym9keSB7XHJcbiAgICB0aCwgdGQge1xyXG4gICAgICBjb2xvcjogJGJvZHktY29sb3I7XHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4udGhlYWQtZGFyayB7XHJcbiAgdGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbGlnaHRlc3Q7XHJcbiAgICBjb2xvcjogJGdyYXktbGlnaHRlcjtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgfVxyXG59XHJcbiIsIi5jYXJkIHtcclxuICBAaW5jbHVkZSBzdWl0LWJveC1zaGFkb3coKTtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgLmNhcmQtaGVhZGVyIHtcclxuICAgIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XHJcbiAgfVxyXG59XHJcbiIsImh0bWwge1xyXG4gIC8vIFNldHMgYSBzcGVjaWZpYyBkZWZhdWx0IGBmb250LXNpemVgIGZvciB1c2VyIHdpdGggYHJlbWAgdHlwZSBzY2FsZXMuXHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXJvb3Q7XHJcbn0iLCJib2R5IHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsOm5vdCgubG9naW4pIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAjY29udGFpbmVyIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcclxuICAgICNoZWFkZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICB3aWR0aDogJHZlcnRpY2FsLW1lbnUtd2lkdGg7XHJcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgfVxyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvb3Rlci1oZWlnaHQgKyAzMHB4OyAvLyBGb290ZXIgY29tcGVuc2F0aW9uXHJcbiAgICAgIHBhZGRpbmctdG9wOiA0cmVtOyAvLyBCcmVhZGNydW1icyBjb21wZW5zYXRpb25cclxuICAgIH1cclxuICAgICNmb290ZXIge1xyXG4gICAgICBsZWZ0OiAkdmVydGljYWwtbWVudS13aWR0aDtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICAgIC8vd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuICA+ICNmb290ZXIge1xyXG5cclxuICB9XHJcbiAgJi5kYXNoYm9hcmQ6bm90KFtjbGFzcyo9XCJhcHAtXCJdKSB7XHJcbiAgICAjY29udGFpbmVyIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xyXG5cclxuYm9keS5zdWl0X2xheW91dF9ob3Jpem9udGFsIHtcclxuICAjaGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItYmc7XHJcbiAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1wYWRkaW5nLXZlcnRpY2FsO1xyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgI2JyYW5kaW5nLCAjdXNlci10b29scyB7XHJcbiAgICAgIGZsZXgtYmFzaXM6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIHNtKSowLjU7XHJcbiAgICB9XHJcbiAgICAuaGVhZGVyLWxhYmVsIHtcclxuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWgxKjAuNTtcclxuICAgICAgY29sb3I6ICRoZWFkZXItbXV0ZWQtY29sb3I7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICB9XHJcbiAgICAjYnJhbmRpbmcge1xyXG4gICAgICBtaW4td2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6ICRoZWFkZXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgICAjc2l0ZS1uYW1lIHtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtaDE7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnRpemUoJGhlYWRlci1jb2xvciwgLjIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLmhlYWRlci1sYWJlbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAjdXNlci10b29scyB7XHJcbiAgICAgIGZsZXgtZ3JvdzogMjtcclxuICAgICAgcGFkZGluZzogMCAkaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgIGNvbG9yOiAkaGVhZGVyLW11dGVkLWNvbG9yO1xyXG4gICAgICAvL2ZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcclxuICAgICAgc3Ryb25nIHtcclxuICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcclxuICAgICAgICBAZXh0ZW5kIC50ZXh0LWxpZ2h0O1xyXG4gICAgICB9XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW46IDAgMnB4O1xyXG4gICAgICAgICY6bnRoLWNoaWxkKDIpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbG9yOiBsaWdodGVuKGRlc2F0dXJhdGUoJGxpbmstY29sb3ItYnJpZ2h0LCA1JSksIDIwJSk7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdWl0LXVzZXItdG9vbHMge1xyXG4gICAgICAud2VsY29tZSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB9XHJcbiAgICAgIC51c2VyLWxpbmtzIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICNzaXRlLW5hbWUge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbmJvZHkuc3VpdF9sYXlvdXRfdmVydGljYWwge1xyXG4gICNoZWFkZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlci1iZztcclxuICAgICNicmFuZGluZyB7XHJcbiAgICAgIHBhZGRpbmc6ICRoZWFkZXItcGFkZGluZy12ZXJ0aWNhbCBtYXRoLmRpdigkaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbCwgMykgJGhlYWRlci1wYWRkaW5nLXZlcnRpY2FsO1xyXG4gICAgICAjc2l0ZS1uYW1lIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtaDM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sZztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnRpemUoJGhlYWRlci1jb2xvciwgLjIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLmhlYWRlci1sYWJlbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICNzaXRlLW5hbWUge1xyXG4gICAgICBhIHtcclxuICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgLmhlYWRlci1sYWJlbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMSowLjU7XHJcbiAgICAgIGNvbG9yOiAkaGVhZGVyLW11dGVkLWNvbG9yO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgfVxyXG4gICAgI3VzZXItdG9vbHM6bm90KC5zdWl0LXVzZXItdG9vbHMpIHtcclxuICAgICAgcGFkZGluZzogbWF0aC5kaXYoJGhlYWRlci1wYWRkaW5nLXZlcnRpY2FsLCAxLjIpIG1hdGguZGl2KCRoZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLCAzKTtcclxuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xyXG4gICAgICBjb2xvcjogJGhlYWRlci1tdXRlZC1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCR0b3AtbmF2LWJnLCA3JSk7XHJcbiAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgY29sb3I6ICRoZWFkZXItY29sb3I7XHJcbiAgICAgICAgQGV4dGVuZCAudGV4dC1saWdodDtcclxuICAgICAgfVxyXG4gICAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcclxuICAgICAgICAmOm50aC1jaGlsZCgyKTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vbWFyZ2luLXJpZ2h0OiAuMjVyZW07XHJcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oZGVzYXR1cmF0ZSgkbGluay1jb2xvci1icmlnaHQsIDUlKSwgMjAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1aXQtdXNlci10b29scyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3AtbmF2LWJnO1xyXG4gICAgICBwYWRkaW5nOiAkaGVhZGVyLXBhZGRpbmctdmVydGljYWwqMS4xICRoZWFkZXItcGFkZGluZy1ob3Jpem9udGFsKjAuNTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgIC5zZXBhcmF0b3Ige1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgLndlbGNvbWUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBjb2xvcjogJGhlYWRlci1tdXRlZC1jb2xvcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAuMjVyZW07XHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZhLCAuaWNvbi1saW5rOmJlZm9yZSB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnVzZXItbGlua3Mge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC43NXJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAuMjVyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmljb24tbGluayB7XHJcbiAgICAgICAgZm9udDogMC8wIGE7XHJcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogLjRyZW0gMDtcclxuICAgICAgICB3aWR0aDogMjZweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc207XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzLCBjb2xvciAuMnM7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHRvcC1uYXYtYmcsIDclKTtcclxuICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvci1icmlnaHRlcjtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmYS1pY29uLWZvbnQoKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtdGl0bGUpO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHRvcDogNDBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudmlldy1zaXRlLWxpbms6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWhvbWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuY2hhbmdlLXBhc3N3b3JkLWxpbms6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDg0XCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZG9jdW1lbnRhdGlvbi1saW5rOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjAyZFwiO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmxvZ291dC1saW5rOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA4YlwiO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwic2FzczptYXRoXCI7XHJcblxyXG5ib2R5LnN1aXRfbGF5b3V0X2hvcml6b250YWwge1xyXG4gICNzdWl0LW5hdiB7XHJcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgbWFyZ2luLXRvcDogJGhlYWRlci1wYWRkaW5nLXZlcnRpY2FsO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcC1uYXYtYmc7XHJcbiAgICA+IHVsIHtcclxuICAgICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xyXG4gICAgICBtYXJnaW46IDAgJGhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICAgID4gbGkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgLy9mb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnRpemUoI2ZmZiwgLjMpO1xyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gYSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBwYWRkaW5nOiBtYXRoLmRpdigkaGVhZGVyLXBhZGRpbmctdmVydGljYWwsIDEuNSkgbWF0aC5kaXYoJGhlYWRlci1wYWRkaW5nLWhvcml6b250YWwsIDEuNCk7XHJcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRoZWFkZXItYmc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkaGVhZGVyLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggMCAkbGluay1jb2xvci1icmlnaHRlcjtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQteShkYXJrZW4oJGJvZHktYmcsIDMlKSwgI2ZmZik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR0b3AtbmF2LWJnLCA1JSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkdG9wLW5hdi1iZywgNSUpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiB1bCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNldC1saXN0KCk7XHJcbiAgICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3AtbmF2LWJnO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAxODBweDtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IDAgLTFweCAycHggMCByZ2JhKDAsIDAsIDAsIC4wNyk7XHJcbiAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAkaGVhZGVyLXBhZGRpbmctdmVydGljYWwqMC41IG1hdGguZGl2KCRoZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLCAxLjQpO1xyXG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oJHRvcC1uYXYtYmcsIDUlKTtcclxuICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdG9wLW5hdi1iZywgMiUpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLnN1aXQtbmF2LXJpZ2h0IHtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgPiBsaSA+IHVsIHtcclxuICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAjc3VpdC1zdWItbmF2IHtcclxuICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICAgIHVsIHtcclxuICAgICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xyXG4gICAgICBtYXJnaW46IDAgJG5hdi1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICAgID4gbGkge1xyXG4gICAgICAgID4gYSB7XHJcbiAgICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xyXG4gICAgICAgICAgcGFkZGluZzogbWF0aC5kaXYoJGhlYWRlci1wYWRkaW5nLXZlcnRpY2FsLCAxLjMpIDRweDtcclxuICAgICAgICAgIG1hcmdpbjogMnB4IG1hdGguZGl2KCRoZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLCAzLjc1KSAwO1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGxpbmstY29sb3ItYnJpZ2h0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5ib2R5LnN1aXRfbGF5b3V0X3ZlcnRpY2FsIHtcclxuICAjc3VpdC1uYXYge1xyXG4gICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3AtbmF2LWJnO1xyXG4gICAgPiB1bCB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcclxuICAgICAgPiBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1jb2xvci1icmlnaHRlcjtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItYmc7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmEtaWNvbi1mb250KCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkaW52ZXJzZS1saWdodGVzdDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMXJlbTtcclxuICAgICAgICAgICAgdG9wOiAuODVyZW07XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOXB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5oYXMtY2hpbGRyZW4ge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOm5vdCguaGFzLWNoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICYsICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gYSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHBhZGRpbmc6IC42cmVtIG1hdGguZGl2KCRoZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLCAxLjUpO1xyXG4gICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50aXplKCNmZmYsIC4zKTtcclxuICAgICAgICAgIC5mYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjdyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bm90KC5hY3RpdmUpIHtcclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdG9wLW5hdi1iZywgNSUpO1xyXG4gICAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIC4xKTtcclxuICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgbGVmdDogNzAlO1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1saWdodGVyO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gdWwge1xyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKXtcclxuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbGlnaHRlbigkYm9keS1iZywgMiUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgNHB4IDAgMCAkbGluay1jb2xvci1icmlnaHRlcjtcclxuICAgICAgICAgICAgICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstY29sb3ItYnJpZ2h0ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLW11dGVkLWNvbG9yO1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IC40cmVtIG1hdGguZGl2KCRoZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLCAxLjUpO1xyXG4gICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkYm9keS1iZywgMiUpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkaGVhZGVyLW11dGVkLWNvbG9yLCAyNSUpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9keS1iZztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJib2R5LmNoYW5nZS1mb3JtIHtcclxuICAjY29udGFpbmVyIHtcclxuICAgIGJyLmNsZWFyOmxhc3QtY2hpbGQge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogQmVnaW4gRGphbmdvMy4xICovXHJcbi8qIEhpZGUgdGhlIGNoYW5nZWxpc3QtZmlsdGVyICovXHJcbiNjaGFuZ2VsaXN0LWZpbHRlcntcclxuICBkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcbiNjaGFuZ2VsaXN0IC5jaGFuZ2VsaXN0LWZvcm0tY29udGFpbmVyIHtcclxuICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG59XHJcbmJvZHkuY2hhbmdlLWxpc3QsIGJvZHkuY2hhbmdlLWZvcm0ge1xyXG4gICNjb250YWluZXIgPiBkaXYge1xyXG4gICAgZmxleC1zaHJpbms6IDA7IC8vSWNpXHJcbiAgfVxyXG5cclxuICAjY29udGFpbmVyID4gLm1haW4ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXg6IDEgMSBhdXRvOyAvL0ljaVxyXG4gIH1cclxuXHJcbiAgLm1haW4gPiAuY29udGVudCB7XHJcbiAgICBmbGV4OiAxIDA7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcbi8qIEVuZCBEamFuZ28zLjEgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICBwYWRkaW5nOiAxLjVyZW0gJGhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XHJcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgLmNvbnRlbnQtd3JhcCB7XHJcbiAgICBib2R5LmRhc2hib2FyZCAmIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICA+IGgxIHtcclxuICAgICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgIH1cclxuICAgID4gaDE6Zmlyc3QtY2hpbGQsID4gLm1lc3NhZ2VsaXN0ICsgaDEge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQtbWFpbiB7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgfVxyXG4gICNjb250ZW50LXJlbGF0ZWQge1xyXG4gICAgZmxleC1ncm93OiAxO1xyXG4gIH1cclxufVxyXG4jY29udGVudC1tYWluIHtcclxuICA+IC5vYmplY3QtdG9vbHMge1xyXG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHotaW5kZXg6IDY7XHJcbiAgICA+IGxpIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLjVyZW07XHJcbiAgICAgIH1cclxuICAgICAgPiBhIHtcclxuICAgICAgICAmOm5vdChbY2xhc3MqPVwiYnRuLVwiXSkge1xyXG4gICAgICAgICAgQGV4dGVuZCAuYnRuLXJvdW5kO1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnRuLW1peGluKGluZm8sIG5vbmUsIHNtLCB0cnVlKTtcclxuICAgICAgICAgICYuYWRkbGluayB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bi1taXhpbihzdWNjZXNzLCAkaWNvbi1wbHVzLWNpcmNsZSwgc20sIHRydWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3Rvb2xiYXIge1xyXG4gID4gLm9iamVjdC10b29scyB7XHJcbiAgICBAaW5jbHVkZSByZXNldC1saXN0KCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgei1pbmRleDogNjtcclxuICAgID4gbGkge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcclxuICAgICAgfVxyXG4gICAgICA+IGEge1xyXG4gICAgICAgICY6bm90KFtjbGFzcyo9XCJidG4tXCJdKSB7XHJcbiAgICAgICAgICBAZXh0ZW5kIC5idG4tcm91bmQ7XHJcbiAgICAgICAgICBAaW5jbHVkZSBidG4tbWl4aW4oaW5mbywgbm9uZSwgc20sIHRydWUpO1xyXG4gICAgICAgICAgJi5hZGRsaW5rIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnRuLW1peGluKHN1Y2Nlc3MsICRpY29uLXBsdXMtY2lyY2xlLCBzbSwgdHJ1ZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qIFN0aWNreSBmb290ZXIgc3R5bGVzICAqL1xyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgaHRtbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuICBib2R5IHtcclxuICAgICYuc3VpdF9sYXlvdXRfaG9yaXpvbnRhbCwgJi5sb2dpbiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRmb290ZXItaGVpZ2h0O1xyXG4gICAgICAjZm9vdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWluLWhlaWdodDogJGZvb3Rlci1oZWlnaHQ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLSRmb290ZXItaGVpZ2h0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTdHlsZXMgKi9cclxuLmZvb3RlciB7XHJcbiAgbWluLWhlaWdodDogJGZvb3Rlci1oZWlnaHQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRib2R5LWJnLCA1JSk7XHJcbiAgY29sb3I6ICRncmF5O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcclxuICA+IC5jb250YWluZXItZmx1aWQge1xyXG4gICAgcGFkZGluZzogMXJlbSAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZTtcclxuICAgID4gLnJvdyB7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgID4gZGl2IHtcclxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAuNzVyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5mb290ZXItbGlua3Mge1xyXG4gICAgYSB7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNzVyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIE92ZXJyaWRlIEJTNCBbaGlkZGVuXSBpbiByZWJvb3Quc2NzcyB0byBzaG93IERqYW5nbyBkZWJ1ZyB0b29sYmFyICovXHJcbiNkakRlYnVnIHtcclxuICAmW2hpZGRlbl0sIFtoaWRkZW5dW3N0eWxlKj1cImRpc3BsYXk6IGJsb2NrXCJdLCBbaGlkZGVuXVtzdHlsZSo9XCJkaXNwbGF5OmJsb2NrXCJdIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcclxuXHJcbi5sb2dpbiAjY29udGFpbmVyIHtcclxuICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHdpZHRoOiAyOGVtO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgIG1pbi13aWR0aDogNDAwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAxNXZoO1xyXG4gIH1cclxufVxyXG5cclxuYm9keS5sb2dpbiB7XHJcbiAgJHNwYWNpbmc6IDEuNXJlbTtcclxuICBzdmcge1xyXG4gICAgKiB7XHJcbiAgICAgIGZpbGw6ICRib2R5LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuICAuc3VpdC1sb2dpbi1ncmFwaGljIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAycmVtIGF1dG8gJHNwYWNpbmc7XHJcbiAgfVxyXG4gICNjb250ZW50IHtcclxuICAgIHBhZGRpbmc6ICRzcGFjaW5nO1xyXG4gICAgLmVycm9ybm90ZSB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxuICB9XHJcbiAgI2hlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICAjYnJhbmRpbmcge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICNzaXRlLW5hbWUge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNpbmcqMS41O1xyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIEBleHRlbmQgLnRleHQtc2VtaWJvbGQ7XHJcbiAgICAgICAgICAmLCAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLmhlYWRlci1sYWJlbCB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjNyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5lcnJvcmxpc3Qge1xyXG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xyXG4gICAgbWFyZ2luOiAtLjVyZW0gJHNwYWNpbmcqMC41ICRzcGFjaW5nO1xyXG4gICAgY29sb3I6ICRhbGVydC1kYW5nZXItdGV4dDtcclxuICB9XHJcbiAgLmZvcm0tcm93IHtcclxuICAgIGlucHV0Om5vdChbdHlwZT0naGlkZGVuJ10pIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZyowLjU7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nKjAuNTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogbWF0aC5kaXYoJHNwYWNpbmcsIDEuNzUpO1xyXG4gICAgICAmOm5vdCg6Zm9jdXMpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcclxuICAgICAgICBib3JkZXItY29sb3I6ICRib2R5LWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmhhcy1kYW5nZXIge1xyXG4gICAgICBpbnB1dDpub3QoW3R5cGU9J2hpZGRlbiddKSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYWxlcnQtZGFuZ2VyLXRleHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnN1Ym1pdC1yb3cge1xyXG4gICAgbGFiZWwge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgaW5wdXRbdHlwZT0nc3VibWl0J10ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogJHNwYWNpbmcgMCAwIDA7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgLy9jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIEBleHRlbmQgLmJ0bjtcclxuICAgICAgQGV4dGVuZCAuYnRuLWxnO1xyXG4gICAgICBAZXh0ZW5kIC5idG4tcHJpbWFyeTtcclxuICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiBkZXNhdHVyYXRlKCRsaW5rLWNvbG9yLWJyaWdodGVyLCA1JSk7XHJcbiAgICAgIHBhZGRpbmc6IG1hdGguZGl2KCRzcGFjaW5nLCAxLjUpICRzcGFjaW5nO1xyXG4gICAgICAvLyY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAvLyAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3ItYnJpZ2h0O1xyXG4gICAgICAvLyAgJjphY3RpdmUge1xyXG4gICAgICAvLyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1jb2xvcjtcclxuICAgICAgLy8gIH1cclxuICAgICAgLy99XHJcbiAgICAgIC8vJjphY3RpdmUge1xyXG4gICAgICAvLyAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3I7XHJcbiAgICAgIC8vfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJib2R5LmRhc2hib2FyZCB7XHJcbiAgLm1vZHVsZSB7XHJcbiAgICBtYXJnaW46IDAgJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UgJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UqMC41IDA7XHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBib3JkZXItc3BhY2luZzogMXB4O1xyXG4gICAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xyXG4gICAgICBjYXB0aW9uIHtcclxuICAgICAgICBjYXB0aW9uLXNpZGU6IHRvcDtcclxuICAgICAgICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIHRyIHtcclxuICAgICAgICB0ZCwgdGgge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xyXG4gICAgICAgICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJvZHktYmcsIDIlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkIHtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICNyZWNlbnQtYWN0aW9ucy1tb2R1bGUge1xyXG4gICAgaDIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgaDMge1xyXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtaDQ7XHJcbiAgICB9XHJcbiAgICB1bC5hY3Rpb25saXN0IHtcclxuICAgICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xyXG4gICAgICA+IGxpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRib2R5LWJnLCAyJSk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xyXG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMi44cmVtO1xyXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xyXG4gICAgICAgIH1cclxuICAgICAgICBiciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDJyZW07XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9keS1iZztcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAuNHJlbTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuYWRkbGluaywgLmNoYW5nZWxpbmssIC5kZWxldGVsaW5rIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgQGluY2x1ZGUgZmEtaWNvbi1mb250KCk7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgbWluLXdpZHRoOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5hZGRsaW5rIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJGljb24tcGx1cztcclxuICAgICAgY29sb3I6ICRicmFuZC1zdWNjZXNzO1xyXG4gICAgfVxyXG4gIH1cclxuICAuY2hhbmdlbGluayB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICRpY29uLXBlbmNpbDtcclxuICAgICAgY29sb3I6ICRicmFuZC13YXJuaW5nO1xyXG4gICAgfVxyXG4gIH1cclxuICAuZGVsZXRlbGluayB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICRpY29uLXJlbW92ZTtcclxuICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcclxuXHJcbiRmaWx0ZXItY29sLXdpZHRoOiAxNXJlbTtcclxuI2NoYW5nZWxpc3Qge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAmLmZpbHRlcmVkIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICN0b29sYmFyIHtcclxuICAgICAgZmxleDogMTA7XHJcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAjY2hhbmdlbGlzdC1maWx0ZXIge1xyXG4gICAgICAmOm5vdCg6ZW1wdHkpIHtcclxuICAgICAgICBmbGV4LWJhc2lzOiAxNXJlbTtcclxuICAgICAgICBvcmRlcjogMztcclxuICAgICAgfVxyXG4gICAgICAmOmVtcHR5IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICNjaGFuZ2VsaXN0LWZpbHRlcjpub3QoOmVtcHR5KSArICNjaGFuZ2VsaXN0LWZvcm0ge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xyXG4gIH1cclxuICAjdG9vbGJhciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xyXG4gICAgI2NoYW5nZWxpc3Qtc2VhcmNoIHtcclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgaW5wdXRbdHlwZT0nc3VibWl0J10ge1xyXG4gICAgICAgIEBleHRlbmQgLmJ0bjtcclxuICAgICAgICBAZXh0ZW5kIC5idG4tcHJpbWFyeTtcclxuICAgICAgICBAaW5jbHVkZSBidG4tbWl4aW4ocHJpbWFyeSwgJGljb24tcGx1cy1jaXJjbGUpO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTtcclxuICAgICAgfVxyXG4gICAgICBpbnB1dFt0eXBlPSd0ZXh0J10ge1xyXG4gICAgICAgIEBleHRlbmQgLmZvcm0tY29udHJvbDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmYS1pY29uLWZvbnQoKTtcclxuICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLXBsdXM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHNlbGVjdCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XHJcbiAgICAgIH1cclxuICAgICAgLnNtYWxsIHtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgI2NoYW5nZWxpc3QtZmlsdGVyIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIHdpZHRoOiAkZmlsdGVyLWNvbC13aWR0aDtcclxuICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgICBoMiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aC1iYXNlKjAuNTtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbGlnaHRlc3Q7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHBhZGRpbmc6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlKjAuMjUgbWF0aC5kaXYoJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsIDMpO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgICB1bCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcclxuICAgICAgcGFkZGluZzogbWF0aC5kaXYoJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsIDMpIDA7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IG1hdGguZGl2KCRncmlkLWd1dHRlci13aWR0aC1iYXNlLCAxLjUpO1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTNweDtcclxuICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGxpbmstY29sb3ItYnJpZ2h0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgcGFkZGluZzogLjFyZW07XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IG1hdGguZGl2KCRncmlkLWd1dHRlci13aWR0aC1iYXNlLCAxLjUpO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICNjaGFuZ2VsaXN0LWZvcm0ge1xyXG4gICAgZmxleDogMTtcclxuICAgIC5hY3Rpb25zIHtcclxuICAgICAgbWFyZ2luOiAtLjVyZW0gMCAxcmVtIDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcclxuICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xyXG4gICAgICAmW3N0eWxlKj0nYmxvY2snXSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgLy9saW5lLWhlaWdodDogZGVmYXVsdDtcclxuICAgICAgICBAZXh0ZW5kIC5idG47XHJcbiAgICAgICAgQGV4dGVuZCAuYnRuLXNlY29uZGFyeTtcclxuICAgICAgICBAaW5jbHVkZSBidG4tbWl4aW4ocHJpbWFyeSwgbnVsbCk7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xyXG4gICAgICB9XHJcbiAgICAgIHNlbGVjdCB7XHJcbiAgICAgICAgQGV4dGVuZCAuZm9ybS1jb250cm9sO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBoZWlnaHQ6IDIuMDVyZW07XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuMjVyZW07XHJcbiAgICAgIH1cclxuICAgICAgc3Bhbi5hbGwsXHJcbiAgICAgIHNwYW4uYWN0aW9uLWNvdW50ZXIsXHJcbiAgICAgIHNwYW4uY2xlYXIsXHJcbiAgICAgIHNwYW4ucXVlc3Rpb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICBtYXJnaW46IDAgMC41ZW07XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gSGlkZSBhY3Rpb25zLCBzaG93IG9ubHkgYWZ0ZXIgcmVzdWx0c1xyXG4gICAgLmFjdGlvbnMge1xyXG4gICAgICAuc3VpdF90b2dnbGVfY2hhbmdlbGlzdF90b3BfYWN0aW9ucyAmIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBBY3Rpb25zIGFmdGVyIHJlc3VsdHNcclxuICAgIC5yZXN1bHRzICsgLmFjdGlvbnMge1xyXG4gICAgICAuc3VpdF90b2dnbGVfY2hhbmdlbGlzdF90b3BfYWN0aW9ucyAmIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICB9XHJcbiAgICAgIG1hcmdpbjogMXJlbSAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2luYXRvciB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcclxuICAgICAgYTpub3QoLnNob3dhbGwpLCBzcGFuIHtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIC8vZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgcGFkZGluZzogLjVyZW07XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIG1pbi13aWR0aDogMi4zcmVtO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLS4xcmVtO1xyXG4gICAgICAgICYuZW5kIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgYSB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRib2R5LWJnLCAzJSk7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHNwYW4udGhpcy1wYWdlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1saWdodGVzdDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG4gICAgICAvLyBUaGlzIGlzIG9kZCwgYnV0IGRqYW5nbyBhZG1pbiBoYXMgU2F2ZSBpbiBwYWdpbmF0b3JcclxuICAgICAgaW5wdXRbdHlwZT0nc3VibWl0J10ge1xyXG4gICAgICAgIEBleHRlbmQgLmJ0bjtcclxuICAgICAgICBAZXh0ZW5kIC5idG4tcHJpbWFyeTtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLS43NXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBEamFuZ28gZGF0ZS1oaWVyYXJjaHkgZmVhdHVyZVxyXG4gIC54ZnVsbCB7XHJcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gIH1cclxuICAudG9wbGlua3Mge1xyXG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkZmlsdGVyLWNvbC13aWR0aCArIDJyZW07XHJcbiAgICBsaSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgYSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuMjhyZW07XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBPbmx5IGFkZCBuZWdhdGl2ZSBtYXJnaW4gaWYgb2JqZWN0LXRvb2xzIGFyZSBwcmVzZW50XHJcbi5vYmplY3QtdG9vbHMgKyAjY2hhbmdlbGlzdC5maWx0ZXJlZCB7XHJcbiAgI3Rvb2xiYXIge1xyXG4gICAgbWFyZ2luLXRvcDogLTMuNXJlbTtcclxuICB9XHJcbn1cclxuXHJcbmJvZHkuY2hhbmdlLWxpc3Qge1xyXG4gICNjb250ZW50LW1haW4ge1xyXG4gICAgLm9iamVjdC10b29scyB7XHJcbiAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xyXG4gICAgICBtaW4taGVpZ2h0OiAycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAuaGlkZGVuZmllbGRzIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcbiIsImJvZHkuY2hhbmdlLWZvcm0ge1xyXG4gICNjb250ZW50LW1haW4ge1xyXG4gICAgPiAub2JqZWN0LXRvb2xzIHtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMi44NXJlbTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAmLmxpc3QtaXRlbSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAub2JqZWN0LXRvb2xzICsgZm9ybSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuICB9XHJcbiAgLmVkaXQtcm93IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICA+IGRpdiB7XHJcbiAgICAgIG1hcmdpbjogMCAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSowLjU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6bm90KC5zdWl0X2Zvcm1fc3VibWl0X29uX3JpZ2h0KXtcclxuICAgIC5lZGl0LXJvdyB7XHJcbiAgICAgID4gZGl2IHtcclxuICAgICAgICAmLmNvbC1sZWZ0LCAmLmNvbC1yaWdodCB7XHJcbiAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5jb2wtcmlnaHQge1xyXG4gICAgICAgICAgLm9iamVjdC10b29scyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuc3VpdF9mb3JtX3N1Ym1pdF9vbl9yaWdodCB7XHJcbiAgICAvLyBIaWRlIG9iamVjdC10b29scyBmcm9tIHRvcCBpbiAyY29sdW1uIGxheW91dFxyXG4gICAgI2NvbnRlbnQtbWFpbiB7XHJcbiAgICAgID4gLm9iamVjdC10b29scyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBsaS5oZWFkaW5nIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZWRpdC1yb3cge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICA+IGRpdiB7XHJcbiAgICAgICAgbWFyZ2luOiAwICRncmlkLWd1dHRlci13aWR0aC1iYXNlKjAuNTtcclxuICAgICAgICAmLmNvbC1sZWZ0IHtcclxuICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuY29sLXJpZ2h0IHtcclxuICAgICAgICAgIHdpZHRoOiAyMiU7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkobGcpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8vIEhpc3RvcnkgdGFibGVcclxudGFibGUjY2hhbmdlLWhpc3Rvcnkge1xyXG4gIEBleHRlbmQgLnRhYmxlO1xyXG4gIEBleHRlbmQgI3Jlc3VsdF9saXN0O1xyXG4gIHRoZWFkIHtcclxuICAgID4gdHIgdGgge1xyXG4gICAgICBwYWRkaW5nOiAkdGFibGUtdGgtcGFkZGluZyAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0= */
