@charset "UTF-8";
/** Foundation for Sites by ZURB Version 6.5.1 foundation.zurb.com Licensed under MIT Open Source */
@media print, screen and (min-width: 40em) { .reveal, .reveal.tiny, .reveal.small, .reveal.large { right: auto; left: auto; margin: 0 auto; } }

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html { line-height: 1.15; -webkit-text-size-adjust: 100%; }

body { margin: 0; }

h1 { font-size: 2em; margin: 0.67em 0; }

hr { box-sizing: content-box; height: 0; overflow: visible; }

pre { font-family: monospace, monospace; font-size: 1em; }

a { background-color: transparent; }

abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; }

b, strong { font-weight: bolder; }

code, kbd, samp { font-family: monospace, monospace; font-size: 1em; }

small { font-size: 80%; }

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

sub { bottom: -0.25em; }

sup { top: -0.5em; }

img { border-style: none; }

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

button, input { overflow: visible; }

button, select { text-transform: none; }

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

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

fieldset { padding: 0.35em 0.75em 0.625em; }

legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }

progress { vertical-align: baseline; }

textarea { overflow: auto; }

[type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

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

[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

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

details { display: block; }

summary { display: list-item; }

template { display: none; }

[hidden] { display: none; }

.foundation-mq { font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html { box-sizing: border-box; font-size: 62.5%; }

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

body { margin: 0; padding: 0; background: #ffffff; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-weight: normal; line-height: 1.5; color: #292c2e; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

img { display: inline-block; vertical-align: middle; max-width: 100%; height: auto; -ms-interpolation-mode: bicubic; }

textarea { height: auto; min-height: 50px; border-radius: 10px; }

select { box-sizing: border-box; width: 100%; border-radius: 10px; }

.map_canvas img, .map_canvas embed, .map_canvas object, .mqa-display img, .mqa-display embed, .mqa-display object { max-width: none !important; }

button { padding: 0; appearance: none; border: 0; border-radius: 10px; background: transparent; line-height: 1; cursor: auto; }

[data-whatinput='mouse'] button { outline: 0; }

pre { overflow: auto; }

button, input, optgroup, select, textarea { font-family: inherit; }

.is-visible { display: block !important; }

.is-hidden { display: none !important; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea { display: block; box-sizing: border-box; width: 100%; height: 3.9rem; margin: 0 0 1.6rem; padding: 0.8rem; border: 1px solid #cacaca; border-radius: 10px; background-color: #ffffff; box-shadow: inset 0 1px 2px rgba(41, 44, 46, 0.1); font-family: inherit; font-size: 1.6rem; font-weight: normal; line-height: 1.5; color: #292c2e; transition: box-shadow 0.5s, border-color 0.25s ease-in-out; appearance: none; }

[type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus, textarea:focus { outline: none; border: 1px solid #1d1d1d; background-color: #ffffff; box-shadow: 0 0 5px #cacaca; transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

textarea { max-width: 100%; }

textarea[rows] { height: auto; }

input:disabled, input[readonly], textarea:disabled, textarea[readonly] { background-color: #e6e6e6; cursor: not-allowed; }

[type='submit'], [type='button'] { appearance: none; border-radius: 10px; }

input[type='search'] { box-sizing: border-box; }

::placeholder { color: #cacaca; }

[type='file'], [type='checkbox'], [type='radio'] { margin: 0 0 1.6rem; }

[type='checkbox'] + label, [type='radio'] + label { display: inline-block; vertical-align: baseline; margin-left: 0.8rem; margin-right: 1.6rem; margin-bottom: 0; }

[type='checkbox'] + label[for], [type='radio'] + label[for] { cursor: pointer; }

label > [type='checkbox'], label > [type='radio'] { margin-right: 0.8rem; }

[type='file'] { width: 100%; }

label { display: block; margin: 0; font-size: 1.4rem; font-weight: normal; line-height: 1.8; color: #292c2e; }

label.middle { margin: 0 0 1.6rem; padding: 0.9rem 0; }

.help-text { margin-top: -0.8rem; font-size: 1.3rem; font-style: italic; color: #292c2e; }

.input-group { display: flex; width: 100%; margin-bottom: 1.6rem; align-items: stretch; }

.input-group > :first-child, .input-group > :first-child.input-group-button > * { border-radius: 10px 0 0 10px; }

.input-group > :last-child, .input-group > :last-child.input-group-button > * { border-radius: 0 10px 10px 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a, .input-group-button input, .input-group-button button, .input-group-button label { margin: 0; white-space: nowrap; }

.input-group-label { padding: 0 1rem; border: 1px solid #cacaca; background: #e6e6e6; color: #292c2e; text-align: center; white-space: nowrap; display: flex; flex: 0 0 auto; align-items: center; }

.input-group-label:first-child { border-right: 0; }

.input-group-label:last-child { border-left: 0; }

.input-group-field { border-radius: 0; flex: 1 1 0px; min-width: 0; }

.input-group-button { padding-top: 0; padding-bottom: 0; text-align: center; display: flex; flex: 0 0 auto; }

.input-group-button a, .input-group-button input, .input-group-button button, .input-group-button label { align-self: stretch; height: auto; padding-top: 0; padding-bottom: 0; font-size: 1.6rem; }

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

legend { max-width: 100%; margin-bottom: 0.8rem; }

.fieldset { margin: 1.8rem 0; padding: 2rem; border: 1px solid #cacaca; }

.fieldset legend { margin: 0; margin-left: -0.3rem; padding: 0 0.3rem; }

select { height: 3.9rem; margin: 0 0 1.6rem; padding: 0.8rem; appearance: none; border: 1px solid #cacaca; border-radius: 10px; background-color: #ffffff; font-family: inherit; font-size: 1.6rem; font-weight: normal; line-height: 1.5; color: #292c2e; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%2829, 29, 29%29'></polygon></svg>"); background-origin: content-box; background-position: right -1.6rem center; background-repeat: no-repeat; background-size: 9px 6px; padding-right: 2.4rem; transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

@media screen and (min-width: 0\0) { select { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }

select:focus { outline: none; border: 1px solid #1d1d1d; background-color: #ffffff; box-shadow: 0 0 5px #cacaca; transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

select:disabled { background-color: #e6e6e6; cursor: not-allowed; }

select::-ms-expand { display: none; }

select[multiple] { height: auto; background-image: none; }

.is-invalid-input:not(:focus) { border-color: #cc4b37; background-color: #faedeb; }

.is-invalid-input:not(:focus)::placeholder { color: #cc4b37; }

.is-invalid-label { color: #cc4b37; }

.form-error { display: none; margin-top: -0.8rem; margin-bottom: 1.6rem; font-size: 1.2rem; font-weight: bold; color: #cc4b37; }

.form-error.is-visible { display: block; }

div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, th, td { margin: 0; padding: 0; }

p { margin-bottom: 1rem; font-size: inherit; line-height: 1.6; text-rendering: optimizeLegibility; }

em, i { font-style: italic; line-height: inherit; }

strong, b { font-weight: bold; line-height: inherit; }

small { font-size: 80%; line-height: inherit; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-style: normal; font-weight: normal; color: inherit; text-rendering: optimizeLegibility; }

h1 small, .h1 small, h2 small, .h2 small, h3 small, .h3 small, h4 small, .h4 small, h5 small, .h5 small, h6 small, .h6 small { line-height: 0; color: #cacaca; }

h1, .h1 { font-size: 2.4rem; line-height: 1.1; margin-top: 0; margin-bottom: 0.5rem; }

h2, .h2 { font-size: 2rem; line-height: 1.1; margin-top: 0; margin-bottom: 0.5rem; }

h3, .h3 { font-size: 1.9rem; line-height: 1.1; margin-top: 0; margin-bottom: 0.5rem; }

h4, .h4 { font-size: 1.8rem; line-height: 1.1; margin-top: 0; margin-bottom: 0.5rem; }

h5, .h5 { font-size: 1.7rem; line-height: 1.1; margin-top: 0; margin-bottom: 0.5rem; }

h6, .h6 { font-size: 1.6rem; line-height: 1.1; margin-top: 0; margin-bottom: 0.5rem; }

@media print, screen and (min-width: 40em) { h1, .h1 { font-size: 4.8rem; }
  h2, .h2 { font-size: 4rem; }
  h3, .h3 { font-size: 3.1rem; }
  h4, .h4 { font-size: 2.5rem; }
  h5, .h5 { font-size: 2rem; }
  h6, .h6 { font-size: 1.6rem; } }

a { line-height: inherit; color: #79a5ba; text-decoration: none; cursor: pointer; }

a:hover, a:focus { color: #5d92ab; }

a img { border: 0; }

hr { clear: both; max-width: 120rem; height: 0; margin: 2rem auto; border-top: 0; border-right: 0; border-bottom: 1px solid #cacaca; border-left: 0; }

ul, ol, dl { margin-bottom: 1rem; list-style-position: outside; line-height: 1.6; }

li { font-size: inherit; }

ul { margin-left: 1.25rem; list-style-type: disc; }

ol { margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol { margin-left: 1.25rem; margin-bottom: 0; }

dl { margin-bottom: 1rem; }

dl dt { margin-bottom: 0.3rem; font-weight: bold; }

blockquote { margin: 0 0 1rem; padding: 0.9rem 2rem 0 1.9rem; border-left: 1px solid #cacaca; }

blockquote, blockquote p { line-height: 1.6; color: #1d1d1d; }

cite { display: block; font-size: 1.3rem; color: #1d1d1d; }

cite:before { content: "— "; }

abbr, abbr[title] { border-bottom: 1px dotted #292c2e; cursor: help; text-decoration: none; }

figure { margin: 0; }

code { padding: 0.2rem 0.5rem 0.1rem; border: 1px solid #cacaca; background-color: #e6e6e6; font-family: Consolas, "Liberation Mono", Courier, monospace; font-weight: normal; color: #292c2e; }

kbd { margin: 0; padding: 0.2rem 0.4rem 0; background-color: #e6e6e6; font-family: Consolas, "Liberation Mono", Courier, monospace; color: #292c2e; border-radius: 10px; }

.subheader { margin-top: 0.2rem; margin-bottom: 0.5rem; font-weight: normal; line-height: 1.4; color: #1d1d1d; }

.lead { font-size: 78.125%; line-height: 1.6; }

.stat { font-size: 2.5rem; line-height: 1; }

p + .stat { margin-top: -1rem; }

ul.no-bullet, ol.no-bullet { margin-left: 0; list-style: none; }

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

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

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

.text-justify { text-align: justify; }

@media print, screen and (min-width: 40em) { .medium-text-left { text-align: left; }
  .medium-text-right { text-align: right; }
  .medium-text-center { text-align: center; }
  .medium-text-justify { text-align: justify; } }

@media print, screen and (min-width: 64em) { .large-text-left { text-align: left; }
  .large-text-right { text-align: right; }
  .large-text-center { text-align: center; }
  .large-text-justify { text-align: justify; } }

.show-for-print { display: none !important; }

@media print { * { background: transparent !important; box-shadow: none !important; color: black !important; text-shadow: none !important; }
  .show-for-print { display: block !important; }
  .hide-for-print { display: none !important; }
  table.show-for-print { display: table !important; }
  thead.show-for-print { display: table-header-group !important; }
  tbody.show-for-print { display: table-row-group !important; }
  tr.show-for-print { display: table-row !important; }
  td.show-for-print { display: table-cell !important; }
  th.show-for-print { display: table-cell !important; }
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  .ir a:after, a[href^='javascript:']:after, a[href^='#']:after { content: ''; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  pre, blockquote { border: 1px solid #1d1d1d; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
  .print-break-inside { page-break-inside: auto; } }

.grid-container { padding-right: 1rem; padding-left: 1rem; max-width: 120rem; margin: 0 auto; }

@media print, screen and (min-width: 40em) { .grid-container { padding-right: 2rem; padding-left: 2rem; } }

.grid-container.fluid { padding-right: 1rem; padding-left: 1rem; max-width: 100%; margin: 0 auto; }

@media print, screen and (min-width: 40em) { .grid-container.fluid { padding-right: 2rem; padding-left: 2rem; } }

.grid-container.full { padding-right: 0; padding-left: 0; max-width: 100%; margin: 0 auto; }

.grid-x { display: flex; flex-flow: row wrap; }

.cell { flex: 0 0 auto; min-height: 0px; min-width: 0px; width: 100%; }

.cell.auto { flex: 1 1 0px; }

.cell.shrink { flex: 0 0 auto; }

.grid-x > .auto { width: auto; }

.grid-x > .shrink { width: auto; }

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 { flex-basis: auto; }

@media print, screen and (min-width: 40em) { .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 { flex-basis: auto; } }

@media print, screen and (min-width: 64em) { .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 { flex-basis: auto; } }

.grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 { flex: 0 0 auto; }

.grid-x > .small-1 { width: 8.33333%; }

.grid-x > .small-2 { width: 16.66667%; }

.grid-x > .small-3 { width: 25%; }

.grid-x > .small-4 { width: 33.33333%; }

.grid-x > .small-5 { width: 41.66667%; }

.grid-x > .small-6 { width: 50%; }

.grid-x > .small-7 { width: 58.33333%; }

.grid-x > .small-8 { width: 66.66667%; }

.grid-x > .small-9 { width: 75%; }

.grid-x > .small-10 { width: 83.33333%; }

.grid-x > .small-11 { width: 91.66667%; }

.grid-x > .small-12 { width: 100%; }

@media print, screen and (min-width: 40em) { .grid-x > .medium-auto { flex: 1 1 0px; width: auto; }
  .grid-x > .medium-shrink, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 { flex: 0 0 auto; }
  .grid-x > .medium-shrink { width: auto; }
  .grid-x > .medium-1 { width: 8.33333%; }
  .grid-x > .medium-2 { width: 16.66667%; }
  .grid-x > .medium-3 { width: 25%; }
  .grid-x > .medium-4 { width: 33.33333%; }
  .grid-x > .medium-5 { width: 41.66667%; }
  .grid-x > .medium-6 { width: 50%; }
  .grid-x > .medium-7 { width: 58.33333%; }
  .grid-x > .medium-8 { width: 66.66667%; }
  .grid-x > .medium-9 { width: 75%; }
  .grid-x > .medium-10 { width: 83.33333%; }
  .grid-x > .medium-11 { width: 91.66667%; }
  .grid-x > .medium-12 { width: 100%; } }

@media print, screen and (min-width: 64em) { .grid-x > .large-auto { flex: 1 1 0px; width: auto; }
  .grid-x > .large-shrink, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 { flex: 0 0 auto; }
  .grid-x > .large-shrink { width: auto; }
  .grid-x > .large-1 { width: 8.33333%; }
  .grid-x > .large-2 { width: 16.66667%; }
  .grid-x > .large-3 { width: 25%; }
  .grid-x > .large-4 { width: 33.33333%; }
  .grid-x > .large-5 { width: 41.66667%; }
  .grid-x > .large-6 { width: 50%; }
  .grid-x > .large-7 { width: 58.33333%; }
  .grid-x > .large-8 { width: 66.66667%; }
  .grid-x > .large-9 { width: 75%; }
  .grid-x > .large-10 { width: 83.33333%; }
  .grid-x > .large-11 { width: 91.66667%; }
  .grid-x > .large-12 { width: 100%; } }

.grid-margin-x:not(.grid-x) > .cell { width: auto; }

.grid-margin-y:not(.grid-y) > .cell { height: auto; }

.grid-margin-x { margin-left: -1rem; margin-right: -1rem; }

@media print, screen and (min-width: 40em) { .grid-margin-x { margin-left: -2rem; margin-right: -2rem; } }

.grid-margin-x > .cell { width: calc(100% - 2rem); margin-left: 1rem; margin-right: 1rem; }

@media print, screen and (min-width: 40em) { .grid-margin-x > .cell { width: calc(100% - 4rem); margin-left: 2rem; margin-right: 2rem; } }

.grid-margin-x > .auto { width: auto; }

.grid-margin-x > .shrink { width: auto; }

.grid-margin-x > .small-1 { width: calc(8.33333% - 2rem); }

.grid-margin-x > .small-2 { width: calc(16.66667% - 2rem); }

.grid-margin-x > .small-3 { width: calc(25% - 2rem); }

.grid-margin-x > .small-4 { width: calc(33.33333% - 2rem); }

.grid-margin-x > .small-5 { width: calc(41.66667% - 2rem); }

.grid-margin-x > .small-6 { width: calc(50% - 2rem); }

.grid-margin-x > .small-7 { width: calc(58.33333% - 2rem); }

.grid-margin-x > .small-8 { width: calc(66.66667% - 2rem); }

.grid-margin-x > .small-9 { width: calc(75% - 2rem); }

.grid-margin-x > .small-10 { width: calc(83.33333% - 2rem); }

.grid-margin-x > .small-11 { width: calc(91.66667% - 2rem); }

.grid-margin-x > .small-12 { width: calc(100% - 2rem); }

@media print, screen and (min-width: 40em) { .grid-margin-x > .auto { width: auto; }
  .grid-margin-x > .shrink { width: auto; }
  .grid-margin-x > .small-1 { width: calc(8.33333% - 4rem); }
  .grid-margin-x > .small-2 { width: calc(16.66667% - 4rem); }
  .grid-margin-x > .small-3 { width: calc(25% - 4rem); }
  .grid-margin-x > .small-4 { width: calc(33.33333% - 4rem); }
  .grid-margin-x > .small-5 { width: calc(41.66667% - 4rem); }
  .grid-margin-x > .small-6 { width: calc(50% - 4rem); }
  .grid-margin-x > .small-7 { width: calc(58.33333% - 4rem); }
  .grid-margin-x > .small-8 { width: calc(66.66667% - 4rem); }
  .grid-margin-x > .small-9 { width: calc(75% - 4rem); }
  .grid-margin-x > .small-10 { width: calc(83.33333% - 4rem); }
  .grid-margin-x > .small-11 { width: calc(91.66667% - 4rem); }
  .grid-margin-x > .small-12 { width: calc(100% - 4rem); }
  .grid-margin-x > .medium-auto { width: auto; }
  .grid-margin-x > .medium-shrink { width: auto; }
  .grid-margin-x > .medium-1 { width: calc(8.33333% - 4rem); }
  .grid-margin-x > .medium-2 { width: calc(16.66667% - 4rem); }
  .grid-margin-x > .medium-3 { width: calc(25% - 4rem); }
  .grid-margin-x > .medium-4 { width: calc(33.33333% - 4rem); }
  .grid-margin-x > .medium-5 { width: calc(41.66667% - 4rem); }
  .grid-margin-x > .medium-6 { width: calc(50% - 4rem); }
  .grid-margin-x > .medium-7 { width: calc(58.33333% - 4rem); }
  .grid-margin-x > .medium-8 { width: calc(66.66667% - 4rem); }
  .grid-margin-x > .medium-9 { width: calc(75% - 4rem); }
  .grid-margin-x > .medium-10 { width: calc(83.33333% - 4rem); }
  .grid-margin-x > .medium-11 { width: calc(91.66667% - 4rem); }
  .grid-margin-x > .medium-12 { width: calc(100% - 4rem); } }

@media print, screen and (min-width: 64em) { .grid-margin-x > .large-auto { width: auto; }
  .grid-margin-x > .large-shrink { width: auto; }
  .grid-margin-x > .large-1 { width: calc(8.33333% - 4rem); }
  .grid-margin-x > .large-2 { width: calc(16.66667% - 4rem); }
  .grid-margin-x > .large-3 { width: calc(25% - 4rem); }
  .grid-margin-x > .large-4 { width: calc(33.33333% - 4rem); }
  .grid-margin-x > .large-5 { width: calc(41.66667% - 4rem); }
  .grid-margin-x > .large-6 { width: calc(50% - 4rem); }
  .grid-margin-x > .large-7 { width: calc(58.33333% - 4rem); }
  .grid-margin-x > .large-8 { width: calc(66.66667% - 4rem); }
  .grid-margin-x > .large-9 { width: calc(75% - 4rem); }
  .grid-margin-x > .large-10 { width: calc(83.33333% - 4rem); }
  .grid-margin-x > .large-11 { width: calc(91.66667% - 4rem); }
  .grid-margin-x > .large-12 { width: calc(100% - 4rem); } }

.grid-padding-x .grid-padding-x { margin-right: -1rem; margin-left: -1rem; }

@media print, screen and (min-width: 40em) { .grid-padding-x .grid-padding-x { margin-right: -2rem; margin-left: -2rem; } }

.grid-container:not(.full) > .grid-padding-x { margin-right: -1rem; margin-left: -1rem; }

@media print, screen and (min-width: 40em) { .grid-container:not(.full) > .grid-padding-x { margin-right: -2rem; margin-left: -2rem; } }

.grid-padding-x > .cell { padding-right: 1rem; padding-left: 1rem; }

@media print, screen and (min-width: 40em) { .grid-padding-x > .cell { padding-right: 2rem; padding-left: 2rem; } }

.small-up-1 > .cell { width: 100%; }

.small-up-2 > .cell { width: 50%; }

.small-up-3 > .cell { width: 33.33333%; }

.small-up-4 > .cell { width: 25%; }

.small-up-5 > .cell { width: 20%; }

.small-up-6 > .cell { width: 16.66667%; }

.small-up-7 > .cell { width: 14.28571%; }

.small-up-8 > .cell { width: 12.5%; }

@media print, screen and (min-width: 40em) { .medium-up-1 > .cell { width: 100%; }
  .medium-up-2 > .cell { width: 50%; }
  .medium-up-3 > .cell { width: 33.33333%; }
  .medium-up-4 > .cell { width: 25%; }
  .medium-up-5 > .cell { width: 20%; }
  .medium-up-6 > .cell { width: 16.66667%; }
  .medium-up-7 > .cell { width: 14.28571%; }
  .medium-up-8 > .cell { width: 12.5%; } }

@media print, screen and (min-width: 64em) { .large-up-1 > .cell { width: 100%; }
  .large-up-2 > .cell { width: 50%; }
  .large-up-3 > .cell { width: 33.33333%; }
  .large-up-4 > .cell { width: 25%; }
  .large-up-5 > .cell { width: 20%; }
  .large-up-6 > .cell { width: 16.66667%; }
  .large-up-7 > .cell { width: 14.28571%; }
  .large-up-8 > .cell { width: 12.5%; } }

.grid-margin-x.small-up-1 > .cell { width: calc(100% - 2rem); }

.grid-margin-x.small-up-2 > .cell { width: calc(50% - 2rem); }

.grid-margin-x.small-up-3 > .cell { width: calc(33.33333% - 2rem); }

.grid-margin-x.small-up-4 > .cell { width: calc(25% - 2rem); }

.grid-margin-x.small-up-5 > .cell { width: calc(20% - 2rem); }

.grid-margin-x.small-up-6 > .cell { width: calc(16.66667% - 2rem); }

.grid-margin-x.small-up-7 > .cell { width: calc(14.28571% - 2rem); }

.grid-margin-x.small-up-8 > .cell { width: calc(12.5% - 2rem); }

@media print, screen and (min-width: 40em) { .grid-margin-x.small-up-1 > .cell { width: calc(100% - 4rem); }
  .grid-margin-x.small-up-2 > .cell { width: calc(50% - 4rem); }
  .grid-margin-x.small-up-3 > .cell { width: calc(33.33333% - 4rem); }
  .grid-margin-x.small-up-4 > .cell { width: calc(25% - 4rem); }
  .grid-margin-x.small-up-5 > .cell { width: calc(20% - 4rem); }
  .grid-margin-x.small-up-6 > .cell { width: calc(16.66667% - 4rem); }
  .grid-margin-x.small-up-7 > .cell { width: calc(14.28571% - 4rem); }
  .grid-margin-x.small-up-8 > .cell { width: calc(12.5% - 4rem); }
  .grid-margin-x.medium-up-1 > .cell { width: calc(100% - 4rem); }
  .grid-margin-x.medium-up-2 > .cell { width: calc(50% - 4rem); }
  .grid-margin-x.medium-up-3 > .cell { width: calc(33.33333% - 4rem); }
  .grid-margin-x.medium-up-4 > .cell { width: calc(25% - 4rem); }
  .grid-margin-x.medium-up-5 > .cell { width: calc(20% - 4rem); }
  .grid-margin-x.medium-up-6 > .cell { width: calc(16.66667% - 4rem); }
  .grid-margin-x.medium-up-7 > .cell { width: calc(14.28571% - 4rem); }
  .grid-margin-x.medium-up-8 > .cell { width: calc(12.5% - 4rem); } }

@media print, screen and (min-width: 64em) { .grid-margin-x.large-up-1 > .cell { width: calc(100% - 4rem); }
  .grid-margin-x.large-up-2 > .cell { width: calc(50% - 4rem); }
  .grid-margin-x.large-up-3 > .cell { width: calc(33.33333% - 4rem); }
  .grid-margin-x.large-up-4 > .cell { width: calc(25% - 4rem); }
  .grid-margin-x.large-up-5 > .cell { width: calc(20% - 4rem); }
  .grid-margin-x.large-up-6 > .cell { width: calc(16.66667% - 4rem); }
  .grid-margin-x.large-up-7 > .cell { width: calc(14.28571% - 4rem); }
  .grid-margin-x.large-up-8 > .cell { width: calc(12.5% - 4rem); } }

.small-margin-collapse { margin-right: 0; margin-left: 0; }

.small-margin-collapse > .cell { margin-right: 0; margin-left: 0; }

.small-margin-collapse > .small-1 { width: 8.33333%; }

.small-margin-collapse > .small-2 { width: 16.66667%; }

.small-margin-collapse > .small-3 { width: 25%; }

.small-margin-collapse > .small-4 { width: 33.33333%; }

.small-margin-collapse > .small-5 { width: 41.66667%; }

.small-margin-collapse > .small-6 { width: 50%; }

.small-margin-collapse > .small-7 { width: 58.33333%; }

.small-margin-collapse > .small-8 { width: 66.66667%; }

.small-margin-collapse > .small-9 { width: 75%; }

.small-margin-collapse > .small-10 { width: 83.33333%; }

.small-margin-collapse > .small-11 { width: 91.66667%; }

.small-margin-collapse > .small-12 { width: 100%; }

@media print, screen and (min-width: 40em) { .small-margin-collapse > .medium-1 { width: 8.33333%; }
  .small-margin-collapse > .medium-2 { width: 16.66667%; }
  .small-margin-collapse > .medium-3 { width: 25%; }
  .small-margin-collapse > .medium-4 { width: 33.33333%; }
  .small-margin-collapse > .medium-5 { width: 41.66667%; }
  .small-margin-collapse > .medium-6 { width: 50%; }
  .small-margin-collapse > .medium-7 { width: 58.33333%; }
  .small-margin-collapse > .medium-8 { width: 66.66667%; }
  .small-margin-collapse > .medium-9 { width: 75%; }
  .small-margin-collapse > .medium-10 { width: 83.33333%; }
  .small-margin-collapse > .medium-11 { width: 91.66667%; }
  .small-margin-collapse > .medium-12 { width: 100%; } }

@media print, screen and (min-width: 64em) { .small-margin-collapse > .large-1 { width: 8.33333%; }
  .small-margin-collapse > .large-2 { width: 16.66667%; }
  .small-margin-collapse > .large-3 { width: 25%; }
  .small-margin-collapse > .large-4 { width: 33.33333%; }
  .small-margin-collapse > .large-5 { width: 41.66667%; }
  .small-margin-collapse > .large-6 { width: 50%; }
  .small-margin-collapse > .large-7 { width: 58.33333%; }
  .small-margin-collapse > .large-8 { width: 66.66667%; }
  .small-margin-collapse > .large-9 { width: 75%; }
  .small-margin-collapse > .large-10 { width: 83.33333%; }
  .small-margin-collapse > .large-11 { width: 91.66667%; }
  .small-margin-collapse > .large-12 { width: 100%; } }

.small-padding-collapse { margin-right: 0; margin-left: 0; }

.small-padding-collapse > .cell { padding-right: 0; padding-left: 0; }

@media print, screen and (min-width: 40em) { .medium-margin-collapse { margin-right: 0; margin-left: 0; }
  .medium-margin-collapse > .cell { margin-right: 0; margin-left: 0; } }

@media print, screen and (min-width: 40em) { .medium-margin-collapse > .small-1 { width: 8.33333%; }
  .medium-margin-collapse > .small-2 { width: 16.66667%; }
  .medium-margin-collapse > .small-3 { width: 25%; }
  .medium-margin-collapse > .small-4 { width: 33.33333%; }
  .medium-margin-collapse > .small-5 { width: 41.66667%; }
  .medium-margin-collapse > .small-6 { width: 50%; }
  .medium-margin-collapse > .small-7 { width: 58.33333%; }
  .medium-margin-collapse > .small-8 { width: 66.66667%; }
  .medium-margin-collapse > .small-9 { width: 75%; }
  .medium-margin-collapse > .small-10 { width: 83.33333%; }
  .medium-margin-collapse > .small-11 { width: 91.66667%; }
  .medium-margin-collapse > .small-12 { width: 100%; } }

@media print, screen and (min-width: 40em) { .medium-margin-collapse > .medium-1 { width: 8.33333%; }
  .medium-margin-collapse > .medium-2 { width: 16.66667%; }
  .medium-margin-collapse > .medium-3 { width: 25%; }
  .medium-margin-collapse > .medium-4 { width: 33.33333%; }
  .medium-margin-collapse > .medium-5 { width: 41.66667%; }
  .medium-margin-collapse > .medium-6 { width: 50%; }
  .medium-margin-collapse > .medium-7 { width: 58.33333%; }
  .medium-margin-collapse > .medium-8 { width: 66.66667%; }
  .medium-margin-collapse > .medium-9 { width: 75%; }
  .medium-margin-collapse > .medium-10 { width: 83.33333%; }
  .medium-margin-collapse > .medium-11 { width: 91.66667%; }
  .medium-margin-collapse > .medium-12 { width: 100%; } }

@media print, screen and (min-width: 64em) { .medium-margin-collapse > .large-1 { width: 8.33333%; }
  .medium-margin-collapse > .large-2 { width: 16.66667%; }
  .medium-margin-collapse > .large-3 { width: 25%; }
  .medium-margin-collapse > .large-4 { width: 33.33333%; }
  .medium-margin-collapse > .large-5 { width: 41.66667%; }
  .medium-margin-collapse > .large-6 { width: 50%; }
  .medium-margin-collapse > .large-7 { width: 58.33333%; }
  .medium-margin-collapse > .large-8 { width: 66.66667%; }
  .medium-margin-collapse > .large-9 { width: 75%; }
  .medium-margin-collapse > .large-10 { width: 83.33333%; }
  .medium-margin-collapse > .large-11 { width: 91.66667%; }
  .medium-margin-collapse > .large-12 { width: 100%; } }

@media print, screen and (min-width: 40em) { .medium-padding-collapse { margin-right: 0; margin-left: 0; }
  .medium-padding-collapse > .cell { padding-right: 0; padding-left: 0; } }

@media print, screen and (min-width: 64em) { .large-margin-collapse { margin-right: 0; margin-left: 0; }
  .large-margin-collapse > .cell { margin-right: 0; margin-left: 0; } }

@media print, screen and (min-width: 64em) { .large-margin-collapse > .small-1 { width: 8.33333%; }
  .large-margin-collapse > .small-2 { width: 16.66667%; }
  .large-margin-collapse > .small-3 { width: 25%; }
  .large-margin-collapse > .small-4 { width: 33.33333%; }
  .large-margin-collapse > .small-5 { width: 41.66667%; }
  .large-margin-collapse > .small-6 { width: 50%; }
  .large-margin-collapse > .small-7 { width: 58.33333%; }
  .large-margin-collapse > .small-8 { width: 66.66667%; }
  .large-margin-collapse > .small-9 { width: 75%; }
  .large-margin-collapse > .small-10 { width: 83.33333%; }
  .large-margin-collapse > .small-11 { width: 91.66667%; }
  .large-margin-collapse > .small-12 { width: 100%; } }

@media print, screen and (min-width: 64em) { .large-margin-collapse > .medium-1 { width: 8.33333%; }
  .large-margin-collapse > .medium-2 { width: 16.66667%; }
  .large-margin-collapse > .medium-3 { width: 25%; }
  .large-margin-collapse > .medium-4 { width: 33.33333%; }
  .large-margin-collapse > .medium-5 { width: 41.66667%; }
  .large-margin-collapse > .medium-6 { width: 50%; }
  .large-margin-collapse > .medium-7 { width: 58.33333%; }
  .large-margin-collapse > .medium-8 { width: 66.66667%; }
  .large-margin-collapse > .medium-9 { width: 75%; }
  .large-margin-collapse > .medium-10 { width: 83.33333%; }
  .large-margin-collapse > .medium-11 { width: 91.66667%; }
  .large-margin-collapse > .medium-12 { width: 100%; } }

@media print, screen and (min-width: 64em) { .large-margin-collapse > .large-1 { width: 8.33333%; }
  .large-margin-collapse > .large-2 { width: 16.66667%; }
  .large-margin-collapse > .large-3 { width: 25%; }
  .large-margin-collapse > .large-4 { width: 33.33333%; }
  .large-margin-collapse > .large-5 { width: 41.66667%; }
  .large-margin-collapse > .large-6 { width: 50%; }
  .large-margin-collapse > .large-7 { width: 58.33333%; }
  .large-margin-collapse > .large-8 { width: 66.66667%; }
  .large-margin-collapse > .large-9 { width: 75%; }
  .large-margin-collapse > .large-10 { width: 83.33333%; }
  .large-margin-collapse > .large-11 { width: 91.66667%; }
  .large-margin-collapse > .large-12 { width: 100%; } }

@media print, screen and (min-width: 64em) { .large-padding-collapse { margin-right: 0; margin-left: 0; }
  .large-padding-collapse > .cell { padding-right: 0; padding-left: 0; } }

.small-offset-0 { margin-left: 0%; }

.grid-margin-x > .small-offset-0 { margin-left: calc(0% + 1rem); }

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

.grid-margin-x > .small-offset-1 { margin-left: calc(8.33333% + 1rem); }

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

.grid-margin-x > .small-offset-2 { margin-left: calc(16.66667% + 1rem); }

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

.grid-margin-x > .small-offset-3 { margin-left: calc(25% + 1rem); }

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

.grid-margin-x > .small-offset-4 { margin-left: calc(33.33333% + 1rem); }

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

.grid-margin-x > .small-offset-5 { margin-left: calc(41.66667% + 1rem); }

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

.grid-margin-x > .small-offset-6 { margin-left: calc(50% + 1rem); }

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

.grid-margin-x > .small-offset-7 { margin-left: calc(58.33333% + 1rem); }

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

.grid-margin-x > .small-offset-8 { margin-left: calc(66.66667% + 1rem); }

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

.grid-margin-x > .small-offset-9 { margin-left: calc(75% + 1rem); }

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

.grid-margin-x > .small-offset-10 { margin-left: calc(83.33333% + 1rem); }

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

.grid-margin-x > .small-offset-11 { margin-left: calc(91.66667% + 1rem); }

@media print, screen and (min-width: 40em) { .medium-offset-0 { margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 { margin-left: calc(0% + 2rem); }
  .medium-offset-1 { margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 { margin-left: calc(8.33333% + 2rem); }
  .medium-offset-2 { margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 { margin-left: calc(16.66667% + 2rem); }
  .medium-offset-3 { margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 { margin-left: calc(25% + 2rem); }
  .medium-offset-4 { margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 { margin-left: calc(33.33333% + 2rem); }
  .medium-offset-5 { margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 { margin-left: calc(41.66667% + 2rem); }
  .medium-offset-6 { margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 { margin-left: calc(50% + 2rem); }
  .medium-offset-7 { margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 { margin-left: calc(58.33333% + 2rem); }
  .medium-offset-8 { margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 { margin-left: calc(66.66667% + 2rem); }
  .medium-offset-9 { margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 { margin-left: calc(75% + 2rem); }
  .medium-offset-10 { margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 { margin-left: calc(83.33333% + 2rem); }
  .medium-offset-11 { margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 { margin-left: calc(91.66667% + 2rem); } }

@media print, screen and (min-width: 64em) { .large-offset-0 { margin-left: 0%; }
  .grid-margin-x > .large-offset-0 { margin-left: calc(0% + 2rem); }
  .large-offset-1 { margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 { margin-left: calc(8.33333% + 2rem); }
  .large-offset-2 { margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 { margin-left: calc(16.66667% + 2rem); }
  .large-offset-3 { margin-left: 25%; }
  .grid-margin-x > .large-offset-3 { margin-left: calc(25% + 2rem); }
  .large-offset-4 { margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 { margin-left: calc(33.33333% + 2rem); }
  .large-offset-5 { margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 { margin-left: calc(41.66667% + 2rem); }
  .large-offset-6 { margin-left: 50%; }
  .grid-margin-x > .large-offset-6 { margin-left: calc(50% + 2rem); }
  .large-offset-7 { margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 { margin-left: calc(58.33333% + 2rem); }
  .large-offset-8 { margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 { margin-left: calc(66.66667% + 2rem); }
  .large-offset-9 { margin-left: 75%; }
  .grid-margin-x > .large-offset-9 { margin-left: calc(75% + 2rem); }
  .large-offset-10 { margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 { margin-left: calc(83.33333% + 2rem); }
  .large-offset-11 { margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 { margin-left: calc(91.66667% + 2rem); } }

.grid-y { display: flex; flex-flow: column nowrap; }

.grid-y > .cell { width: auto; max-width: none; }

.grid-y > .auto { height: auto; }

.grid-y > .shrink { height: auto; }

.grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 { flex-basis: auto; }

@media print, screen and (min-width: 40em) { .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 { flex-basis: auto; } }

@media print, screen and (min-width: 64em) { .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 { flex-basis: auto; } }

.grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 { flex: 0 0 auto; }

.grid-y > .small-1 { height: 8.33333%; }

.grid-y > .small-2 { height: 16.66667%; }

.grid-y > .small-3 { height: 25%; }

.grid-y > .small-4 { height: 33.33333%; }

.grid-y > .small-5 { height: 41.66667%; }

.grid-y > .small-6 { height: 50%; }

.grid-y > .small-7 { height: 58.33333%; }

.grid-y > .small-8 { height: 66.66667%; }

.grid-y > .small-9 { height: 75%; }

.grid-y > .small-10 { height: 83.33333%; }

.grid-y > .small-11 { height: 91.66667%; }

.grid-y > .small-12 { height: 100%; }

@media print, screen and (min-width: 40em) { .grid-y > .medium-auto { flex: 1 1 0px; height: auto; }
  .grid-y > .medium-shrink, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 { flex: 0 0 auto; }
  .grid-y > .medium-shrink { height: auto; }
  .grid-y > .medium-1 { height: 8.33333%; }
  .grid-y > .medium-2 { height: 16.66667%; }
  .grid-y > .medium-3 { height: 25%; }
  .grid-y > .medium-4 { height: 33.33333%; }
  .grid-y > .medium-5 { height: 41.66667%; }
  .grid-y > .medium-6 { height: 50%; }
  .grid-y > .medium-7 { height: 58.33333%; }
  .grid-y > .medium-8 { height: 66.66667%; }
  .grid-y > .medium-9 { height: 75%; }
  .grid-y > .medium-10 { height: 83.33333%; }
  .grid-y > .medium-11 { height: 91.66667%; }
  .grid-y > .medium-12 { height: 100%; } }

@media print, screen and (min-width: 64em) { .grid-y > .large-auto { flex: 1 1 0px; height: auto; }
  .grid-y > .large-shrink, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 { flex: 0 0 auto; }
  .grid-y > .large-shrink { height: auto; }
  .grid-y > .large-1 { height: 8.33333%; }
  .grid-y > .large-2 { height: 16.66667%; }
  .grid-y > .large-3 { height: 25%; }
  .grid-y > .large-4 { height: 33.33333%; }
  .grid-y > .large-5 { height: 41.66667%; }
  .grid-y > .large-6 { height: 50%; }
  .grid-y > .large-7 { height: 58.33333%; }
  .grid-y > .large-8 { height: 66.66667%; }
  .grid-y > .large-9 { height: 75%; }
  .grid-y > .large-10 { height: 83.33333%; }
  .grid-y > .large-11 { height: 91.66667%; }
  .grid-y > .large-12 { height: 100%; } }

.grid-padding-y .grid-padding-y { margin-top: -1rem; margin-bottom: -1rem; }

@media print, screen and (min-width: 40em) { .grid-padding-y .grid-padding-y { margin-top: -2rem; margin-bottom: -2rem; } }

.grid-padding-y > .cell { padding-top: 1rem; padding-bottom: 1rem; }

@media print, screen and (min-width: 40em) { .grid-padding-y > .cell { padding-top: 2rem; padding-bottom: 2rem; } }

.grid-margin-y { margin-top: -1rem; margin-bottom: -1rem; }

@media print, screen and (min-width: 40em) { .grid-margin-y { margin-top: -2rem; margin-bottom: -2rem; } }

.grid-margin-y > .cell { height: calc(100% - 2rem); margin-top: 1rem; margin-bottom: 1rem; }

@media print, screen and (min-width: 40em) { .grid-margin-y > .cell { height: calc(100% - 4rem); margin-top: 2rem; margin-bottom: 2rem; } }

.grid-margin-y > .auto { height: auto; }

.grid-margin-y > .shrink { height: auto; }

.grid-margin-y > .small-1 { height: calc(8.33333% - 2rem); }

.grid-margin-y > .small-2 { height: calc(16.66667% - 2rem); }

.grid-margin-y > .small-3 { height: calc(25% - 2rem); }

.grid-margin-y > .small-4 { height: calc(33.33333% - 2rem); }

.grid-margin-y > .small-5 { height: calc(41.66667% - 2rem); }

.grid-margin-y > .small-6 { height: calc(50% - 2rem); }

.grid-margin-y > .small-7 { height: calc(58.33333% - 2rem); }

.grid-margin-y > .small-8 { height: calc(66.66667% - 2rem); }

.grid-margin-y > .small-9 { height: calc(75% - 2rem); }

.grid-margin-y > .small-10 { height: calc(83.33333% - 2rem); }

.grid-margin-y > .small-11 { height: calc(91.66667% - 2rem); }

.grid-margin-y > .small-12 { height: calc(100% - 2rem); }

@media print, screen and (min-width: 40em) { .grid-margin-y > .auto { height: auto; }
  .grid-margin-y > .shrink { height: auto; }
  .grid-margin-y > .small-1 { height: calc(8.33333% - 4rem); }
  .grid-margin-y > .small-2 { height: calc(16.66667% - 4rem); }
  .grid-margin-y > .small-3 { height: calc(25% - 4rem); }
  .grid-margin-y > .small-4 { height: calc(33.33333% - 4rem); }
  .grid-margin-y > .small-5 { height: calc(41.66667% - 4rem); }
  .grid-margin-y > .small-6 { height: calc(50% - 4rem); }
  .grid-margin-y > .small-7 { height: calc(58.33333% - 4rem); }
  .grid-margin-y > .small-8 { height: calc(66.66667% - 4rem); }
  .grid-margin-y > .small-9 { height: calc(75% - 4rem); }
  .grid-margin-y > .small-10 { height: calc(83.33333% - 4rem); }
  .grid-margin-y > .small-11 { height: calc(91.66667% - 4rem); }
  .grid-margin-y > .small-12 { height: calc(100% - 4rem); }
  .grid-margin-y > .medium-auto { height: auto; }
  .grid-margin-y > .medium-shrink { height: auto; }
  .grid-margin-y > .medium-1 { height: calc(8.33333% - 4rem); }
  .grid-margin-y > .medium-2 { height: calc(16.66667% - 4rem); }
  .grid-margin-y > .medium-3 { height: calc(25% - 4rem); }
  .grid-margin-y > .medium-4 { height: calc(33.33333% - 4rem); }
  .grid-margin-y > .medium-5 { height: calc(41.66667% - 4rem); }
  .grid-margin-y > .medium-6 { height: calc(50% - 4rem); }
  .grid-margin-y > .medium-7 { height: calc(58.33333% - 4rem); }
  .grid-margin-y > .medium-8 { height: calc(66.66667% - 4rem); }
  .grid-margin-y > .medium-9 { height: calc(75% - 4rem); }
  .grid-margin-y > .medium-10 { height: calc(83.33333% - 4rem); }
  .grid-margin-y > .medium-11 { height: calc(91.66667% - 4rem); }
  .grid-margin-y > .medium-12 { height: calc(100% - 4rem); } }

@media print, screen and (min-width: 64em) { .grid-margin-y > .large-auto { height: auto; }
  .grid-margin-y > .large-shrink { height: auto; }
  .grid-margin-y > .large-1 { height: calc(8.33333% - 4rem); }
  .grid-margin-y > .large-2 { height: calc(16.66667% - 4rem); }
  .grid-margin-y > .large-3 { height: calc(25% - 4rem); }
  .grid-margin-y > .large-4 { height: calc(33.33333% - 4rem); }
  .grid-margin-y > .large-5 { height: calc(41.66667% - 4rem); }
  .grid-margin-y > .large-6 { height: calc(50% - 4rem); }
  .grid-margin-y > .large-7 { height: calc(58.33333% - 4rem); }
  .grid-margin-y > .large-8 { height: calc(66.66667% - 4rem); }
  .grid-margin-y > .large-9 { height: calc(75% - 4rem); }
  .grid-margin-y > .large-10 { height: calc(83.33333% - 4rem); }
  .grid-margin-y > .large-11 { height: calc(91.66667% - 4rem); }
  .grid-margin-y > .large-12 { height: calc(100% - 4rem); } }

.grid-frame { overflow: hidden; position: relative; flex-wrap: nowrap; align-items: stretch; width: 100vw; }

.cell .grid-frame { width: 100%; }

.cell-block { overflow-x: auto; max-width: 100%; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-y { overflow-y: auto; max-height: 100%; min-height: 100%; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-container { display: flex; flex-direction: column; max-height: 100%; }

.cell-block-container > .grid-x { max-height: 100%; flex-wrap: nowrap; }

@media print, screen and (min-width: 40em) { .medium-grid-frame { overflow: hidden; position: relative; flex-wrap: nowrap; align-items: stretch; width: 100vw; }
  .cell .medium-grid-frame { width: 100%; }
  .medium-cell-block { overflow-x: auto; max-width: 100%; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; }
  .medium-cell-block-container { display: flex; flex-direction: column; max-height: 100%; }
  .medium-cell-block-container > .grid-x { max-height: 100%; flex-wrap: nowrap; }
  .medium-cell-block-y { overflow-y: auto; max-height: 100%; min-height: 100%; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 64em) { .large-grid-frame { overflow: hidden; position: relative; flex-wrap: nowrap; align-items: stretch; width: 100vw; }
  .cell .large-grid-frame { width: 100%; }
  .large-cell-block { overflow-x: auto; max-width: 100%; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; }
  .large-cell-block-container { display: flex; flex-direction: column; max-height: 100%; }
  .large-cell-block-container > .grid-x { max-height: 100%; flex-wrap: nowrap; }
  .large-cell-block-y { overflow-y: auto; max-height: 100%; min-height: 100%; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame { width: auto; overflow: hidden; position: relative; flex-wrap: nowrap; align-items: stretch; height: 100vh; }

@media print, screen and (min-width: 40em) { .grid-y.medium-grid-frame { width: auto; overflow: hidden; position: relative; flex-wrap: nowrap; align-items: stretch; height: 100vh; } }

@media print, screen and (min-width: 64em) { .grid-y.large-grid-frame { width: auto; overflow: hidden; position: relative; flex-wrap: nowrap; align-items: stretch; height: 100vh; } }

.cell .grid-y.grid-frame { height: 100%; }

@media print, screen and (min-width: 40em) { .cell .grid-y.medium-grid-frame { height: 100%; } }

@media print, screen and (min-width: 64em) { .cell .grid-y.large-grid-frame { height: 100%; } }

.grid-margin-y { margin-top: -1rem; margin-bottom: -1rem; }

@media print, screen and (min-width: 40em) { .grid-margin-y { margin-top: -2rem; margin-bottom: -2rem; } }

.grid-margin-y > .cell { height: calc(100% - 2rem); margin-top: 1rem; margin-bottom: 1rem; }

@media print, screen and (min-width: 40em) { .grid-margin-y > .cell { height: calc(100% - 4rem); margin-top: 2rem; margin-bottom: 2rem; } }

.grid-margin-y > .auto { height: auto; }

.grid-margin-y > .shrink { height: auto; }

.grid-margin-y > .small-1 { height: calc(8.33333% - 2rem); }

.grid-margin-y > .small-2 { height: calc(16.66667% - 2rem); }

.grid-margin-y > .small-3 { height: calc(25% - 2rem); }

.grid-margin-y > .small-4 { height: calc(33.33333% - 2rem); }

.grid-margin-y > .small-5 { height: calc(41.66667% - 2rem); }

.grid-margin-y > .small-6 { height: calc(50% - 2rem); }

.grid-margin-y > .small-7 { height: calc(58.33333% - 2rem); }

.grid-margin-y > .small-8 { height: calc(66.66667% - 2rem); }

.grid-margin-y > .small-9 { height: calc(75% - 2rem); }

.grid-margin-y > .small-10 { height: calc(83.33333% - 2rem); }

.grid-margin-y > .small-11 { height: calc(91.66667% - 2rem); }

.grid-margin-y > .small-12 { height: calc(100% - 2rem); }

@media print, screen and (min-width: 40em) { .grid-margin-y > .auto { height: auto; }
  .grid-margin-y > .shrink { height: auto; }
  .grid-margin-y > .small-1 { height: calc(8.33333% - 4rem); }
  .grid-margin-y > .small-2 { height: calc(16.66667% - 4rem); }
  .grid-margin-y > .small-3 { height: calc(25% - 4rem); }
  .grid-margin-y > .small-4 { height: calc(33.33333% - 4rem); }
  .grid-margin-y > .small-5 { height: calc(41.66667% - 4rem); }
  .grid-margin-y > .small-6 { height: calc(50% - 4rem); }
  .grid-margin-y > .small-7 { height: calc(58.33333% - 4rem); }
  .grid-margin-y > .small-8 { height: calc(66.66667% - 4rem); }
  .grid-margin-y > .small-9 { height: calc(75% - 4rem); }
  .grid-margin-y > .small-10 { height: calc(83.33333% - 4rem); }
  .grid-margin-y > .small-11 { height: calc(91.66667% - 4rem); }
  .grid-margin-y > .small-12 { height: calc(100% - 4rem); }
  .grid-margin-y > .medium-auto { height: auto; }
  .grid-margin-y > .medium-shrink { height: auto; }
  .grid-margin-y > .medium-1 { height: calc(8.33333% - 4rem); }
  .grid-margin-y > .medium-2 { height: calc(16.66667% - 4rem); }
  .grid-margin-y > .medium-3 { height: calc(25% - 4rem); }
  .grid-margin-y > .medium-4 { height: calc(33.33333% - 4rem); }
  .grid-margin-y > .medium-5 { height: calc(41.66667% - 4rem); }
  .grid-margin-y > .medium-6 { height: calc(50% - 4rem); }
  .grid-margin-y > .medium-7 { height: calc(58.33333% - 4rem); }
  .grid-margin-y > .medium-8 { height: calc(66.66667% - 4rem); }
  .grid-margin-y > .medium-9 { height: calc(75% - 4rem); }
  .grid-margin-y > .medium-10 { height: calc(83.33333% - 4rem); }
  .grid-margin-y > .medium-11 { height: calc(91.66667% - 4rem); }
  .grid-margin-y > .medium-12 { height: calc(100% - 4rem); } }

@media print, screen and (min-width: 64em) { .grid-margin-y > .large-auto { height: auto; }
  .grid-margin-y > .large-shrink { height: auto; }
  .grid-margin-y > .large-1 { height: calc(8.33333% - 4rem); }
  .grid-margin-y > .large-2 { height: calc(16.66667% - 4rem); }
  .grid-margin-y > .large-3 { height: calc(25% - 4rem); }
  .grid-margin-y > .large-4 { height: calc(33.33333% - 4rem); }
  .grid-margin-y > .large-5 { height: calc(41.66667% - 4rem); }
  .grid-margin-y > .large-6 { height: calc(50% - 4rem); }
  .grid-margin-y > .large-7 { height: calc(58.33333% - 4rem); }
  .grid-margin-y > .large-8 { height: calc(66.66667% - 4rem); }
  .grid-margin-y > .large-9 { height: calc(75% - 4rem); }
  .grid-margin-y > .large-10 { height: calc(83.33333% - 4rem); }
  .grid-margin-y > .large-11 { height: calc(91.66667% - 4rem); }
  .grid-margin-y > .large-12 { height: calc(100% - 4rem); } }

.grid-frame.grid-margin-y { height: calc(100vh + 2rem); }

@media print, screen and (min-width: 40em) { .grid-frame.grid-margin-y { height: calc(100vh + 4rem); } }

@media print, screen and (min-width: 64em) { .grid-frame.grid-margin-y { height: calc(100vh + 4rem); } }

@media print, screen and (min-width: 40em) { .grid-margin-y.medium-grid-frame { height: calc(100vh + 4rem); } }

@media print, screen and (min-width: 64em) { .grid-margin-y.large-grid-frame { height: calc(100vh + 4rem); } }

.button { display: inline-block; vertical-align: middle; margin: 0 0 1rem 0; padding: 0.85em 1em; border: 1px solid transparent; border-radius: 10px; transition: background-color 0.25s ease-out, color 0.25s ease-out; font-family: inherit; font-size: 1.8rem; -webkit-appearance: none; line-height: 1; text-align: center; cursor: pointer; background-color: #79a5ba; color: #ffffff; }

[data-whatinput='mouse'] .button { outline: 0; }

.button:hover, .button:focus { background-color: #5b91aa; color: #ffffff; }

.button.tiny { font-size: 1rem; }

.button.small { font-size: 1.4rem; }

.button.large { font-size: 2.2rem; }

.button.expanded { display: block; width: 100%; margin-right: 0; margin-left: 0; }

.button.primary { background-color: #79a5ba; color: #292c2e; }

.button.primary:hover, .button.primary:focus { background-color: #5389a2; color: #292c2e; }

.button.secondary { background-color: #767676; color: #ffffff; }

.button.secondary:hover, .button.secondary:focus { background-color: #5e5e5e; color: #ffffff; }

.button.success { background-color: #3adb76; color: #292c2e; }

.button.success:hover, .button.success:focus { background-color: #22bb5b; color: #292c2e; }

.button.warning { background-color: #ffae00; color: #292c2e; }

.button.warning:hover, .button.warning:focus { background-color: #cc8b00; color: #292c2e; }

.button.alert { background-color: #cc4b37; color: #ffffff; }

.button.alert:hover, .button.alert:focus { background-color: #a53b2a; color: #ffffff; }

.button.disabled, .button[disabled] { opacity: 0.25; cursor: not-allowed; }

.button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus { background-color: #79a5ba; color: #ffffff; }

.button.disabled.primary, .button[disabled].primary { opacity: 0.25; cursor: not-allowed; }

.button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus { background-color: #79a5ba; color: #292c2e; }

.button.disabled.secondary, .button[disabled].secondary { opacity: 0.25; cursor: not-allowed; }

.button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus { background-color: #767676; color: #ffffff; }

.button.disabled.success, .button[disabled].success { opacity: 0.25; cursor: not-allowed; }

.button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus { background-color: #3adb76; color: #292c2e; }

.button.disabled.warning, .button[disabled].warning { opacity: 0.25; cursor: not-allowed; }

.button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus { background-color: #ffae00; color: #292c2e; }

.button.disabled.alert, .button[disabled].alert { opacity: 0.25; cursor: not-allowed; }

.button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus { background-color: #cc4b37; color: #ffffff; }

.button.hollow { border: 1px solid #79a5ba; color: #79a5ba; }

.button.hollow, .button.hollow:hover, .button.hollow:focus { background-color: transparent; }

.button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus { background-color: transparent; }

.button.hollow:hover, .button.hollow:focus { border-color: #345565; color: #345565; }

.button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] { border: 1px solid #79a5ba; color: #79a5ba; }

.button.hollow.primary { border: 1px solid #79a5ba; color: #79a5ba; }

.button.hollow.primary:hover, .button.hollow.primary:focus { border-color: #345565; color: #345565; }

.button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] { border: 1px solid #79a5ba; color: #79a5ba; }

.button.hollow.secondary { border: 1px solid #767676; color: #767676; }

.button.hollow.secondary:hover, .button.hollow.secondary:focus { border-color: #3b3b3b; color: #3b3b3b; }

.button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] { border: 1px solid #767676; color: #767676; }

.button.hollow.success { border: 1px solid #3adb76; color: #3adb76; }

.button.hollow.success:hover, .button.hollow.success:focus { border-color: #157539; color: #157539; }

.button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] { border: 1px solid #3adb76; color: #3adb76; }

.button.hollow.warning { border: 1px solid #ffae00; color: #ffae00; }

.button.hollow.warning:hover, .button.hollow.warning:focus { border-color: #805700; color: #805700; }

.button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] { border: 1px solid #ffae00; color: #ffae00; }

.button.hollow.alert { border: 1px solid #cc4b37; color: #cc4b37; }

.button.hollow.alert:hover, .button.hollow.alert:focus { border-color: #67251a; color: #67251a; }

.button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] { border: 1px solid #cc4b37; color: #cc4b37; }

.button.clear { border: 1px solid #79a5ba; color: #79a5ba; }

.button.clear, .button.clear:hover, .button.clear:focus { background-color: transparent; }

.button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus { background-color: transparent; }

.button.clear:hover, .button.clear:focus { border-color: #345565; color: #345565; }

.button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] { border: 1px solid #79a5ba; color: #79a5ba; }

.button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] { border-color: transparent; }

.button.clear.primary { border: 1px solid #79a5ba; color: #79a5ba; }

.button.clear.primary:hover, .button.clear.primary:focus { border-color: #345565; color: #345565; }

.button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] { border: 1px solid #79a5ba; color: #79a5ba; }

.button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] { border-color: transparent; }

.button.clear.secondary { border: 1px solid #767676; color: #767676; }

.button.clear.secondary:hover, .button.clear.secondary:focus { border-color: #3b3b3b; color: #3b3b3b; }

.button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] { border: 1px solid #767676; color: #767676; }

.button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] { border-color: transparent; }

.button.clear.success { border: 1px solid #3adb76; color: #3adb76; }

.button.clear.success:hover, .button.clear.success:focus { border-color: #157539; color: #157539; }

.button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] { border: 1px solid #3adb76; color: #3adb76; }

.button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] { border-color: transparent; }

.button.clear.warning { border: 1px solid #ffae00; color: #ffae00; }

.button.clear.warning:hover, .button.clear.warning:focus { border-color: #805700; color: #805700; }

.button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] { border: 1px solid #ffae00; color: #ffae00; }

.button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] { border-color: transparent; }

.button.clear.alert { border: 1px solid #cc4b37; color: #cc4b37; }

.button.clear.alert:hover, .button.clear.alert:focus { border-color: #67251a; color: #67251a; }

.button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] { border: 1px solid #cc4b37; color: #cc4b37; }

.button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] { border-color: transparent; }

.button.dropdown::after { display: block; width: 0; height: 0; border: inset 0.4em; content: ''; border-bottom-width: 0; border-top-style: solid; border-color: #ffffff transparent transparent; position: relative; top: 0.4em; display: inline-block; float: right; margin-left: 1em; }

.button.dropdown.hollow::after, .button.dropdown.clear::after { border-top-color: #79a5ba; }

.button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after { border-top-color: #79a5ba; }

.button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after { border-top-color: #767676; }

.button.dropdown.hollow.success::after, .button.dropdown.clear.success::after { border-top-color: #3adb76; }

.button.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after { border-top-color: #ffae00; }

.button.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after { border-top-color: #cc4b37; }

.button.arrow-only::after { top: -0.1em; float: none; margin-left: 0; }

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

.close-button { position: absolute; color: #1d1d1d; cursor: pointer; }

[data-whatinput='mouse'] .close-button { outline: 0; }

.close-button:hover, .close-button:focus { color: #292c2e; }

.close-button.small { right: 0.66rem; top: 0.33em; font-size: 1.5em; line-height: 1; }

.close-button, .close-button.medium { right: 1rem; top: 0.5rem; font-size: 2em; line-height: 1; }

html.is-reveal-open { position: fixed; width: 100%; overflow-y: hidden; }

html.is-reveal-open.zf-has-scroll { overflow-y: scroll; }

html.is-reveal-open body { overflow-y: hidden; }

.reveal-overlay { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1005; display: none; background-color: rgba(41, 44, 46, 0.45); overflow-y: auto; }

.reveal { z-index: 1006; backface-visibility: hidden; display: none; padding: 1rem; border: 1px solid #cacaca; border-radius: 10px; background-color: #ffffff; position: relative; top: 100px; margin-right: auto; margin-left: auto; overflow-y: auto; }

[data-whatinput='mouse'] .reveal { outline: 0; }

@media print, screen and (min-width: 40em) { .reveal { min-height: 0; } }

.reveal .column { min-width: 0; }

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

@media print, screen and (min-width: 40em) { .reveal { width: 600px; max-width: 120rem; } }

.reveal.collapse { padding: 0; }

@media print, screen and (min-width: 40em) { .reveal.tiny { width: 30%; max-width: 120rem; } }

@media print, screen and (min-width: 40em) { .reveal.small { width: 50%; max-width: 120rem; } }

@media print, screen and (min-width: 40em) { .reveal.large { width: 90%; max-width: 120rem; } }

.reveal.full { top: 0; right: 0; bottom: 0; left: 0; width: 100%; max-width: none; height: 100%; min-height: 100%; margin-left: 0; border: 0; border-radius: 0; }

@media screen and (max-width: 39.99875em) { .reveal { top: 0; right: 0; bottom: 0; left: 0; width: 100%; max-width: none; height: 100%; min-height: 100%; margin-left: 0; border: 0; border-radius: 0; } }

.reveal.without-overlay { position: fixed; }

.hide { display: none !important; }

.invisible { visibility: hidden; }

@media screen and (max-width: 39.99875em) { .hide-for-small-only { display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) { .show-for-small-only { display: none !important; } }

@media print, screen and (min-width: 40em) { .hide-for-medium { display: none !important; } }

@media screen and (max-width: 39.99875em) { .show-for-medium { display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.99875em) { .hide-for-medium-only { display: none !important; } }

@media screen and (max-width: 39.99875em), screen and (min-width: 64em) { .show-for-medium-only { display: none !important; } }

@media print, screen and (min-width: 64em) { .hide-for-large { display: none !important; } }

@media screen and (max-width: 63.99875em) { .show-for-large { display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.99875em) { .hide-for-large-only { display: none !important; } }

@media screen and (max-width: 63.99875em), screen and (min-width: 75em) { .show-for-large-only { display: none !important; } }

.show-for-sr, .show-on-focus { position: absolute !important; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.show-on-focus:active, .show-on-focus:focus { position: static !important; width: auto; height: auto; overflow: visible; clip: auto; white-space: normal; }

.show-for-landscape, .hide-for-portrait { display: block !important; }

@media screen and (orientation: landscape) { .show-for-landscape, .hide-for-portrait { display: block !important; } }

@media screen and (orientation: portrait) { .show-for-landscape, .hide-for-portrait { display: none !important; } }

.hide-for-landscape, .show-for-portrait { display: none !important; }

@media screen and (orientation: landscape) { .hide-for-landscape, .show-for-portrait { display: none !important; } }

@media screen and (orientation: portrait) { .hide-for-landscape, .show-for-portrait { display: block !important; } }

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

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

.float-center { display: block; margin-right: auto; margin-left: auto; }

.clearfix::before, .clearfix::after { display: table; content: ' '; flex-basis: 0; order: 1; }

.clearfix::after { clear: both; }

.align-left { justify-content: flex-start; }

.align-right { justify-content: flex-end; }

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

.align-justify { justify-content: space-between; }

.align-spaced { justify-content: space-around; }

.align-left.vertical.menu > li > a { justify-content: flex-start; }

.align-right.vertical.menu > li > a { justify-content: flex-end; }

.align-center.vertical.menu > li > a { justify-content: center; }

.align-top { align-items: flex-start; }

.align-self-top { align-self: flex-start; }

.align-bottom { align-items: flex-end; }

.align-self-bottom { align-self: flex-end; }

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

.align-self-middle { align-self: center; }

.align-stretch { align-items: stretch; }

.align-self-stretch { align-self: stretch; }

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

.small-order-1 { order: 1; }

.small-order-2 { order: 2; }

.small-order-3 { order: 3; }

.small-order-4 { order: 4; }

.small-order-5 { order: 5; }

.small-order-6 { order: 6; }

@media print, screen and (min-width: 40em) { .medium-order-1 { order: 1; }
  .medium-order-2 { order: 2; }
  .medium-order-3 { order: 3; }
  .medium-order-4 { order: 4; }
  .medium-order-5 { order: 5; }
  .medium-order-6 { order: 6; } }

@media print, screen and (min-width: 64em) { .large-order-1 { order: 1; }
  .large-order-2 { order: 2; }
  .large-order-3 { order: 3; }
  .large-order-4 { order: 4; }
  .large-order-5 { order: 5; }
  .large-order-6 { order: 6; } }

.flex-container { display: flex; }

.flex-child-auto { flex: 1 1 auto; }

.flex-child-grow { flex: 1 0 auto; }

.flex-child-shrink { flex: 0 1 auto; }

.flex-dir-row { flex-direction: row; }

.flex-dir-row-reverse { flex-direction: row-reverse; }

.flex-dir-column { flex-direction: column; }

.flex-dir-column-reverse { flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) { .medium-flex-container { display: flex; }
  .medium-flex-child-auto { flex: 1 1 auto; }
  .medium-flex-child-grow { flex: 1 0 auto; }
  .medium-flex-child-shrink { flex: 0 1 auto; }
  .medium-flex-dir-row { flex-direction: row; }
  .medium-flex-dir-row-reverse { flex-direction: row-reverse; }
  .medium-flex-dir-column { flex-direction: column; }
  .medium-flex-dir-column-reverse { flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) { .large-flex-container { display: flex; }
  .large-flex-child-auto { flex: 1 1 auto; }
  .large-flex-child-grow { flex: 1 0 auto; }
  .large-flex-child-shrink { flex: 0 1 auto; }
  .large-flex-dir-row { flex-direction: row; }
  .large-flex-dir-row-reverse { flex-direction: row-reverse; }
  .large-flex-dir-column { flex-direction: column; }
  .large-flex-dir-column-reverse { flex-direction: column-reverse; } }

html { min-width: 320px !important; }

body { font-size: 16px; line-height: 1.4; }

h1, h2, h3, h4, h5, h6 { font-weight: bold; }

.h100 { height: 100%; }

.relative { position: relative; }

.custom-width { width: 600px; max-width: 100%; }

*[style*="50px"] { line-height: 60px; }

@media screen and (max-width: 39.99875em) { *[style*="50px"] { font-size: 40px !important; line-height: 1.3; } }

@media screen and (max-width: 39.99875em) { *[style*="30px"] { font-size: 24px !important; } }

*[style*="22px"] { line-height: 36px; }

.reveal { min-height: auto !important; height: auto !important; border-radius: 0px; }

@media screen and (max-width: 39.99875em) { body .mobile-text-center, body .mobile-text-center * { text-align: center !important; } }

.gform_footer input:disabled { display: none !important; }

.gform_page_footer .gform_button:disabled { display: none !important; }

.ffz-search-select-dropdown { line-height: 1.4; }

.banner { height: 60rem; background-repeat: no-repeat; background-size: cover; background-position: center; color: #ffffff; position: relative; }

@media screen and (max-width: 63.99875em) { .banner { height: 75rem; } }

@media screen and (max-width: 39.99875em) { .banner { height: auto; padding: 15rem 0; } }

.content-page { padding: 0px !important; }

.pillars__title { font-size: 2.8rem; margin-bottom: 2rem; color: #ffffff; }

@media screen and (max-width: 39.99875em) { .pillars__title { font-size: 2rem; } }

.pillars__categories { background: rgba(0, 0, 0, 0.6); position: absolute; bottom: 0px; padding: 2rem 0; width: 100%; }

@media screen and (max-width: 39.99875em) { .pillars__categories { position: relative; background-color: #1d1d1d; } }

@media screen and (max-width: 39.99875em) { .pillars__singles { padding-left: 1rem; padding-right: 1rem; } }

.pillars__singles a { color: #ffffff; display: inline-block; border-left: 1px solid #ffffff; padding: 0 4rem; font-size: 2.2rem; font-weight: 700; margin-bottom: 2rem; overflow: hidden; }

.pillars__singles a:first-child { border: none; padding-left: 0; }

@media screen and (max-width: 63.99875em) { .pillars__singles a:first-child { padding-left: 0rem; } }

.pillars__singles a:last-child { padding-right: 0; }

@media screen and (max-width: 63.99875em) { .pillars__singles a:last-child { padding-right: 0rem; } }

@media screen and (max-width: 63.99875em) { .pillars__singles a { font-size: 1.6rem; padding: 0 1rem; } }

@media screen and (max-width: 39.99875em) { .pillars__singles a { display: block; clear: both; border-left: none; padding: 1rem 1.5rem 1.5rem !important; border-bottom: 1px solid #ffffff !important; margin: 0 auto 1.5rem !important; max-width: 100%; max-width: 400px; text-align: left; font-size: 18px; } }

.pillars__singles img { margin-right: 1rem; }

@media screen and (max-width: 63.99875em) { .pillars__singles img { max-width: 4rem; } }

@media screen and (max-width: 39.99875em) { .pillars__singles img { margin-top: -1rem; float: left; } }

.block-one { color: #ffffff; background-size: cover; background-repeat: no-repeat; background-position: top center; padding: 4rem 0; height: 76.8rem; }

@media screen and (max-width: 39.99875em) { .block-one { background-image: none !important; /* background-color: $dark-gray !important; */ padding-top: 0; height: auto; }
  .block-one * { text-align: inherit !important; } }

.block-one__image { margin-bottom: 20px; }

@media screen and (max-width: 39.99875em) { .block-one div { text-align: center; } }

.block-two { padding: 4rem 0; }

@media screen and (max-width: 39.99875em) { .block-two * { text-align: inherit !important; } }

.block-two ul { list-style-position: outside; padding-left: 5rem; margin-left: 0; }

.block-two li { padding-bottom: 1rem; }

.block-two li span { vertical-align: super; }

.block-two .medium-5 { width: 480px !important; max-width: 100% !important; }

@media screen and (max-width: 39.99875em) { .block-two .medium-5 { width: 370px !important; } }

@media screen and (max-width: 39.99875em) { body .block-two .medium-5 { width: 370px !important; } }

.block-three { padding: 12rem 0 5rem; }

@media screen and (max-width: 63.99875em) { .block-three { padding: 5rem 0 5rem; } }

.block-three .links-section { text-align: center; }

.block-three .links-section a { border-right: 1px solid #3d434a; font-size: 2.2rem; color: #79a5ba; padding: 0 10px; }

.block-three .links-section a:last-child { border: none; }

.feature__box { overflow: hidden; background-color: #f0f4f6; margin-bottom: 3rem; border-radius: 0 7px 7px 7px; position: relative; padding-left: 23rem; }

@media screen and (max-width: 39.99875em) { .feature__box { max-width: 37rem; margin: 0 auto 3rem; padding-left: 0rem; padding-top: 18.2rem; } }

@media screen and (max-width: 39.99875em) and (max-width: 39.99875em) { .feature__box { padding-top: 22.2rem; } }

.feature__box--one-column { max-width: 37rem; margin: 0 auto 3rem; padding-left: 0rem; padding-top: 18.2rem; }

@media screen and (max-width: 39.99875em) { .feature__box--one-column { padding-top: 22.2rem; } }

.feature__pillar { position: absolute; right: 20px; top: 0; }

@media screen and (max-width: 39.99875em) { .feature__pillar { right: 10px; } }

.feature__pillar img { margin: 1rem auto 0; position: absolute; left: 0; right: 0; display: inline-block; top: 1.6rem; }

@media screen and (max-width: 39.99875em) { .feature__pillar img { top: .6rem; max-width: 2.5rem; } }

.feature__image { position: absolute; left: 0; top: 0; margin-right: 2rem; border-right: 4px solid #ffffff; width: 21rem; background-position: top center; background-size: cover; height: 100%; }

@media screen and (max-width: 39.99875em) { .feature__image { width: 100%; max-height: 180px; border-bottom: 4px solid #ffffff; max-width: 100%; text-align: center; overflow: hidden; background-color: #d6e6ee; float: none; } }

@media screen and (max-width: 39.99875em) and (max-width: 39.99875em) { .feature__image { max-height: 222px; } }

.feature__image--one-column { width: 100%; max-height: 180px; border-bottom: 4px solid #ffffff; max-width: 100%; text-align: center; overflow: hidden; background-color: #d6e6ee; float: none; }

@media screen and (max-width: 39.99875em) { .feature__image--one-column { max-height: 222px; } }

.feature__content { padding: 3rem 8rem 2rem 0; }

@media screen and (max-width: 39.99875em) { .feature__content { padding: 3rem 2.5rem 2rem; position: relative; } }

@media screen and (max-width: 39.99875em) and (max-width: 39.99875em) { .feature__content { padding: 2rem; } }

.feature__content--one-column { padding: 3rem 2.5rem 2rem; position: relative; }

@media screen and (max-width: 39.99875em) { .feature__content--one-column { padding: 2rem; } }

.feature__title { font-size: 2.4rem; color: #5d666f; font-weight: bold; line-height: 1.2; padding-right: 1.6rem; margin-bottom: 1rem; }

@media screen and (max-width: 39.99875em) { .feature__title { clear: both; padding-right: 5rem; } }

@media screen and (max-width: 39.99875em) and (max-width: 39.99875em) { .feature__title { padding-right: 4rem; font-size: 2.2rem; } }

.feature__title--one-column { clear: both; padding-right: 5rem; }

@media screen and (max-width: 39.99875em) { .feature__title--one-column { padding-right: 4rem; font-size: 2.2rem; } }

.feature__excerpt { font-size: 1.8rem; color: #5d666f; }

.block-four { color: #ffffff; background-size: cover; background-repeat: no-repeat; background-position: top center; padding: 4rem 0; height: 76.8rem; }

@media screen and (max-width: 39.99875em) { .block-four { background-image: none !important; /* background-color: $dark-gray !important; */ padding-top: 0; height: auto; }
  .block-four * { text-align: inherit !important; } }

.block-four__image { margin-bottom: 20px; }

@media screen and (max-width: 39.99875em) { .block-four div { text-align: center; } }

.petition { margin-top: 3rem; background-repeat: repeat; background-position: center; padding: 3rem; background: #d6e6ee; }

.petition__title { font-size: 2.8rem; font-weight: bold; text-align: center; width: 455px; margin: 0 auto; max-width: 100%; }

.petition__form { width: 455px; margin: 0 auto; max-width: 100%; }

.petition__form h3 { font-size: 3.5rem; color: #ffffff; text-align: center; margin-top: 0; font-family: 'Whitney Bold', sans-serif; font-weight: normal; }

@media screen and (max-width: 39.99875em) { .petition__form { width: 100% !important; float: none; } }

.petition__form .buttonlink.read { display: none !important; }

.petition .gform_wrapper { margin-bottom: 0 !important; }

.petition .custom-css .validation_error { display: none; }

.petition .custom-css div.ginput_container { margin-top: 0 !important; }

.petition .custom-css .gfield_label { display: none !important; }

.petition .custom-css li { float: left; display: inline-block !important; clear: inherit !important; margin: 0 !important; padding: 0 !important; }

@media screen and (max-width: 39.99875em) { .petition .custom-css li { width: 100% !important; float: none; margin: 0 !important; } }

.petition .custom-css input { background: rgba(255, 255, 255, 0.7); height: 50px; border: none; border-radius: 0 !important; width: 100% !important; color: #000000 !important; }

.petition .custom-css input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */ color: #000000; opacity: 1; /* Firefox */ }

.petition .custom-css .custom-small { width: 177px !important; }

@media screen and (max-width: 39.99875em) { .petition .custom-css .custom-small { width: 100% !important; float: none; margin: 0 !important; } }

.petition .custom-css .custom-medium { width: 260px !important; margin-left: 1.1rem !important; }

.petition .custom-css .custom-medium input { width: 100% !important; }

@media screen and (max-width: 39.99875em) { .petition .custom-css .custom-medium { width: 100% !important; float: none; margin: 0 !important; } }

.petition .custom-css .custom-large { width: 447px !important; }

@media screen and (max-width: 39.99875em) { .petition .custom-css .custom-large { width: 100% !important; float: none; margin: 0 !important; } }

.petition .custom-css .button.secondary { background-color: #7ba7b4; border: none; width: 220px; height: 50px; line-height: 50px !important; font-size: 24px; /* margin-left: 1.1rem !important; */ cursor: pointer !important; padding: 0 !important; display: inline-block; color: #ffffff; box-shadow: none !important; /* border-radius: 0px !important; */ }

@media screen and (max-width: 39.99875em) { .petition .custom-css .button.secondary { margin: 0 !important; } }

.petition .custom-css .buttonlink.read { background-color: #c24729; border: none; width: 215px; height: 50px; line-height: 50px !important; font-size: 24px; cursor: pointer !important; padding: 0 !important; display: inline-block; color: #ffffff; box-shadow: none !important; position: relative; text-align: center; font-weight: bold; text-decoration: none; }

@media screen and (max-width: 39.99875em) { .petition .custom-css .buttonlink.read { margin-bottom: 10px !important; } }

.petition .custom-css .field_description_below .gfield_description { padding: 0 !important; }

.petition .custom-css .gform_button { position: absolute; left: -9999px; top: 0; }

.petition .gform_confirmation_wrapper.custom-css .gform_confirmation_message { font-size: 3rem; color: #ffffff; font-family: 'Whitney Bold', sans-serif; font-weight: normal; text-align: center; }

body .gform_wrapper .gform_footer { padding: 0 !important; margin: 0 !important; }

body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) { max-width: 100% !important; }

.button { font-weight: bold; padding: 20px 30px; }

.button:hover { /* box-shadow: inset 5px 10px #888888; */ /* opacity: .9; */ filter: brightness(90%); }

div.ffz-button-open-modal { width: auto; display: inline-block !important; padding: 1.5rem 2rem; border-radius: 10px !important; }

div.ffz-button-open-modal:hover { filter: brightness(90%); }

.ribbon { background: #3d434a; height: 80px; margin: 0 5px; position: relative; width: 48px; }

@media screen and (max-width: 39.99875em) { .ribbon { width: 35px; height: 44px; } }

.ribbon:after { border-left: 40px solid transparent; right: 0px; }

@media screen and (max-width: 39.99875em) { .ribbon:after { border-left: 35px solid transparent; } }

.ribbon:before { border-right: 40px solid transparent; left: 0px; }

@media screen and (max-width: 39.99875em) { .ribbon:before { border-right: 35px solid transparent; } }

.ribbon:after, .ribbon:before { border-top: 25px solid #3d434a; content: ''; height: 0; position: absolute; bottom: -15px; width: 0; }

@media screen and (max-width: 39.99875em) { .ribbon:after, .ribbon:before { border-top: 15px solid #3d434a; bottom: -12px; } }

.page-template-template-full-custom #title-page { margin-bottom: 0; }

.page-template-template-full-custom #title-page h1 { font-size: 64px; color: #ffffff; text-shadow: 1px 1px 1px #444444; font-family: "Georgia", "Times New Roman", serif; font-weight: normal; }

.page-template-template-full-custom #content-page { padding-top: 0; position: relative; top: -1px; padding-bottom: 0; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplLnNjc3MiLCJhcHAuY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jZWxsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2xheW91dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jb2xsYXBzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19mcmFtZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCJoZWxwZXJzL19nbG9iYWxzLnNjc3MiLCJoZWxwZXJzL19mbGV4Zm9ybXouc2NzcyIsImhvbWUvX2Jhbm5lci5zY3NzIiwiaG9tZS9fcGlsbGFycy5zY3NzIiwiaG9tZS9fYmxvY2stb25lLnNjc3MiLCJob21lL19ibG9jay10d28uc2NzcyIsImhvbWUvX2Jsb2NrLXRocmVlLnNjc3MiLCJob21lL19ibG9jay1mb3VyLnNjc3MiLCJob21lL19wZXRpdGlvbi5zY3NzIiwicGFydGlhbHMvX2J1dHRvbnMuc2NzcyIsInBhcnRpYWxzL19yaWJib24uc2NzcyIsInRlbXBsYXRlcy9mdWxsLWN1c3RvbS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvR0FLRztBQ2lLRyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJQ3pIN0MsT0EyR08sRUFBUCxPQUFPLEtBZUMsRUFmUixPQUFPLE1BZ0JFLEVBaEJULE9BQU8sTUFpQkUsQ0E1SFEsRUFDZixLQUFLLEVBQUUsSUFBSSxFQUNYLElBQUksRUFBRSxJQUFJLEVBQ1YsTUFBTSxFQUFFLE1BQU0sR0FDZjs7QUNoREQsNEVBQTRFO0FBUTVFLElBQUks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RSxJQUFJLEVBQ2YsS0FBSyxFQUFFLE9BQU8sRUFDZCxXQUFXLEVBQUUsbUJBQW1CLEVBQ2hDLFdBQVcsRUFBRSxtQ0FBbUMsRUFDaEQsV0FBVyxFQUFFLE1BQU0sR0FFdEI7O0FBWlQsbUNBQW1DLENBYy9CLGFBQWEsQ0FBQSxFQUNULFdBQVcsRUFBRSxDQUFDLEVBQ2QsUUFBUSxFQUFFLFFBQVEsRUFDbEIsR0FBRyxFQUFFLElBQUksRUFDVCxjQUFjLEVBQUUsQ0FBQyxHQUNwQiIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNS4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBEZXBlbmRlbmNpZXNcbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlXG4pIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8vIEdsb2JhbCBzdHlsZXNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbiAgLy8gR3JpZHNcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHh5LWdyaWQge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICAvLyBCYXNpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuICAvLyBDb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICAvLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuXG4gIC8vIExheW91dCBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuXG4gIC8vIEhlbHBlcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuICBAaWYgJGZsZXggeyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlczsgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGlmICRwcm90b3R5cGUgeyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzOyB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtIC4wMDEyNTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gIH1cbiAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuLy8gVGhpcyBzaG91bGQgYmUgaW4gdGhlIHNhbWUgYnJlYWtwb2ludCB0aGVuIGBAbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoYFxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgLmNvbHVtbiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gU3RyaXAgbWFyZ2lucyBmcm9tIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIG1vZGFsXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkanVzdHMgdGhlIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBtb2RhbC4gR2VuZXJhbGx5IGEgcGVyY2VudGFnZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heC13aWR0aCBbJHJldmVhbC1tYXgtd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoKFxuICAkd2lkdGg6ICRyZXZlYWwtd2lkdGgsXG4gICRtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoXG4pIHtcbiAgLy8gRXh0ZW5kcyBtdXN0IGJlIG1hZGUgb3V0c2lkZSBvZiBicmVha3BvaW50cyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5ld2VyIFNhc3MgdmVyc2lvbnMgKGxpYnNhc3MgdjMuNSlcbiAgQGV4dGVuZCAlcmV2ZWFsLWNlbnRlcmVkO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC1zY3JlZW4gbW9kYWwsIHdoaWNoIHN0cmV0Y2hlcyB0aGUgZnVsbCB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSB3aW5kb3cuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW4ge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcblxuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJldmVhbCB7XG5cbiAgLy8vIERpc2FibGVzIHRoZSBzY3JvbGwgd2hlbiBSZXZlYWwgaXMgc2hvd24gdG8gcHJldmVudCB0aGUgYmFja2dyb3VuZCBmcm9tIHNoaWZ0aW5nXG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG5cbiAgICAmLnpmLWhhcy1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIH1cblxuICAgIGJvZHkgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICAvLyBPdmVybGF5XG4gIC5yZXZlYWwtb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW92ZXJsYXk7XG4gIH1cblxuICAvLyBNb2RhbCBjb250YWluZXJcbiAgLnJldmVhbCB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKCRyZXZlYWwtd2lkdGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLy8gUmVtb3ZlIHBhZGRpbmdcbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gU2l6aW5nIGNsYXNzZXNcbiAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDMwJSk7IH1cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDUwJSk7IH1cbiAgICAmLmxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDkwJSk7IH1cblxuICAgIC8vIEZ1bGwtc2NyZWVuIG1vZGVcbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICAmLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNS4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbCwgLnJldmVhbC50aW55LCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLmxhcmdlIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cblxuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luOiAwOyB9XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgfVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDsgfVxuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyB9XG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgZm9udDogaW5oZXJpdDsgfVxuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogNjIuNSU7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBmb250LWZhbWlseTogQXJpYWwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzI5MmMyZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMuOXJlbTtcbiAgbWFyZ2luOiAwIDAgMS42cmVtO1xuICBwYWRkaW5nOiAwLjhyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDQxLCA0NCwgNDYsIDAuMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyOTJjMmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzFkMWQxZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2FjYWNhOyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMS42cmVtOyB9XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjhyZW07XG4gIG1hcmdpbi1yaWdodDogMS42cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWxbZm9yXSxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbFtmb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxubGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbmxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW4tcmlnaHQ6IDAuOHJlbTsgfVxuXG5bdHlwZT0nZmlsZSddIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMyOTJjMmU7IH1cbiAgbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW46IDAgMCAxLjZyZW07XG4gICAgcGFkZGluZzogMC45cmVtIDA7IH1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjhyZW07XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMjkyYzJlOyB9XG5cbi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7IH1cbiAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMTBweCAxMHB4IDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzI5MmMyZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgbWluLXdpZHRoOiAwOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxLjZyZW07IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuOHJlbTsgfVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuOHJlbSAwO1xuICBwYWRkaW5nOiAycmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuM3JlbTtcbiAgICBwYWRkaW5nOiAwIDAuM3JlbTsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDMuOXJlbTtcbiAgbWFyZ2luOiAwIDAgMS42cmVtO1xuICBwYWRkaW5nOiAwLjhyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyOTJjMmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MjksIDI5LCAyOSUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMS42cmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyLjRyZW07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG4gIHNlbGVjdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMWQxZDFkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIHNlbGVjdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZWRlYjsgfVxuICAuaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogQXJpYWwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIGgxIHNtYWxsLCAuaDEgc21hbGwsXG4gIGgyIHNtYWxsLCAuaDIgc21hbGwsXG4gIGgzIHNtYWxsLCAuaDMgc21hbGwsXG4gIGg0IHNtYWxsLCAuaDQgc21hbGwsXG4gIGg1IHNtYWxsLCAuaDUgc21hbGwsXG4gIGg2IHNtYWxsLCAuaDYgc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjY2FjYWNhOyB9XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDIuNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjlyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjdyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDQuOHJlbTsgfVxuICBoMiwgLmgyIHtcbiAgICBmb250LXNpemU6IDRyZW07IH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAzLjFyZW07IH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07IH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtOyB9IH1cblxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzc5YTViYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICM1ZDkyYWI7IH1cbiAgYSBpbWcge1xuICAgIGJvcmRlcjogMDsgfVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDJyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBkbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjlyZW0gMnJlbSAwIDEuOXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIGJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogIzFkMWQxZDsgfVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBjb2xvcjogIzFkMWQxZDsgfVxuICBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJQgXCI7IH1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMyOTJjMmU7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMC4ycmVtIDAuNXJlbSAwLjFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzI5MmMyZTsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjRyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMjkyYzJlO1xuICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICMxZDFkMWQ7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDc4LjEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzFkMWQxZDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uZ3JpZC1jb250YWluZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIG1heC13aWR0aDogMTIwcmVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZ1bGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uZ3JpZC14IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuXG4uY2VsbCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtaW4taGVpZ2h0OiAwcHg7XG4gIG1pbi13aWR0aDogMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuICAuY2VsbC5hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5jZWxsLnNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5hdXRvIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zaHJpbmsge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLXNocmluaywgLmdyaWQteCA+IC5zbWFsbC1mdWxsLCAuZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgZmxleC1iYXNpczogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS1mdWxsLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teDpub3QoLmdyaWQteCkgPiAuY2VsbCB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi14IHtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0ycmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMnJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0ycmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0ycmVtOyB9IH1cblxuLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICBtYXJnaW4tbGVmdDogLTFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0ycmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0ycmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9IH1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogMTIuNSU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMnJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMnJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMjUlIC0gMnJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMjAlIC0gMnJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMnJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMnJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTIuNSUgLSAycmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gNHJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gNHJlbSk7IH0gfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAxcmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDFyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAxcmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDFyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAxcmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDFyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDFyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDFyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMnJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAycmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMnJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDJyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAycmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMnJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDJyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAycmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMnJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDJyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDJyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDJyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMnJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMnJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAycmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDJyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMnJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAycmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDJyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMnJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAycmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDJyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAycmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMnJlbSk7IH0gfVxuXG4uZ3JpZC15IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gIC5ncmlkLXkgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5ncmlkLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXkgPiAuc21hbGwtZnVsbCwgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS1mdWxsLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogMjUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogNTAlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogNzUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTMsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTYsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTksIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIG1hcmdpbi1ib3R0b206IC0xcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0ycmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0ycmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDRyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwdnc7IH1cblxuLmNlbGwgLmdyaWQtZnJhbWUge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2VsbC1ibG9jayB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay15IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBoZWlnaHQ6IDEwMHZoOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTJyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTsgfSB9XG5cbi5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAycmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgNHJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgNHJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgNHJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyA0cmVtKTsgfSB9XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzlhNWJhO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWI5MWFhO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24udGlueSB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5idXR0b24uc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtOyB9XG4gIC5idXR0b24ubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMi4ycmVtOyB9XG4gIC5idXR0b24uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OWE1YmE7XG4gICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM4OWEyO1xuICAgICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24uc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICBjb2xvcjogIzI5MmMyZTsgfVxuICAgIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogIzI5MmMyZTsgfVxuICAuYnV0dG9uLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgICAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgLmJ1dHRvbi5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3OWE1YmE7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3OWE1YmE7XG4gICAgICAgIGNvbG9yOiAjMjkyYzJlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICAgICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgICAgICBjb2xvcjogIzI5MmMyZTsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi5ob2xsb3cge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3OWE1YmE7XG4gICAgY29sb3I6ICM3OWE1YmE7IH1cbiAgICAuYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMzNDU1NjU7XG4gICAgICBjb2xvcjogIzM0NTU2NTsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3OWE1YmE7XG4gICAgICAgIGNvbG9yOiAjNzlhNWJhOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzlhNWJhO1xuICAgICAgY29sb3I6ICM3OWE1YmE7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMzNDU1NjU7XG4gICAgICAgIGNvbG9yOiAjMzQ1NTY1OyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc5YTViYTtcbiAgICAgICAgICBjb2xvcjogIzc5YTViYTsgfVxuICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICAgICAgICBjb2xvcjogIzNiM2IzYjsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgICAgICAgICBjb2xvcjogIzc2NzY3NjsgfVxuICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3Mge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5jbGVhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzc5YTViYTtcbiAgICBjb2xvcjogIzc5YTViYTsgfVxuICAgIC5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMzNDU1NjU7XG4gICAgICBjb2xvcjogIzM0NTU2NTsgfVxuICAgICAgLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc5YTViYTtcbiAgICAgICAgY29sb3I6ICM3OWE1YmE7IH1cbiAgICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMsIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc5YTViYTtcbiAgICAgIGNvbG9yOiAjNzlhNWJhOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzM0NTU2NTtcbiAgICAgICAgY29sb3I6ICMzNDU1NjU7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3OWE1YmE7XG4gICAgICAgICAgY29sb3I6ICM3OWE1YmE7IH1cbiAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gICAgICAgIGNvbG9yOiAjM2IzYjNiOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gICAgICAgICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIud2FybmluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgICAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNmZmZmZmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMWVtOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhcjo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM3OWE1YmE7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIucHJpbWFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM3OWE1YmE7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zZWNvbmRhcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjNzY3Njc2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnN1Y2Nlc3M6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjM2FkYjc2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93Lndhcm5pbmc6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLndhcm5pbmc6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZhZTAwOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5hbGVydDo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgdG9wOiAtMC4xZW07XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjMWQxZDFkO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gICAgcmlnaHQ6IDAuNjZyZW07XG4gICAgdG9wOiAwLjMzZW07XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuLnpmLWhhcy1zY3JvbGwge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MSwgNDQsIDQ2LCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICAucmV2ZWFsIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogMTIwcmVtOyB9IH1cbiAgLnJldmVhbC5jb2xsYXBzZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiAxMjByZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwuc21hbGwge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogMTIwcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLmxhcmdlIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IDEyMHJlbTsgfSB9XG4gIC5yZXZlYWwuZnVsbCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7IH1cblxuLmNsZWFyZml4OjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5hbGlnbi1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi1qdXN0aWZ5IHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4uYWxpZ24tbGVmdC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1yaWdodC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXNlbGYtdG9wIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1zZWxmLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1taWRkbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uc21hbGwtb3JkZXItMSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5zbWFsbC1vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMzsgfVxuXG4uc21hbGwtb3JkZXItNCB7XG4gIG9yZGVyOiA0OyB9XG5cbi5zbWFsbC1vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmxleC1jaGlsZC1hdXRvIHtcbiAgZmxleDogMSAxIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLXNocmluayB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG5cbi5mbGV4LWRpci1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG4uZmxleC1kaXItY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5odG1sIHtcbiAgbWluLXdpZHRoOiAzMjBweCAhaW1wb3J0YW50OyB9XG5cbmJvZHkge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmgxMDAge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jdXN0b20td2lkdGgge1xuICB3aWR0aDogNjAwcHg7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4qW3N0eWxlKj1cIjUwcHhcIl0ge1xuICBsaW5lLWhlaWdodDogNjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgKltzdHlsZSo9XCI1MHB4XCJdIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgKltzdHlsZSo9XCIzMHB4XCJdIHtcbiAgICBmb250LXNpemU6IDI0cHggIWltcG9ydGFudDsgfSB9XG5cbipbc3R5bGUqPVwiMjJweFwiXSB7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4OyB9XG5cbi5yZXZlYWwge1xuICBtaW4taGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwcHg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICBib2R5IC5tb2JpbGUtdGV4dC1jZW50ZXIsXG4gIGJvZHkgLm1vYmlsZS10ZXh0LWNlbnRlciAqIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfSB9XG5cbi5nZm9ybV9mb290ZXIgaW5wdXQ6ZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmdmb3JtX3BhZ2VfZm9vdGVyIC5nZm9ybV9idXR0b246ZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmZmei1zZWFyY2gtc2VsZWN0LWRyb3Bkb3duIHtcbiAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuXG4uYmFubmVyIHtcbiAgaGVpZ2h0OiA2MHJlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYmFubmVyIHtcbiAgICAgIGhlaWdodDogNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmJhbm5lciB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nOiAxNXJlbSAwOyB9IH1cblxuLmNvbnRlbnQtcGFnZSB7XG4gIHBhZGRpbmc6IDBweCAhaW1wb3J0YW50OyB9XG5cbi5waWxsYXJzX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMi44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBpbGxhcnNfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG5cbi5waWxsYXJzX19jYXRlZ29yaWVzIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMHB4O1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucGlsbGFyc19fY2F0ZWdvcmllcyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxZDFkOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucGlsbGFyc19fc2luZ2xlcyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH0gfVxuXG4ucGlsbGFyc19fc2luZ2xlcyBhIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmZmZmO1xuICBwYWRkaW5nOiAwIDRyZW07XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5waWxsYXJzX19zaW5nbGVzIGE6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAucGlsbGFyc19fc2luZ2xlcyBhOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwcmVtOyB9IH1cbiAgLnBpbGxhcnNfX3NpbmdsZXMgYTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLnBpbGxhcnNfX3NpbmdsZXMgYTpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAucGlsbGFyc19fc2luZ2xlcyBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgcGFkZGluZzogMCAxcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5waWxsYXJzX19zaW5nbGVzIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgcGFkZGluZzogMXJlbSAxLjVyZW0gMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbi5waWxsYXJzX19zaW5nbGVzIGltZyB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnBpbGxhcnNfX3NpbmdsZXMgaW1nIHtcbiAgICAgIG1heC13aWR0aDogNHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucGlsbGFyc19fc2luZ2xlcyBpbWcge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgICBmbG9hdDogbGVmdDsgfSB9XG5cbi5ibG9jay1vbmUge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgcGFkZGluZzogNHJlbSAwO1xuICBoZWlnaHQ6IDc2LjhyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5ibG9jay1vbmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLyogYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50OyAqL1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAgIC5ibG9jay1vbmUgKiB7XG4gICAgICAgIHRleHQtYWxpZ246IGluaGVyaXQgIWltcG9ydGFudDsgfSB9XG4gIC5ibG9jay1vbmVfX2ltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYmxvY2stb25lIGRpdiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uYmxvY2stdHdvIHtcbiAgcGFkZGluZzogNHJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYmxvY2stdHdvICoge1xuICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdCAhaW1wb3J0YW50OyB9IH1cbiAgLmJsb2NrLXR3byB1bCB7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJsb2NrLXR3byBsaSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgICAuYmxvY2stdHdvIGxpIHNwYW4ge1xuICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyOyB9XG4gIC5ibG9jay10d28gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDgwcHggIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5ibG9jay10d28gLm1lZGl1bS01IHtcbiAgICAgICAgd2lkdGg6IDM3MHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIGJvZHkgLmJsb2NrLXR3byAubWVkaXVtLTUge1xuICAgIHdpZHRoOiAzNzBweCAhaW1wb3J0YW50OyB9IH1cblxuLmJsb2NrLXRocmVlIHtcbiAgcGFkZGluZzogMTJyZW0gMCA1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYmxvY2stdGhyZWUge1xuICAgICAgcGFkZGluZzogNXJlbSAwIDVyZW07IH0gfVxuICAuYmxvY2stdGhyZWUgLmxpbmtzLXNlY3Rpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5ibG9jay10aHJlZSAubGlua3Mtc2VjdGlvbiBhIHtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMzZDQzNGE7XG4gICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgIGNvbG9yOiAjNzlhNWJhO1xuICAgICAgcGFkZGluZzogMCAxMHB4OyB9XG4gICAgICAuYmxvY2stdGhyZWUgLmxpbmtzLXNlY3Rpb24gYTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiBub25lOyB9XG5cbi5mZWF0dXJlX19ib3gge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY2O1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICBib3JkZXItcmFkaXVzOiAwIDdweCA3cHggN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMjNyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5mZWF0dXJlX19ib3gge1xuICAgICAgbWF4LXdpZHRoOiAzN3JlbTtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDNyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDByZW07XG4gICAgICBwYWRkaW5nLXRvcDogMTguMnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmZlYXR1cmVfX2JveCB7XG4gICAgICBwYWRkaW5nLXRvcDogMjIuMnJlbTsgfSB9XG4gIC5mZWF0dXJlX19ib3gtLW9uZS1jb2x1bW4ge1xuICAgIG1heC13aWR0aDogMzdyZW07XG4gICAgbWFyZ2luOiAwIGF1dG8gM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDByZW07XG4gICAgcGFkZGluZy10b3A6IDE4LjJyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuZmVhdHVyZV9fYm94LS1vbmUtY29sdW1uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIyLjJyZW07IH0gfVxuXG4uZmVhdHVyZV9fcGlsbGFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMjBweDtcbiAgdG9wOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fcGlsbGFyIHtcbiAgICAgIHJpZ2h0OiAxMHB4OyB9IH1cbiAgLmZlYXR1cmVfX3BpbGxhciBpbWcge1xuICAgIG1hcmdpbjogMXJlbSBhdXRvIDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRvcDogMS42cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZlYXR1cmVfX3BpbGxhciBpbWcge1xuICAgICAgICB0b3A6IC42cmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDIuNXJlbTsgfSB9XG5cbi5mZWF0dXJlX19pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICNmZmZmZmY7XG4gIHdpZHRoOiAyMXJlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9faW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAxODBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNmU2ZWU7XG4gICAgICBmbG9hdDogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmZlYXR1cmVfX2ltYWdlIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIyMnB4OyB9IH1cbiAgLmZlYXR1cmVfX2ltYWdlLS1vbmUtY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxODBweDtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2ZmZmZmZjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZTZlZTtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlX19pbWFnZS0tb25lLWNvbHVtbiB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDIyMnB4OyB9IH1cblxuLmZlYXR1cmVfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAzcmVtIDhyZW0gMnJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAzcmVtIDIuNXJlbSAycmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAycmVtOyB9IH1cbiAgLmZlYXR1cmVfX2NvbnRlbnQtLW9uZS1jb2x1bW4ge1xuICAgIHBhZGRpbmc6IDNyZW0gMi41cmVtIDJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZlYXR1cmVfX2NvbnRlbnQtLW9uZS1jb2x1bW4ge1xuICAgICAgICBwYWRkaW5nOiAycmVtOyB9IH1cblxuLmZlYXR1cmVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAyLjRyZW07XG4gIGNvbG9yOiAjNWQ2NjZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZy1yaWdodDogMS42cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fdGl0bGUge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fdGl0bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMi4ycmVtOyB9IH1cbiAgLmZlYXR1cmVfX3RpdGxlLS1vbmUtY29sdW1uIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZlYXR1cmVfX3RpdGxlLS1vbmUtY29sdW1uIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAyLjJyZW07IH0gfVxuXG4uZmVhdHVyZV9fZXhjZXJwdCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBjb2xvcjogIzVkNjY2ZjsgfVxuXG4uYmxvY2stZm91ciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBwYWRkaW5nOiA0cmVtIDA7XG4gIGhlaWdodDogNzYuOHJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmJsb2NrLWZvdXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLyogYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50OyAqL1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAgIC5ibG9jay1mb3VyICoge1xuICAgICAgICB0ZXh0LWFsaWduOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH0gfVxuICAuYmxvY2stZm91cl9faW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5ibG9jay1mb3VyIGRpdiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4ucGV0aXRpb24ge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDNyZW07XG4gIGJhY2tncm91bmQ6ICNkNmU2ZWU7IH1cbiAgLnBldGl0aW9uX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA0NTVweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnBldGl0aW9uX19mb3JtIHtcbiAgICB3aWR0aDogNDU1cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLnBldGl0aW9uX19mb3JtIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZm9udC1mYW1pbHk6ICdXaGl0bmV5IEJvbGQnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wZXRpdGlvbl9fZm9ybSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsb2F0OiBub25lOyB9IH1cbiAgICAucGV0aXRpb25fX2Zvcm0gLmJ1dHRvbmxpbmsucmVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnBldGl0aW9uIC5nZm9ybV93cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC52YWxpZGF0aW9uX2Vycm9yIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyBkaXYuZ2lucHV0X2NvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyAuZ2ZpZWxkX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICBjbGVhcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfSB9XG4gIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyBpbnB1dCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsgfVxuICAgIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgICAgLyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovXG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAvKiBGaXJlZm94ICovIH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tc21hbGwge1xuICAgIHdpZHRoOiAxNzdweCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tc21hbGwge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH0gfVxuICAucGV0aXRpb24gLmN1c3RvbS1jc3MgLmN1c3RvbS1tZWRpdW0ge1xuICAgIHdpZHRoOiAyNjBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxLjFyZW0gIWltcG9ydGFudDsgfVxuICAgIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyAuY3VzdG9tLW1lZGl1bSBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tbWVkaXVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tbGFyZ2Uge1xuICAgIHdpZHRoOiA0NDdweCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tbGFyZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH0gfVxuICAucGV0aXRpb24gLmN1c3RvbS1jc3MgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3YmE3YjQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgLyogbWFyZ2luLWxlZnQ6IDEuMXJlbSAhaW1wb3J0YW50OyAqL1xuICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIC8qIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50OyAqLyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH0gfVxuICAucGV0aXRpb24gLmN1c3RvbS1jc3MgLmJ1dHRvbmxpbmsucmVhZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MyNDcyOTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgd2lkdGg6IDIxNXB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyAuYnV0dG9ubGluay5yZWFkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50OyB9IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5maWVsZF9kZXNjcmlwdGlvbl9iZWxvdyAuZ2ZpZWxkX2Rlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5nZm9ybV9idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIHRvcDogMDsgfVxuICAucGV0aXRpb24gLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyLmN1c3RvbS1jc3MgLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1mYW1pbHk6ICdXaGl0bmV5IEJvbGQnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cblxuYm9keSAuZ2Zvcm1fd3JhcHBlci5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIC5nZm9ybV9ib2R5IHVsIGxpLmdmaWVsZC5nZmllbGRfZXJyb3I6bm90KC5nZl9sZWZ0X2hhbGYpOm5vdCguZ2ZfcmlnaHRfaGFsZikge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4uYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDIwcHggMzBweDsgfVxuICAuYnV0dG9uOmhvdmVyIHtcbiAgICAvKiBib3gtc2hhZG93OiBpbnNldCA1cHggMTBweCAjODg4ODg4OyAqL1xuICAgIC8qIG9wYWNpdHk6IC45OyAqL1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpOyB9XG5cbmRpdi5mZnotYnV0dG9uLW9wZW4tbW9kYWwge1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICBib3JkZXItcmFkaXVzOiAxMHB4ICFpbXBvcnRhbnQ7IH1cbiAgZGl2LmZmei1idXR0b24tb3Blbi1tb2RhbDpob3ZlciB7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDkwJSk7IH1cblxuLnJpYmJvbiB7XG4gIGJhY2tncm91bmQ6ICMzZDQzNGE7XG4gIGhlaWdodDogODBweDtcbiAgbWFyZ2luOiAwIDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNDhweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJpYmJvbiB7XG4gICAgICB3aWR0aDogMzVweDtcbiAgICAgIGhlaWdodDogNDRweDsgfSB9XG4gIC5yaWJib246YWZ0ZXIge1xuICAgIGJvcmRlci1sZWZ0OiA0MHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiAwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucmliYm9uOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDM1cHggc29saWQgdHJhbnNwYXJlbnQ7IH0gfVxuICAucmliYm9uOmJlZm9yZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiA0MHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGxlZnQ6IDBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5yaWJib246YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAzNXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9IH1cbiAgLnJpYmJvbjphZnRlciwgLnJpYmJvbjpiZWZvcmUge1xuICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgIzNkNDM0YTtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTE1cHg7XG4gICAgd2lkdGg6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucmliYm9uOmFmdGVyLCAucmliYm9uOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3A6IDE1cHggc29saWQgIzNkNDM0YTtcbiAgICAgICAgYm90dG9tOiAtMTJweDsgfSB9XG5cbi5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLWZ1bGwtY3VzdG9tICN0aXRsZS1wYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1mdWxsLWN1c3RvbSAjdGl0bGUtcGFnZSBoMSB7XG4gICAgZm9udC1zaXplOiA2NHB4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCAjNDQ0NDQ0O1xuICAgIGZvbnQtZmFtaWx5OiBcIkdlb3JnaWFcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4ucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1mdWxsLWN1c3RvbSAjY29udGVudC1wYWdlIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogJGdsb2JhbC1idXR0b24tY3Vyc29yO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vICAyMC4gRm9ybXNcbi8vICAyMS4gTGFiZWxcbi8vICAyMi4gTWVkaWEgT2JqZWN0XG4vLyAgMjMuIE1lbnVcbi8vICAyNC4gTWV0ZXJcbi8vICAyNS4gT2ZmLWNhbnZhc1xuLy8gIDI2LiBPcmJpdFxuLy8gIDI3LiBQYWdpbmF0aW9uXG4vLyAgMjguIFByb2dyZXNzIEJhclxuLy8gIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vICAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAgMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAgMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vICAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vICA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAgNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAgNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgNDcuIFJldmVhbFxuLy8gIDQ4LiBTbGlkZXJcbi8vICA0OS4gU3dpdGNoXG4vLyAgNTAuIFRhYmxlXG4vLyAgNTEuIFRhYnNcbi8vICA1Mi4gVGh1bWJuYWlsXG4vLyAgNTMuIFRpdGxlIEJhclxuLy8gIDU0LiBUb29sdGlwXG4vLyAgNTUuIFRvcCBCYXJcbi8vICA1Ni4gWHkgR3JpZFxuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogNjIuNSU7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjNzlhNWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKTtcbiRsaWdodC1ncmF5OiAjZTZlNmU2O1xuJG1lZGl1bS1ncmF5OiAjY2FjYWNhO1xuJGRhcmstZ3JheTogIzFkMWQxZDtcbiRibGFjazogIzI5MmMyZTtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiBBcmlhbCwgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMTBweDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjE7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMXJlbSxcbiAgc21hbGw6IDEuNHJlbSxcbiAgZGVmYXVsdDogMS44cmVtLFxuICBsYXJnZTogMi4ycmVtLFxuKTtcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcblxuLy8gMTMuIENhbGxvdXRcbi8vIC0tLS0tLS0tLS0tXG5cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcblxuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG5cbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kY2FyZC1zaGFkb3c6IG5vbmU7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbik7XG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XG5cbi8vIDE2LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDE3LiBEcm9wZG93blxuLy8gLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pO1xuXG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbTtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWU7XG5cbi8vIDI0LiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjUuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4O1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMztcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG5cbi8vIDI2LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjcuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoXG4gIGRvd24sXG4gIHVwLFxuICByaWdodCxcbiAgbGVmdFxuKTtcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xuJHByb3RvdHlwZS1hcnJvdy1jb2xvcjogJGJsYWNrO1xuXG4vLyAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XG4kcHJvdG90eXBlLWJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1kaXNwbGF5OiAoXG4gIGlubGluZSxcbiAgaW5saW5lLWJsb2NrLFxuICBibG9jayxcbiAgdGFibGUsXG4gIHRhYmxlLWNlbGxcbik7XG5cbi8vIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KTtcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS11bm9yZGVyZWQ6IChcbiAgZGlzYyxcbiAgY2lyY2xlLFxuICBzcXVhcmVcbik7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxuICBkZWNpbWFsLFxuICBsb3dlci1hbHBoYSxcbiAgbG93ZXItbGF0aW4sXG4gIGxvd2VyLXJvbWFuLFxuICB1cHBlci1hbHBoYSxcbiAgdXBwZXItbGF0aW4sXG4gIHVwcGVyLXJvbWFuXG4pO1xuXG4vLyAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1vdmVyZmxvdzogKFxuICB2aXNpYmxlLFxuICBoaWRkZW4sXG4gIHNjcm9sbFxuKTtcblxuLy8gMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtcG9zaXRpb246IChcbiAgc3RhdGljLFxuICByZWxhdGl2ZSxcbiAgYWJzb2x1dGUsXG4gIGZpeGVkXG4pO1xuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XG5cbi8vIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuXG4vLyAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMik7XG4kcHJvdG90eXBlLXNlcGFyYXRvci13aWR0aDogM3JlbTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwwLDAsLjE2KSxcbiAgICAgICAgICAgICAgICAgICAgICAgMCAycHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbik7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKFxuICBvdmVybGluZSxcbiAgdW5kZXJsaW5lLFxuICBsaW5lLXRocm91Z2gsXG4pO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxuICBsb3dlcmNhc2UsXG4gIHVwcGVyY2FzZSxcbiAgY2FwaXRhbGl6ZVxuKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuLy8gNTAuIFRhYmxlXG4vLyAtLS0tLS0tLS1cblxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpO1xuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZTtcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDUxLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gNTIuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDUzLiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyA1NC4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cblxuJGhhcy10aXAtY3Vyc29yOiBoZWxwO1xuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDU1LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTYuIFh5IEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiA0MHB4XG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xuXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbmFtZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldCdzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlciB0aGFuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogJGlucHV0LWxpbmUtaGVpZ2h0KSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2l0YXRpb25zXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY2l0ZS1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgdWwsIG9sIHtcbiAgICAvLyBVc2UgdG8gcmVtb3ZlIG51bWJlcnMgZnJvbSBvcmRlcmVkIGxpc3QgJiBidWxsZXRzIGZyb20gdW5vcmRlcmVkIGxpc3RcbiAgICAmLm5vLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5cyBuZXh0IHRvIGFsbCBsaW5rcyB0aGVpciBcImhyZWZcIiB3aGVuIHByaW50ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgIC8vIEhlbHBlciB0byByZS1hbGxvdyBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGNlcnRhaW4gZWxlbWVudHMgKGUuZy4gcHJlLCBibG9ja3F1b3RlLCB0cilcbiAgICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCk7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGdyaWQtY29sdW1ucywgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAvLyBBdXRvIHdpZHRoXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyAmIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAuZ3JpZC14IHtcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkdmVydGljYWw6IHRydWUsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAvIDI7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgeW91ciBmbGV4IGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtob3Jpem9udGFsXSAtIEVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsIGRpcmVjdGlvbiBvZiBjZWxscyB3aXRoaW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBJZiB0aGUgY2VsbHMgd2l0aGluIHNob3VsZCB3cmFwIG9yIG5vdC5cbkBtaXhpbiB4eS1ncmlkKFxuICAkZGlyZWN0aW9uOiBob3Jpem9udGFsLFxuICAkd3JhcDogdHJ1ZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gPT0gJ2hvcml6b250YWwnLCByb3csIGNvbHVtbik7XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6ICRkaXJlY3Rpb24gJHdyYXA7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGUgdGhlIHBlcmNlbnRhZ2Ugc2l6ZSBvZiBhIGNlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkc2l6ZSBbJGdyaWQtY29sdW1uc10gLSBTaXplIHRvIG1ha2UgdGhlIGNlbGwuIFlvdSBjYW4gcGFzcyBhIHZhbHVlIGluIG11bHRpcGxlIGZvcm1hdHMsIHN1Y2ggYXMgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvM2AuXG5AZnVuY3Rpb24geHktY2VsbC1zaXplKFxuICAkc2l6ZTogJGdyaWQtY29sdW1uc1xuKSB7XG4gIC8vIFBhcnNpbmcgcGVyY2VudHMsIGRlY2ltYWxzLCBuIG9mIG4gYW5kIG51bWJlciBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJHNpemUpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkc2l6ZSkgPT0gJyUnIHtcbiAgICAgICRzaXplOiAkc2l6ZTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHNpemUgPCAxIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUgLyAkZ3JpZC1jb2x1bW5zKTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgb3IgXCJuL25cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJHNpemUpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiIG9yIFwibi9uXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UobnRoKCRzaXplLCAxKSAvIG50aCgkc2l6ZSwgMykpO1xuICAgIH1cbiAgfVxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cblxuICBAcmV0dXJuICRzaXplO1xufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYGdyb3dgLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgLy8gVGhpcyBpcyB0aGUgYmFzZSBzdHlsZSwgYWxsIG90aGVycyBpbmhlcml0IGZyb20gaXRcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgbWluLXdpZHRoOiAwcHg7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB3aWR0aCwgaGVpZ2h0KTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vIFNldHMgb3VyIGNlbGwgd2lkdGhzIG9yIGhlaWdodHMgZGVwZW5kaW5nIG9uIGd1dHRlciB0eXBlLlxuQG1peGluIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRtYXJnaW4tZ3V0dGVyLCAkdmVydGljYWwpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9LCBjYWxjKCN7eHktY2VsbC1zaXplKCRzaXplKX0gLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICAjeyRkaXJlY3Rpb259OiAkdmFsO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgY2VsbCBmb3IgeW91ciBncmlkLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbChcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRicC1pcy1mYWxsYmFjazogZmFsc2U7XG5cbiAgQGlmKCRicmVha3BvaW50ID09IG51bGwpIHtcbiAgICAvLyBJZiBgJGJwLXNpemVgIGlzIGF2YWlsYWJsZSB0aGVuIHVzZSB0aGlzLCBvdGhlcndpc2UgcmV2ZXJ0IHRvIHRoZSBzbWFsbGVzdCBicC5cbiAgICBAaWYodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50O1xuICAgICAgJGJwLWlzLWZhbGxiYWNrOiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdldCB0aGUgZ3V0dGVyIGZvciB0aGUgZ2l2ZW4gYnJlYWtwb2ludC92YWx1ZS5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBmYWxsYmFjaywgdXNlIGEgZmFsbGJhY2sgZ3V0dGVyIGFzIHdlbGxcbiAgQGlmICgkYnAtaXMtZmFsbGJhY2sgPT0gdHJ1ZSBhbmQgJGd1dHRlciA9PSBudWxsKSB7XG4gICAgJGd1dHRlcjogMDtcbiAgfVxuXG4gIEBpZigkZ3V0dGVyICE9IG51bGwpIHtcbiAgICAvLyBCYXNlIGZsZXggcHJvcGVydGllc1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICAgIH1cblxuICAgIEBpZiAkZ3V0dGVyLW91dHB1dCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAneHktY2VsbDogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCIsIGNlbGwgd2FzIG5vdCBnZW5lcmF0ZWRgJ1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICB9XG5cbiAgLy8gSWYgd2Ugd2FudCB0byBvdXRwdXQgdGhlIGd1dHRlcnNcbiAgQGlmKCRndXR0ZXItb3V0cHV0KSB7XG4gICAgLy8gVE9ETzogRmlndXJlIG91dCBpZiB3ZSBuZWVkIHRvIHBhc3MgYnJlYWtwb2ludCBpbiBoZXJlIHRvby5cbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNlbGwnXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAgb3IgYHBhZGRpbmdgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBicmVha3BvaW50IHRvIHVzZSBmb3IgdGhlIGNlbGwgZ2VuZXJhdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoJHNpemUsICRndXR0ZXItb3V0cHV0LCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB6Zi1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFskLXpmLXplcm8tYnJlYWtwb2ludF0gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZSBmb3IgYCRndXR0ZXJzYC4gU2VlIGAtemYtYnJlYWtwb2ludC12YWx1ZSgpYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIFNldHMgdGhlIGRpcmVjdGlvbiBvZiB0aGUgb2Zmc2V0LiBJZiBzZXQgdG8gdHJ1ZSB3aWxsIGFwcGx5IG1hcmdpbi10b3AgaW5zdGVhZC5cbkBtaXhpbiB4eS1jZWxsLW9mZnNldChcbiAkbixcbiAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwsICd0b3AnLCAkZ2xvYmFsLWxlZnQpO1xuXG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRicmVha3BvaW50LCAkZ3V0dGVycykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcbiAgICAkZ3V0dGVyLW1hcmdpbjogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCAkZ3V0dGVyLCAwKTtcbiAgICAkc2l6ZTogaWYoJGd1dHRlci1tYXJnaW4gPT0gMCwgI3t4eS1jZWxsLXNpemUoJG4pfSwgY2FsYygje3h5LWNlbGwtc2l6ZSgkbil9ICsgI3skZ3V0dGVyLW1hcmdpbn0pKTtcblxuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRzaXplfTtcbiAgfVxufVxuIiwiLy8vIE1vZGlmaWVzIGEgZ3JpZCB0byBnaXZlIGl0IFwiZnJhbWVcIiBiZWhhdmlvciAobm8gb3ZlcmZsb3csIG5vIHdyYXAsIHN0cmV0Y2ggYmVoYXZpb3IpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZXN0ZWQgW2ZhbHNlXSAtIElzIGdyaWQgbmVzdGVkIG9yIG5vdC4gSWYgbmVzdGVkIGlzIHRydWUgdGhpcyBzZXRzIHRoZSBmcmFtZSB0byAxMDAlIGhlaWdodCwgb3RoZXJ3aXNlIHdpbGwgYmUgMTAwdmguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbbnVsbF0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW5jbHVkZS1iYXNlIFt0cnVlXSAtIEluY2x1ZGUgdGhlIGJhc2Ugc3R5bGVzIHRoYXQgZG9uJ3QgdmFyeSBwZXIgYnJlYWtwb2ludC5cbkBtaXhpbiB4eS1ncmlkLWZyYW1lKFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkbmVzdGVkOiBmYWxzZSxcbiAgJGd1dHRlcnM6IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkaW5jbHVkZS1iYXNlOiB0cnVlXG4pIHtcblxuICBAaWYgJGluY2x1ZGUtYmFzZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICBAaWYgJGJyZWFrcG9pbnQgPT0gbnVsbCBhbmQgdHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKCR2ZXJ0aWNhbCwgJG5lc3RlZCwgJGd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLy8gR2V0IG91ciBndXR0ZXJzIGlmIGFwcGxpY2FibGVcbiAgICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuXG4gICAgLy8gSWYgd2UgaGF2ZSBhIGd1dHRlciwgYWRkIGl0IHRvIHRoZSB3aWR0aC9oZWlnaHRcbiAgICBAaWYgJGd1dHRlciB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICB3aWR0aDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICBoZWlnaHQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHdpZHRoOiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1vZGlmaWVzIGEgY2VsbCB0byBnaXZlIGl0IFwiYmxvY2tcIiBiZWhhdmlvciAob3ZlcmZsb3cgYXV0bywgaW5lcnRpYWwgc2Nyb2xsaW5nKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG5AbWl4aW4geHktY2VsbC1ibG9jayhcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRwcm9wZXJ0eTogaWYoJHZlcnRpY2FsID09IHRydWUsICdvdmVyZmxvdy15JywgJ292ZXJmbG93LXgnKTtcblxuICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9IEBlbHNlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi8vLyBDb250YWluZXIgZm9yIGluc2lkZSBhIGdyaWQgZnJhbWUgY29udGFpbmluZyBtdWx0aXBsZSBibG9ja3MuIFR5cGljYWxseSB1c2VkXG4vLy8gYXMgYSBtb2RpZmllciBmb3IgYSBgLmNlbGxgIHRvIGFsbG93IHRoZSBjZWxsIHRvIHBhc3MgYWxvbmcgZmxleCBzaXppbmdcbi8vLyBjb25zdHJhaW50cyAvIGZyb20gcGFyZW50cyB0byBjaGlsZHJlbi5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcblxuICA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcbiAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdHlsZVxuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZCgkY29sb3IsIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSG9sbG93IHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgJi5ob2xsb3cge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbGVhciBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gY2xlYXIge1xuICAgICAgJi5jbGVhciB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG5cbiAgICAgICAgICAgICYsICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3csICYuY2xlYXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoc21hbGwpIH1cbiAgICAmLCAmLm1lZGl1bSB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKG1lZGl1bSkgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbil7XG4gICQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICAgJ2xlZnQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LWVuZCwgZmxleC1zdGFydCksXG4gICAgJ3JpZ2h0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1zdGFydCwgZmxleC1lbmQpLFxuICAgICdjZW50ZXInOiBjZW50ZXIsXG4gICAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAgICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4gICk7XG5cbiAgQHJldHVybiAkLXpmLWZsZXgtanVzdGlmeTtcbn1cblxuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsImh0bWx7XG5cdG1pbi13aWR0aDogMzIwcHggIWltcG9ydGFudDtcbn1cbmJvZHl7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNntcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5oMTAwe1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5yZWxhdGl2ZXtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY3VzdG9tLXdpZHRoe1xuXHR3aWR0aDogNjAwcHg7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cbipbc3R5bGUqPVwiNTBweFwiXXtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudDtcbiAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH0gXG59XG4qW3N0eWxlKj1cIjMwcHhcIl17XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4qW3N0eWxlKj1cIjIycHhcIl17XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG59XG5cbi5yZXZlYWx7XG4gICAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDBweFxufVxuYm9keSAubW9iaWxlLXRleHQtY2VudGVyLFxuYm9keSAubW9iaWxlLXRleHQtY2VudGVyICp7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuXG4uZ2Zvcm1fZm9vdGVyIGlucHV0OmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZ2Zvcm1fcGFnZV9mb290ZXIgLmdmb3JtX2J1dHRvbjpkaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn0iLCIuZmZ6LXNlYXJjaC1zZWxlY3QtZHJvcGRvd257XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IFxufSIsIiRibG9jazogJy5iYW5uZXInO1xuI3skYmxvY2t9e1xuICAgIGhlaWdodDogNjByZW07XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGhlaWdodDogNzVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDE1cmVtIDA7XG4gICAgfVxufVxuXG4kYmxvY2s6ICcuY29udGVudC1wYWdlJztcbiN7JGJsb2NrfXtcbiAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbn1cblxuXG5cbiIsIiRibG9jazogJy5waWxsYXJzJztcbiN7JGJsb2NrfXtcblxuXHQmX190aXRsZXtcblx0XHRmb250LXNpemU6IDIuOHJlbTtcblx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtOyAgICBcbiAgICAgICAgfVxuXHR9XG5cdCZfX2NhdGVnb3JpZXN7XG4gICAgXHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgXHRib3R0b206IDBweDtcbiAgICBcdHBhZGRpbmc6IDJyZW0gMDtcbiAgICBcdHdpZHRoOiAxMDAlO1xuXG4gICAgXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICBcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuICAgIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuICAgIFx0fVxuIFx0fVxuXG4gXHQmX19zaW5nbGVze1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxcmVtO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMXJlbTtcblx0XHR9XG4gXHRcdGF7XG4gXHRcdFx0Y29sb3I6ICR3aGl0ZTtcbiBcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gXHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkd2hpdGU7XG4gXHRcdFx0cGFkZGluZzogMCA0cmVtO1xuIFx0XHRcdGZvbnQtc2l6ZTogMi4ycmVtO1xuIFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG4gXHRcdFx0bWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiBcdFx0XHQmOmZpcnN0LWNoaWxke1xuIFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiBcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiBcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwcmVtO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cblxuIFx0XHRcdCY6bGFzdC1jaGlsZHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDByZW07XG5cdFx0XHRcdH1cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuIFx0XHRcdH1cblxuIFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiBcdFx0XHRcdGZvbnQtc2l6ZTogMS42cmVtO1xuIFx0XHRcdFx0cGFkZGluZzogMCAxcmVtO1xuIFx0XHRcdH1cblxuIFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuIFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG4gXHRcdFx0XHRjbGVhcjogYm90aDtcbiBcdFx0XHRcdGJvcmRlci1sZWZ0OiBub25lO1xuIFx0XHRcdFx0cGFkZGluZzogMXJlbSAxLjVyZW0gMS41cmVtICFpbXBvcnRhbnQ7XG4gXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlICFpbXBvcnRhbnQ7XG4gXHRcdFx0XHRtYXJnaW46IDAgYXV0byAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweFxuIFx0XHRcdH1cbiBcdFx0XHRcbiBcdFx0fVxuIFx0XHRpbWd7XG4gXHRcdFx0bWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNHJlbTtcbiAgICAgICAgICAgIH1cbiBcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiBcdFx0XHRcdG1hcmdpbi10b3A6IC0xcmVtO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuIFx0XHRcdH1cbiBcdFx0fVxuIFx0XHRcbiBcdH1cbn0iLCIkYmxvY2s6ICcuYmxvY2stb25lJztcbiN7JGJsb2NrfXtcblxuXHRjb2xvcjogJHdoaXRlO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuXHRwYWRkaW5nOiA0cmVtIDA7XG5cdGhlaWdodDogNzYuOHJlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0LyogYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50OyAqL1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdGhlaWdodDogYXV0bztcblxuICAgICAgICAqe1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuXHR9XG5cblx0Jl9faW1hZ2V7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxuXG5cdGRpdntcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdH1cbn0iLCIkYmxvY2s6ICcuYmxvY2stdHdvJztcbiN7JGJsb2NrfXtcblx0cGFkZGluZzogNHJlbSAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICp7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxuXHR1bHtcbiAgICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cdGxpe1xuXHRcdHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXHRcdHNwYW57XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG5cdFx0fVxuXG5cdH1cbiAgICBcbiAgICAubWVkaXVtLTUge1xuXG4gICAgICAgIHdpZHRoOiA0ODBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIHdpZHRoOiAzNzBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXHRcbn1cblxuYm9keSAuYmxvY2stdHdvIC5tZWRpdW0tNSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHdpZHRoOiAzNzBweCAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIkYmxvY2s6ICcuYmxvY2stdGhyZWUnO1xuI3skYmxvY2t9e1xuICAgIHBhZGRpbmc6IDEycmVtIDAgNXJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgcGFkZGluZzogNXJlbSAwIDVyZW07XG4gICAgfVxuXG4gICAgLmxpbmtzLXNlY3Rpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgYXtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMzZDQzNGE7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNzlhNWJhO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gYm94LS1vbmUtY29sdW1uIHtcbiAgICBtYXgtd2lkdGg6IDM3cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvIDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwcmVtO1xuICAgIHBhZGRpbmctdG9wOiAxOC4ycmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMi4ycmVtO1xuICAgIH1cbn1cbkBtaXhpbiBib3hfX2ltYWdlLS1vbmUtY29sdW1ue1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDE4MHB4O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZmZmZmZmO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZlNmVlO1xuICAgIGZsb2F0OiBub25lO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICBtYXgtaGVpZ2h0OiAyMjJweDtcbiAgICB9XG59XG5AbWl4aW4gYm94X19jb250ZW50LS1vbmUtY29sdW1ue1xuICAgIHBhZGRpbmc6IDNyZW0gMi41cmVtIDJyZW0gO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICB9XG59XG5cbkBtaXhpbiBib3hfX3RpdGxlLS1vbmUtY29sdW1ue1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDRyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgIH1cbn1cblxuXG5cblxuJGJsb2NrOiAnLmZlYXR1cmUnO1xuI3skYmxvY2t9e1xuXG4gICAgXG4gICAgXG4gICAgJl9fYm94e1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDdweCA3cHggN3B4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjNyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3gtLW9uZS1jb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICAmLS1vbmUtY29sdW1ue1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94LS1vbmUtY29sdW1uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcGlsbGFye1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRvcDogMS42cmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgdG9wOiAuNnJlbTtcbiAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZXtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgI2ZmZmZmZjsgICAgXG4gICAgICAgIHdpZHRoOiAyMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3hfX2ltYWdlLS1vbmUtY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tb25lLWNvbHVtbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3hfX2ltYWdlLS1vbmUtY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgXG4gICAgfVxuXG4gICAgJl9fY29udGVudHtcbiAgICAgICAgcGFkZGluZzogM3JlbSA4cmVtIDJyZW0gMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgQGluY2x1ZGUgYm94X19jb250ZW50LS1vbmUtY29sdW1uO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLS1vbmUtY29sdW1uIHtcbiAgICAgICAgICAgQGluY2x1ZGUgYm94X19jb250ZW50LS1vbmUtY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgXG5cbiAgICB9XG5cbiAgICAmX190aXRsZXtcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgIGNvbG9yOiAjNWQ2NjZmO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS42cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94X190aXRsZS0tb25lLWNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW9uZS1jb2x1bW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94X190aXRsZS0tb25lLWNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIFxuICAgIH1cblxuICAgICZfX2V4Y2VycHR7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBjb2xvcjogIzVkNjY2ZjtcblxuICAgICAgICAgXG5cbiAgICB9XG5cbn1cbiIsIiRibG9jazogJy5ibG9jay1mb3VyJztcbiN7JGJsb2NrfXtcblxuXHRjb2xvcjogJHdoaXRlO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuXHRwYWRkaW5nOiA0cmVtIDA7XG5cdGhlaWdodDogNzYuOHJlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0LyogYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50OyAqL1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdGhlaWdodDogYXV0bztcbiAgICAgICAgKntcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXHR9XG5cblx0Jl9faW1hZ2V7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxuXG5cdGRpdntcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdH1cbn0iLCIkYmxvY2s6ICcucGV0aXRpb24nO1xuI3skYmxvY2t9e1xuXHRtYXJnaW4tdG9wOiAzcmVtO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDNyZW07XG4gICAgYmFja2dyb3VuZDogI2Q2ZTZlZTtcblxuXHQmX190aXRsZXtcblx0XHRmb250LXNpemU6IDIuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogNDU1cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cdH1cblxuXHQmX19mb3Jte1xuXHRcdHdpZHRoOiA0NTVweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuXHRcdGgze1xuXHRcdFx0Zm9udC1zaXplOiAzLjVyZW07XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdGZvbnQtZmFtaWx5OiAnV2hpdG5leSBCb2xkJywgc2Fucy1zZXJpZjtcblx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0fVxuXG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0XHRmbG9hdDogbm9uZTtcblx0XHR9XG4gICAgICAgIC5idXR0b25saW5rLnJlYWR7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblx0fVxuXHQuZ2Zvcm1fd3JhcHBlcntcblx0XHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cdH1cblx0LmN1c3RvbS1jc3N7XG5cdFx0LnZhbGlkYXRpb25fZXJyb3J7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0XHRkaXYuZ2lucHV0X2NvbnRhaW5lcntcblx0XHRcdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0LmdmaWVsZF9sYWJlbHtcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0bGl7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuXHRcdFx0Y2xlYXI6IGluaGVyaXQgIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHRpbnB1dHtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpO1xuXHRcdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuXHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG5cblx0XHRcdCY6OnBsYWNlaG9sZGVyIHsgLyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovXG5cdFx0XHQgICAgY29sb3I6ICMwMDAwMDA7XG5cdFx0XHQgICAgb3BhY2l0eTogMTsgLyogRmlyZWZveCAqL1xuXHRcdFx0fVxuXG5cdFx0XHRcblx0XHR9XG5cdFx0LmN1c3RvbS1zbWFsbHtcblx0XHRcdHdpZHRoOiAxNzdweCAhaW1wb3J0YW50O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuY3VzdG9tLW1lZGl1bXtcblx0XHRcdHdpZHRoOiAyNjBweCAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEuMXJlbSAhaW1wb3J0YW50O1xuXHRcdFx0aW5wdXR7XG5cblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bil7XG5cdFx0XHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmN1c3RvbS1sYXJnZXtcblx0XHRcdHdpZHRoOiA0NDdweCAhaW1wb3J0YW50O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuYnV0dG9uLnNlY29uZGFyeXtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICM3YmE3YjQ7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHR3aWR0aDogMjIwcHg7XG5cdFx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuXHRcdFx0Zm9udC1zaXplOiAyNHB4O1xuXHRcdFx0LyogbWFyZ2luLWxlZnQ6IDEuMXJlbSAhaW1wb3J0YW50OyAqL1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG5cdFx0XHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLyogYm9yZGVyLXJhZGl1czogMHB4ICFpbXBvcnRhbnQ7ICovXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pe1xuXHRcdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmJ1dHRvbmxpbmsucmVhZHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNjMjQ3Mjk7XG5cdFx0ICAgIGJvcmRlcjogbm9uZTtcblx0XHQgICAgd2lkdGg6IDIxNXB4O1xuXHRcdCAgICBoZWlnaHQ6IDUwcHg7XG5cdFx0ICAgIGxpbmUtaGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG5cdFx0ICAgIGZvbnQtc2l6ZTogMjRweDtcblx0XHQgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG5cdFx0ICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0XHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdCAgICBjb2xvcjogI2ZmZmZmZjtcblx0XHQgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHQgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgLmdmaWVsZF9kZXNjcmlwdGlvbntcblx0XHRcdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0Lmdmb3JtX2J1dHRvbntcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IC05OTk5cHg7XG5cdFx0XHR0b3A6IDA7XG5cdFx0fVxuXHRcdFxuXHR9XG5cdC5nZm9ybV9jb25maXJtYXRpb25fd3JhcHBlci5jdXN0b20tY3NzIC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZXtcblx0XHRmb250LXNpemU6IDNyZW07XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRmb250LWZhbWlseTogJ1doaXRuZXkgQm9sZCcsIHNhbnMtc2VyaWY7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0fVxufVxuYm9keSAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVye1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuYm9keSAuZ2Zvcm1fd3JhcHBlci5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIC5nZm9ybV9ib2R5IHVsIGxpLmdmaWVsZC5nZmllbGRfZXJyb3I6bm90KC5nZl9sZWZ0X2hhbGYpOm5vdCguZ2ZfcmlnaHRfaGFsZil7XG5cdG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufSIsIiRibG9jazogJy5idXR0b24nO1xuXG4jeyRibG9ja317XG4gIFxuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMjBweCAzMHB4O1xuXG4gXG5cbiAgJjpob3ZlcntcbiAgICAvKiBib3gtc2hhZG93OiBpbnNldCA1cHggMTBweCAjODg4ODg4OyAqL1xuICAgIC8qIG9wYWNpdHk6IC45OyAqL1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xuICB9XG4gIFxufVxuXG5kaXYuZmZ6LWJ1dHRvbi1vcGVuLW1vZGFse1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcblxuICAgICY6aG92ZXJ7XG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xuICAgIH1cbn0iLCIkYmxvY2s6ICcucmliYm9uJztcblxuJHNoYWRvdyA6ICM1MDdhYmQ7XG4kYmdDb2xvcjogI2YwZjRmNjtcbiRyaWJib25Db2xvcjpcdCMzZDQzNGE7XG5cbiN7JGJsb2NrfXtcblxuICAgIGJhY2tncm91bmQ6ICRyaWJib25Db2xvcjtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDQ4cHg7XG5cbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgIH1cbiAgICAgXG4gICAgJjphZnRlcntcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDQwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHJpZ2h0OiAwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMzVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3Jle1xuICAgICAgICBib3JkZXItcmlnaHQ6IDQwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGxlZnQ6IDBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMzVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YWZ0ZXIsICY6YmVmb3Jle1xuICAgICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICRyaWJib25Db2xvcjtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0xNXB4O1xuICAgICAgICB3aWR0aDogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDE1cHggc29saWQgJHJpYmJvbkNvbG9yO1xuICAgICAgICAgICAgYm90dG9tOiAtMTJweDtcbiAgICAgICAgfVxuICAgIH1cblxufVxuIiwiJGJsb2NrOiAnLnBhZ2UtdGVtcGxhdGUtdGVtcGxhdGUtZnVsbC1jdXN0b20nO1xuXG4jeyRibG9ja317XG5cbiAgICAjdGl0bGUtcGFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiA2NHB4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAxcHggIzQ0NDQ0NDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkdlb3JnaWFcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgIH1cbiAgICB9XG4gICAgI2NvbnRlbnQtcGFnZXtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG59XG5cblxuXG4iXX0= */
