/*!*******************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./styles/root.css ***!
  \*******************************************************************/
:root {
    --gray-1: oklch(0.2 0.003 240);
    --gray-2: oklch(0.3 0.004 240);
    --gray-3: oklch(0.4 0.005 240);
    --gray-4: oklch(0.54 0.006 240);
    --gray-5: oklch(0.75 0.005 240);
    --gray-6: oklch(0.85 0.004 240);
    --gray-7: oklch(0.9 0.003 240);
    --gray-8: oklch(0.94 0.002 240);
    --gray-9: oklch(0.98 0.001 240);

    --placeholder-color: var(--gray-4);
    --border: 1px solid var(--gray-2);
    --input-height: 2.75rem;
    --button-height: 3rem;
}
/*!********************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./styles/fonts.css ***!
  \********************************************************************/
@font-face {
    font-family: 'RobotoKit';
    src: url(a4d410dfda20e10f3aed.ttf) format('truetype');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'RobotoKit';
    src: url(839cb7309f46fed11436.ttf) format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'RobotoKit';
    src: url(27f62b53b93858475a7f.ttf) format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'RobotoKit';
    src: url(d50a80138ec4f2fb5e9f.ttf) format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'RobotoKit';
    src: url(6a20d58a497c2fac8178.woff2) format('woff2'),
        url(6b2a244218011fe6321a.woff) format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'RobotoKit';
    src: url(f2dee9e41ba9bb532d31.woff2) format('woff2'),
        url(6724b4545f896d3f7255.woff) format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'RobotoKit';
    src: url(bc4fbbd13027cbd1664a.woff2) format('woff2'),
        url(35ece94127c52d93fbb8.woff) format('woff');
    font-weight: 700;
    font-style: normal;
}
/*!********************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./styles/icons.css ***!
  \********************************************************************/
[class^='ic-'],
[class*=' ic-'] {
    display: inline-block;
    vertical-align: middle;
    height: 24px;
    width: 24px;
}

.ic-folder::before {
    content: url(9a50eb984897c997b82d.svg#folder);
}

.ic-folder-open::before {
    content: url(9a50eb984897c997b82d.svg#folder-open);
}

.ic-arrow-left::before {
    content: url(9a50eb984897c997b82d.svg#arrow-left);
}
/*!**********************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./styles/default.css ***!
  \**********************************************************************/
* {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-size: 16px;
    font-family: RobotoKit, sans-serif;
    font-style: normal;
    color: var(--font-color);
    outline: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

html,
body {
    margin: 0;
    padding: 0;
    height: 100dvh;
    width: 100%;
    overscroll-behavior: none;
}

body {
    --bg-lvl-1: var(--gray-5);
    --bg-lvl-2: var(--gray-6);
    --bg-lvl-3: var(--gray-7);
    --bg-lvl-4: var(--gray-8);
    --cl-lvl-1: var(--gray-2);
    --cl-lvl-2: var(--gray-2);
    --cl-lvl-3: var(--gray-2);
    --cl-lvl-4: var(--gray-3);
}

body.dark {
    --bg-lvl-1: var(--gray-1);
    --bg-lvl-2: var(--gray-2);
    --bg-lvl-3: var(--gray-3);
    --bg-lvl-4: var(--gray-4);
    --cl-lvl-1: var(--gray-8);
    --cl-lvl-2: var(--gray-8);
    --cl-lvl-3: var(--gray-9);
    --cl-lvl-4: var(--gray-9);
}

main {
    min-height: 100%;
    max-width: 1920px;
    margin: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-block-start: 0.313em;
    margin-block-end: 0.313rem;
}

h1 {
    font-size: 2em;
}

h2 {
    font-size: 1.25em;
}

h3 {
    font-size: 1.125em;
}

h4 {
    font-size: 1em;
}

h5 {
    font-size: 0.83em;
}

h6 {
    font-size: 0.75em;
}

p {
    margin-block-start: 0.125rem;
    margin-block-end: 0.125rem;
    white-space: normal;
}

img {
    border: none;
    margin: 0;
    height: auto;
    max-width: 100%;
}

a {
    text-decoration: none;
}

a:hover,
a:focus {
    text-decoration: none;
}

/*--INPUT ELEMENTS--*/

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0px 1000px rgba(0, 0, 0, 0) inset;
    transition: background-color 5000s ease-in-out 0s;
}

select {
    background-color: #fff;
    background-image: url("data:image/svg+xml; utf8, <svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 height=%2724%27 width=%2724%27><path fill=%27%23777%27 d=%27M7,10L12,15L17,10H7Z%27/></svg>");
    background-position: calc(100% - 0.25rem);
    background-position-y: center;
    background-repeat: no-repeat;
    border: var(--border);
    cursor: pointer;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    padding: 0 8px;
    height: var(--input-height);
}

select:focus-within {
    background-image: url("data:image/svg+xml; utf8, <svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 height=%2724%27 width=%2724%27><path fill=%27%23777%27 d=%27M7,15L12,10L17,15H7Z%27/></svg>");
}

textarea {
    resize: none;
    overflow: hidden;
    padding: 8px;
    min-height: var(--input-height);
    height: auto;
    width: 100%;
}

textarea,
select,
input {
    border: var(--border);
    border-radius: 3px;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    outline: none;
}

td:focus:has(input),
td:focus:has(select),
td:focus:has(textarea),
textarea:focus,
select:focus,
select-option:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="time"]:focus,
input[type="date"]:focus {
    background: var(--cyan-100);
}

input:read-only:focus {
    -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0) !important;
    -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0) !important;
    box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0) !important;
}

input[type="file"] {
    display: none;
}

input[type="date"],
input[type="time"] {
    background: #fff;
    padding: 0 8px;
}

/*********** Baseline, reset styles ***********/
input[type="range"] {
    -webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    border: none;
    cursor: pointer;
    height: 8px;
}

input[type="range"]:focus {
    outline: none;
}

input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    background-color: #333;
    border: 2px solid #fff;
    border-radius: 16px;
    display: block;
    height: 32px;
    width: 32px;
}

input[type="range"]::-moz-range-thumb {
    background-color: #333;
    border: 2px solid #fff;
    border: none;
    border-radius: 5px;
    display: block;
    height: 32px;
    width: 48px;
}

fieldset:disabled {
    background: rgba(239, 239, 239, 0.3) !important;
    cursor: default;
    pointer-events: none;
}

.disabled {
    cursor: none;
    opacity: 0.75;
    pointer-events: none;
}

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

button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
    background: none;
    cursor: pointer;
    border: none;
    position: relative;
    -webkit-tap-highlight-color: transparent;
}

input:invalid {
    background: rgb(255, 228, 228);
    border-color: #ff6699;
}

button:hover {
    --btn-hover: 1;
}

button span {
    display: inline-block;
    vertical-align: middle;
    line-height: 100%;
}

table {
    border: none;
    border-collapse: collapse;
    border-spacing: 0;
}

table td,
table th {
    background: #fff;
    border: var(--border);
    line-height: 100%;
    position: relative;
}

table:has(input) td,
table:has(input) th,
table:has(select) td,
table:has(select) th,
table:has(textarea) td,
table:has(textarea) th {
    padding: 0;
}

table input[type="text"],
table input[type="number"],
table input[type="password"],
table input[type="email"],
table input[type="time"],
table input[type="tel"],
table input[type="date"],
table input[type="datetime"],
table textarea,
table select {
    border-radius: 0px;
    border: none;
    width: 100%;
}

input[type="text"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="email"],
input[type="time"],
input[type="tel"],
input[type="date"],
input[type="datetime"] {
    height: var(--input-height);
    padding: 0 8px;
}

table.borderless td,
table.borderless th {
    background: none;
    border: none;
}

ul,
ol {
    padding: 0;
    margin: 0;
}

ul {
    list-style-type: none;
}

/*--REMOVE AUTOFILL BACKGROUND COLOR--*/

input:autofill,
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    box-shadow: 0 0 0 30px white inset !important;
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}

input[type="color"] {
    all: unset;
    border-radius: 5px;
    cursor: pointer;
    height: var(--input-height);
}

input[type="color"]::-moz-color-swatch {
    border: none;
}

input[type="color"]::-webkit-color-swatch-wrapper {
    padding: 0;
    border-radius: 0;
}

input[type="color"]::-webkit-color-swatch {
    border: none;
}

form {
    position: relative;
}

details>summary {
    cursor: pointer;
    list-style: none;
    position: relative;
    width: 100%;
}

details>summary::-webkit-details-marker,
details>summary::marker {
    display: none;
}

details {
    width: 100%;
}

details[open]>summary {
    color: #999 !important;
}

/*--SVG ICON--*/
svg {
    display: inline-block;
    margin: auto;
    vertical-align: middle;
}

button,
input[type="button"] {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
}

button>span,
button>svg {
    display: inline-block;
    vertical-align: middle;
}

button:has(span)>svg {
    margin-right: 4px;
}

::-webkit-input-placeholder {
    color: var(--placeholder-color);
    font-weight: normal;
    text-overflow: ellipsis;
    text-transform: initial;
}

::-moz-placeholder {
    color: var(--placeholder-color);
    font-weight: normal;
    text-overflow: ellipsis;
    text-transform: initial;
}

::-ms-input-placeholder {
    color: var(--placeholder-color);
    font-weight: normal;
    text-overflow: ellipsis;
    text-transform: initial;
}
/*!******************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./styles/app.css ***!
  \******************************************************************/
/*---CHECKBOX---*/
label:has(input) {
    cursor: pointer;
    font-size: 0;
}

label:has(input) b,
label:has(input) span,
label:has(input) input {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
}

label>input[type="radio"] {
    margin-right: 8px !important;
    height: 20px;
    width: 20px;
}

input[type="checkbox"],
input[type="radio"] {
    accent-color: #333;
}

input[type="checkbox"].checkbox,
input[type="radio"].checkbox {
    height: 20px;
    width: 20px;
}

/* CHECKBOX AS BUTTON */
input[type="checkbox"].button,
input[type="radio"].button {
    -webkit-appearance: none;
    appearance: none;

}

input[type="radio"].button::after {
    background: #333;
    border-radius: 5px;
    content: attr(data-title);
    cursor: pointer;
    color: #fff;
    display: block;
    font-size: 1rem;
    line-height: 40px;
    padding: 0 16px;
    text-align: center;
    width: inherit;
}

input[type="radio"]:checked.button::after {
    background: #000;
}

svg.icon {
    height: 24px;
    width: 24px;
}

[data-placeholder]:empty::before {
    content: attr(data-placeholder);
    color: var(--placeholder-color);
}

.hidden {
    display: none;
}

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

/*--TITLE AND PLACEHOLDER--*/

.input-title {
    clear: both;
    display: block;
    letter-spacing: 0.05em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.input-title {
    color: var(--cl-lvl-0);
    font-weight: bold;
    font-size: 0.938rem;
    position: relative;
    text-indent: 1px;
    margin: 1em 0 0.25em;
}

.info-title {
    color: hsl(200, 100%, 26%);
    font-weight: bold;
    font-size: 0.938rem;
    position: relative;
    letter-spacing: 0.05em;
    margin: 0.5em 0 0.25em;
}

.input-title.optional::after {
    content: '(optional)';
    color: #999;
    font-weight: normal;
    font-size: 0.875rem;
    position: absolute;
    right: 0;
}

/* INPUT LABEL */
[data-label]::before {
    content: attr(data-label);
    color: #fff;
    font-size: 1rem;
    display: block;
    margin-bottom: 4px;
    text-transform: capitalize;
    text-align: left;
}

/* BADGE */
[data-badge]:before {
    content: attr(data-badge);
    color: #00f060;
    display: block;
    font-size: 0.875rem;
    font-weight: 700;
    position: absolute;
    text-align: center;
    bottom: 68%;
    left: 50%;
    line-height: 100%;
    min-width: 24px;
}

[data-badge='']:before,
[data-badge='0']:before {
    display: none;
}

/*--HIDE SCROLLBAR--*/

.no-scrollbar::-webkit-scrollbar {
    display: none;
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
    overflow: auto;
}

/* PREVENT SELECT TEXT */
.no-select {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* TABLE */

/*--INVALID INPUT--*/
.invalid {
    border-color: #f00000 !important;
    background: #ffeee0;
}

/*--FONT--*/
.fs-12 {
    font-size: 0.75rem;
}

.fs-13 {
    font-size: 0.813rem;
}

.fs-14 {
    font-size: 0.875rem;
}

.fs-15 {
    font-size: 0.938rem;
}

.fs-17 {
    font-size: 1.0625rem;
}

.fs-18 {
    font-size: 1.125rem;
}

.fs-19 {
    font-size: 1.188rem;
}

.fs-20 {
    font-size: 1.25rem;
}

.fs-21 {
    font-size: 1.313rem;
}

.fs-22 {
    font-size: 1.375rem;
}

.fs-23 {
    font-size: 1.438rem;
}

.fs-24 {
    font-size: 1.5rem;
}

.txt-bold {
    font-weight: 700;
}

.txt-left {
    text-align: left;
}

.txt-center {
    text-align: center;
}

.txt-right {
    text-align: right;
}


/* BUTTONS */
.button {
    border-radius: 5px;
    height: var(--button-height);
}

.button-group {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    height: 56px;
    width: 100%;
}

.button-group button {
    flex-basis: auto;
    -webkit-flex-basis: auto;
    flex-grow: 1;
    flex-shrink: 1;
    min-width: 0;
    height: 56px;
}

.btn-lvl-1 {
    background: var(--gray-950);
    color: var(--gray-600);
}

.btn-lvl-2 {
    background: var(--gray-700);
    color: var(--gray-100);
}

.btn-lvl-3 {
    background: var(--gray-300);
    color: var(--gray-600);
}

.btn-lvl-4 {
    background: var(--gray-100);
    color: var(--gray-600);
}

.fab {
    position: fixed;
    background: var(--cyan-500);
    border-radius: 24px;
    height: 48px;
    width: 48px;
    left: calc(50% - 24px);
    bottom: 16px;
    z-index: 999;
}

/* COLOR */

/* SIZES */
.w100 {
    width: 100%;
}

.h100 {
    height: 100%;
}

.wh100 {
    height: 100%;
    width: 100%;
}

.layout {
    height: 100%;
    width: 100%;
}

.input-label {
    font-size: 0.938rem;
    text-indent: 1px;
    margin-bottom: 8px;
}

.cbo-button {
    appearance: none;
    -webkit-appearance: none;
    background: var(--bg-lvl-300);
    height: 44px !important;
    min-width: 64px !important;
    margin: 0 !important;
    width: auto !important;
    transition: all 0.15s;
    -o-transition: all 0.15s;
    -moz-transition: all 0.15s;
    -webkit-transition: all 0.15s;
}

.cbo-button:checked {
    background: var(--bg-lvl-700);
}

.cbo-button::before {
    content: attr(data-text);
    color: white;
    cursor: pointer;
    border-radius: 5px;
    display: block;
    line-height: 44px;
    text-align: center;
}

/* GLASSMORPHISM */
.glass {
    background: rgba(255, 255, 255, 0.25);
}

.dark-glass {
    background: rgba(0, 0, 0, 0.25);
}

.glass,
.dark-glass {
    backdrop-filter: blur(9px);
    -webkit-backdrop-filter: blur(9px);
}

/* ACCORDION */

.accordion {
    overflow: auto;
    height: 100%;
    width: 100%;
}

.accordion summary {
    background: var(--bg-lvl-2);
    cursor: pointer;
    padding: 11px 16px;
    height: 44px;
}

.accordion summary:hover {
    background: var(--bg-lvl-1);
}

/* CHIPS */

.chips {
    background: var(--bg-lvl-2);
    border-radius: 18px;
    color: #fff;
    font-size: 0.813rem;
    padding: 0 12px;
    height: 36px;
}

.chips:hover {
    background: var(--bg-lvl-1);
}

/* NAVBAR */

/* NAVBAR */
.navbar {
    background: var(--bg-lvl-1);
    height: 48px;
}

.navbar-section {
    display: inline-block;
    font-size: 0;
    vertical-align: middle;
}

.navbar-section.disabled {
    opacity: 0.5;
    cursor: none;
    pointer-events: none;
}

.navbar-section.disabled {
    cursor: none;
    opacity: 0.5;
    pointer-events: none;
}

.navbar-section,
.navbar-section button {
    height: 48px;
}

.navbar-section button {
    background: var(--bg-lvl-2);
}

.navbar-section button>span {
    font-size: 0.938rem;
}

.navbar-section button.focus,
.navbar-section button:hover {
    background: var(--bg-lvl-0);
}

/* FOOTER */
footer {
    background: var(--bg-lvl-1);
    min-height: 96px;
    padding: 24px;
}

footer>div {
    max-width: var(--layout-width);
    margin: auto;
}

footer a {
    color: var(--cl-lvl-1);
    display: block;
    font-size: 0.875rem;
}
/*!*******************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./styles/flex.css ***!
  \*******************************************************************/
.flex-center,
.flex-middle,
.flex-wrap,
.flex-row,
.flex-col,
.flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}

.flex-wrap,
.flex-row {
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

.flex-middle {
    align-items: center;
}

.flex-center {
    align-items: center;
    justify-content: center;
}

.flex-wrap {
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.flex-col {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -ms-box-orient: vertical;
    box-orient: vertical;
}

.flex-size-auto,
.flex-size-16,
.flex-size-20,
.flex-size-25,
.flex-size-33,
.flex-size-50 {
    flex-grow: 1;
    flex-shrink: 1;
    min-width: 0;
}

.flex-size-auto {
    flex-basis: auto;
    -webkit-flex-basis: auto;
}

.flex-size-16 {
    flex-basis: 13%;
    -webkit-flex-basis: 13%;
}

.flex-size-20 {
    flex-basis: 18%;
    -webkit-flex-basis: 18%;
}

.flex-size-25 {
    flex-basis: 22%;
    -webkit-flex-basis: 22%;
}

.flex-size-33 {
    flex-basis: 30%;
    -webkit-flex-basis: 30%;
}

.flex-size-50 {
    flex-basis: 45%;
    -webkit-flex-basis: 45%;
}

.flex-size-100 {
    flex-basis: 100%;
    -webkit-flex-basis: 100%;
}

.gap-1 {
    gap: 1px;
}

.gap-2 {
    gap: 2px;
}

.gap-4 {
    gap: 4px;
}

.gap-8 {
    gap: 8px;
}

.gap-16 {
    gap: 16px;
}

.gap-24 {
    gap: 24px;
}
/*!*************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./styles/animations.css ***!
  \*************************************************************************/
@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Анимация исчезновения */
@keyframes fadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}
/*!************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/widgets/filemanager/style.css ***!
  \************************************************************************************/
:root {
    --min: 204px;
}

.filestore-block {
    height: calc(100% - 56px);
    overflow: auto;
}

.filestore {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--min), 1fr));
    gap: 8px;
    padding: 8px;
}

.filestore-item {
    background: var(--bg-lvl-3);
    border-radius: 12px;
    cursor: pointer;
    max-width: 248px;
    width: 100%;
}

.filestore-item.focus,
.filestore-item:focus,
.filestore-item:hover {
    background: var(--bg-lvl-1);
}

.filestore-image__block {
    aspect-ratio: 1.33333;
    position: relative;
}

.filestore-image {
    display: block;
    margin: auto;
    position: absolute;
    inset: 0;
    height: auto;
    width: 90%;
}

.panel-popup:has(.filestore-item.focus) .navbar-section.disabled {
    opacity: 1;
    pointer-events: auto;
}

@media (min-width: 1024px) {
    :root {
        --min: 153px;
    }
}

@media (max-width: 640px) {
    :root {
        --min: 128px;
    }
}
/*!*******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/layouts/vendor/style.css ***!
  \*******************************************************************************/
#editor-layout {
    height: 100%;
    width: 100%;
}

.navbar {
    font-size: 0;
    height: 56px;
}

.navbar button {
    display: inline-block;
    vertical-align: middle;
}

.navbar-section {
    display: inline-block;
}

.navbar-section.disabled {
    opacity: 0.5;
    cursor: none;
    pointer-events: none;
}
/*!*****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/layouts/main/style.css ***!
  \*****************************************************************************/

/*!********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/snippets/panels/style.css ***!
  \********************************************************************************/
.overlay {
    animation: fadeOut 0.3s ease-in-out forwards;
    background: rgba(0, 0, 0, 0.25);
    opacity: 0;
    position: fixed;
    inset: 0;
    /* Заменяет top: 0, left: 0, width: 100%, height: 100% */
    visibility: hidden;
    transition: visibility 0.3s;
    z-index: 9990;

    /* Сокращение для идущих подряд оверлеев */
    &~.overlay {
        background: rgba(0, 0, 0, 0) !important;
    }

    /* Состояние отображения */
    &.show,
    body:has(.panel-popup) & {
        animation: fadeIn 0.3s ease-in-out forwards;
        visibility: visible;
    }
}

.panel {
    background: var(--bg-lvl-2);
    position: fixed;
    z-index: 9999;
}

.panel-header,
.panel-footer {
    height: 48px;
    width: 100%;

    &:empty {
        display: none;
    }
}

/* POPUP PANEL */
.panel-popup {
    border-radius: 16px;
    border: 1px solid transparent;
    /* Более чистое написание вместо rgba(0,0,0,0) */
    box-shadow: 0 8px 16px 8px rgba(0, 0, 0, 0.2);
    inset: 0;
    height: max-content;
    max-height: calc(100% - 16px);
    max-width: calc(100% - 16px);
    margin: auto;
    overflow: hidden;
}

/* SLIDE PANELS */
.panel-slide {
    transform: translate3d(0, 0, 0);
    transition: transform 0.3s ease-in-out;

    &>div {
        box-shadow: 0 0 16px 8px rgba(0, 0, 0, 0.15);
        border-radius: inherit;
    }
}

/* Объединение общих свойств для боковых панелей */
.panel-left,
.panel-right {
    top: 0;
    height: 100%;
}

.panel-left {
    right: 100%;

    &.show {
        transform: translate3d(100%, 0, 0);
    }
}

.panel-right {
    left: 100%;

    &.show {
        transform: translate3d(-100%, 0, 0);
    }
}

/* Объединение общих свойств для верхней и нижней панелей */
.panel-top,
.panel-bottom {
    left: 50%;
    transform: translateX(-50%);
    width: auto;
}

.panel-top {
    bottom: 100%;

    &.show {
        transform: translate3d(-50%, 100%, 0);
    }
}

.panel-bottom {
    top: 100%;

    &.show {
        transform: translate3d(-50%, -100%, 0);
    }
}
/*!*************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/snippets/scrollpanel/style.css ***!
  \*************************************************************************************/
.scrollpanel {
    background: #fff;
    font-size: 0;
    overflow: hidden;
    white-space: nowrap;
    height: 100%;
    width: 100%;
}

.scrollpanel::-webkit-scrollbar {
    display: none;
}

.scrollpanel_view {
    display: inline-block;
    position: relative;
    vertical-align: top;
    height: 100%;
    width: 100%;
}
/*!***********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/snippets/scrollbar/style.css ***!
  \***********************************************************************************/
.scrollbar {
    font-size: 0;
    overflow-x: scroll;
    /* scroll-snap-type: x mandatory; */
    white-space: nowrap;
    -ms-overflow-style: none;
    scrollbar-width: none;
    width: 100%;
}

.scrollbar::-webkit-scrollbar {
    display: none;
}
/*!*********************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./styles/bundle.css ***!
  \*********************************************************************/

/*!*************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/snippets/contextmenu/style.css ***!
  \*************************************************************************************/
#contextmenu {
    background: var(--bg-lvl-3);
    box-shadow: 0 8px 16px 8px rgba(0, 0, 0, 0.2);
    border-radius: 16px;
    overflow: auto;
    opacity: 0;
    padding: 8px;
    position: fixed;
    pointer-events: none;
    scale: 0.8;
    transition: opacity 200ms ease, scale 200ms ease;
    width: 240px;
    z-index: 99999;

    & button {
        border-radius: 8px;
        color: var(--cl-lvl-3);
        padding: 0 16px;
        height: 40px;
        width: 100%;
        text-align: left;

        &:hover {
            background: var(--bg-lvl-1);
        }
    }

    &:focus,
    &:focus-within {
        opacity: 1;
        scale: 1;
        pointer-events: auto;

        @starting-style {
            opacity: 0;
            scale: 0.8;
        }
    }
}
/*!*******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/widgets/camera/style.css ***!
  \*******************************************************************************/
video {
    background-image: url(7ced23de73549d9d4439.svg);
    background-repeat: no-repeat;
    background-size: 64px;
    background-position: center;
    cursor: pointer;
    object-fit: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    max-height: 100%;
    max-width: 100%;
}

svg {
    fill: #fff;
    margin: auto;
    height: 24px;
    width: 24px;
}

button {
    border: none;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
    margin: auto 0;
    -webkit-tap-highlight-color: transparent;
}

button:hover {
    opacity: 0.75;
}

button:disabled {
    opacity: 0.5;
}

button:active {
    background: #000;
    opacity: 1;
}

#info {
    font-size: 2rem;
    line-height: 48px;
    padding: 0 8px;
    position: absolute;
    text-align: center;
    top: 32px;
    left: calc(50% - 36px);
    height: 48px;
    width: 72px;
    z-index: 99;
}

#info span {
    color: #00cf00;
    font-family: sans-serif;
    text-shadow: 0 0 2px #000;
}

#editor-navbar button>svg {
    height: 24px;
    width: 24px;
}

.svg-toggle-button svg:first-child {
    display: block;
}

.svg-toggle-button svg:last-child {
    display: none;
}

.svg-toggle-button.on svg:first-child {
    display: none;
}

.svg-toggle-button.on svg:last-child {
    display: block;
}

.svg-toggle-button.on {
    background: #f33;
}

.svg-toggle-button.on {
    background: #f33;
}

/* #remote-video {
    visibility: hidden;
}

#remote-video.show {
    visibility: visible;
} */

#camera-navbar {
    padding: 4px;
    position: absolute;
    text-align: center;
    left: 0;
    bottom: 0;
    height: 56px;
    width: 100%;
    z-index: 9;
}
/*!*************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/widgets/image-editor/style.css ***!
  \*************************************************************************************/
#editor-panel>.scrollpanel_view>:nth-child(1) {
    height: calc(100% - 48px);
}

#editor-panel>.scrollpanel_view>:nth-child(2) {
    height: 48px;
}

#editor-view {
    background: url(3ca0a1609127c4cf6d15.png) repeat;
    overflow: hidden;
    position: relative;
}

#editor-view:has(.canvas-box)+#editor-navbar {
    &>#image-controls {
        opacity: 1;
        pointer-events: auto;
    }
}

#editor-navbar {
    background: var(--bg-lvl-1);

    &>div {
        height: inherit;

        &>button {
            height: inherit;
            background: var(--bg-lvl-2);
            color: var(--cl-lvl-2);
            width: 48px;

            &:active,
            &.active {
                background: transparent;
            }
        }
    }
}

.bottom-panel {
    background: var(--bg-lvl-1);
    position: absolute;
    left: 0;
    top: 0;
    transition: transform 0.3s ease 0.3s;
    height: 64px;
    width: 100%;
}

.bottom-panel.show {
    transform: translateY(-64px);
}

.bottom-panel>:nth-child(1) {
    height: 64px;
    width: calc(100% - 48px);
}

.bottom-panel>:nth-child(2) {
    background: var(--bg-lvl-2);
    height: 64px;
    width: 48px;
}

#thumbnails {
    padding: 4px;
    height: 64px;

    &>.thumbnail {
        border-radius: 5px;
        cursor: pointer;
        user-select: none;
        -webkit-user-drag: none;
        height: 56px;
        width: auto;
    }
}

button>p {
    font-size: 0.75rem;
    margin: 0;
    height: auto;
}

.canvas-box {
    align-items: center;
    justify-content: center;
    background: none;
    line-height: 0;
    overflow: hidden;
    position: absolute;
    pointer-events: none;
    top: 0;
    left: 0;
    inset: 0;
    visibility: hidden;

    &.active {
        visibility: visible;
    }

    &:active {
        cursor: move;
    }
}

.canvas {
    pointer-events: auto;
    position: absolute;
    transform-origin: center;
    touch-action: none;
    user-select: none;
    max-width: calc(100% - 16px);
    max-height: calc(100% - 16px);
    object-fit: contain;
}

.canvas.active {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

/* FILTERS */
#image-controls,
#filters-menu {
    pointer-events: none;
    opacity: 0.5;
}

#filters-block {
    position: fixed;
    left: 0;
    top: 100%;
    height: 56px;
    width: 100%;
    z-index: 1;
    transition: transform 150ms;

    /* Состояние фокуса всего блока */
    &:focus-within {
        transform: translateY(-100%);

        /* Объединение управления видимостью дочерних панелей */
        &>#curves-panel,
        &>#filters-panel {
            pointer-events: all;
            visibility: visible;
        }
    }

    /* Динамическое позиционирование панелей при активации кнопок */
    & #curves-panel {

        &:has(~ .show-curves-panel.active),
        /* Если кнопка идет после панели */
        body:has(.show-curves-panel.active) & {
            /* Универсальный хак через body */
            top: auto;
            bottom: 64px;
        }
    }

    & #filters-panel {

        &:has(~ .show-filters-panel.active),
        body:has(.show-filters-panel.active) & {
            top: auto;
            bottom: 64px;
        }
    }
}

#curves-panel,
#filters-panel {
    background: rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(9px);
    -webkit-backdrop-filter: blur(9px);
    border-radius: 8px;
    display: inline-block;
    pointer-events: none;
    position: absolute;
    left: calc(50% - 160px);
    top: 110%;
    visibility: hidden;
    width: 320px;
}

#curves-panel {
    padding: 16px 16px 8px;
}

#filters-panel {
    padding: 16px 16px 0;
}

#filters-panel span,
#filters-panel button {
    color: #fff;
}

.filter-item:not([value="0"]) {
    color: #ffff00;
}

.filter-item::after {
    content: attr(value);
    color: inherit;
    font-size: inherit;
    margin-left: 4px;
}

/* CURVES PANEL */

[name="channel"],
#reset-curves {
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
    margin: 0 8px;
    height: 24px;
    width: 24px;
}

[name="channel"] {
    appearance: none;
    -webkit-appearance: none;
    border-radius: 12px;
    box-sizing: border-box;
}

#reset-curves {
    background: none;
    border: none;
    color: #fff;
    font-size: 24px;
    padding: 0;
    line-height: 100%;
}

.channel-rgb {
    border: 4px solid #fff;
}

.channel-rgb:checked {
    background: #fff !important;
}

.channel-red {
    border: 4px solid #f00000;
}

.channel-red:checked {
    background: #f00000;
}

.channel-green {
    border: 4px solid #00cf00;
}

.channel-green:checked {
    background: #00cf00;
}

.channel-blue {
    border: 4px solid #0077f0;
}

.channel-blue:checked {
    background: #0077f0;
}

#curves-canvas {
    aspect-ratio: 1;
    cursor: crosshair;
    display: block;
    outline: none;
    margin-bottom: 8px;
    height: 288px;
    width: 288px;
}

/* BACKGROUND */

#form-bg:has(#favorite-colors:empty)>#favorite-colors::before {
    content: attr(data-text);
    color: #ff6666
}

#favorite-colors {
    margin-bottom: 16px;
    min-height: 42px;
}

#favorite-colors button {
    height: 40px;
    flex-shrink: 1;
    min-width: 0;
    width: 16.666666%;
}

/* NAVBAR */

#editor-navbar {
    text-align: center;
    position: relative;
}

/* SELECT CAMERA MENU */
#select-camera-menu {
    background: var(--bg-lvl-1);
    position: fixed;
    text-align: center;
    left: 0;
    top: 100%;
    transition: all 300ms;
    z-index: 999;
}

#select-camera-menu:focus-within,
#select-camera-menu.active {
    top: calc(100% - 56px);
}

#select-camera-menu button {
    background: var(--bg-lvl-2);
    color: #fff;
    font-size: 0.938rem;
}

/* SLIDER */
.slider-block {
    font-size: 0;
    margin: auto;
    width: 304px;
}

.slider-block input {
    display: inline-block;
    margin: 16px 0;
    vertical-align: middle;
}

.slider-block input:first-child {
    margin-right: 8px;
    width: calc(100% - 56px);
}

.slider-block input:last-child {
    text-align: center;
    width: 48px;
}
/*!************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/widgets/image-editor/crop.css ***!
  \************************************************************************************/
#crop-mask {
    border: 1px dashed #fff;
    box-shadow: 0 0 0 2560px rgba(0, 0, 0, 0.5);
    display: none;
    position: absolute;
    z-index: 0;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-height: 100%;
    max-width: 100%;
    pointer-events: none;

    &.is-visible {
        display: block !important;
        z-index: 99;
    }
}

.crop-mask__resize {
    background: #fff;
    cursor: pointer;
    pointer-events: auto;
    position: absolute;
    touch-action: none;
    width: 16px;
    height: 16px;
    z-index: 2;
}

.crop-mask__resize[data-id="1"] {
    top: 0;
    left: 0;
    cursor: nwse-resize;
}

.crop-mask__resize[data-id="2"] {
    top: 0;
    right: 0;
    cursor: nesw-resize;
}

.crop-mask__resize[data-id="3"] {
    bottom: 0;
    left: 0;
    cursor: nesw-resize;
}

.crop-mask__resize[data-id="4"] {
    bottom: 0;
    right: 0;
    cursor: nwse-resize;
}

#crop-mask__toolbar {
    position: absolute;
    left: 0;
    top: calc(100% + 4px);
    height: 48px;
    width: 100%;

    & button {
        background: rgba(0, 0, 0, 0.5);
        border-radius: 24px;
        display: inline-block;
        pointer-events: auto;
        height: 48px;
        width: 48px;
    }
}

#crop-mask__toolbar>button {
    user-select: none;
    touch-action: none;
}

#crop-ratio-menu {
    background: var(--bg-lvl-2);
    border-radius: 8px;
    overflow: hidden;
    opacity: 0;
    transition: opacity 150ms linear 60ms;
    position: fixed;
    top: 100%;
    left: calc(50% - 144px);
    width: 288px;
    z-index: 99;

    &:focus,
    &:focus-within {
        top: calc(50% - 112px);
        opacity: 1;
    }
}

[name="crop_ratio"] {
    border-radius: 5px;
    background: var(--bg-lvl-3);
    color: var(--cl-lvl-1);
    height: 40px;

    &:hover {
        background: var(--bg-lvl-1);
    }
}
/*!**************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./ui/components/admin-menu/style.css ***!
  \**************************************************************************************/
#admin-menu>div {
    padding: 8px;
    height: calc(100% - 56px)
}

#admin-menu>div button {
    border-radius: 5px;
    color: var(--cl-lvl-3);
    text-align: left;
    height: 48px;
    width: 100%;
}

#admin-menu>div button:hover {
    background: var(--bg-lvl-4);
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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V0FBVzs7SUFFWDtRQUNJLDhCQUE4QjtRQUM5QixtQkFBbUI7UUFDbkIscUJBQXFCO1FBQ3JCLG9CQUFvQjtRQUNwQixZQUFZO1FBQ1osV0FBVztJQUNmO0FBQ0o7O0FBRUE7SUFDSSxpQkFBaUI7SUFDakIsa0JBQWtCO0FBQ3RCOztBQUVBO0lBQ0ksMkJBQTJCO0lBQzNCLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsVUFBVTtJQUNWLHFDQUFxQztJQUNyQyxlQUFlO0lBQ2YsU0FBUztJQUNULHVCQUF1QjtJQUN2QixZQUFZO0lBQ1osV0FBVzs7SUFFWDs7UUFFSSxzQkFBc0I7UUFDdEIsVUFBVTtJQUNkO0FBQ0o7O0FBRUE7SUFDSSxrQkFBa0I7SUFDbEIsMkJBQTJCO0lBQzNCLHNCQUFzQjtJQUN0QixZQUFZOztJQUVaO1FBQ0ksMkJBQTJCO0lBQy9CO0FBQ0osQzs7OztBQ3hHQTtJQUNJLFlBQVk7SUFDWjtBQUNKOztBQUVBO0lBQ0ksa0JBQWtCO0lBQ2xCLHNCQUFzQjtJQUN0QixnQkFBZ0I7SUFDaEIsWUFBWTtJQUNaLFdBQVc7QUFDZjs7QUFFQTtJQUNJLDJCQUEyQjtBQUMvQixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGhvdG9tZW51Ly4vc3R5bGVzL3Jvb3QuY3NzIiwid2VicGFjazovL3Bob3RvbWVudS8uL3N0eWxlcy9mb250cy5jc3MiLCJ3ZWJwYWNrOi8vcGhvdG9tZW51Ly4vc3R5bGVzL2ljb25zLmNzcyIsIndlYnBhY2s6Ly9waG90b21lbnUvLi9zdHlsZXMvZGVmYXVsdC5jc3MiLCJ3ZWJwYWNrOi8vcGhvdG9tZW51Ly4vc3R5bGVzL2FwcC5jc3MiLCJ3ZWJwYWNrOi8vcGhvdG9tZW51Ly4vc3R5bGVzL2ZsZXguY3NzIiwid2VicGFjazovL3Bob3RvbWVudS8uL3N0eWxlcy9hbmltYXRpb25zLmNzcyIsIndlYnBhY2s6Ly9waG90b21lbnUvLi91aS93aWRnZXRzL2ZpbGVtYW5hZ2VyL3N0eWxlLmNzcyIsIndlYnBhY2s6Ly9waG90b21lbnUvLi91aS9sYXlvdXRzL3ZlbmRvci9zdHlsZS5jc3MiLCJ3ZWJwYWNrOi8vcGhvdG9tZW51Ly4vdWkvc25pcHBldHMvcGFuZWxzL3N0eWxlLmNzcyIsIndlYnBhY2s6Ly9waG90b21lbnUvLi91aS9zbmlwcGV0cy9zY3JvbGxwYW5lbC9zdHlsZS5jc3MiLCJ3ZWJwYWNrOi8vcGhvdG9tZW51Ly4vdWkvc25pcHBldHMvc2Nyb2xsYmFyL3N0eWxlLmNzcyIsIndlYnBhY2s6Ly9waG90b21lbnUvLi91aS9zbmlwcGV0cy9jb250ZXh0bWVudS9zdHlsZS5jc3MiLCJ3ZWJwYWNrOi8vcGhvdG9tZW51Ly4vdWkvd2lkZ2V0cy9jYW1lcmEvc3R5bGUuY3NzIiwid2VicGFjazovL3Bob3RvbWVudS8uL3VpL3dpZGdldHMvaW1hZ2UtZWRpdG9yL3N0eWxlLmNzcyIsIndlYnBhY2s6Ly9waG90b21lbnUvLi91aS93aWRnZXRzL2ltYWdlLWVkaXRvci9jcm9wLmNzcyIsIndlYnBhY2s6Ly9waG90b21lbnUvLi91aS9jb21wb25lbnRzL2FkbWluLW1lbnUvc3R5bGUuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIjpyb290IHtcclxuICAgIC0tZ3JheS0xOiBva2xjaCgwLjIgMC4wMDMgMjQwKTtcclxuICAgIC0tZ3JheS0yOiBva2xjaCgwLjMgMC4wMDQgMjQwKTtcclxuICAgIC0tZ3JheS0zOiBva2xjaCgwLjQgMC4wMDUgMjQwKTtcclxuICAgIC0tZ3JheS00OiBva2xjaCgwLjU0IDAuMDA2IDI0MCk7XHJcbiAgICAtLWdyYXktNTogb2tsY2goMC43NSAwLjAwNSAyNDApO1xyXG4gICAgLS1ncmF5LTY6IG9rbGNoKDAuODUgMC4wMDQgMjQwKTtcclxuICAgIC0tZ3JheS03OiBva2xjaCgwLjkgMC4wMDMgMjQwKTtcclxuICAgIC0tZ3JheS04OiBva2xjaCgwLjk0IDAuMDAyIDI0MCk7XHJcbiAgICAtLWdyYXktOTogb2tsY2goMC45OCAwLjAwMSAyNDApO1xyXG5cclxuICAgIC0tcGxhY2Vob2xkZXItY29sb3I6IHZhcigtLWdyYXktNCk7XHJcbiAgICAtLWJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktMik7XHJcbiAgICAtLWlucHV0LWhlaWdodDogMi43NXJlbTtcclxuICAgIC0tYnV0dG9uLWhlaWdodDogM3JlbTtcclxufSIsIkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG9LaXQnO1xyXG4gICAgc3JjOiB1cmwoJy4uL3B1YmxpYy9hc3NldHMvZm9udHMvcm9ib3RvL3JvYm90by10aGluLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG9LaXQnO1xyXG4gICAgc3JjOiB1cmwoJy4uL3B1YmxpYy9hc3NldHMvZm9udHMvcm9ib3RvL3JvYm90by1saWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvS2l0JztcclxuICAgIHNyYzogdXJsKCcuLi9wdWJsaWMvYXNzZXRzL2ZvbnRzL3JvYm90by9yb2JvdG8tcmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvS2l0JztcclxuICAgIHNyYzogdXJsKCcuLi9wdWJsaWMvYXNzZXRzL2ZvbnRzL3JvYm90by9yb2JvdG8tYm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvS2l0JztcclxuICAgIHNyYzogdXJsKCcuLi9wdWJsaWMvYXNzZXRzL2ZvbnRzL3JvYm90by9yb2JvdG8tcmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL3B1YmxpYy9hc3NldHMvZm9udHMvcm9ib3RvL3JvYm90by1yZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG9LaXQnO1xyXG4gICAgc3JjOiB1cmwoJy4uL3B1YmxpYy9hc3NldHMvZm9udHMvcm9ib3RvL3JvYm90by1tZWRpdW0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgdXJsKCcuLi9wdWJsaWMvYXNzZXRzL2ZvbnRzL3JvYm90by9yb2JvdG8tbWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG9LaXQnO1xyXG4gICAgc3JjOiB1cmwoJy4uL3B1YmxpYy9hc3NldHMvZm9udHMvcm9ib3RvL3JvYm90by1ib2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vcHVibGljL2Fzc2V0cy9mb250cy9yb2JvdG8vcm9ib3RvLWJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufSIsIltjbGFzc149J2ljLSddLFxyXG5bY2xhc3MqPScgaWMtJ10ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIHdpZHRoOiAyNHB4O1xyXG59XHJcblxyXG4uaWMtZm9sZGVyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogdXJsKC9wdWJsaWMvYXNzZXRzL2ljb25zL3N2Zy9zcHJpdGUuc3ZnI2ZvbGRlcik7XHJcbn1cclxuXHJcbi5pYy1mb2xkZXItb3Blbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IHVybCgvcHVibGljL2Fzc2V0cy9pY29ucy9zdmcvc3ByaXRlLnN2ZyNmb2xkZXItb3Blbik7XHJcbn1cclxuXHJcbi5pYy1hcnJvdy1sZWZ0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogdXJsKC9wdWJsaWMvYXNzZXRzL2ljb25zL3N2Zy9zcHJpdGUuc3ZnI2Fycm93LWxlZnQpO1xyXG59IiwiKiB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1zLWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtby1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBmb250LWZhbWlseTogUm9ib3RvS2l0LCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3IpO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxufVxyXG5cclxuaHRtbCxcclxuYm9keSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgaGVpZ2h0OiAxMDBkdmg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IG5vbmU7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICAgLS1iZy1sdmwtMTogdmFyKC0tZ3JheS01KTtcclxuICAgIC0tYmctbHZsLTI6IHZhcigtLWdyYXktNik7XHJcbiAgICAtLWJnLWx2bC0zOiB2YXIoLS1ncmF5LTcpO1xyXG4gICAgLS1iZy1sdmwtNDogdmFyKC0tZ3JheS04KTtcclxuICAgIC0tY2wtbHZsLTE6IHZhcigtLWdyYXktMik7XHJcbiAgICAtLWNsLWx2bC0yOiB2YXIoLS1ncmF5LTIpO1xyXG4gICAgLS1jbC1sdmwtMzogdmFyKC0tZ3JheS0yKTtcclxuICAgIC0tY2wtbHZsLTQ6IHZhcigtLWdyYXktMyk7XHJcbn1cclxuXHJcbmJvZHkuZGFyayB7XHJcbiAgICAtLWJnLWx2bC0xOiB2YXIoLS1ncmF5LTEpO1xyXG4gICAgLS1iZy1sdmwtMjogdmFyKC0tZ3JheS0yKTtcclxuICAgIC0tYmctbHZsLTM6IHZhcigtLWdyYXktMyk7XHJcbiAgICAtLWJnLWx2bC00OiB2YXIoLS1ncmF5LTQpO1xyXG4gICAgLS1jbC1sdmwtMTogdmFyKC0tZ3JheS04KTtcclxuICAgIC0tY2wtbHZsLTI6IHZhcigtLWdyYXktOCk7XHJcbiAgICAtLWNsLWx2bC0zOiB2YXIoLS1ncmF5LTkpO1xyXG4gICAgLS1jbC1sdmwtNDogdmFyKC0tZ3JheS05KTtcclxufVxyXG5cclxubWFpbiB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxOTIwcHg7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbn1cclxuXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYge1xyXG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwLjMxM2VtO1xyXG4gICAgbWFyZ2luLWJsb2NrLWVuZDogMC4zMTNyZW07XHJcbn1cclxuXHJcbmgxIHtcclxuICAgIGZvbnQtc2l6ZTogMmVtO1xyXG59XHJcblxyXG5oMiB7XHJcbiAgICBmb250LXNpemU6IDEuMjVlbTtcclxufVxyXG5cclxuaDMge1xyXG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xyXG59XHJcblxyXG5oNCB7XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxufVxyXG5cclxuaDUge1xyXG4gICAgZm9udC1zaXplOiAwLjgzZW07XHJcbn1cclxuXHJcbmg2IHtcclxuICAgIGZvbnQtc2l6ZTogMC43NWVtO1xyXG59XHJcblxyXG5wIHtcclxuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMC4xMjVyZW07XHJcbiAgICBtYXJnaW4tYmxvY2stZW5kOiAwLjEyNXJlbTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbn1cclxuXHJcbmltZyB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5hOmhvdmVyLFxyXG5hOmZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLyotLUlOUFVUIEVMRU1FTlRTLS0qL1xyXG5cclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbCxcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcclxuc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGwsXHJcbnNlbGVjdDotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxyXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyB7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwcHggMTAwMHB4IHJnYmEoMCwgMCwgMCwgMCkgaW5zZXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDUwMDBzIGVhc2UtaW4tb3V0IDBzO1xyXG59XHJcblxyXG5zZWxlY3Qge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCwgPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgaGVpZ2h0PScyNCcgd2lkdGg9JzI0Jz48cGF0aCBmaWxsPSclMjM3NzcnIGQ9J003LDEwTDEyLDE1TDE3LDEwSDdaJy8+PC9zdmc+XCIpO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMC4yNXJlbSk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlcik7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgcGFkZGluZzogMCA4cHg7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWlucHV0LWhlaWdodCk7XHJcbn1cclxuXHJcbnNlbGVjdDpmb2N1cy13aXRoaW4ge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sOyB1dGY4LCA8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDI0IDI0JyBoZWlnaHQ9JzI0JyB3aWR0aD0nMjQnPjxwYXRoIGZpbGw9JyUyMzc3NycgZD0nTTcsMTVMMTIsMTBMMTcsMTVIN1onLz48L3N2Zz5cIik7XHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuICAgIHJlc2l6ZTogbm9uZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwYWRkaW5nOiA4cHg7XHJcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQpO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbnRleHRhcmVhLFxyXG5zZWxlY3QsXHJcbmlucHV0IHtcclxuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG50ZDpmb2N1czpoYXMoaW5wdXQpLFxyXG50ZDpmb2N1czpoYXMoc2VsZWN0KSxcclxudGQ6Zm9jdXM6aGFzKHRleHRhcmVhKSxcclxudGV4dGFyZWE6Zm9jdXMsXHJcbnNlbGVjdDpmb2N1cyxcclxuc2VsZWN0LW9wdGlvbjpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWN5YW4tMTAwKTtcclxufVxyXG5cclxuaW5wdXQ6cmVhZC1vbmx5OmZvY3VzIHtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG5pbnB1dFt0eXBlPVwidGltZVwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgcGFkZGluZzogMCA4cHg7XHJcbn1cclxuXHJcbi8qKioqKioqKioqKiBCYXNlbGluZSwgcmVzZXQgc3R5bGVzICoqKioqKioqKioqL1xyXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBoZWlnaHQ6IDhweDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cInJhbmdlXCJdOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgd2lkdGg6IDMycHg7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LW1vei1yYW5nZS10aHVtYiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgd2lkdGg6IDQ4cHg7XHJcbn1cclxuXHJcbmZpZWxkc2V0OmRpc2FibGVkIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjM5LCAyMzksIDIzOSwgMC4zKSAhaW1wb3J0YW50O1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5kaXNhYmxlZCB7XHJcbiAgICBjdXJzb3I6IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAwLjc1O1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbmZpZWxkc2V0IHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbmJ1dHRvbixcclxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG5pbnB1dDppbnZhbGlkIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYigyNTUsIDIyOCwgMjI4KTtcclxuICAgIGJvcmRlci1jb2xvcjogI2ZmNjY5OTtcclxufVxyXG5cclxuYnV0dG9uOmhvdmVyIHtcclxuICAgIC0tYnRuLWhvdmVyOiAxO1xyXG59XHJcblxyXG5idXR0b24gc3BhbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbnRhYmxlIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxudGFibGUgdGQsXHJcbnRhYmxlIHRoIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlcik7XHJcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxudGFibGU6aGFzKGlucHV0KSB0ZCxcclxudGFibGU6aGFzKGlucHV0KSB0aCxcclxudGFibGU6aGFzKHNlbGVjdCkgdGQsXHJcbnRhYmxlOmhhcyhzZWxlY3QpIHRoLFxyXG50YWJsZTpoYXModGV4dGFyZWEpIHRkLFxyXG50YWJsZTpoYXModGV4dGFyZWEpIHRoIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbnRhYmxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG50YWJsZSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxyXG50YWJsZSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXHJcbnRhYmxlIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxudGFibGUgaW5wdXRbdHlwZT1cInRpbWVcIl0sXHJcbnRhYmxlIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXHJcbnRhYmxlIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG50YWJsZSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXHJcbnRhYmxlIHRleHRhcmVhLFxyXG50YWJsZSBzZWxlY3Qge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxyXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXHJcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXHJcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXHJcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0ge1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQpO1xyXG4gICAgcGFkZGluZzogMCA4cHg7XHJcbn1cclxuXHJcbnRhYmxlLmJvcmRlcmxlc3MgdGQsXHJcbnRhYmxlLmJvcmRlcmxlc3MgdGgge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxufVxyXG5cclxudWwsXHJcbm9sIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbnVsIHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxufVxyXG5cclxuLyotLVJFTU9WRSBBVVRPRklMTCBCQUNLR1JPVU5EIENPTE9SLS0qL1xyXG5cclxuaW5wdXQ6YXV0b2ZpbGwsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDMwcHggd2hpdGUgaW5zZXQgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMzBweCB3aGl0ZSBpbnNldCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0ge1xyXG4gICAgYWxsOiB1bnNldDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGhlaWdodDogdmFyKC0taW5wdXQtaGVpZ2h0KTtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImNvbG9yXCJdOjotbW96LWNvbG9yLXN3YXRjaCB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJjb2xvclwiXTo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImNvbG9yXCJdOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbmZvcm0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5kZXRhaWxzPnN1bW1hcnkge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5kZXRhaWxzPnN1bW1hcnk6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIsXHJcbmRldGFpbHM+c3VtbWFyeTo6bWFya2VyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbmRldGFpbHMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmRldGFpbHNbb3Blbl0+c3VtbWFyeSB7XHJcbiAgICBjb2xvcjogIzk5OSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKi0tU1ZHIElDT04tLSovXHJcbnN2ZyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG5idXR0b24sXHJcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xyXG4gICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG5idXR0b24+c3BhbixcclxuYnV0dG9uPnN2ZyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG5idXR0b246aGFzKHNwYW4pPnN2ZyB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxufVxyXG5cclxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcclxufVxyXG5cclxuOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcclxufVxyXG5cclxuOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6IHZhcigtLXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xyXG59IiwiLyotLS1DSEVDS0JPWC0tLSovXHJcbmxhYmVsOmhhcyhpbnB1dCkge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG59XHJcblxyXG5sYWJlbDpoYXMoaW5wdXQpIGIsXHJcbmxhYmVsOmhhcyhpbnB1dCkgc3BhbixcclxubGFiZWw6aGFzKGlucHV0KSBpbnB1dCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG5sYWJlbD5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHggIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgICBhY2NlbnQtY29sb3I6ICMzMzM7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5jaGVja2JveCxcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLmNoZWNrYm94IHtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG59XHJcblxyXG4vKiBDSEVDS0JPWCBBUyBCVVRUT04gKi9cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLmJ1dHRvbixcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLmJ1dHRvbiB7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG5cclxufVxyXG5cclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLmJ1dHRvbjo6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZDogIzMzMztcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10aXRsZSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDE2cHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogaW5oZXJpdDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQuYnV0dG9uOjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG59XHJcblxyXG5zdmcuaWNvbiB7XHJcbiAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICB3aWR0aDogMjRweDtcclxufVxyXG5cclxuW2RhdGEtcGxhY2Vob2xkZXJdOmVtcHR5OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogYXR0cihkYXRhLXBsYWNlaG9sZGVyKTtcclxuICAgIGNvbG9yOiB2YXIoLS1wbGFjZWhvbGRlci1jb2xvcik7XHJcbn1cclxuXHJcbi5oaWRkZW4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmVsbGlwc2lzIHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi8qLS1USVRMRSBBTkQgUExBQ0VIT0xERVItLSovXHJcblxyXG4uaW5wdXQtdGl0bGUge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4uaW5wdXQtdGl0bGUge1xyXG4gICAgY29sb3I6IHZhcigtLWNsLWx2bC0wKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgZm9udC1zaXplOiAwLjkzOHJlbTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtaW5kZW50OiAxcHg7XHJcbiAgICBtYXJnaW46IDFlbSAwIDAuMjVlbTtcclxufVxyXG5cclxuLmluZm8tdGl0bGUge1xyXG4gICAgY29sb3I6IGhzbCgyMDAsIDEwMCUsIDI2JSk7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogMC45MzhyZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xyXG4gICAgbWFyZ2luOiAwLjVlbSAwIDAuMjVlbTtcclxufVxyXG5cclxuLmlucHV0LXRpdGxlLm9wdGlvbmFsOjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnKG9wdGlvbmFsKSc7XHJcbiAgICBjb2xvcjogIzk5OTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qIElOUFVUIExBQkVMICovXHJcbltkYXRhLWxhYmVsXTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4vKiBCQURHRSAqL1xyXG5bZGF0YS1iYWRnZV06YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1iYWRnZSk7XHJcbiAgICBjb2xvcjogIzAwZjA2MDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3R0b206IDY4JTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWluLXdpZHRoOiAyNHB4O1xyXG59XHJcblxyXG5bZGF0YS1iYWRnZT0nJ106YmVmb3JlLFxyXG5bZGF0YS1iYWRnZT0nMCddOmJlZm9yZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKi0tSElERSBTQ1JPTExCQVItLSovXHJcblxyXG4ubm8tc2Nyb2xsYmFyOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubm8tc2Nyb2xsYmFyIHtcclxuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcclxuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKiBQUkVWRU5UIFNFTEVDVCBURVhUICovXHJcbi5uby1zZWxlY3Qge1xyXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLyogVEFCTEUgKi9cclxuXHJcbi8qLS1JTlZBTElEIElOUFVULS0qL1xyXG4uaW52YWxpZCB7XHJcbiAgICBib3JkZXItY29sb3I6ICNmMDAwMDAgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmVlZTA7XHJcbn1cclxuXHJcbi8qLS1GT05ULS0qL1xyXG4uZnMtMTIge1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG59XHJcblxyXG4uZnMtMTMge1xyXG4gICAgZm9udC1zaXplOiAwLjgxM3JlbTtcclxufVxyXG5cclxuLmZzLTE0IHtcclxuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbn1cclxuXHJcbi5mcy0xNSB7XHJcbiAgICBmb250LXNpemU6IDAuOTM4cmVtO1xyXG59XHJcblxyXG4uZnMtMTcge1xyXG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XHJcbn1cclxuXHJcbi5mcy0xOCB7XHJcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xyXG59XHJcblxyXG4uZnMtMTkge1xyXG4gICAgZm9udC1zaXplOiAxLjE4OHJlbTtcclxufVxyXG5cclxuLmZzLTIwIHtcclxuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcclxufVxyXG5cclxuLmZzLTIxIHtcclxuICAgIGZvbnQtc2l6ZTogMS4zMTNyZW07XHJcbn1cclxuXHJcbi5mcy0yMiB7XHJcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xyXG59XHJcblxyXG4uZnMtMjMge1xyXG4gICAgZm9udC1zaXplOiAxLjQzOHJlbTtcclxufVxyXG5cclxuLmZzLTI0IHtcclxuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG59XHJcblxyXG4udHh0LWJvbGQge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLnR4dC1sZWZ0IHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi50eHQtY2VudGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnR4dC1yaWdodCB7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuXHJcbi8qIEJVVFRPTlMgKi9cclxuLmJ1dHRvbiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWJ1dHRvbi1oZWlnaHQpO1xyXG59XHJcblxyXG4uYnV0dG9uLWdyb3VwIHtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgZGlzcGxheTogLW1vei1ib3g7XHJcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmJ1dHRvbi1ncm91cCBidXR0b24ge1xyXG4gICAgZmxleC1iYXNpczogYXV0bztcclxuICAgIC13ZWJraXQtZmxleC1iYXNpczogYXV0bztcclxuICAgIGZsZXgtZ3JvdzogMTtcclxuICAgIGZsZXgtc2hyaW5rOiAxO1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiA1NnB4O1xyXG59XHJcblxyXG4uYnRuLWx2bC0xIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktOTUwKTtcclxuICAgIGNvbG9yOiB2YXIoLS1ncmF5LTYwMCk7XHJcbn1cclxuXHJcbi5idG4tbHZsLTIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS03MDApO1xyXG4gICAgY29sb3I6IHZhcigtLWdyYXktMTAwKTtcclxufVxyXG5cclxuLmJ0bi1sdmwtMyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LTMwMCk7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JheS02MDApO1xyXG59XHJcblxyXG4uYnRuLWx2bC00IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktMTAwKTtcclxuICAgIGNvbG9yOiB2YXIoLS1ncmF5LTYwMCk7XHJcbn1cclxuXHJcbi5mYWIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY3lhbi01MDApO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgIGhlaWdodDogNDhweDtcclxuICAgIHdpZHRoOiA0OHB4O1xyXG4gICAgbGVmdDogY2FsYyg1MCUgLSAyNHB4KTtcclxuICAgIGJvdHRvbTogMTZweDtcclxuICAgIHotaW5kZXg6IDk5OTtcclxufVxyXG5cclxuLyogQ09MT1IgKi9cclxuXHJcbi8qIFNJWkVTICovXHJcbi53MTAwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaDEwMCB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi53aDEwMCB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmxheW91dCB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmlucHV0LWxhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMC45MzhyZW07XHJcbiAgICB0ZXh0LWluZGVudDogMXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4uY2JvLWJ1dHRvbiB7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctbHZsLTMwMCk7XHJcbiAgICBoZWlnaHQ6IDQ0cHggIWltcG9ydGFudDtcclxuICAgIG1pbi13aWR0aDogNjRweCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzO1xyXG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMTVzO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4xNXM7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjE1cztcclxufVxyXG5cclxuLmNiby1idXR0b246Y2hlY2tlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtNzAwKTtcclxufVxyXG5cclxuLmNiby1idXR0b246OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxpbmUtaGVpZ2h0OiA0NHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4vKiBHTEFTU01PUlBISVNNICovXHJcbi5nbGFzcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xyXG59XHJcblxyXG4uZGFyay1nbGFzcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG59XHJcblxyXG4uZ2xhc3MsXHJcbi5kYXJrLWdsYXNzIHtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig5cHgpO1xyXG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoOXB4KTtcclxufVxyXG5cclxuLyogQUNDT1JESU9OICovXHJcblxyXG4uYWNjb3JkaW9uIHtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5hY2NvcmRpb24gc3VtbWFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMik7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBwYWRkaW5nOiAxMXB4IDE2cHg7XHJcbiAgICBoZWlnaHQ6IDQ0cHg7XHJcbn1cclxuXHJcbi5hY2NvcmRpb24gc3VtbWFyeTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMSk7XHJcbn1cclxuXHJcbi8qIENISVBTICovXHJcblxyXG4uY2hpcHMge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctbHZsLTIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1zaXplOiAwLjgxM3JlbTtcclxuICAgIHBhZGRpbmc6IDAgMTJweDtcclxuICAgIGhlaWdodDogMzZweDtcclxufVxyXG5cclxuLmNoaXBzOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWx2bC0xKTtcclxufVxyXG5cclxuLyogTkFWQkFSICovXHJcblxyXG4vKiBOQVZCQVIgKi9cclxuLm5hdmJhciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMSk7XHJcbiAgICBoZWlnaHQ6IDQ4cHg7XHJcbn1cclxuXHJcbi5uYXZiYXItc2VjdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4ubmF2YmFyLXNlY3Rpb24uZGlzYWJsZWQge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgY3Vyc29yOiBub25lO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5uYXZiYXItc2VjdGlvbi5kaXNhYmxlZCB7XHJcbiAgICBjdXJzb3I6IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLm5hdmJhci1zZWN0aW9uLFxyXG4ubmF2YmFyLXNlY3Rpb24gYnV0dG9uIHtcclxuICAgIGhlaWdodDogNDhweDtcclxufVxyXG5cclxuLm5hdmJhci1zZWN0aW9uIGJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMik7XHJcbn1cclxuXHJcbi5uYXZiYXItc2VjdGlvbiBidXR0b24+c3BhbiB7XHJcbiAgICBmb250LXNpemU6IDAuOTM4cmVtO1xyXG59XHJcblxyXG4ubmF2YmFyLXNlY3Rpb24gYnV0dG9uLmZvY3VzLFxyXG4ubmF2YmFyLXNlY3Rpb24gYnV0dG9uOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWx2bC0wKTtcclxufVxyXG5cclxuLyogRk9PVEVSICovXHJcbmZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMSk7XHJcbiAgICBtaW4taGVpZ2h0OiA5NnB4O1xyXG4gICAgcGFkZGluZzogMjRweDtcclxufVxyXG5cclxuZm9vdGVyPmRpdiB7XHJcbiAgICBtYXgtd2lkdGg6IHZhcigtLWxheW91dC13aWR0aCk7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbn1cclxuXHJcbmZvb3RlciBhIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jbC1sdmwtMSk7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbn0iLCIuZmxleC1jZW50ZXIsXHJcbi5mbGV4LW1pZGRsZSxcclxuLmZsZXgtd3JhcCxcclxuLmZsZXgtcm93LFxyXG4uZmxleC1jb2wsXHJcbi5mbGV4IHtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgZGlzcGxheTogLW1vei1ib3g7XHJcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5mbGV4LXdyYXAsXHJcbi5mbGV4LXJvdyB7XHJcbiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAtbW96LWZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbn1cclxuXHJcbi5mbGV4LW1pZGRsZSB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uZmxleC1jZW50ZXIge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4uZmxleC13cmFwIHtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLmZsZXgtY29sIHtcclxuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIC1tb3otZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgICAtbW96LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgLW1zLWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgYm94LW9yaWVudDogdmVydGljYWw7XHJcbn1cclxuXHJcbi5mbGV4LXNpemUtYXV0byxcclxuLmZsZXgtc2l6ZS0xNixcclxuLmZsZXgtc2l6ZS0yMCxcclxuLmZsZXgtc2l6ZS0yNSxcclxuLmZsZXgtc2l6ZS0zMyxcclxuLmZsZXgtc2l6ZS01MCB7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBmbGV4LXNocmluazogMTtcclxuICAgIG1pbi13aWR0aDogMDtcclxufVxyXG5cclxuLmZsZXgtc2l6ZS1hdXRvIHtcclxuICAgIGZsZXgtYmFzaXM6IGF1dG87XHJcbiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IGF1dG87XHJcbn1cclxuXHJcbi5mbGV4LXNpemUtMTYge1xyXG4gICAgZmxleC1iYXNpczogMTMlO1xyXG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAxMyU7XHJcbn1cclxuXHJcbi5mbGV4LXNpemUtMjAge1xyXG4gICAgZmxleC1iYXNpczogMTglO1xyXG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAxOCU7XHJcbn1cclxuXHJcbi5mbGV4LXNpemUtMjUge1xyXG4gICAgZmxleC1iYXNpczogMjIlO1xyXG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAyMiU7XHJcbn1cclxuXHJcbi5mbGV4LXNpemUtMzMge1xyXG4gICAgZmxleC1iYXNpczogMzAlO1xyXG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAzMCU7XHJcbn1cclxuXHJcbi5mbGV4LXNpemUtNTAge1xyXG4gICAgZmxleC1iYXNpczogNDUlO1xyXG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiA0NSU7XHJcbn1cclxuXHJcbi5mbGV4LXNpemUtMTAwIHtcclxuICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDEwMCU7XHJcbn1cclxuXHJcbi5nYXAtMSB7XHJcbiAgICBnYXA6IDFweDtcclxufVxyXG5cclxuLmdhcC0yIHtcclxuICAgIGdhcDogMnB4O1xyXG59XHJcblxyXG4uZ2FwLTQge1xyXG4gICAgZ2FwOiA0cHg7XHJcbn1cclxuXHJcbi5nYXAtOCB7XHJcbiAgICBnYXA6IDhweDtcclxufVxyXG5cclxuLmdhcC0xNiB7XHJcbiAgICBnYXA6IDE2cHg7XHJcbn1cclxuXHJcbi5nYXAtMjQge1xyXG4gICAgZ2FwOiAyNHB4O1xyXG59IiwiQGtleWZyYW1lcyBmYWRlSW4ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLyog0JDQvdC40LzQsNGG0LjRjyDQuNGB0YfQtdC30L3QvtCy0LXQvdC40Y8gKi9cclxuQGtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn0iLCI6cm9vdCB7XHJcbiAgICAtLW1pbjogMjA0cHg7XHJcbn1cclxuXHJcbi5maWxlc3RvcmUtYmxvY2sge1xyXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1NnB4KTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4uZmlsZXN0b3JlIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCh2YXIoLS1taW4pLCAxZnIpKTtcclxuICAgIGdhcDogOHB4O1xyXG4gICAgcGFkZGluZzogOHB4O1xyXG59XHJcblxyXG4uZmlsZXN0b3JlLWl0ZW0ge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctbHZsLTMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIG1heC13aWR0aDogMjQ4cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZpbGVzdG9yZS1pdGVtLmZvY3VzLFxyXG4uZmlsZXN0b3JlLWl0ZW06Zm9jdXMsXHJcbi5maWxlc3RvcmUtaXRlbTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMSk7XHJcbn1cclxuXHJcbi5maWxlc3RvcmUtaW1hZ2VfX2Jsb2NrIHtcclxuICAgIGFzcGVjdC1yYXRpbzogMS4zMzMzMztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmZpbGVzdG9yZS1pbWFnZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGluc2V0OiAwO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgd2lkdGg6IDkwJTtcclxufVxyXG5cclxuLnBhbmVsLXBvcHVwOmhhcyguZmlsZXN0b3JlLWl0ZW0uZm9jdXMpIC5uYXZiYXItc2VjdGlvbi5kaXNhYmxlZCB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAgIDpyb290IHtcclxuICAgICAgICAtLW1pbjogMTUzcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xyXG4gICAgOnJvb3Qge1xyXG4gICAgICAgIC0tbWluOiAxMjhweDtcclxuICAgIH1cclxufSIsIiNlZGl0b3ItbGF5b3V0IHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ubmF2YmFyIHtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGhlaWdodDogNTZweDtcclxufVxyXG5cclxuLm5hdmJhciBidXR0b24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLm5hdmJhci1zZWN0aW9uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLm5hdmJhci1zZWN0aW9uLmRpc2FibGVkIHtcclxuICAgIG9wYWNpdHk6IDAuNTtcclxuICAgIGN1cnNvcjogbm9uZTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59IiwiLm92ZXJsYXkge1xyXG4gICAgYW5pbWF0aW9uOiBmYWRlT3V0IDAuM3MgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGluc2V0OiAwO1xyXG4gICAgLyog0JfQsNC80LXQvdGP0LXRgiB0b3A6IDAsIGxlZnQ6IDAsIHdpZHRoOiAxMDAlLCBoZWlnaHQ6IDEwMCUgKi9cclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMC4zcztcclxuICAgIHotaW5kZXg6IDk5OTA7XHJcblxyXG4gICAgLyog0KHQvtC60YDQsNGJ0LXQvdC40LUg0LTQu9GPINC40LTRg9GJ0LjRhSDQv9C+0LTRgNGP0LQg0L7QstC10YDQu9C10LXQsiAqL1xyXG4gICAgJn4ub3ZlcmxheSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC8qINCh0L7RgdGC0L7Rj9C90LjQtSDQvtGC0L7QsdGA0LDQttC10L3QuNGPICovXHJcbiAgICAmLnNob3csXHJcbiAgICBib2R5OmhhcygucGFuZWwtcG9wdXApICYge1xyXG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIH1cclxufVxyXG5cclxuLnBhbmVsIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWx2bC0yKTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IDk5OTk7XHJcbn1cclxuXHJcbi5wYW5lbC1oZWFkZXIsXHJcbi5wYW5lbC1mb290ZXIge1xyXG4gICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLyogUE9QVVAgUEFORUwgKi9cclxuLnBhbmVsLXBvcHVwIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIC8qINCR0L7Qu9C10LUg0YfQuNGB0YLQvtC1INC90LDQv9C40YHQsNC90LjQtSDQstC80LXRgdGC0L4gcmdiYSgwLDAsMCwwKSAqL1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCA4cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xyXG4gICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gMTZweCk7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLyogU0xJREUgUEFORUxTICovXHJcbi5wYW5lbC1zbGlkZSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJj5kaXYge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAxNnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qINCe0LHRitC10LTQuNC90LXQvdC40LUg0L7QsdGJ0LjRhSDRgdCy0L7QudGB0YLQsiDQtNC70Y8g0LHQvtC60L7QstGL0YUg0L/QsNC90LXQu9C10LkgKi9cclxuLnBhbmVsLWxlZnQsXHJcbi5wYW5lbC1yaWdodCB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5wYW5lbC1sZWZ0IHtcclxuICAgIHJpZ2h0OiAxMDAlO1xyXG5cclxuICAgICYuc2hvdyB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLnBhbmVsLXJpZ2h0IHtcclxuICAgIGxlZnQ6IDEwMCU7XHJcblxyXG4gICAgJi5zaG93IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLyog0J7QsdGK0LXQtNC40L3QtdC90LjQtSDQvtCx0YnQuNGFINGB0LLQvtC50YHRgtCyINC00LvRjyDQstC10YDRhdC90LXQuSDQuCDQvdC40LbQvdC10Lkg0L/QsNC90LXQu9C10LkgKi9cclxuLnBhbmVsLXRvcCxcclxuLnBhbmVsLWJvdHRvbSB7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICB3aWR0aDogYXV0bztcclxufVxyXG5cclxuLnBhbmVsLXRvcCB7XHJcbiAgICBib3R0b206IDEwMCU7XHJcblxyXG4gICAgJi5zaG93IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDEwMCUsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGFuZWwtYm90dG9tIHtcclxuICAgIHRvcDogMTAwJTtcclxuXHJcbiAgICAmLnNob3cge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTEwMCUsIDApO1xyXG4gICAgfVxyXG59IiwiLnNjcm9sbHBhbmVsIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uc2Nyb2xscGFuZWw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5zY3JvbGxwYW5lbF92aWV3IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufSIsIi5zY3JvbGxiYXIge1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xyXG4gICAgLyogc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7ICovXHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xyXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn0iLCIjY29udGV4dG1lbnUge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctbHZsLTMpO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCA4cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBhZGRpbmc6IDhweDtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgc2NhbGU6IDAuODtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZSwgc2NhbGUgMjAwbXMgZWFzZTtcclxuICAgIHdpZHRoOiAyNDBweDtcclxuICAgIHotaW5kZXg6IDk5OTk5O1xyXG5cclxuICAgICYgYnV0dG9uIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNsLWx2bC0zKTtcclxuICAgICAgICBwYWRkaW5nOiAwIDE2cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmZvY3VzLXdpdGhpbiB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBzY2FsZTogMTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuXHJcbiAgICAgICAgQHN0YXJ0aW5nLXN0eWxlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgc2NhbGU6IDAuODtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJ2aWRlbyB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uLy4uL3B1YmxpYy9hc3NldHMvc3Bpbm5lci5zdmcnKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDY0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5zdmcge1xyXG4gICAgZmlsbDogI2ZmZjtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIHdpZHRoOiAyNHB4O1xyXG59XHJcblxyXG5idXR0b24ge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBtYXJnaW46IGF1dG8gMDtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbmJ1dHRvbjpob3ZlciB7XHJcbiAgICBvcGFjaXR5OiAwLjc1O1xyXG59XHJcblxyXG5idXR0b246ZGlzYWJsZWQge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG59XHJcblxyXG5idXR0b246YWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6ICMwMDA7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4jaW5mbyB7XHJcbiAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICBsaW5lLWhlaWdodDogNDhweDtcclxuICAgIHBhZGRpbmc6IDAgOHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdG9wOiAzMnB4O1xyXG4gICAgbGVmdDogY2FsYyg1MCUgLSAzNnB4KTtcclxuICAgIGhlaWdodDogNDhweDtcclxuICAgIHdpZHRoOiA3MnB4O1xyXG4gICAgei1pbmRleDogOTk7XHJcbn1cclxuXHJcbiNpbmZvIHNwYW4ge1xyXG4gICAgY29sb3I6ICMwMGNmMDA7XHJcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcclxuICAgIHRleHQtc2hhZG93OiAwIDAgMnB4ICMwMDA7XHJcbn1cclxuXHJcbiNlZGl0b3ItbmF2YmFyIGJ1dHRvbj5zdmcge1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgd2lkdGg6IDI0cHg7XHJcbn1cclxuXHJcbi5zdmctdG9nZ2xlLWJ1dHRvbiBzdmc6Zmlyc3QtY2hpbGQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5zdmctdG9nZ2xlLWJ1dHRvbiBzdmc6bGFzdC1jaGlsZCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uc3ZnLXRvZ2dsZS1idXR0b24ub24gc3ZnOmZpcnN0LWNoaWxkIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5zdmctdG9nZ2xlLWJ1dHRvbi5vbiBzdmc6bGFzdC1jaGlsZCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLnN2Zy10b2dnbGUtYnV0dG9uLm9uIHtcclxuICAgIGJhY2tncm91bmQ6ICNmMzM7XHJcbn1cclxuXHJcbi5zdmctdG9nZ2xlLWJ1dHRvbi5vbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjMzO1xyXG59XHJcblxyXG4vKiAjcmVtb3RlLXZpZGVvIHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG5cclxuI3JlbW90ZS12aWRlby5zaG93IHtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbn0gKi9cclxuXHJcbiNjYW1lcmEtbmF2YmFyIHtcclxuICAgIHBhZGRpbmc6IDRweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDk7XHJcbn0iLCIjZWRpdG9yLXBhbmVsPi5zY3JvbGxwYW5lbF92aWV3PjpudGgtY2hpbGQoMSkge1xyXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0OHB4KTtcclxufVxyXG5cclxuI2VkaXRvci1wYW5lbD4uc2Nyb2xscGFuZWxfdmlldz46bnRoLWNoaWxkKDIpIHtcclxuICAgIGhlaWdodDogNDhweDtcclxufVxyXG5cclxuI2VkaXRvci12aWV3IHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgvcHVibGljL2Fzc2V0cy9pbWFnZXMvcGF0dGVybi5wbmcpIHJlcGVhdDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbiNlZGl0b3ItdmlldzpoYXMoLmNhbnZhcy1ib3gpKyNlZGl0b3ItbmF2YmFyIHtcclxuICAgICY+I2ltYWdlLWNvbnRyb2xzIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG4jZWRpdG9yLW5hdmJhciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMSk7XHJcblxyXG4gICAgJj5kaXYge1xyXG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcclxuXHJcbiAgICAgICAgJj5idXR0b24ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWx2bC0yKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNsLWx2bC0yKTtcclxuICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XHJcblxyXG4gICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3R0b20tcGFuZWwge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctbHZsLTEpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UgMC4zcztcclxuICAgIGhlaWdodDogNjRweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uYm90dG9tLXBhbmVsLnNob3cge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NHB4KTtcclxufVxyXG5cclxuLmJvdHRvbS1wYW5lbD46bnRoLWNoaWxkKDEpIHtcclxuICAgIGhlaWdodDogNjRweDtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0OHB4KTtcclxufVxyXG5cclxuLmJvdHRvbS1wYW5lbD46bnRoLWNoaWxkKDIpIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWx2bC0yKTtcclxuICAgIGhlaWdodDogNjRweDtcclxuICAgIHdpZHRoOiA0OHB4O1xyXG59XHJcblxyXG4jdGh1bWJuYWlscyB7XHJcbiAgICBwYWRkaW5nOiA0cHg7XHJcbiAgICBoZWlnaHQ6IDY0cHg7XHJcblxyXG4gICAgJj4udGh1bWJuYWlsIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xyXG4gICAgICAgIGhlaWdodDogNTZweDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuYnV0dG9uPnAge1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uY2FudmFzLWJveCB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGN1cnNvcjogbW92ZTtcclxuICAgIH1cclxufVxyXG5cclxuLmNhbnZhcyB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcclxuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDE2cHgpO1xyXG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxufVxyXG5cclxuLmNhbnZhcy5hY3RpdmUge1xyXG4gICAgb3V0bGluZTogMnB4IHNvbGlkICNmZmY7XHJcbiAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xyXG59XHJcblxyXG4vKiBGSUxURVJTICovXHJcbiNpbWFnZS1jb250cm9scyxcclxuI2ZpbHRlcnMtbWVudSB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuI2ZpbHRlcnMtYmxvY2sge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMTAwJTtcclxuICAgIGhlaWdodDogNTZweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxNTBtcztcclxuXHJcbiAgICAvKiDQodC+0YHRgtC+0Y/QvdC40LUg0YTQvtC60YPRgdCwINCy0YHQtdCz0L4g0LHQu9C+0LrQsCAqL1xyXG4gICAgJjpmb2N1cy13aXRoaW4ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcblxyXG4gICAgICAgIC8qINCe0LHRitC10LTQuNC90LXQvdC40LUg0YPQv9GA0LDQstC70LXQvdC40Y8g0LLQuNC00LjQvNC+0YHRgtGM0Y4g0LTQvtGH0LXRgNC90LjRhSDQv9Cw0L3QtdC70LXQuSAqL1xyXG4gICAgICAgICY+I2N1cnZlcy1wYW5lbCxcclxuICAgICAgICAmPiNmaWx0ZXJzLXBhbmVsIHtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyog0JTQuNC90LDQvNC40YfQtdGB0LrQvtC1INC/0L7Qt9C40YbQuNC+0L3QuNGA0L7QstCw0L3QuNC1INC/0LDQvdC10LvQtdC5INC/0YDQuCDQsNC60YLQuNCy0LDRhtC40Lgg0LrQvdC+0L/QvtC6ICovXHJcbiAgICAmICNjdXJ2ZXMtcGFuZWwge1xyXG5cclxuICAgICAgICAmOmhhcyh+IC5zaG93LWN1cnZlcy1wYW5lbC5hY3RpdmUpLFxyXG4gICAgICAgIC8qINCV0YHQu9C4INC60L3QvtC/0LrQsCDQuNC00LXRgiDQv9C+0YHQu9C1INC/0LDQvdC10LvQuCAqL1xyXG4gICAgICAgIGJvZHk6aGFzKC5zaG93LWN1cnZlcy1wYW5lbC5hY3RpdmUpICYge1xyXG4gICAgICAgICAgICAvKiDQo9C90LjQstC10YDRgdCw0LvRjNC90YvQuSDRhdCw0Log0YfQtdGA0LXQtyBib2R5ICovXHJcbiAgICAgICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICAgICAgYm90dG9tOiA2NHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmICNmaWx0ZXJzLXBhbmVsIHtcclxuXHJcbiAgICAgICAgJjpoYXMofiAuc2hvdy1maWx0ZXJzLXBhbmVsLmFjdGl2ZSksXHJcbiAgICAgICAgYm9keTpoYXMoLnNob3ctZmlsdGVycy1wYW5lbC5hY3RpdmUpICYge1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIGJvdHRvbTogNjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiNjdXJ2ZXMtcGFuZWwsXHJcbiNmaWx0ZXJzLXBhbmVsIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOXB4KTtcclxuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDlweCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTYwcHgpO1xyXG4gICAgdG9wOiAxMTAlO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDMyMHB4O1xyXG59XHJcblxyXG4jY3VydmVzLXBhbmVsIHtcclxuICAgIHBhZGRpbmc6IDE2cHggMTZweCA4cHg7XHJcbn1cclxuXHJcbiNmaWx0ZXJzLXBhbmVsIHtcclxuICAgIHBhZGRpbmc6IDE2cHggMTZweCAwO1xyXG59XHJcblxyXG4jZmlsdGVycy1wYW5lbCBzcGFuLFxyXG4jZmlsdGVycy1wYW5lbCBidXR0b24ge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbTpub3QoW3ZhbHVlPVwiMFwiXSkge1xyXG4gICAgY29sb3I6ICNmZmZmMDA7XHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbTo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogYXR0cih2YWx1ZSk7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbn1cclxuXHJcbi8qIENVUlZFUyBQQU5FTCAqL1xyXG5cclxuW25hbWU9XCJjaGFubmVsXCJdLFxyXG4jcmVzZXQtY3VydmVzIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBtYXJnaW46IDAgOHB4O1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgd2lkdGg6IDI0cHg7XHJcbn1cclxuXHJcbltuYW1lPVwiY2hhbm5lbFwiXSB7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbiNyZXNldC1jdXJ2ZXMge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uY2hhbm5lbC1yZ2Ige1xyXG4gICAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcclxufVxyXG5cclxuLmNoYW5uZWwtcmdiOmNoZWNrZWQge1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY2hhbm5lbC1yZWQge1xyXG4gICAgYm9yZGVyOiA0cHggc29saWQgI2YwMDAwMDtcclxufVxyXG5cclxuLmNoYW5uZWwtcmVkOmNoZWNrZWQge1xyXG4gICAgYmFja2dyb3VuZDogI2YwMDAwMDtcclxufVxyXG5cclxuLmNoYW5uZWwtZ3JlZW4ge1xyXG4gICAgYm9yZGVyOiA0cHggc29saWQgIzAwY2YwMDtcclxufVxyXG5cclxuLmNoYW5uZWwtZ3JlZW46Y2hlY2tlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDBjZjAwO1xyXG59XHJcblxyXG4uY2hhbm5lbC1ibHVlIHtcclxuICAgIGJvcmRlcjogNHB4IHNvbGlkICMwMDc3ZjA7XHJcbn1cclxuXHJcbi5jaGFubmVsLWJsdWU6Y2hlY2tlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDA3N2YwO1xyXG59XHJcblxyXG4jY3VydmVzLWNhbnZhcyB7XHJcbiAgICBhc3BlY3QtcmF0aW86IDE7XHJcbiAgICBjdXJzb3I6IGNyb3NzaGFpcjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuICAgIGhlaWdodDogMjg4cHg7XHJcbiAgICB3aWR0aDogMjg4cHg7XHJcbn1cclxuXHJcbi8qIEJBQ0tHUk9VTkQgKi9cclxuXHJcbiNmb3JtLWJnOmhhcygjZmF2b3JpdGUtY29sb3JzOmVtcHR5KT4jZmF2b3JpdGUtY29sb3JzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogYXR0cihkYXRhLXRleHQpO1xyXG4gICAgY29sb3I6ICNmZjY2NjZcclxufVxyXG5cclxuI2Zhdm9yaXRlLWNvbG9ycyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgbWluLWhlaWdodDogNDJweDtcclxufVxyXG5cclxuI2Zhdm9yaXRlLWNvbG9ycyBidXR0b24ge1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgZmxleC1zaHJpbms6IDE7XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbiAgICB3aWR0aDogMTYuNjY2NjY2JTtcclxufVxyXG5cclxuLyogTkFWQkFSICovXHJcblxyXG4jZWRpdG9yLW5hdmJhciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8qIFNFTEVDVCBDQU1FUkEgTUVOVSAqL1xyXG4jc2VsZWN0LWNhbWVyYS1tZW51IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWx2bC0xKTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDEwMCU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbn1cclxuXHJcbiNzZWxlY3QtY2FtZXJhLW1lbnU6Zm9jdXMtd2l0aGluLFxyXG4jc2VsZWN0LWNhbWVyYS1tZW51LmFjdGl2ZSB7XHJcbiAgICB0b3A6IGNhbGMoMTAwJSAtIDU2cHgpO1xyXG59XHJcblxyXG4jc2VsZWN0LWNhbWVyYS1tZW51IGJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMik7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtc2l6ZTogMC45MzhyZW07XHJcbn1cclxuXHJcbi8qIFNMSURFUiAqL1xyXG4uc2xpZGVyLWJsb2NrIHtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIHdpZHRoOiAzMDRweDtcclxufVxyXG5cclxuLnNsaWRlci1ibG9jayBpbnB1dCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW46IDE2cHggMDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi5zbGlkZXItYmxvY2sgaW5wdXQ6Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNTZweCk7XHJcbn1cclxuXHJcbi5zbGlkZXItYmxvY2sgaW5wdXQ6bGFzdC1jaGlsZCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogNDhweDtcclxufSIsIiNjcm9wLW1hc2sge1xyXG4gICAgYm9yZGVyOiAxcHggZGFzaGVkICNmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAyNTYwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDA7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgICYuaXMtdmlzaWJsZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICB6LWluZGV4OiA5OTtcclxuICAgIH1cclxufVxyXG5cclxuLmNyb3AtbWFza19fcmVzaXplIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcclxuICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgei1pbmRleDogMjtcclxufVxyXG5cclxuLmNyb3AtbWFza19fcmVzaXplW2RhdGEtaWQ9XCIxXCJdIHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplO1xyXG59XHJcblxyXG4uY3JvcC1tYXNrX19yZXNpemVbZGF0YS1pZD1cIjJcIl0ge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBjdXJzb3I6IG5lc3ctcmVzaXplO1xyXG59XHJcblxyXG4uY3JvcC1tYXNrX19yZXNpemVbZGF0YS1pZD1cIjNcIl0ge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGN1cnNvcjogbmVzdy1yZXNpemU7XHJcbn1cclxuXHJcbi5jcm9wLW1hc2tfX3Jlc2l6ZVtkYXRhLWlkPVwiNFwiXSB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7XHJcbn1cclxuXHJcbiNjcm9wLW1hc2tfX3Rvb2xiYXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogY2FsYygxMDAlICsgNHB4KTtcclxuICAgIGhlaWdodDogNDhweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICYgYnV0dG9uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgIHdpZHRoOiA0OHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4jY3JvcC1tYXNrX190b29sYmFyPmJ1dHRvbiB7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcclxufVxyXG5cclxuI2Nyb3AtcmF0aW8tbWVudSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyIDYwbXM7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDEwMCU7XHJcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDE0NHB4KTtcclxuICAgIHdpZHRoOiAyODhweDtcclxuICAgIHotaW5kZXg6IDk5O1xyXG5cclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmZvY3VzLXdpdGhpbiB7XHJcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDExMnB4KTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG5bbmFtZT1cImNyb3BfcmF0aW9cIl0ge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctbHZsLTMpO1xyXG4gICAgY29sb3I6IHZhcigtLWNsLWx2bC0xKTtcclxuICAgIGhlaWdodDogNDBweDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1sdmwtMSk7XHJcbiAgICB9XHJcbn0iLCIjYWRtaW4tbWVudT5kaXYge1xyXG4gICAgcGFkZGluZzogOHB4O1xyXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1NnB4KVxyXG59XHJcblxyXG4jYWRtaW4tbWVudT5kaXYgYnV0dG9uIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGNvbG9yOiB2YXIoLS1jbC1sdmwtMyk7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbiNhZG1pbi1tZW51PmRpdiBidXR0b246aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctbHZsLTQpO1xyXG59Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/