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

.videoWrap img { transition: all 0.2s linear; }

.videoWrap img:hover { opacity: 0.7; transition: all 0.2s linear; }

.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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplLnNjc3MiLCJhcHAuY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jZWxsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2xheW91dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jb2xsYXBzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19mcmFtZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCJoZWxwZXJzL19nbG9iYWxzLnNjc3MiLCJoZWxwZXJzL19mbGV4Zm9ybXouc2NzcyIsImhvbWUvX2Jhbm5lci5zY3NzIiwiaG9tZS9fcGlsbGFycy5zY3NzIiwiaG9tZS9fYmxvY2stb25lLnNjc3MiLCJob21lL19ibG9jay10d28uc2NzcyIsImhvbWUvX2Jsb2NrLXRocmVlLnNjc3MiLCJob21lL19ibG9jay1mb3VyLnNjc3MiLCJob21lL19wZXRpdGlvbi5zY3NzIiwicGFydGlhbHMvX2J1dHRvbnMuc2NzcyIsInBhcnRpYWxzL19yaWJib24uc2NzcyIsInRlbXBsYXRlcy9mdWxsLWN1c3RvbS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvR0FLRztBQ2lLRyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJQ3pIN0MsT0EyR08sRUFBUCxPQUFPLEtBZUMsRUFmUixPQUFPLE1BZ0JFLEVBaEJULE9BQU8sTUFpQkUsQ0E1SFEsRUFDZixLQUFLLEVBQUUsSUFBSSxFQUNYLElBQUksRUFBRSxJQUFJLEVBQ1YsTUFBTSxFQUFFLE1BQU0sR0FDZjs7QUNoREQsNEVBQTRFO0FBUTVFLElBQUksQ0FBQyxFQUNILFdBQVcsRUFBRSxJQUFJLEVBQ2pCLHdCQUF3QixFQUFFLElBQUksR0FDL0I7O0FBT0QsSUFBSSxDQUFDLEVBQ0gsTUFBTSxFQUFFLENBQUMsR0FDVjs7QUFLRCxFQUFFLENBQUMsRUFDRCxTQUFTLEVBQUUsR0FBRyxFQUNkLE1BQU0sRUFBRSxRQUFRLEdBQ2pCOztBQVFELEVBQUUsQ0FBQyxFQUNELFVBQVUsRUFBRSxXQUFXLEVBQ3ZCLE1BQU0sRUFBRSxDQUFDLEVBQ1QsUUFBUSxFQUFFLE9BQU8sR0FDbEI7O0FBS0QsR0FBRyxDQUFDLEVBQ0YsV0FBVyxFQUFFLG9CQUFvQixFQUNqQyxTQUFTLEVBQUUsR0FBRyxHQUNmOztBQU9ELENBQUMsQ0FBQyxFQUNBLGdCQUFnQixFQUFFLFdBQVcsR0FDOUI7O0FBS0QsSUFBSSxDQUFBLEtBQUEsRUFBUSxFQUNWLGFBQWEsRUFBRSxJQUFJLEVBQ25CLGVBQWUsRUFBRSxTQUFTLEVBQzFCLGVBQWUsRUFBRSxnQkFBZ0IsR0FDbEM7O0FBSUQsQ0FBQyxFQUNELE1BQU0sQ0FBQyxFQUNMLFdBQVcsRUFBRSxNQUFNLEdBQ3BCOztBQUtELElBQUksRUFDSixHQUFHLEVBQ0gsSUFBSSxDQUFDLEVBQ0gsV0FBVyxFQUFFLG9CQUFvQixFQUNqQyxTQUFTLEVBQUUsR0FBRyxHQUNmOztBQUlELEtBQUssQ0FBQyxFQUNKLFNBQVMsRUFBRSxHQUFHLEdBQ2Y7O0FBS0QsR0FBRyxFQUNILEdBQUcsQ0FBQyxFQUNGLFNBQVMsRUFBRSxHQUFHLEVBQ2QsV0FBVyxFQUFFLENBQUMsRUFDZCxRQUFRLEVBQUUsUUFBUSxFQUNsQixjQUFjLEVBQUUsUUFBUSxHQUN6Qjs7QUFFRCxHQUFHLENBQUMsRUFDRixNQUFNLEVBQUUsT0FBTyxHQUNoQjs7QUFFRCxHQUFHLENBQUMsRUFDRixHQUFHLEVBQUUsTUFBTSxHQUNaOztBQU9ELEdBQUcsQ0FBQyxFQUNGLFlBQVksRUFBRSxJQUFJLEdBQ25COztBQVFELE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixRQUFRLENBQUMsRUFDUCxXQUFXLEVBQUUsT0FBTyxFQUNwQixTQUFTLEVBQUUsSUFBSSxFQUNmLFdBQVcsRUFBRSxJQUFJLEVBQ2pCLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBS0QsTUFBTSxFQUNOLEtBQUssQ0FBQyxFQUNKLFFBQVEsRUFBRSxPQUFPLEdBQ2xCOztBQUtELE1BQU0sRUFDTixNQUFNLENBQUMsRUFDTCxjQUFjLEVBQUUsSUFBSSxHQUNyQjs7QUFJRCxNQUFNLEdDakVSLElEa0VFLENBQU0sUUFBTixBQUFDLElDakVILElEa0VFLENBQU0sT0FBTixBQUFDLElDakVILElEa0VFLENBQU0sUUFBTixBQUFDLEVBQWUsRUFDZCxrQkFBa0IsRUFBRSxNQUFNLEdBQzNCOztBQUlELE1BQU0sa0JBQWtCLEdDcEUxQixJRHFFRSxDQUFNLFFBQU4sQUFBQyxDQUFjLGtCQUFrQixHQ3BFbkMsSURxRUUsQ0FBTSxPQUFOLEFBQUMsQ0FBYSxrQkFBa0IsR0NwRWxDLElEcUVFLENBQU0sUUFBTixBQUFDLENBQWMsa0JBQWtCLENBQUMsRUFDaEMsWUFBWSxFQUFFLElBQUksRUFDbEIsT0FBTyxFQUFFLENBQUMsR0FDWDs7QUFJRCxNQUFNLGVBQWUsR0N2RXZCLElEd0VFLENBQU0sUUFBTixBQUFDLENBQWMsZUFBZSxHQ3ZFaEMsSUR3RUUsQ0FBTSxPQUFOLEFBQUMsQ0FBYSxlQUFlLEdDdkUvQixJRHdFRSxDQUFNLFFBQU4sQUFBQyxDQUFjLGVBQWUsQ0FBQyxFQUM3QixPQUFPLEVBQUUscUJBQXFCLEdBQy9COztBQUlELFFBQVEsQ0FBQyxFQUNQLE9BQU8sRUFBRSxxQkFBcUIsR0FDL0I7O0FBT0QsTUFBTSxDQUFDLEVBQ0wsVUFBVSxFQUFFLFVBQVUsRUFDdEIsS0FBSyxFQUFFLE9BQU8sRUFDZCxPQUFPLEVBQUUsS0FBSyxFQUNkLFNBQVMsRUFBRSxJQUFJLEVBQ2YsT0FBTyxFQUFFLENBQUMsRUFDVixXQUFXLEVBQUUsTUFBTSxHQUNwQjs7QUFJRCxRQUFRLENBQUMsRUFDUCxjQUFjLEVBQUUsUUFBUSxHQUN6Qjs7QUFJRCxRQUFRLENBQUMsRUFDUCxRQUFRLEVBQUUsSUFBSSxHQUNmOztDQ3RGSCxJRDJGRSxDQUFNLFVBQU4sQUFBQyxJQzFGSCxJRDJGRSxDQUFNLE9BQU4sQUFBQyxFQUFjLEVBQ2IsVUFBVSxFQUFFLFVBQVUsRUFDdEIsT0FBTyxFQUFFLENBQUMsR0FDWDs7Q0MxRkgsSUQ4RkUsQ0FBTSxRQUFOLEFBQUMsQ0FBYywyQkFBMkIsR0M3RjVDLElEOEZFLENBQU0sUUFBTixBQUFDLENBQWMsMkJBQTJCLENBQUMsRUFDekMsTUFBTSxFQUFFLElBQUksR0FDYjs7Q0M3RkgsSURrR0UsQ0FBTSxRQUFOLEFBQUMsRUFBZSxFQUNkLGtCQUFrQixFQUFFLFNBQVMsRUFDN0IsY0FBYyxFQUFFLElBQUksR0FDckI7O0NDakdILElEcUdFLENBQU0sUUFBTixBQUFDLENBQWMsMkJBQTJCLENBQUMsRUFDekMsa0JBQWtCLEVBQUUsSUFBSSxHQUN6Qjs7QUFLRCw0QkFBNEIsQ0FBQyxFQUMzQixrQkFBa0IsRUFBRSxNQUFNLEVBQzFCLElBQUksRUFBRSxPQUFPLEdBQ2Q7O0FBT0QsT0FBTyxDQUFDLEVBQ04sT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFJRCxPQUFPLENBQUMsRUFDTixPQUFPLEVBQUUsU0FBUyxHQUNuQjs7QUFPRCxRQUFRLENBQUMsRUFDUCxPQUFPLEVBQUUsSUFBSSxHQUNkOztDQ3ZISCxNRDJIRSxFQUFTLEVBQ1AsT0FBTyxFQUFFLElBQUksR0FDZDs7QUU1SUQsY0FBYyxDQUFDLEVBQ2IsV0FBVyxFQUFFLDJEQUFtQyxHQUNqRDs7QUZwSUQsSUFBSSxDRXNJQyxFQUNILFVBQVUsRUFBRSxVQUFVLEVBQ3RCLFNBQVMsRUM5RU0sS0FBSyxHRCtFckI7O0FBR0QsQ0FBQyxFQUNELENBQUMsUUFBUSxFQUNULENBQUMsT0FBTyxDQUFDLEVBQ1AsVUFBVSxFQUFFLE9BQU8sR0FDcEI7O0FGdElELElBQUksQ0V5SUMsRUFDSCxNQUFNLEVBQUUsQ0FBQyxFQUNULE9BQU8sRUFBRSxDQUFDLEVBRVYsVUFBVSxFQy9FTixPQUFPLEVEaUZYLFdBQVcsRUM5RUksOENBQThDLEVEK0U3RCxXQUFXLEVDMUVRLE1BQU0sRUQyRXpCLFdBQVcsRUMvRkssR0FBRyxFRGdHbkIsS0FBSyxFQ3JGRCxPQUFPLEVEd0ZULHNCQUFzQixFQUFFLFdBQVcsRUFDbkMsdUJBQXVCLEVBQUUsU0FBUyxHQUVyQzs7QUZ2REQsR0FBRyxDRXlEQyxFQUVGLE9BQU8sRUFBRSxZQUFZLEVBQ3JCLGNBQWMsRUFBRSxNQUFNLEVBR3RCLFNBQVMsRUFBRSxJQUFJLEVBQ2YsTUFBTSxFQUFFLElBQUksRUFDWixzQkFBc0IsRUFBRSxPQUFPLEdBQ2hDOztBRjJCRCxRQUFRLENFeEJDLEVBQ1AsTUFBTSxFQUFFLElBQUksRUFDWixVQUFVLEVBQUUsSUFBSSxFQUNoQixhQUFhLEVDakdELElBQUksR0RrR2pCOztBQUdELE1BQU0sQ0FBQyxFQUNMLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLEtBQUssRUFBRSxJQUFJLEVBQ1gsYUFBYSxFQ3hHRCxJQUFJLEdEeUdqQjs7QUFJRCxXQUFXLENBRVQsR0FBRyxFQUZMLFdBQVcsQ0FHVCxLQUFLLEVBSFAsV0FBVyxDQUlULE1BQU0sRUFIUixZQUFZLENBQ1YsR0FBRyxFQURMLFlBQVksQ0FFVixLQUFLLEVBRlAsWUFBWSxDQUdWLE1BQU0sQ0FBQyxFQUNMLFNBQVMsRUFBRSxlQUFlLEdBQzNCOztBQUlILE1BQU0sQ0FBQyxFQUVMLE9BQU8sRUFBRSxDQUFDLEVBQ1YsVUFBVSxFQUFFLElBQUksRUFDaEIsTUFBTSxFQUFFLENBQUMsRUFDVCxhQUFhLEVDNUhELElBQUksRUQ2SGhCLFVBQVUsRUFBRSxXQUFXLEVBQ3ZCLFdBQVcsRUFBRSxDQUFDLEVBQ2QsTUFBTSxFQ3pIYSxJQUFJLEdEMEh4Qjs7Q0RORCxjR1pBLENBQWdCLE9BQWhCLEFBQUMsRUZTRCxNQUFNLENFVHFCLEVBQ3pCLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FKN0pELEdBQUcsQ0VnTEMsRUFDRixRQUFRLEVBQUUsSUFBSSxHQUNmOztBRmxHRCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sUUFBUSxDRXFHQyxFQUNQLFdBQVcsRUFBRSxPQUFPLEdBQ3JCOztBQUdELFdBQVcsQ0FBQyxFQUNWLE9BQU8sRUFBRSxnQkFBZ0IsR0FDMUI7O0FBRUQsVUFBVSxDQUFDLEVBQ1QsT0FBTyxFQUFFLGVBQWUsR0FDekI7O0NEVkgsSUk1R0UsQ0FBTSxNQUFOLEFBQUMsSUFBQSxJQUFjLENBQU0sVUFBTixBQUFDLElBQUEsSUFBa0IsQ0FBTSxNQUFOLEFBQUMsSUFBQSxJQUFjLENBQU0sVUFBTixBQUFDLElBQUEsSUFBa0IsQ0FBTSxnQkFBTixBQUFDLElBQUEsSUFBd0IsQ0FBTSxPQUFOLEFBQUMsSUFBQSxJQUFlLENBQU0sTUFBTixBQUFDLElBQUEsSUFBYyxDQUFNLE9BQU4sQUFBQyxJQUFBLElBQWUsQ0FBTSxRQUFOLEFBQUMsSUFBQSxJQUFnQixDQUFNLFFBQU4sQUFBQyxJQUFBLElBQWdCLENBQU0sS0FBTixBQUFDLElBQUEsSUFBYSxDQUFNLE1BQU4sQUFBQyxJQUFBLElBQWMsQ0FBTSxLQUFOLEFBQUMsSUFBQSxJQUFhLENBQU0sT0FBTixBQUFDLEdBQzFOLFFBQVEsQ0FBQyxFQXRDVCxPQUFPLEVBQUUsS0FBSyxFQUNkLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLEtBQUssRUFBRSxJQUFJLEVBQ1gsTUFBTSxFQUxHLE1BQTZJLEVBTXRKLE1BQU0sRUFBRSxVQ0grQyxFREl2RCxPQUFPLEVGNFZPLE1BQWlCLEVFMVYvQixNQUFNLEVGd1ZPLGlCQXhXTSxFRWlCbkIsYUFBYSxFRkpDLElBQUksRUVLbEIsZ0JBQWdCLEVGZlYsT0FBTyxFRWdCYixVQUFVLEVGd1ZHLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0F6V3RCLHFCQUFPLEVFbUJiLFdBQVcsRUY0VU8sT0FBTyxFRTNVekIsU0FBUyxFQ1pDLE1BQTZDLEVEYXZELFdBQVcsRUZaVSxNQUFNLEVFYTNCLFdBQVcsRUZqQ08sR0FBRyxFRWtDckIsS0FBSyxFRnZCQyxPQUFPLEVFMEJYLFVBQVUsRUZrVkssK0NBQStDLEVFN1Q5RCxVQUFVLEVBQUUsSUFBSSxHQUNqQjs7Q0oySEQsSUk3SUEsQ0FjTSxNQWROLEFBY0MsQ0FkQSxNQUFNLEdBQUEsSUFjUSxDQUFNLFVBQU4sQUFBQyxDQWRmLE1BQU0sR0FBQSxJQWMyQixDQUFNLE1BQU4sQUFBQyxDQWRsQyxNQUFNLEdBQUEsSUFjMEMsQ0FBTSxVQUFOLEFBQUMsQ0FkakQsTUFBTSxHQUFBLElBYzZELENBQU0sZ0JBQU4sQUFBQyxDQWRwRSxNQUFNLEdBQUEsSUFjc0YsQ0FBTSxPQUFOLEFBQUMsQ0FkN0YsTUFBTSxHQUFBLElBY3NHLENBQU0sTUFBTixBQUFDLENBZDdHLE1BQU0sR0FBQSxJQWNxSCxDQUFNLE9BQU4sQUFBQyxDQWQ1SCxNQUFNLEdBQUEsSUFjcUksQ0FBTSxRQUFOLEFBQUMsQ0FkNUksTUFBTSxHQUFBLElBY3NKLENBQU0sUUFBTixBQUFDLENBZDdKLE1BQU0sR0FBQSxJQWN1SyxDQUFNLEtBQU4sQUFBQyxDQWQ5SyxNQUFNLEdBQUEsSUFjcUwsQ0FBTSxNQUFOLEFBQUMsQ0FkNUwsTUFBTSxHQUFBLElBY29NLENBQU0sS0FBTixBQUFDLENBZDNNLE1BQU0sR0FBQSxJQWNrTixDQUFNLE9BQU4sQUFBQyxDQWR6TixNQUFNLEVBZVAsUUFmQyxNQUFNLENBQUMsRUFDTixPQUFPLEVBQUUsSUFBSSxFQUNiLE1BQU0sRUZ1VVcsaUJBeFdGLEVFa0NmLGdCQUFnQixFRmhDWixPQUFPLEVFaUNYLFVBQVUsRUZ3VU8sZUE1V0EsRUV1Q2YsVUFBVSxFRnVVRywrQ0FBK0MsR0VyVS9EOztBTDBGRCxRQUFRLENLOUVDLEVBQ1AsU0FBUyxFQUFFLElBQUksR0FLaEI7O0FBTkQsUUFBUSxDQUFBLElBR0wsRUFBTyxFQUNOLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBR0gsS0FBSyxTQUdPLEVBSFosS0FBSyxDQUFBLFFBSUYsR0FISCxRQUFRLFNBRUksRUFGWixRQUFRLENBQUEsUUFHTCxFQUFXLEVBQ1YsZ0JBQWdCLEVGbkVULE9BQU8sRUVvRWQsTUFBTSxFRjBTWSxXQUFXLEdFelM5Qjs7Q0o0SEwsSUl4SEUsQ0FBTSxRQUFOLEFBQUMsSUp5SEgsSUl4SEUsQ0FBTSxRQUFOLEFBQUMsRUFBZSxFQUNkLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLGFBQWEsRUY5REQsSUFBSSxHRStEakI7O0FBR0QsS0FBSyxDQUFBLElBQUEsQ0FBTSxRQUFOLEFBQUMsRUFBZSxFQUNuQixVQUFVLEVBQUUsVUFBVSxHQUN2Qjs7QUFnQkQsYUFBYSxDQUFDLEVBQ1osS0FBSyxFRmxHSyxPQUFPLEdFbUdsQjs7Q0p3R0gsSU1oUkUsQ0FBTSxNQUFOLEFBQUMsSU5pUkgsSU1oUkUsQ0FBTSxVQUFOLEFBQUMsSU5pUkgsSU1oUkUsQ0FBTSxPQUFOLEFBQUMsRUFBYyxFQUNiLE1BQU0sRUFBRSxVRDRFNkMsR0MzRXREOztDTmlSSCxJTTlRRSxDQUFNLFVBQU4sQUFBQyxJQUFtQixLQUFLLEdOK1EzQixJTTlRRSxDQUFNLE9BQU4sQUFBQyxJQUFnQixLQUFLLENBQUMsRUFDckIsT0FBTyxFQUFFLFlBQVksRUFDckIsY0FBYyxFQUFFLFFBQVEsRUFFeEIsV0FBc0IsRUFBUyxNQUFtQixFQUNsRCxZQUF1QixFRGtFZixNQUE2QyxFQ2pFckQsYUFBYSxFQUFFLENBQUMsR0FLakI7O0NOeVFELElNclJBLENBQU0sVUFBTixBQUFDLElBQW1CLEtBQUssQ0FBQSxHQVN0QixJTjZRSCxJTXJSQSxDQUFNLE9BQU4sQUFBQyxJQUFnQixLQUFLLENBQUEsR0FRbkIsRUFBTSxFQUNMLE1BQU0sRUFBRSxPQUFPLEdBQ2hCOztBQUlILEtBQUssSUFBQSxJQUFHLENBQU0sVUFBTixBQUFDLEdBQ1QsS0FBSyxJQUFBLElBQUcsQ0FBTSxPQUFOLEFBQUMsRUFBYyxFQUNyQixZQUF1QixFQUFTLE1BQW1CLEdBQ3BEOztDTjJRSCxJTXhRRSxDQUFNLE1BQU4sQUFBQyxFQUFhLEVBQ1osS0FBSyxFQUFFLElBQUksR0FDWjs7QUNHRCxLQUFLLENBQUMsRUFqQk4sT0FBTyxFQUFFLEtBQUssRUFDZCxNQUFNLEVBQUUsQ0FBQyxFQUVULFNBQVMsRUY0REMsTUFBNkMsRUUzRHZELFdBQVcsRUw0RFUsTUFBTSxFSzNEM0IsV0FBVyxFTDJZWSxHQUFHLEVLMVkxQixLQUFLLEVMaURDLE9BQU8sR0toQ1o7O0FBTkQsS0FBSyxPQUdLLENBQUMsRUFSWCxNQUFNLEVBQUUsVUZtRCtDLEVFbER2RCxPQUFPLEVBQUUsUUFBcUQsR0FTM0Q7O0FDMUJILFVBQVUsQ0FBQyxFQUdULFVBQVUsRUFGRyxPQUEwQixFQUd2QyxTQUFTLEVIK0RELE1BQTZDLEVHOURyRCxVQUFVLEVOdVlRLE1BQU0sRU10WXhCLEtBQUssRU5xREQsT0FBTyxHTXBEWjs7QUNGRCxZQUFZLENBQUMsRUFDWCxPQUFPLEVBQXNCLElBQUksRUFDakMsS0FBSyxFQUFFLElBQUksRUFDWCxhQUFhLEVKMkRMLE1BQTZDLEVJeERuRCxXQUFXLEVBQUUsT0FBTyxHQWN2Qjs7QUFwQkQsWUFBWSxHQVNSLFlBQVksRUFUaEIsWUFBWSxHQVNSLFlBQVksbUJBQ1csR0FBRyxDQUFDLENBQUMsRUFDMUIsYUFBYSxFUHNETCxhQUFJLEdPckRiOztBQVpMLFlBQVksR0FlUixXQUFXLEVBZmYsWUFBWSxHQWVSLFdBQVcsbUJBQ1ksR0FBRyxDQUFDLENBQUMsRUFDMUIsYUFBYSxFQUFxRSxhQUErQixHQUNsSDs7QUFJTCxrQkFVa0IsRUErQmxCLGtCQUFrQixFQVVsQixtQkFBbUIsRUFBbkIsbUJBQW1CLENBZWpCLENBQUMsRUFmSCxtQkFBbUIsQ0FnQmpCLEtBQUssRUFoQlAsbUJBQW1CLENBaUJqQixNQUFNLEVBakJSLG1CQUFtQixDQWtCakIsS0FBSyxDQXJFWSxFQUNqQixNQUFNLEVBQUUsQ0FBQyxFQUNULFdBQVcsRUFBRSxNQUFNLEdBTXBCOztBQUVELGtCQUFrQixDQUFDLEVBRWpCLE9BQU8sRUFBRSxNUHlXYyxFT3hXdkIsTUFBTSxFUHVXWSxpQkF0VkQsRU9oQmpCLFVBQVUsRVBlRCxPQUFPLEVPYmhCLEtBQUssRVBnQkQsT0FBTyxFT2ZYLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLFdBQVcsRUFBRSxNQUFNLEVBR2pCLE9BQU8sRUFBRSxJQUFJLEVBQ2IsSUFBSSxFQUFFLFFBQVEsRUFDZCxXQUFXLEVBQUUsTUFBTSxHQWdCdEI7O0FBN0JELGtCQUFrQixZQXFCRCxDQUFDLEVBQ1osWUFBdUIsRUFBUyxDQUFDLEdBQ2xDOztBQXZCTCxrQkFBa0IsV0F5QkYsQ0FBQyxFQUNYLFdBQXNCLEVBQVMsQ0FBQyxHQUNqQzs7QUFJTCxrQkFBa0IsQ0FBQyxFQUVqQixhQUFhLEVBQUUsQ0FBQyxFQUdkLElBQUksRUFBRSxPQUFPLEVBQ2IsU0FBUyxFQUFFLENBQUMsR0FFZjs7QUFFRCxtQkFBbUIsQ0FBQyxFQUVsQixXQUFXLEVBQUUsQ0FBQyxFQUNkLGNBQWMsRUFBRSxDQUFDLEVBQ2pCLFVBQVUsRUFBRSxNQUFNLEVBR2hCLE9BQU8sRUFBRSxJQUFJLEVBQ2IsSUFBSSxFQUFFLFFBQVEsR0F3QmpCOztBQWhDRCxtQkFBbUIsQ0FlakIsQ0FBQyxFQWZILG1CQUFtQixDQWdCakIsS0FBSyxFQWhCUCxtQkFBbUIsQ0FpQmpCLE1BQU0sRUFqQlIsbUJBQW1CLENBa0JqQixLQUFLLENBQUMsRUFJRixVQUFVLEVBQUUsT0FBTyxFQUNuQixNQUFNLEVBQUUsSUFBSSxFQUtkLFdBQVcsRUFBRSxDQUFDLEVBQ2QsY0FBYyxFQUFFLENBQUMsRUFDakIsU0FBUyxFSnpDSCxNQUE2QyxHSTBDcEQ7O0FWcURILFFBQVEsQ1dqSkMsRUFDUCxNQUFNLEVBQUUsQ0FBQyxFQUNULE9BQU8sRUFBRSxDQUFDLEVBQ1YsTUFBTSxFQUFFLENBQUMsR0FDVjs7QVhzSkQsTUFBTSxDV3BKQyxFQUNMLFNBQVMsRUFBRSxJQUFJLEVBQ2YsYUFBYSxFQUFFLE1BQW1CLEdBQ25DOztBQUVELFNBQVMsQ0FBQyxFQXhCVixNQUFNLEVMK0RJLFFBS0MsRUtuRVgsT0FBTyxFTDhERyxJQUE2QyxFSzdEdkQsTUFBTSxFUitYVSxpQkE1VUcsR1EzQmxCOztBQXRCRCxTQW9CUyxDQXBCVCxNQUFNLENBQUMsRUFFTCxNQUFNLEVBQUUsQ0FBQyxFQUNULFdBQXNCLEVMd0RkLE9BQTZDLEVLdkRyRCxPQUFPLEVMNERDLFFBTDZDLEdLdER0RDs7QVQ4SkQsTUFBTSxDVTlHQyxFQTNEUCxNQUFNLEVBRkcsTUFBNkksRUFHdEosTUFBTSxFQUFFLFVOZ0UrQyxFTS9EdkQsT0FBTyxFVCtaTyxNQUFpQixFUzdaL0IsVUFBVSxFQUFFLElBQUksRUFDaEIsTUFBTSxFVDBaTyxpQkF4V00sRVNqRG5CLGFBQWEsRVQ4REMsSUFBSSxFUzdEbEIsZ0JBQWdCLEVUbURWLE9BQU8sRVNqRGIsV0FBVyxFVCtZTyxPQUFPLEVTOVl6QixTQUFTLEVOdURDLE1BQTZDLEVNdER2RCxXQUFXLEVUdURVLE1BQU0sRVN0RDNCLFdBQVcsRVRrQ08sR0FBRyxFU2pDckIsS0FBSyxFVDRDQyxPQUFPLEVDc0ViLGdCQUFnQixFQUFFLG1OQUF1TSxFUTlHdk4saUJBQWlCLEVBQUUsV0FBVyxFQUM5QixtQkFBbUIsRVZrRmdDLG9CVWxGTyxFQUMxRCxpQkFBaUIsRUFBRSxTQUFTLEVBQzVCLGVBQWUsRUFBRSxPQUFPLEVBRXhCLGFBQXdCLEVBQVUsTUFBcUIsRUFJdkQsVUFBVSxFVDJZSywrQ0FBK0MsR1N4Vy9EOztBUm9FRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxHQUFHLElGd0NqQyxNQUFNLENVOUdDLEVSeUVILGdCQUFnQixFQUFFLHFWQUFxVixHUXZFMVc7O0FBL0JELE1BQUMsTUFBTSxDQUFDLEVBQ04sT0FBTyxFQUFFLElBQUksRUFDYixNQUFNLEVUZ1lXLGlCQXhXRixFU3ZCZixnQkFBZ0IsRVR5QlosT0FBTyxFU3hCWCxVQUFVLEVUaVlPLGVBNVdBLEVTbEJmLFVBQVUsRVRnWUcsK0NBQStDLEdTOVgvRDs7QUFHRCxNQUFDLFNBQVMsQ0FBQyxFQUNULGdCQUFnQixFVFdQLE9BQU8sRVNWaEIsTUFBTSxFVHdYYyxXQUFXLEdTdlhoQzs7QUFHRCxNQUFDLFlBQVksQ0FBQyxFQUNaLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBRUQsTUFPTSxDQUFBLFFBUEwsRUFBVyxFQUNWLE1BQU0sRUFBRSxJQUFJLEVBQ1osZ0JBQWdCLEVBQUUsSUFBSSxHQUN2Qjs7QUNsQ0QsaUJBQUMsSUFBSyxDQUFBLE1BQU0sRUFBRSxFQUNaLFlBQVksRVY4QlAsT0FBTyxFVTdCWixnQkFBZ0IsRUFBRSxPQUE2QyxHQUtoRTs7QUFIQyxpQkFKRCxJQUFLLENBQUEsTUFBTSxDQUlULGFBQWEsQ0FBQyxFQUNiLEtBQUssRVYwQkYsT0FBTyxHVXpCWDs7QUF5QkQsaUJBQWlCLENBQUMsRUFDaEIsS0FBSyxFVkRGLE9BQU8sR1VFWDs7QUFJSCxXQUFXLENBQUMsRUF6QlosT0FBTyxFQUFFLElBQUksRUFDYixVQUFVLEVBQUUsT0FBb0IsRUFDaEMsYUFBYSxFUDhCSCxNQUE2QyxFTzVCdkQsU0FBUyxFUDRCQyxNQUE2QyxFTzNCdkQsV0FBVyxFVjZCUSxJQUFJLEVVNUJ2QixLQUFLLEVWYUUsT0FBTyxHVVliOztBQU5ELFdBQVcsV0FHRyxDQUFDLEVBQ1gsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUN5S0gsR0FBRyxFQUNILEVBQUUsRUFDRixFQUFFLEVBQ0YsRUFBRSxFQUNGLEVBQUUsRUFDRixFQUFFLEVBQ0YsRUFBRSxFQUNGLEVBQUUsRUFDRixFQUFFLEVBQ0YsRUFBRSxFQUNGLEVBQUUsRUFDRixFQUFFLEVBQ0YsRUFBRSxFQUNGLEdBQUcsRUFDSCxJQUFJLEVBQ0osQ0FBQyxFQUNELFVBQVUsRUFDVixFQUFFLEVBQ0YsRUFBRSxDQUFDLEVBQ0QsTUFBTSxFQUFFLENBQUMsRUFDVCxPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQUdELENBQUMsQ0FBQyxFQUNBLGFBQWEsRVh2SFMsSUFBSSxFV3lIMUIsU0FBUyxFQUFFLE9BQU8sRUFDbEIsV0FBVyxFWDNIUSxHQUFHLEVXNEh0QixjQUFjLEVYMUhTLGtCQUFrQixHVzJIMUM7O0FBR0QsRUFBRSxFQUNGLENBQUMsQ0FBQyxFQUNBLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLFdBQVcsRUFBRSxPQUFPLEdBQ3JCOztBQUdELE1BQU0sRUFDTixDQUFDLENBQUMsRUFDQSxXQUFXLEVYL01NLElBQUksRVdnTnJCLFdBQVcsRUFBRSxPQUFPLEdBQ3JCOztBZG5ORCxLQUFLLENjc05DLEVBQ0osU0FBUyxFWGpKSyxHQUFHLEVXa0pqQixXQUFXLEVBQUUsT0FBTyxHQUNyQjs7QUFHRCxFQUFFLEVBQUUsR0FBRyxFQUNQLEVBQUUsRUFBRSxHQUFHLEVBQ1AsRUFBRSxFQUFFLEdBQUcsRUFDUCxFQUFFLEVBQUUsR0FBRyxFQUNQLEVBQUUsRUFBRSxHQUFHLEVBQ1AsRUFBRSxFQUFFLEdBQUcsQ0FBQyxFQUNOLFdBQVcsRVh0T0ksOENBQThDLEVXdU83RCxVQUFVLEVYckxNLE1BQU0sRVdzTHRCLFdBQVcsRVhuT1EsTUFBTSxFV29PekIsS0FBSyxFWHJMTSxPQUFPLEVXc0xsQixjQUFjLEVYaktNLGtCQUFrQixHV3VLdkM7O0FBaEJELEVBQUUsQ0FZQSxLQUFLLEVBWkgsR0FBRyxDQVlMLEtBQUssRUFYUCxFQUFFLENBV0EsS0FBSyxFQVhILEdBQUcsQ0FXTCxLQUFLLEVBVlAsRUFBRSxDQVVBLEtBQUssRUFWSCxHQUFHLENBVUwsS0FBSyxFQVRQLEVBQUUsQ0FTQSxLQUFLLEVBVEgsR0FBRyxDQVNMLEtBQUssRUFSUCxFQUFFLENBUUEsS0FBSyxFQVJILEdBQUcsQ0FRTCxLQUFLLEVBUFAsRUFBRSxDQU9BLEtBQUssRUFQSCxHQUFHLENBT0wsS0FBSyxDQUFDLEVBQ0osV0FBVyxFQUFFLENBQUMsRUFDZCxLQUFLLEVYcFBHLE9BQU8sR1dxUGhCOztBQVFHLEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsRVFtUTdDLFdBQVcsRVhsTkgsR0FBRyxFVzBOWCxVQUFVLEVBQUUsQ0FBQyxFQU9iLGFBQWEsRVhoT0YsTUFBTSxHV2tPcEI7O0FBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsSUFBNkMsRVFtUTdDLFdBQVcsRVhsTkgsR0FBRyxFVzBOWCxVQUFVLEVBQUUsQ0FBQyxFQU9iLGFBQWEsRVhoT0YsTUFBTSxHV2tPcEI7O0FBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsRVFtUTdDLFdBQVcsRVhsTkgsR0FBRyxFVzBOWCxVQUFVLEVBQUUsQ0FBQyxFQU9iLGFBQWEsRVhoT0YsTUFBTSxHV2tPcEI7O0FBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsRVFtUTdDLFdBQVcsRVhsTkgsR0FBRyxFVzBOWCxVQUFVLEVBQUUsQ0FBQyxFQU9iLGFBQWEsRVhoT0YsTUFBTSxHV2tPcEI7O0FBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsRVFtUTdDLFdBQVcsRVhsTkgsR0FBRyxFVzBOWCxVQUFVLEVBQUUsQ0FBQyxFQU9iLGFBQWEsRVhoT0YsTUFBTSxHV2tPcEI7O0FBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsRVFtUTdDLFdBQVcsRVhsTkgsR0FBRyxFVzBOWCxVQUFVLEVBQUUsQ0FBQyxFQU9iLGFBQWEsRVhoT0YsTUFBTSxHV2tPcEI7O0FoQnRNSCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJZ0JxS3ZDLEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsR1FvUmhEO0VBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsSUFBNkMsR1FvUmhEO0VBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsR1FvUmhEO0VBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsR1FvUmhEO0VBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsSUFBNkMsR1FvUmhEO0VBakNELEVBQUUsRUFBRSxHQUFHLENBQWlCLEVBSXBCLFNBQVMsRVJ2UFQsTUFBNkMsR1FvUmhEOztBZHBUUCxDQUFDLENjMFRDLEVBQ0EsV0FBVyxFQUFFLE9BQU8sRUFDcEIsS0FBSyxFWDdTRSxPQUFPLEVXOFNkLGVBQWUsRVgxTU0sSUFBSSxFVzRNekIsTUFBTSxFQUFFLE9BQU8sR0FhaEI7O0FBbEJELENBQUMsTUFPUSxFQVBULENBQUMsTUFRUSxDQUFDLEVBQ04sS0FBSyxFWGpOVSxPQUE0QyxHV3FONUQ7O0FBYkgsQ0FBQyxDQWVDLEdBQUcsQ0FBQyxFQUNGLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FkOVZILEVBQUUsQ2NrV0MsRUFDRCxLQUFLLEVBQUUsSUFBSSxFQUVYLFNBQVMsRVJsVEQsTUFBNkMsRVFtVHJELE1BQU0sRUFBRSxDQUFDLEVBQ1QsTUFBTSxFUnBURSxTSHVGaUIsRVcrTnpCLFVBQVUsRUFBRSxDQUFDLEVBQ2IsWUFBWSxFQUFFLENBQUMsRUFDZixhQUFhLEVYbE9MLGlCQWhHUyxFV21VakIsV0FBVyxFQUFFLENBQUMsR0FDZjs7QUFHRCxFQUFFLEVBQ0YsRUFBRSxFQUNGLEVBQUUsQ0FBQyxFQUNELGFBQWEsRVh2UFMsSUFBSSxFV3dQMUIsbUJBQW1CLEVYdE9ELE9BQU8sRVd1T3pCLFdBQVcsRVgxUFEsR0FBRyxHVzJQdkI7O0FBR0QsRUFBRSxDQUFDLEVBQ0QsU0FBUyxFQUFFLE9BQU8sR0FDbkI7O0FBR0QsRUFBRSxDQUFDLEVBQ0QsV0FBc0IsRVhoUFAsT0FBTyxFV2lQdEIsZUFBZSxFWG5QRCxJQUFJLEdXb1BuQjs7QUFHRCxFQUFFLENBQUMsRUFDRCxXQUFzQixFWHRQUCxPQUFPLEdXdVB2Qjs7QUFHRCxFQUFFLENBQUYsRUFBRSxFQUFFLEVBQUUsQ0FBTixFQUFFLEVBQUYsRUFBRSxDQUFFLEVBQUUsRUFBRixFQUFFLENBQUYsRUFBRSxDQUNBLEVBQ0YsV0FBc0IsRVgzUEYsT0FBTyxFVzRQM0IsYUFBYSxFQUFFLENBQUMsR0FDakI7O0FBSUgsRUFBRSxDQUFDLEVBQ0QsYUFBYSxFWGpRUSxJQUFJLEdXdVExQjs7QUFQRCxFQUFFLENBR0EsRUFBRSxDQUFDLEVBQ0QsYUFBYSxFWGxRVyxNQUFNLEVXbVE5QixXQUFXLEVYaldJLElBQUksR1drV3BCOztBQUlILFVBQVUsQ0FBQyxFQUNULE1BQU0sRUFBRSxRWGhTa0IsRVdpUzFCLE9BQU8sRVIxV0Msb0JBQTZDLEVRMldyRCxXQUFzQixFWHhRTixpQkE3R0MsR1cyWGxCOztBQVRELFVBQVUsRUFBVixVQUFVLENBS0wsQ0FBQyxDQUFDLEVBQ0gsV0FBVyxFWHRTTSxHQUFHLEVXdVNwQixLQUFLLEVYeFhDLE9BQU8sR1d5WGQ7O0FBSUgsSUFBSSxDQUFDLEVBQ0gsT0FBTyxFQUFFLEtBQUssRUFDZCxTQUFTLEVSdFhELE1BQTZDLEVRdVhyRCxLQUFLLEVYaFlHLE9BQU8sR1dxWWhCOztBQVJELElBQUksT0FLTSxDQUFDLEVBQ1AsT0FBTyxFWHBSUyxLQUFhLEdXcVI5Qjs7QUFJSCxJQUFJLEVBQUUsSUFBSSxDQUFBLEtBQUEsRUFBUSxFQUNoQixhQUFhLEVYcFJBLGtCQXBIRixFV3lZWCxNQUFNLEVBQUUsSUFBSSxFQUNaLGVBQWUsRUFBRSxJQUFJLEdBQ3RCOztBQUdELE1BQU0sQ0FBQyxFQUNMLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBR0QsSUFBSSxDQUFDLEVBQ0gsT0FBTyxFUjVZQyxvQkFBNkMsRVE4WXJELE1BQU0sRVgvVEksaUJBekZPLEVXeVpqQixnQkFBZ0IsRVgxWlAsT0FBTyxFVzRaaEIsV0FBVyxFWGxXUywrQ0FBK0MsRVdtV25FLFdBQVcsRVhqWlEsTUFBTSxFV2taekIsS0FBSyxFWDNaRCxPQUFPLEdXNFpaOztBQUdELEdBQUcsQ0FBQyxFQUNGLE1BQU0sRUFBRSxDQUFDLEVBQ1QsT0FBTyxFUnpaQyxlQUtDLEVRc1pULGdCQUFnQixFWHRhUCxPQUFPLEVXd2FoQixXQUFXLEVYOVdTLCtDQUErQyxFVytXbkUsS0FBSyxFWHRhRCxPQUFPLEVXeWFULGFBQWEsRVg5WkgsSUFBSSxHV2dhakI7O0FDNWNELFVBQVUsQ0FBQyxFQUNULFVBQVUsRVo4SlMsTUFBTSxFWTdKekIsYUFBYSxFWjhKUyxNQUFNLEVZNUo1QixXQUFXLEVac0NRLE1BQU0sRVlyQ3pCLFdBQVcsRVp1SlEsR0FBRyxFWXRKdEIsS0FBSyxFWjBCRyxPQUFPLEdZekJoQjs7QUFHRCxLQUFLLENBQUMsRUFDSixTQUFTLEVaK0lJLE9BQXdCLEVZOUlyQyxXQUFXLEVaK0lHLEdBQUcsR1k5SWxCOztBQUdELEtBQUssQ0FBQyxFQUNKLFNBQVMsRVpnSkksTUFBTSxFWS9JbkIsV0FBVyxFQUFFLENBQUMsR0FLZjs7QUFIQyxDQUFDLEdBSkgsS0FBSyxDQUlHLEVBQ0osVUFBVSxFQUFFLEtBQUssR0FDbEI7O0FBR0gsRUFBRSxVQUVXLEVBRlQsRUFBRSxVQUVPLENBQUMsRUFDVixXQUFzQixFQUFTLENBQUMsRUFDaEMsVUFBVSxFQUFFLElBQUksR0FDakI7O0FDL0RLLFVBQVUsQ0FBTSxFQUNkLFVBQVUsRUFSQyxJQUFJLEdBU2hCOztBQUZELFdBQVcsQ0FBSyxFQUNkLFVBQVUsRUFSTyxLQUFLLEdBU3ZCOztBQUZELFlBQVksQ0FBSSxFQUNkLFVBQVUsRUFSYyxNQUFNLEdBUy9COztBQUZELGFBQWEsQ0FBRyxFQUNkLFVBQVUsRUFSc0IsT0FBTyxHQVN4Qzs7QWxCc0pMLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElrQjdKckMsaUJBQWlCLENBQVEsRUFDdkIsVUFBVSxFQUhDLElBQUksR0FJaEI7RUFGRCxrQkFBa0IsQ0FBTyxFQUN2QixVQUFVLEVBSE8sS0FBSyxHQUl2QjtFQUZELG1CQUFtQixDQUFNLEVBQ3ZCLFVBQVUsRUFIYyxNQUFNLEdBSS9CO0VBRkQsb0JBQW9CLENBQUssRUFDdkIsVUFBVSxFQUhzQixPQUFPLEdBSXhDOztBbEIySkwsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSWtCN0pyQyxnQkFBZ0IsQ0FBUyxFQUN2QixVQUFVLEVBSEMsSUFBSSxHQUloQjtFQUZELGlCQUFpQixDQUFRLEVBQ3ZCLFVBQVUsRUFITyxLQUFLLEdBSXZCO0VBRkQsa0JBQWtCLENBQU8sRUFDdkIsVUFBVSxFQUhjLE1BQU0sR0FJL0I7RUFGRCxtQkFBbUIsQ0FBTSxFQUN2QixVQUFVLEVBSHNCLE9BQU8sR0FJeEM7O0FDTVQsZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLGVBQWUsR0FBSTs7QUFFOUMsTUFBTSxDQUFDLEtBQUssR0FDVixDQUFDLENBQUMsRUFFRSxVQUFVLEVBQUUsc0JBQXNCLEVBR3BDLFVBQVUsRUFBRSxlQUFlLEVBRTNCLEtBQUssRUFBRSxnQkFBZ0IsRUFDdkIsV0FBVyxFQUFFLGVBQWUsR0FDN0I7RUFaSCxlQUFlLENBY0csRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEdBQUk7RUFDL0MsZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLGVBQWUsR0FBSTtFQUU5QyxLQUFLLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsR0FBSTtFQUNwRCxLQUFLLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSw2QkFBNkIsR0FBSTtFQUNqRSxLQUFLLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSwwQkFBMEIsR0FBSTtFQUM5RCxFQUFFLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsR0FBSTtFQUNyRCxFQUFFLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsR0FBSTtFQUN0RCxFQUFFLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsR0FBSTtFQUd0RCxDQUFDLEVBQ0QsQ0FBQyxRQUFRLENBQUMsRUFBRSxlQUFlLEVBQUUsU0FBUyxHQUFHO0VBRXZDLENBQUMsQ0FBQSxJQUFBLENBQU0sTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxHQUFJO0VBSWxELEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFDWCxDQUFDLENBQUEsSUFBQSxFQUFPLGFBQVAsQUFBQyxDQUFvQixNQUFNLEVBQzVCLENBQUMsQ0FBQSxJQUFBLEVBQU8sR0FBUCxBQUFDLENBQVUsTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsR0FBSTtFQUdwQyxJQUFJLENBQUEsS0FBQSxDQUFPLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBSTtFQUdyRCxHQUFHLEVBQ0gsVUFBVSxDQUFDLEVBQ1QsTUFBTSxFQUFFLGlCZG9CSyxFY25CYixpQkFBaUIsRUFBRSxLQUFLLEdBQ3pCO0VBR0QsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixHQUFJO0VBRXZDLEVBQUUsRUFDRixHQUFHLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEdBQUk7RWpCaURwQyxHQUFHLENpQi9DRyxFQUFFLFNBQVMsRUFBRSxlQUFlLEdBQUk7RUFFcEMsS0FBSyxHQUFHLE1BQU0sRUFBRSxLQUFLO0VBRXJCLENBQUMsRUFDRCxFQUFFLEVBQ0YsRUFBRSxDQUFDLEVBQ0QsT0FBTyxFQUFFLENBQUMsRUFDVixNQUFNLEVBQUUsQ0FBQyxHQUNWO0VBR0QsRUFBRSxFQUNGLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQixFQUFFLEtBQUssR0FBSTtFQUdoQyxtQkFBbUIsQ0FBQyxFQUNsQixpQkFBaUIsRUFBRSxJQUFJLEdBQ3hCOztBQzNFSCxlQUFlLENBQUMsRUNvQlYsYUFBeUIsRUFBRyxJQUFpQyxFQUE3RCxZQUF5QixFQUFHLElBQWlDLEVDZG5FLFNBQVMsRWRzRUMsTUFBNkMsRWNyRXZELE1BQU0sRUFBRSxNQUFNLEdGR2I7O0FwQmdKRyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0IxSjdDLGVBQWUsQ0FBQyxFQ29CVixhQUF5QixFQUFHLElBQWlDLEVBQTdELFlBQXlCLEVBQUcsSUFBaUMsR0RWbEU7O0FBVkQsZUFBZSxNQUdOLENBQUMsRUNpQkosYUFBeUIsRUFBRyxJQUFpQyxFQUE3RCxZQUF5QixFQUFHLElBQWlDLEVDZG5FLFNBQVMsRUZGc0IsSUFBSSxFRUduQyxNQUFNLEVBQUUsTUFBTSxHRkZYOztBcEJxSkMsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CMUo3QyxlQUFlLE1BR04sQ0FBQyxFQ2lCSixhQUF5QixFQUFHLElBQWlDLEVBQTdELFlBQXlCLEVBQUcsSUFBaUMsR0RmaEU7O0FBTEgsZUFBZSxLQU9QLENBQUMsRUNzQkwsYUFBeUIsRUFBRyxDQUFpQyxFQUE3RCxZQUF5QixFQUFHLENBQWlDLEVDdkJqRSxTQUFTLEVGRXNCLElBQUksRUVEbkMsTUFBTSxFQUFFLE1BQU0sR0ZFWDs7QUFJSCxPQUFPLENBQUMsRUVRUixPQUFPLEVBQUUsSUFBSSxFQUNiLFNBQVMsRUFKa0MsUUFDdEIsR0ZKcEI7O0FBRUQsS0FBSyxDQUFDLEVHcUJKLElBQUksRUFBRSxRQUFRLEVBQ2QsVUFBVSxFQUFFLEdBQUcsRUFDZixTQUFTLEVBQUUsR0FBRyxFQXNDZCxLQUFhLEVBRGlCLElBQXNCLEdIaERyRDs7QUFaRCxLQUFLLEtBSUcsQ0FBQyxFR3NCUCxJQUFJLEVBQUUsT0FBTyxHSHBCWjs7QUFOSCxLQUFLLE9BUUssQ0FBQyxFR3FCVCxJQUFJLEVBQUUsUUFBUSxHSG5CYjs7QUFHSCxPQUFPLEdBQ0gsS0FBSyxDQUFDLEVHdUNSLEtBQWEsRUFBRSxJQUFJLEdIckNsQjs7QUFISCxPQUFPLEdBS0gsT0FBTyxDQUFDLEVHdUNWLEtBQWEsRUFBRSxJQUFJLEdIckNsQjs7QUFTRCxPQUFPLEdBS0gsYUFBYSxFQUxqQixPQUFPLEdBS2MsV0FBVyxFQUxoQyxPQUFPLEdBSzZCLFFBQVEsRUFMNUMsT0FBTyxHQUt5QyxRQUFRLEVBTHhELE9BQU8sR0FLcUQsUUFBUSxFQUxwRSxPQUFPLEdBS2lFLFFBQVEsRUFMaEYsT0FBTyxHQUs2RSxRQUFRLEVBTDVGLE9BQU8sR0FLeUYsUUFBUSxFQUx4RyxPQUFPLEdBS3FHLFFBQVEsRUFMcEgsT0FBTyxHQUtpSCxRQUFRLEVBTGhJLE9BQU8sR0FLNkgsUUFBUSxFQUw1SSxPQUFPLEdBS3lJLFNBQVMsRUFMekosT0FBTyxHQUtzSixTQUFTLEVBTHRLLE9BQU8sR0FLbUssU0FBUyxDQUF6SyxFQUNOLFVBQVUsRUFBRSxJQUFJLEdBQ2pCOztBcEJxR0QsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CNUczQyxPQUFPLEdBS0gsY0FBYyxFQUxsQixPQUFPLEdBS2UsWUFBWSxFQUxsQyxPQUFPLEdBSytCLFNBQVMsRUFML0MsT0FBTyxHQUs0QyxTQUFTLEVBTDVELE9BQU8sR0FLeUQsU0FBUyxFQUx6RSxPQUFPLEdBS3NFLFNBQVMsRUFMdEYsT0FBTyxHQUttRixTQUFTLEVBTG5HLE9BQU8sR0FLZ0csU0FBUyxFQUxoSCxPQUFPLEdBSzZHLFNBQVMsRUFMN0gsT0FBTyxHQUswSCxTQUFTLEVBTDFJLE9BQU8sR0FLdUksU0FBUyxFQUx2SixPQUFPLEdBS29KLFVBQVUsRUFMckssT0FBTyxHQUtrSyxVQUFVLEVBTG5MLE9BQU8sR0FLZ0wsVUFBVSxDQUF2TCxFQUNOLFVBQVUsRUFBRSxJQUFJLEdBQ2pCOztBcEJxR0QsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CNUczQyxPQUFPLEdBS0gsYUFBYSxFQUxqQixPQUFPLEdBS2MsV0FBVyxFQUxoQyxPQUFPLEdBSzZCLFFBQVEsRUFMNUMsT0FBTyxHQUt5QyxRQUFRLEVBTHhELE9BQU8sR0FLcUQsUUFBUSxFQUxwRSxPQUFPLEdBS2lFLFFBQVEsRUFMaEYsT0FBTyxHQUs2RSxRQUFRLEVBTDVGLE9BQU8sR0FLeUYsUUFBUSxFQUx4RyxPQUFPLEdBS3FHLFFBQVEsRUFMcEgsT0FBTyxHQUtpSCxRQUFRLEVBTGhJLE9BQU8sR0FLNkgsUUFBUSxFQUw1SSxPQUFPLEdBS3lJLFNBQVMsRUFMekosT0FBTyxHQUtzSixTQUFTLEVBTHRLLE9BQU8sR0FLbUssU0FBUyxDQUF6SyxFQUNOLFVBQVUsRUFBRSxJQUFJLEdBQ2pCOztBQWFILE9BZVMsR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxTQUFTLEVBQW5CLE9BQU8sR0FBRyxTQUFTLEVBQW5CLE9BQU8sR0FBRyxTQUFTLENBZnlCLEVHcEI5QyxJQUFJLEVBQUUsUUFBUSxHSHNCYjs7QUFhQyxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsUUFBc0IsR0hPakQ7O0FBSEQsT0FBTyxHQUFHLFFBQVEsQ0FBWSxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEOztBQUhELE9BQU8sR0FBRyxRQUFRLENBQVksRUdIaEMsS0FBYSxFQURpQixHQUFzQixHSE9qRDs7QUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7O0FBSEQsT0FBTyxHQUFHLFFBQVEsQ0FBWSxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEOztBQUhELE9BQU8sR0FBRyxRQUFRLENBQVksRUdIaEMsS0FBYSxFQURpQixHQUFzQixHSE9qRDs7QUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7O0FBSEQsT0FBTyxHQUFHLFFBQVEsQ0FBWSxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEOztBQUhELE9BQU8sR0FBRyxRQUFRLENBQVksRUdIaEMsS0FBYSxFQURpQixHQUFzQixHSE9qRDs7QUFIRCxPQUFPLEdBQUcsU0FBUyxDQUFXLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7O0FBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEOztBQUhELE9BQU8sR0FBRyxTQUFTLENBQVcsRUdIaEMsS0FBYSxFQURpQixJQUFzQixHSE9qRDs7QXBCc0VELE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQjlGekMsT0FBTyxHQUFHLFlBQVksQ0FBTyxFR2pCL0IsSUFBSSxFQUFFLE9BQU8sRUEyQmIsS0FBYSxFQUFFLElBQUksR0hQaEI7RUFHSCxPQU1TLEdBQUcsY0FBYyxFQVN4QixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsU0FBUyxFQUFuQixPQUFPLEdBQUcsVUFBVSxFQUFwQixPQUFPLEdBQUcsVUFBVSxFQUFwQixPQUFPLEdBQUcsVUFBVSxDQWZ3QixFR3BCOUMsSUFBSSxFQUFFLFFBQVEsR0hzQmI7RUFJQyxPQUFPLEdBQUcsY0FBYyxDQUFPLEVHRWpDLEtBQWEsRUFBRSxJQUFJLEdIQ2hCO0VBTUQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLFFBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLEdBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLEdBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFNBQVMsQ0FBVyxFR0hoQyxLQUFhLEVBRGlCLEdBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFVBQVUsQ0FBVSxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFVBQVUsQ0FBVSxFR0hoQyxLQUFhLEVBRGlCLFNBQXNCLEdIT2pEO0VBSEQsT0FBTyxHQUFHLFVBQVUsQ0FBVSxFR0hoQyxLQUFhLEVBRGlCLElBQXNCLEdIT2pEOztBcEJzRUQsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9COUZ6QyxPQUFPLEdBQUcsV0FBVyxDQUFRLEVHakIvQixJQUFJLEVBQUUsT0FBTyxFQTJCYixLQUFhLEVBQUUsSUFBSSxHSFBoQjtFQUdILE9BTVMsR0FBRyxhQUFhLEVBU3ZCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxRQUFRLEVBQWxCLE9BQU8sR0FBRyxTQUFTLEVBQW5CLE9BQU8sR0FBRyxTQUFTLEVBQW5CLE9BQU8sR0FBRyxTQUFTLENBZnlCLEVHcEI5QyxJQUFJLEVBQUUsUUFBUSxHSHNCYjtFQUlDLE9BQU8sR0FBRyxhQUFhLENBQVEsRUdFakMsS0FBYSxFQUFFLElBQUksR0hDaEI7RUFNRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsUUFBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsR0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsR0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsUUFBUSxDQUFZLEVHSGhDLEtBQWEsRUFEaUIsR0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsU0FBUyxDQUFXLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsU0FBUyxDQUFXLEVHSGhDLEtBQWEsRUFEaUIsU0FBc0IsR0hPakQ7RUFIRCxPQUFPLEdBQUcsU0FBUyxDQUFXLEVHSGhDLEtBQWEsRUFEaUIsSUFBc0IsR0hPakQ7O0FBS0wsY0FBYyxJQTVFZCxDQUFBLE9BQU8sSUE0RXVCLEtBQUssQ0FBQyxFQUNsQyxLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUdELGNBQWMsSUFBSyxDQUFBLE9BQU8sSUFBSSxLQUFLLENBQUMsRUFDbEMsTUFBTSxFQUFFLElBQUksR0FDYjs7QUE2QkQsY0FBYyxDQUFRLEVDekdoQixXQUF5QixFQUFHLEtBQWlDLEVBQTdELFlBQXlCLEVBQUcsS0FBaUMsR0R3SWxFOztBcEJGRyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0I3QjdDLGNBQWMsQ0FBUSxFQ3pHaEIsV0FBeUIsRUFBRyxLQUFpQyxFQUE3RCxZQUF5QixFQUFHLEtBQWlDLEdEd0lsRTs7QUEvQkQsY0FBYyxHQUlWLEtBQUssQ0FBQyxFRzlEUixLQUFhLEVBRHVCLGlCQUF3QyxFRnJDMUUsV0FBeUIsRUFBRyxJQUFpQyxFQUE3RCxZQUF5QixFQUFHLElBQWlDLEdEc0c5RDs7QXBCdUJDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQjdCN0MsY0FBYyxHQUlWLEtBQUssQ0FPSyxFR3JFWixLQUFhLEVBRHVCLGlCQUF3QyxFRnJDMUUsV0FBeUIsRUFBRyxJQUFpQyxFQUE3RCxZQUF5QixFQUFHLElBQWlDLEdENkcxRDs7QUFyQ1AsY0F3QmMsR0F4QlosS0FBSyxDQUFXLEVHL0JoQixLQUFhLEVBQUUsSUFBSSxHSGlDcEI7O0FBRUQsY0FvQmMsR0FwQlosT0FBTyxDQUFXLEVHL0JsQixLQUFhLEVBQUUsSUFBSSxHSGlDcEI7O0FBTUMsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxxQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLEtBQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLEtBQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLEtBQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLEtBQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixLQUFhLEVBRHlDLGlCQUEwRCxHSHNDL0c7O0FwQnVDQyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0JyRDdDLGNBd0JjLEdBeEJaLEtBQUssQ0FBVyxFRy9CaEIsS0FBYSxFQUFFLElBQUksR0hpQ3BCO0VBRUQsY0FvQmMsR0FwQlosT0FBTyxDQUFXLEVHL0JsQixLQUFhLEVBQUUsSUFBSSxHSGlDcEI7RUFNQyxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLHFCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixLQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixLQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixLQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixLQUFhLEVBRHlDLGlCQUEwRCxHSHNDL0c7RUFkSCxjQXdCYyxHQXhCWixZQUFZLENBQUksRUcvQmhCLEtBQWEsRUFBRSxJQUFJLEdIaUNwQjtFQUVELGNBb0JjLEdBcEJaLGNBQWMsQ0FBSSxFRy9CbEIsS0FBYSxFQUFFLElBQUksR0hpQ3BCO0VBTUMsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxxQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFVBQVUsQ0FBSSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFVBQVUsQ0FBSSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFVBQVUsQ0FBSSxFR25DaEIsS0FBYSxFQUR5QyxpQkFBMEQsR0hzQy9HOztBcEJ1Q0MsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CckQ3QyxjQXdCYyxHQXhCWixXQUFXLENBQUssRUcvQmhCLEtBQWEsRUFBRSxJQUFJLEdIaUNwQjtFQUVELGNBb0JjLEdBcEJaLGFBQWEsQ0FBSyxFRy9CbEIsS0FBYSxFQUFFLElBQUksR0hpQ3BCO0VBTUMsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxxQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsS0FBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsS0FBYSxFQUR5QyxpQkFBMEQsR0hzQy9HOztBQThDSCxlQUFlLENBR2IsZUFBZSxDQUFDLEVDaEpaLFlBQXlCLEVBQUcsS0FBaUMsRUFBN0QsV0FBeUIsRUFBRyxLQUFpQyxHRGtKaEU7O0FwQlpDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQk83QyxlQUFlLENBR2IsZUFBZSxDQUFDLEVDaEpaLFlBQXlCLEVBQUcsS0FBaUMsRUFBN0QsV0FBeUIsRUFBRyxLQUFpQyxHRGtKaEU7O0FBSUQsZUFBZSxJQUFLLENBQUEsS0FBSyxJQVQzQixlQUFlLENBU2tCLEVDdEozQixZQUF5QixFQUFHLEtBQWlDLEVBQTdELFdBQXlCLEVBQUcsS0FBaUMsR0R3SmhFOztBcEJsQkMsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CZ0IzQyxlQUFlLElBQUssQ0FBQSxLQUFLLElBVDNCLGVBQWUsQ0FTa0IsRUN0SjNCLFlBQXlCLEVBQUcsS0FBaUMsRUFBN0QsV0FBeUIsRUFBRyxLQUFpQyxHRHdKaEU7O0FBWEgsZUFBZSxHQWNYLEtBQUssQ0FBQyxFQzNKSixhQUF5QixFQUFHLElBQWlDLEVBQTdELFlBQXlCLEVBQUcsSUFBaUMsR0Q2SmhFOztBcEJ2QkMsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CTzdDLGVBQWUsR0FjWCxLQUFLLENBQUMsRUMzSkosYUFBeUIsRUFBRyxJQUFpQyxFQUE3RCxZQUF5QixFQUFHLElBQWlDLEdENkpoRTs7QUkvSkgsV0p3S2lCLEdJeEtiLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLElBQXNCLEdDekRyRDs7QUFGRCxXSndLaUIsR0l4S2IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEaUIsR0FBc0IsR0N6RHJEOztBQUZELFdKd0tpQixHSXhLYixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQURpQixTQUFzQixHQ3pEckQ7O0FBRkQsV0p3S2lCLEdJeEtiLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLEdBQXNCLEdDekRyRDs7QUFGRCxXSndLaUIsR0l4S2IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEaUIsR0FBc0IsR0N6RHJEOztBQUZELFdKd0tpQixHSXhLYixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQURpQixTQUFzQixHQ3pEckQ7O0FBRkQsV0p3S2lCLEdJeEtiLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLFNBQXNCLEdDekRyRDs7QUFGRCxXSndLaUIsR0l4S2IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEaUIsS0FBc0IsR0N6RHJEOztBeEJzSUcsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSXdCeEk3QyxZSndLa0IsR0l4S2QsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEaUIsSUFBc0IsR0N6RHJEO0VBRkQsWUp3S2tCLEdJeEtkLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLEdBQXNCLEdDekRyRDtFQUZELFlKd0trQixHSXhLZCxLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQURpQixTQUFzQixHQ3pEckQ7RUFGRCxZSndLa0IsR0l4S2QsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEaUIsR0FBc0IsR0N6RHJEO0VBRkQsWUp3S2tCLEdJeEtkLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLEdBQXNCLEdDekRyRDtFQUZELFlKd0trQixHSXhLZCxLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQURpQixTQUFzQixHQ3pEckQ7RUFGRCxZSndLa0IsR0l4S2QsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEaUIsU0FBc0IsR0N6RHJEO0VBRkQsWUp3S2tCLEdJeEtkLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLEtBQXNCLEdDekRyRDs7QXhCc0lHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLEl3QnhJN0MsV0p3S2lCLEdJeEtiLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLElBQXNCLEdDekRyRDtFQUZELFdKd0tpQixHSXhLYixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQURpQixHQUFzQixHQ3pEckQ7RUFGRCxXSndLaUIsR0l4S2IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEaUIsU0FBc0IsR0N6RHJEO0VBRkQsV0p3S2lCLEdJeEtiLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLEdBQXNCLEdDekRyRDtFQUZELFdKd0tpQixHSXhLYixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQURpQixHQUFzQixHQ3pEckQ7RUFGRCxXSndLaUIsR0l4S2IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEaUIsU0FBc0IsR0N6RHJEO0VBRkQsV0p3S2lCLEdJeEtiLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRGlCLFNBQXNCLEdDekRyRDtFQUZELFdKd0tpQixHSXhLYixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQURpQixLQUFzQixHQ3pEckQ7O0FBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLGlCQUEwRCxHQ3pEakg7O0FBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLGdCQUEwRCxHQ3pEakg7O0FBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLHNCQUEwRCxHQ3pEakg7O0FBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLGdCQUEwRCxHQ3pEakg7O0FBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLGdCQUEwRCxHQ3pEakg7O0FBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLHNCQUEwRCxHQ3pEakg7O0FBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLHNCQUEwRCxHQ3pEakg7O0FBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLGtCQUEwRCxHQ3pEakg7O0F4QnNJRyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJd0J4STdDLGNKK0xvQixXQUFXLEdJL0wzQixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxpQkFBMEQsR0N6RGpIO0VBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLGdCQUEwRCxHQ3pEakg7RUFGRCxjSitMb0IsV0FBVyxHSS9MM0IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEeUMsc0JBQTBELEdDekRqSDtFQUZELGNKK0xvQixXQUFXLEdJL0wzQixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxnQkFBMEQsR0N6RGpIO0VBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLGdCQUEwRCxHQ3pEakg7RUFGRCxjSitMb0IsV0FBVyxHSS9MM0IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEeUMsc0JBQTBELEdDekRqSDtFQUZELGNKK0xvQixXQUFXLEdJL0wzQixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxzQkFBMEQsR0N6RGpIO0VBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLGtCQUEwRCxHQ3pEakg7RUFGRCxjSitMb0IsWUFBWSxHSS9MNUIsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEeUMsaUJBQTBELEdDekRqSDtFQUZELGNKK0xvQixZQUFZLEdJL0w1QixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxnQkFBMEQsR0N6RGpIO0VBRkQsY0orTG9CLFlBQVksR0kvTDVCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLHNCQUEwRCxHQ3pEakg7RUFGRCxjSitMb0IsWUFBWSxHSS9MNUIsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEeUMsZ0JBQTBELEdDekRqSDtFQUZELGNKK0xvQixZQUFZLEdJL0w1QixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxnQkFBMEQsR0N6RGpIO0VBRkQsY0orTG9CLFlBQVksR0kvTDVCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLHNCQUEwRCxHQ3pEakg7RUFGRCxjSitMb0IsWUFBWSxHSS9MNUIsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEeUMsc0JBQTBELEdDekRqSDtFQUZELGNKK0xvQixZQUFZLEdJL0w1QixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxrQkFBMEQsR0N6RGpIOztBeEJzSUcsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSXdCeEk3QyxjSitMb0IsV0FBVyxHSS9MM0IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEeUMsaUJBQTBELEdDekRqSDtFQUZELGNKK0xvQixXQUFXLEdJL0wzQixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxnQkFBMEQsR0N6RGpIO0VBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLHNCQUEwRCxHQ3pEakg7RUFGRCxjSitMb0IsV0FBVyxHSS9MM0IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEeUMsZ0JBQTBELEdDekRqSDtFQUZELGNKK0xvQixXQUFXLEdJL0wzQixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxnQkFBMEQsR0N6RGpIO0VBRkQsY0orTG9CLFdBQVcsR0kvTDNCLEtBQUssQ0FBUSxFRDREZixLQUFhLEVBRHlDLHNCQUEwRCxHQ3pEakg7RUFGRCxjSitMb0IsV0FBVyxHSS9MM0IsS0FBSyxDQUFRLEVENERmLEtBQWEsRUFEeUMsc0JBQTBELEdDekRqSDtFQUZELGNKK0xvQixXQUFXLEdJL0wzQixLQUFLLENBQVEsRUQ0RGYsS0FBYSxFQUR5QyxrQkFBMEQsR0N6RGpIOztBSnlNRyxzQkFBc0IsQ0FBRSxFS2hOdEIsWUFBZ0IsRUFBUyxDQUFDLEVBQTFCLFdBQWdCLEVBQVMsQ0FBQyxHTGtOM0I7O0FLL01ELHNCTDZNc0IsR0s3TXBCLEtBQUssQ0FBUSxFQUVYLFlBQWdCLEVBQVMsQ0FBQyxFQUExQixXQUFnQixFQUFTLENBQUMsR0FFN0I7O0FBb0JLLHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFFBQXNCLEdFbkMzQzs7QUFGRCxzQkxxTGdCLEdLckxkLFFBQVEsQ0FBTSxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7O0FBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0VuQzNDOztBQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQzs7QUFGRCxzQkxxTGdCLEdLckxkLFFBQVEsQ0FBTSxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7O0FBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0VuQzNDOztBQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQzs7QUFGRCxzQkxxTGdCLEdLckxkLFFBQVEsQ0FBTSxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7O0FBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0VuQzNDOztBQUZELHNCTHFMZ0IsR0tyTGQsU0FBUyxDQUFLLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQzs7QUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7O0FBRkQsc0JMcUxnQixHS3JMZCxTQUFTLENBQUssRUZzQ3hCLEtBQWEsRUFEaUIsSUFBc0IsR0VuQzNDOztBekJnSFAsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSXlCbEhuQyxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixRQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixHQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixHQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixHQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFVBQVUsQ0FBSSxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFVBQVUsQ0FBSSxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCxzQkxxTGdCLEdLckxkLFVBQVUsQ0FBSSxFRnNDeEIsS0FBYSxFQURpQixJQUFzQixHRW5DM0M7O0F6QmdIUCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJeUJsSG5DLHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFFBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsU0FBUyxDQUFLLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsU0FBUyxDQUFLLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHNCTHFMZ0IsR0tyTGQsU0FBUyxDQUFLLEVGc0N4QixLQUFhLEVBRGlCLElBQXNCLEdFbkMzQzs7QUx5TFAsdUJBQXVCLENBQUUsRUsvS3ZCLFlBQWdCLEVBQVMsQ0FBQyxFQUExQixXQUFnQixFQUFTLENBQUMsR0xpTDNCOztBSzlLRCx1Qkw0S3VCLEdLNUtyQixLQUFLLENBQVEsRUFFWCxhQUFpQixFQUFVLENBQUMsRUFBNUIsWUFBaUIsRUFBVSxDQUFDLEdBRS9COztBekIrRkQsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CbUV6Qyx1QkFBdUIsQ0FBQyxFS2hOdEIsWUFBZ0IsRUFBUyxDQUFDLEVBQTFCLFdBQWdCLEVBQVMsQ0FBQyxHTGtOM0I7RUsvTUQsdUJMNk11QixHSzdNckIsS0FBSyxDQUFRLEVBRVgsWUFBZ0IsRUFBUyxDQUFDLEVBQTFCLFdBQWdCLEVBQVMsQ0FBQyxHQUU3Qjs7QXpCc0lELE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLEl5QjNIbkMsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsUUFBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixRQUFRLENBQU0sRUYrQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixTQUFTLENBQUssRUYrQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixTQUFTLENBQUssRUYrQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0U1QzNDO0VBRkQsdUJMOExpQixHSzlMZixTQUFTLENBQUssRUYrQ3hCLEtBQWEsRUFEaUIsSUFBc0IsR0U1QzNDOztBekJ5SFAsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSXlCbEhuQyx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixRQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixHQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixHQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFNBQVMsQ0FBSyxFRnNDeEIsS0FBYSxFQURpQixHQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFVBQVUsQ0FBSSxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFVBQVUsQ0FBSSxFRnNDeEIsS0FBYSxFQURpQixTQUFzQixHRW5DM0M7RUFGRCx1QkxxTGlCLEdLckxmLFVBQVUsQ0FBSSxFRnNDeEIsS0FBYSxFQURpQixJQUFzQixHRW5DM0M7O0F6QmdIUCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJeUJsSG5DLHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFFBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsUUFBUSxDQUFNLEVGc0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsU0FBUyxDQUFLLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsU0FBUyxDQUFLLEVGc0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFbkMzQztFQUZELHVCTHFMaUIsR0tyTGYsU0FBUyxDQUFLLEVGc0N4QixLQUFhLEVBRGlCLElBQXNCLEdFbkMzQzs7QXpCZ0hQLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQnlFekMsd0JBQXdCLENBQUMsRUsvS3ZCLFlBQWdCLEVBQVMsQ0FBQyxFQUExQixXQUFnQixFQUFTLENBQUMsR0xpTDNCO0VLOUtELHdCTDRLd0IsR0s1S3RCLEtBQUssQ0FBUSxFQUVYLGFBQWlCLEVBQVUsQ0FBQyxFQUE1QixZQUFpQixFQUFVLENBQUMsR0FFL0I7O0F6QitGRCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0JtRXpDLHNCQUFzQixDQUFFLEVLaE50QixZQUFnQixFQUFTLENBQUMsRUFBMUIsV0FBZ0IsRUFBUyxDQUFDLEdMa04zQjtFSy9NRCxzQkw2TXNCLEdLN01wQixLQUFLLENBQVEsRUFFWCxZQUFnQixFQUFTLENBQUMsRUFBMUIsV0FBZ0IsRUFBUyxDQUFDLEdBRTdCOztBekJzSUQsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSXlCM0huQyxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixRQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixTQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixHQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixTQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixTQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixHQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixTQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixTQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFFBQVEsQ0FBTSxFRitDeEIsS0FBYSxFQURpQixHQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFNBQVMsQ0FBSyxFRitDeEIsS0FBYSxFQURpQixTQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFNBQVMsQ0FBSyxFRitDeEIsS0FBYSxFQURpQixTQUFzQixHRTVDM0M7RUFGRCxzQkw4TGdCLEdLOUxkLFNBQVMsQ0FBSyxFRitDeEIsS0FBYSxFQURpQixJQUFzQixHRTVDM0M7O0F6QnlIUCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJeUIzSG5DLHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLFFBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsU0FBUyxDQUFLLEVGK0N4QixLQUFhLEVBRGlCLEdBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsVUFBVSxDQUFJLEVGK0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsVUFBVSxDQUFJLEVGK0N4QixLQUFhLEVBRGlCLFNBQXNCLEdFNUMzQztFQUZELHNCTDhMZ0IsR0s5TGQsVUFBVSxDQUFJLEVGK0N4QixLQUFhLEVBRGlCLElBQXNCLEdFNUMzQzs7QXpCeUhQLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLEl5QmxIbkMsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsUUFBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxRQUFRLENBQU0sRUZzQ3hCLEtBQWEsRUFEaUIsR0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxTQUFTLENBQUssRUZzQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxTQUFTLENBQUssRUZzQ3hCLEtBQWEsRUFEaUIsU0FBc0IsR0VuQzNDO0VBRkQsc0JMcUxnQixHS3JMZCxTQUFTLENBQUssRUZzQ3hCLEtBQWEsRUFEaUIsSUFBc0IsR0VuQzNDOztBekJnSFAsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CeUV6Qyx1QkFBdUIsQ0FBRSxFSy9LdkIsWUFBZ0IsRUFBUyxDQUFDLEVBQTFCLFdBQWdCLEVBQVMsQ0FBQyxHTGlMM0I7RUs5S0QsdUJMNEt1QixHSzVLckIsS0FBSyxDQUFRLEVBRVgsYUFBaUIsRUFBVSxDQUFDLEVBQTVCLFlBQWlCLEVBQVUsQ0FBQyxHQUUvQjs7QUxzTEQsZUFBZSxDQUFZLEVNaE83QixXQUFvQixFQUFRLEVBQUMsR05rTzFCOztBQUVELGNBQWMsR0FBRyxlQUFlLENBQVksRU1wTzlDLFdBQW9CLEVBQVEsZUFBQyxHTnNPMUI7O0FBTkQsZUFBZSxDQUFZLEVNaE83QixXQUFvQixFQUFRLFFBQUMsR05rTzFCOztBQUVELGNBQWMsR0FBRyxlQUFlLENBQVksRU1wTzlDLFdBQW9CLEVBQVEscUJBQUMsR05zTzFCOztBQU5ELGVBQWUsQ0FBWSxFTWhPN0IsV0FBb0IsRUFBUSxTQUFDLEdOa08xQjs7QUFFRCxjQUFjLEdBQUcsZUFBZSxDQUFZLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjs7QUFORCxlQUFlLENBQVksRU1oTzdCLFdBQW9CLEVBQVEsR0FBQyxHTmtPMUI7O0FBRUQsY0FBYyxHQUFHLGVBQWUsQ0FBWSxFTXBPOUMsV0FBb0IsRUFBUSxnQkFBQyxHTnNPMUI7O0FBTkQsZUFBZSxDQUFZLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCOztBQUVELGNBQWMsR0FBRyxlQUFlLENBQVksRU1wTzlDLFdBQW9CLEVBQVEsc0JBQUMsR05zTzFCOztBQU5ELGVBQWUsQ0FBWSxFTWhPN0IsV0FBb0IsRUFBUSxTQUFDLEdOa08xQjs7QUFFRCxjQUFjLEdBQUcsZUFBZSxDQUFZLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjs7QUFORCxlQUFlLENBQVksRU1oTzdCLFdBQW9CLEVBQVEsR0FBQyxHTmtPMUI7O0FBRUQsY0FBYyxHQUFHLGVBQWUsQ0FBWSxFTXBPOUMsV0FBb0IsRUFBUSxnQkFBQyxHTnNPMUI7O0FBTkQsZUFBZSxDQUFZLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCOztBQUVELGNBQWMsR0FBRyxlQUFlLENBQVksRU1wTzlDLFdBQW9CLEVBQVEsc0JBQUMsR05zTzFCOztBQU5ELGVBQWUsQ0FBWSxFTWhPN0IsV0FBb0IsRUFBUSxTQUFDLEdOa08xQjs7QUFFRCxjQUFjLEdBQUcsZUFBZSxDQUFZLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjs7QUFORCxlQUFlLENBQVksRU1oTzdCLFdBQW9CLEVBQVEsR0FBQyxHTmtPMUI7O0FBRUQsY0FBYyxHQUFHLGVBQWUsQ0FBWSxFTXBPOUMsV0FBb0IsRUFBUSxnQkFBQyxHTnNPMUI7O0FBTkQsZ0JBQWdCLENBQVcsRU1oTzdCLFdBQW9CLEVBQVEsU0FBQyxHTmtPMUI7O0FBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjs7QUFORCxnQkFBZ0IsQ0FBVyxFTWhPN0IsV0FBb0IsRUFBUSxTQUFDLEdOa08xQjs7QUFFRCxjQUFjLEdBQUcsZ0JBQWdCLENBQVcsRU1wTzlDLFdBQW9CLEVBQVEsc0JBQUMsR05zTzFCOztBcEI3RkQsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CdUZ6QyxnQkFBZ0IsQ0FBVyxFTWhPN0IsV0FBb0IsRUFBUSxFQUFDLEdOa08xQjtFQUVELGNBQWMsR0FBRyxnQkFBZ0IsQ0FBVyxFTXBPOUMsV0FBb0IsRUFBUSxlQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLFFBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHFCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLEdBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLGdCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLEdBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLGdCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLEdBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLGdCQUFDLEdOc08xQjtFQU5ELGlCQUFpQixDQUFVLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGlCQUFpQixDQUFVLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjtFQU5ELGlCQUFpQixDQUFVLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGlCQUFpQixDQUFVLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjs7QXBCN0ZELE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQnVGekMsZUFBZSxDQUFZLEVNaE83QixXQUFvQixFQUFRLEVBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGVBQWUsQ0FBWSxFTXBPOUMsV0FBb0IsRUFBUSxlQUFDLEdOc08xQjtFQU5ELGVBQWUsQ0FBWSxFTWhPN0IsV0FBb0IsRUFBUSxRQUFDLEdOa08xQjtFQUVELGNBQWMsR0FBRyxlQUFlLENBQVksRU1wTzlDLFdBQW9CLEVBQVEscUJBQUMsR05zTzFCO0VBTkQsZUFBZSxDQUFZLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGVBQWUsQ0FBWSxFTXBPOUMsV0FBb0IsRUFBUSxzQkFBQyxHTnNPMUI7RUFORCxlQUFlLENBQVksRU1oTzdCLFdBQW9CLEVBQVEsR0FBQyxHTmtPMUI7RUFFRCxjQUFjLEdBQUcsZUFBZSxDQUFZLEVNcE85QyxXQUFvQixFQUFRLGdCQUFDLEdOc08xQjtFQU5ELGVBQWUsQ0FBWSxFTWhPN0IsV0FBb0IsRUFBUSxTQUFDLEdOa08xQjtFQUVELGNBQWMsR0FBRyxlQUFlLENBQVksRU1wTzlDLFdBQW9CLEVBQVEsc0JBQUMsR05zTzFCO0VBTkQsZUFBZSxDQUFZLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGVBQWUsQ0FBWSxFTXBPOUMsV0FBb0IsRUFBUSxzQkFBQyxHTnNPMUI7RUFORCxlQUFlLENBQVksRU1oTzdCLFdBQW9CLEVBQVEsR0FBQyxHTmtPMUI7RUFFRCxjQUFjLEdBQUcsZUFBZSxDQUFZLEVNcE85QyxXQUFvQixFQUFRLGdCQUFDLEdOc08xQjtFQU5ELGVBQWUsQ0FBWSxFTWhPN0IsV0FBb0IsRUFBUSxTQUFDLEdOa08xQjtFQUVELGNBQWMsR0FBRyxlQUFlLENBQVksRU1wTzlDLFdBQW9CLEVBQVEsc0JBQUMsR05zTzFCO0VBTkQsZUFBZSxDQUFZLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGVBQWUsQ0FBWSxFTXBPOUMsV0FBb0IsRUFBUSxzQkFBQyxHTnNPMUI7RUFORCxlQUFlLENBQVksRU1oTzdCLFdBQW9CLEVBQVEsR0FBQyxHTmtPMUI7RUFFRCxjQUFjLEdBQUcsZUFBZSxDQUFZLEVNcE85QyxXQUFvQixFQUFRLGdCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjtFQU5ELGdCQUFnQixDQUFXLEVNaE83QixXQUFvQixFQUFRLFNBQUMsR05rTzFCO0VBRUQsY0FBYyxHQUFHLGdCQUFnQixDQUFXLEVNcE85QyxXQUFvQixFQUFRLHNCQUFDLEdOc08xQjs7QUF6SlMsT0FBWSxDQXlLbEIsRUVsUFIsT0FBTyxFQUFFLElBQUksRUFDYixTQUFTLEVBSnVDLGFBQ25CLEdGa1Q1Qjs7QUE5REQsT0FBTyxHQUlILEtBQUssQ0FBQyxFR2pOVixLQUFhLEVBQUUsSUFBSSxFQUNuQixTQUFpQixFQUFNLElBQUksR0hrTnhCOztBQU5ILE9BQU8sR0FRSCxLQUFLLENBQUMsRUd6TVIsTUFBYSxFQUFFLElBQUksR0gyTWxCOztBQVZILE9BQU8sR0FZSCxPQUFPLENBQUMsRUd6TVYsTUFBYSxFQUFFLElBQUksR0gyTWxCOztBQWRILE9BQU8sR0EwQkQsYUFBYSxFQTFCbkIsT0FBTyxHQTBCZ0IsV0FBVyxFQTFCbEMsT0FBTyxHQTBCK0IsUUFBUSxFQTFCOUMsT0FBTyxHQTBCMkMsUUFBUSxFQTFCMUQsT0FBTyxHQTBCdUQsUUFBUSxFQTFCdEUsT0FBTyxHQTBCbUUsUUFBUSxFQTFCbEYsT0FBTyxHQTBCK0UsUUFBUSxFQTFCOUYsT0FBTyxHQTBCMkYsUUFBUSxFQTFCMUcsT0FBTyxHQTBCdUcsUUFBUSxFQTFCdEgsT0FBTyxHQTBCbUgsUUFBUSxFQTFCbEksT0FBTyxHQTBCK0gsUUFBUSxFQTFCOUksT0FBTyxHQTBCMkksU0FBUyxFQTFCM0osT0FBTyxHQTBCd0osU0FBUyxFQTFCeEssT0FBTyxHQTBCcUssU0FBUyxDQUF6SyxFQUNOLFVBQVUsRUFBRSxJQUFJLEdBQ2pCOztBcEJ6SUQsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CNkc3QyxPQUFPLEdBMEJELGNBQWMsRUExQnBCLE9BQU8sR0EwQmlCLFlBQVksRUExQnBDLE9BQU8sR0EwQmlDLFNBQVMsRUExQmpELE9BQU8sR0EwQjhDLFNBQVMsRUExQjlELE9BQU8sR0EwQjJELFNBQVMsRUExQjNFLE9BQU8sR0EwQndFLFNBQVMsRUExQnhGLE9BQU8sR0EwQnFGLFNBQVMsRUExQnJHLE9BQU8sR0EwQmtHLFNBQVMsRUExQmxILE9BQU8sR0EwQitHLFNBQVMsRUExQi9ILE9BQU8sR0EwQjRILFNBQVMsRUExQjVJLE9BQU8sR0EwQnlJLFNBQVMsRUExQnpKLE9BQU8sR0EwQnNKLFVBQVUsRUExQnZLLE9BQU8sR0EwQm9LLFVBQVUsRUExQnJMLE9BQU8sR0EwQmtMLFVBQVUsQ0FBdkwsRUFDTixVQUFVLEVBQUUsSUFBSSxHQUNqQjs7QXBCeklELE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQjZHN0MsT0FBTyxHQTBCRCxhQUFhLEVBMUJuQixPQUFPLEdBMEJnQixXQUFXLEVBMUJsQyxPQUFPLEdBMEIrQixRQUFRLEVBMUI5QyxPQUFPLEdBMEIyQyxRQUFRLEVBMUIxRCxPQUFPLEdBMEJ1RCxRQUFRLEVBMUJ0RSxPQUFPLEdBMEJtRSxRQUFRLEVBMUJsRixPQUFPLEdBMEIrRSxRQUFRLEVBMUI5RixPQUFPLEdBMEIyRixRQUFRLEVBMUIxRyxPQUFPLEdBMEJ1RyxRQUFRLEVBMUJ0SCxPQUFPLEdBMEJtSCxRQUFRLEVBMUJsSSxPQUFPLEdBMEIrSCxRQUFRLEVBMUI5SSxPQUFPLEdBMEIySSxTQUFTLEVBMUIzSixPQUFPLEdBMEJ3SixTQUFTLEVBMUJ4SyxPQUFPLEdBMEJxSyxTQUFTLENBQXpLLEVBQ04sVUFBVSxFQUFFLElBQUksR0FDakI7O0FBNUJMLE9BQU8sR0F1REMsUUFBUSxFQXZEaEIsT0FBTyxHQXVEQyxRQUFRLEVBdkRoQixPQUFPLEdBdURDLFFBQVEsRUF2RGhCLE9BQU8sR0F1REMsUUFBUSxFQXZEaEIsT0FBTyxHQXVEQyxRQUFRLEVBdkRoQixPQUFPLEdBdURDLFFBQVEsRUF2RGhCLE9BQU8sR0F1REMsUUFBUSxFQXZEaEIsT0FBTyxHQXVEQyxRQUFRLEVBdkRoQixPQUFPLEdBdURDLFFBQVEsRUF2RGhCLE9BQU8sR0F1REMsU0FBUyxFQXZEakIsT0FBTyxHQXVEQyxTQUFTLEVBdkRqQixPQUFPLEdBdURDLFNBQVMsQ0FmK0IsRUdqUTlDLElBQUksRUFBRSxRQUFRLEdIbVFYOztBQTFDTCxPQUFPLEdBdURDLFFBQVEsQ0FBWSxFR2hQMUIsTUFBYSxFQURpQixRQUFzQixHSG9QL0M7O0FBMURQLE9BQU8sR0F1REMsUUFBUSxDQUFZLEVHaFAxQixNQUFhLEVBRGlCLFNBQXNCLEdIb1AvQzs7QUExRFAsT0FBTyxHQXVEQyxRQUFRLENBQVksRUdoUDFCLE1BQWEsRUFEaUIsR0FBc0IsR0hvUC9DOztBQTFEUCxPQUFPLEdBdURDLFFBQVEsQ0FBWSxFR2hQMUIsTUFBYSxFQURpQixTQUFzQixHSG9QL0M7O0FBMURQLE9BQU8sR0F1REMsUUFBUSxDQUFZLEVHaFAxQixNQUFhLEVBRGlCLFNBQXNCLEdIb1AvQzs7QUExRFAsT0FBTyxHQXVEQyxRQUFRLENBQVksRUdoUDFCLE1BQWEsRUFEaUIsR0FBc0IsR0hvUC9DOztBQTFEUCxPQUFPLEdBdURDLFFBQVEsQ0FBWSxFR2hQMUIsTUFBYSxFQURpQixTQUFzQixHSG9QL0M7O0FBMURQLE9BQU8sR0F1REMsUUFBUSxDQUFZLEVHaFAxQixNQUFhLEVBRGlCLFNBQXNCLEdIb1AvQzs7QUExRFAsT0FBTyxHQXVEQyxRQUFRLENBQVksRUdoUDFCLE1BQWEsRUFEaUIsR0FBc0IsR0hvUC9DOztBQTFEUCxPQUFPLEdBdURDLFNBQVMsQ0FBVyxFR2hQMUIsTUFBYSxFQURpQixTQUFzQixHSG9QL0M7O0FBMURQLE9BQU8sR0F1REMsU0FBUyxDQUFXLEVHaFAxQixNQUFhLEVBRGlCLFNBQXNCLEdIb1AvQzs7QUExRFAsT0FBTyxHQXVEQyxTQUFTLENBQVcsRUdoUDFCLE1BQWEsRUFEaUIsSUFBc0IsR0hvUC9DOztBcEJ2S0gsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CNkc3QyxPQUFPLEdBa0NDLFlBQVksQ0FBTyxFRzlQekIsSUFBSSxFQUFFLE9BQU8sRUEyQmIsTUFBYSxFQUFFLElBQUksR0hzT2Q7RUFyQ1AsT0FBTyxHQThDQyxjQUFjLEVBOUN0QixPQUFPLEdBdURDLFNBQVMsRUF2RGpCLE9BQU8sR0F1REMsU0FBUyxFQXZEakIsT0FBTyxHQXVEQyxTQUFTLEVBdkRqQixPQUFPLEdBdURDLFNBQVMsRUF2RGpCLE9BQU8sR0F1REMsU0FBUyxFQXZEakIsT0FBTyxHQXVEQyxTQUFTLEVBdkRqQixPQUFPLEdBdURDLFNBQVMsRUF2RGpCLE9BQU8sR0F1REMsU0FBUyxFQXZEakIsT0FBTyxHQXVEQyxTQUFTLEVBdkRqQixPQUFPLEdBdURDLFVBQVUsRUF2RGxCLE9BQU8sR0F1REMsVUFBVSxFQXZEbEIsT0FBTyxHQXVEQyxVQUFVLENBZjhCLEVHalE5QyxJQUFJLEVBQUUsUUFBUSxHSG1RWDtFQTFDTCxPQUFPLEdBOENDLGNBQWMsQ0FBTyxFRzNPM0IsTUFBYSxFQUFFLElBQUksR0g4T2Q7RUFqRFAsT0FBTyxHQXVEQyxTQUFTLENBQVcsRUdoUDFCLE1BQWEsRUFEaUIsUUFBc0IsR0hvUC9DO0VBMURQLE9BQU8sR0F1REMsU0FBUyxDQUFXLEVHaFAxQixNQUFhLEVBRGlCLFNBQXNCLEdIb1AvQztFQTFEUCxPQUFPLEdBdURDLFNBQVMsQ0FBVyxFR2hQMUIsTUFBYSxFQURpQixHQUFzQixHSG9QL0M7RUExRFAsT0FBTyxHQXVEQyxTQUFTLENBQVcsRUdoUDFCLE1BQWEsRUFEaUIsU0FBc0IsR0hvUC9DO0VBMURQLE9BQU8sR0F1REMsU0FBUyxDQUFXLEVHaFAxQixNQUFhLEVBRGlCLFNBQXNCLEdIb1AvQztFQTFEUCxPQUFPLEdBdURDLFNBQVMsQ0FBVyxFR2hQMUIsTUFBYSxFQURpQixHQUFzQixHSG9QL0M7RUExRFAsT0FBTyxHQXVEQyxTQUFTLENBQVcsRUdoUDFCLE1BQWEsRUFEaUIsU0FBc0IsR0hvUC9DO0VBMURQLE9BQU8sR0F1REMsU0FBUyxDQUFXLEVHaFAxQixNQUFhLEVBRGlCLFNBQXNCLEdIb1AvQztFQTFEUCxPQUFPLEdBdURDLFNBQVMsQ0FBVyxFR2hQMUIsTUFBYSxFQURpQixHQUFzQixHSG9QL0M7RUExRFAsT0FBTyxHQXVEQyxVQUFVLENBQVUsRUdoUDFCLE1BQWEsRUFEaUIsU0FBc0IsR0hvUC9DO0VBMURQLE9BQU8sR0F1REMsVUFBVSxDQUFVLEVHaFAxQixNQUFhLEVBRGlCLFNBQXNCLEdIb1AvQztFQTFEUCxPQUFPLEdBdURDLFVBQVUsQ0FBVSxFR2hQMUIsTUFBYSxFQURpQixJQUFzQixHSG9QL0M7O0FwQnZLSCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0I2RzdDLE9BQU8sR0FrQ0MsV0FBVyxDQUFRLEVHOVB6QixJQUFJLEVBQUUsT0FBTyxFQTJCYixNQUFhLEVBQUUsSUFBSSxHSHNPZDtFQXJDUCxPQUFPLEdBOENDLGFBQWEsRUE5Q3JCLE9BQU8sR0F1REMsUUFBUSxFQXZEaEIsT0FBTyxHQXVEQyxRQUFRLEVBdkRoQixPQUFPLEdBdURDLFFBQVEsRUF2RGhCLE9BQU8sR0F1REMsUUFBUSxFQXZEaEIsT0FBTyxHQXVEQyxRQUFRLEVBdkRoQixPQUFPLEdBdURDLFFBQVEsRUF2RGhCLE9BQU8sR0F1REMsUUFBUSxFQXZEaEIsT0FBTyxHQXVEQyxRQUFRLEVBdkRoQixPQUFPLEdBdURDLFFBQVEsRUF2RGhCLE9BQU8sR0F1REMsU0FBUyxFQXZEakIsT0FBTyxHQXVEQyxTQUFTLEVBdkRqQixPQUFPLEdBdURDLFNBQVMsQ0FmK0IsRUdqUTlDLElBQUksRUFBRSxRQUFRLEdIbVFYO0VBMUNMLE9BQU8sR0E4Q0MsYUFBYSxDQUFRLEVHM08zQixNQUFhLEVBQUUsSUFBSSxHSDhPZDtFQWpEUCxPQUFPLEdBdURDLFFBQVEsQ0FBWSxFR2hQMUIsTUFBYSxFQURpQixRQUFzQixHSG9QL0M7RUExRFAsT0FBTyxHQXVEQyxRQUFRLENBQVksRUdoUDFCLE1BQWEsRUFEaUIsU0FBc0IsR0hvUC9DO0VBMURQLE9BQU8sR0F1REMsUUFBUSxDQUFZLEVHaFAxQixNQUFhLEVBRGlCLEdBQXNCLEdIb1AvQztFQTFEUCxPQUFPLEdBdURDLFFBQVEsQ0FBWSxFR2hQMUIsTUFBYSxFQURpQixTQUFzQixHSG9QL0M7RUExRFAsT0FBTyxHQXVEQyxRQUFRLENBQVksRUdoUDFCLE1BQWEsRUFEaUIsU0FBc0IsR0hvUC9DO0VBMURQLE9BQU8sR0F1REMsUUFBUSxDQUFZLEVHaFAxQixNQUFhLEVBRGlCLEdBQXNCLEdIb1AvQztFQTFEUCxPQUFPLEdBdURDLFFBQVEsQ0FBWSxFR2hQMUIsTUFBYSxFQURpQixTQUFzQixHSG9QL0M7RUExRFAsT0FBTyxHQXVEQyxRQUFRLENBQVksRUdoUDFCLE1BQWEsRUFEaUIsU0FBc0IsR0hvUC9DO0VBMURQLE9BQU8sR0F1REMsUUFBUSxDQUFZLEVHaFAxQixNQUFhLEVBRGlCLEdBQXNCLEdIb1AvQztFQTFEUCxPQUFPLEdBdURDLFNBQVMsQ0FBVyxFR2hQMUIsTUFBYSxFQURpQixTQUFzQixHSG9QL0M7RUExRFAsT0FBTyxHQXVEQyxTQUFTLENBQVcsRUdoUDFCLE1BQWEsRUFEaUIsU0FBc0IsR0hvUC9DO0VBMURQLE9BQU8sR0F1REMsU0FBUyxDQUFXLEVHaFAxQixNQUFhLEVBRGlCLElBQXNCLEdIb1AvQzs7QUFPTCxlQUFlLENBRWIsZUFBZSxDQUFDLEVDdFRkLFVBQXlCLEVBQUcsS0FBaUMsRUFBN0QsYUFBeUIsRUFBRyxLQUFpQyxHRHdUOUQ7O0FwQmxMRCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0I4SzNDLGVBQWUsQ0FFYixlQUFlLENBQUMsRUN0VGQsVUFBeUIsRUFBRyxLQUFpQyxFQUE3RCxhQUF5QixFQUFHLEtBQWlDLEdEd1Q5RDs7QUFKSCxlQUFlLEdBT1gsS0FBSyxDQUFDLEVDM1ROLFdBQXlCLEVBQUcsSUFBaUMsRUFBN0QsY0FBeUIsRUFBRyxJQUFpQyxHRDZUOUQ7O0FwQnZMRCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0I4SzNDLGVBQWUsR0FPWCxLQUFLLENBQUMsRUMzVE4sV0FBeUIsRUFBRyxJQUFpQyxFQUE3RCxjQUF5QixFQUFHLElBQWlDLEdENlQ5RDs7QUFwTkwsY0FBYyxDQUFRLEVDekdoQixVQUF5QixFQUFHLEtBQWlDLEVBQTdELGFBQXlCLEVBQUcsS0FBaUMsR0R3SWxFOztBcEJGRyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0I3QjdDLGNBQWMsQ0FBUSxFQ3pHaEIsVUFBeUIsRUFBRyxLQUFpQyxFQUE3RCxhQUF5QixFQUFHLEtBQWlDLEdEd0lsRTs7QUEvQkQsY0FBYyxHQUlWLEtBQUssQ0FBQyxFRzlEUixNQUFhLEVBRHVCLGlCQUF3QyxFRnJDMUUsVUFBeUIsRUFBRyxJQUFpQyxFQUE3RCxhQUF5QixFQUFHLElBQWlDLEdEc0c5RDs7QXBCdUJDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQjdCN0MsY0FBYyxHQUlWLEtBQUssQ0FPSyxFR3JFWixNQUFhLEVBRHVCLGlCQUF3QyxFRnJDMUUsVUFBeUIsRUFBRyxJQUFpQyxFQUE3RCxhQUF5QixFQUFHLElBQWlDLEdENkcxRDs7QUFyQ1AsY0F3QmMsR0F4QlosS0FBSyxDQUFXLEVHL0JoQixNQUFhLEVBQUUsSUFBSSxHSGlDcEI7O0FBRUQsY0FvQmMsR0FwQlosT0FBTyxDQUFXLEVHL0JsQixNQUFhLEVBQUUsSUFBSSxHSGlDcEI7O0FBTUMsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxxQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixNQUFhLEVBRHlDLGlCQUEwRCxHSHNDL0c7O0FwQnVDQyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0JyRDdDLGNBd0JjLEdBeEJaLEtBQUssQ0FBVyxFRy9CaEIsTUFBYSxFQUFFLElBQUksR0hpQ3BCO0VBRUQsY0FvQmMsR0FwQlosT0FBTyxDQUFXLEVHL0JsQixNQUFhLEVBQUUsSUFBSSxHSGlDcEI7RUFNQyxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHFCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLGdCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7RUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixNQUFhLEVBRHlDLGlCQUEwRCxHSHNDL0c7RUFkSCxjQXdCYyxHQXhCWixZQUFZLENBQUksRUcvQmhCLE1BQWEsRUFBRSxJQUFJLEdIaUNwQjtFQUVELGNBb0JjLEdBcEJaLGNBQWMsQ0FBSSxFRy9CbEIsTUFBYSxFQUFFLElBQUksR0hpQ3BCO0VBTUMsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxxQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFVBQVUsQ0FBSSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFVBQVUsQ0FBSSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFVBQVUsQ0FBSSxFR25DaEIsTUFBYSxFQUR5QyxpQkFBMEQsR0hzQy9HOztBcEJ1Q0MsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CckQ3QyxjQXdCYyxHQXhCWixXQUFXLENBQUssRUcvQmhCLE1BQWEsRUFBRSxJQUFJLEdIaUNwQjtFQUVELGNBb0JjLEdBcEJaLGFBQWEsQ0FBSyxFRy9CbEIsTUFBYSxFQUFFLElBQUksR0hpQ3BCO0VBTUMsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxxQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxpQkFBMEQsR0hzQy9HOztBQTBPSCxXQUFXLENBQUMsRU96VlYsUUFBUSxFQUFFLE1BQU0sRUFDaEIsUUFBUSxFQUFFLFFBQVEsRUFDbEIsU0FBUyxFQUFFLE1BQU0sRUFDakIsV0FBVyxFQUFFLE9BQU8sRUEyQmhCLEtBQUssRUFBNEIsS0FBSyxHUDZUM0M7O0FBRUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUNoQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELFdBQVcsQ0FBQyxFT2hUVixVQUFVLEVBQUUsSUFBSSxFQUNoQixTQUFTLEVBQUUsSUFBSSxFQUdqQiwwQkFBMEIsRUFBRSxLQUFLLEVBQ2pDLGtCQUFrQixFQUFFLHdCQUF3QixHUDZTM0M7O0FBRUQsYUFBYSxDQUFDLEVPeFRaLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLFVBQVUsRUFBRSxJQUFJLEVBTWxCLDBCQUEwQixFQUFFLEtBQUssRUFDakMsa0JBQWtCLEVBQUUsd0JBQXdCLEdQaVQzQzs7QUFHRCxxQkFBcUIsQ0FBQyxFTzdTdEIsT0FBTyxFQUFFLElBQUksRUFDYixjQUFjLEVBQUUsTUFBTSxFQUN0QixVQUFVLEVBQUUsSUFBSSxHUDZTZjs7QU8zU0QscUJQeVNxQixHT3pTbkIsT0FBTyxDQUFDLEVBQ1IsVUFBVSxFQUFFLElBQUksRUFDaEIsU0FBUyxFQUFFLE1BQU0sR0FDbEI7O0EzQmtGRyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0IyTjNDLGtCQUFrQixDQUFPLEVPalh6QixRQUFRLEVBQUUsTUFBTSxFQUNoQixRQUFRLEVBQUUsUUFBUSxFQUNsQixTQUFTLEVBQUUsTUFBTSxFQUNqQixXQUFXLEVBQUUsT0FBTyxFQTJCaEIsS0FBSyxFQUE0QixLQUFLLEdQcVZ6QztFQUVELEtBQUssQ0FBQyxrQkFBa0IsQ0FBTyxFQUM3QixLQUFLLEVBQUUsSUFBSSxHQUNaO0VBRUQsa0JBQWtCLENBQU8sRU94VXpCLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLFNBQVMsRUFBRSxJQUFJLEVBR2pCLDBCQUEwQixFQUFFLEtBQUssRUFDakMsa0JBQWtCLEVBQUUsd0JBQXdCLEdQcVV6QztFQUVELDRCQUE0QixDQUFPLEVPaFVyQyxPQUFPLEVBQUUsSUFBSSxFQUNiLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLFVBQVUsRUFBRSxJQUFJLEdQZ1ViO0VPOVRILDRCUDRUOEIsR081VDVCLE9BQU8sQ0FBQyxFQUNSLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLFNBQVMsRUFBRSxNQUFNLEdBQ2xCO0VQNlRDLG9CQUFvQixDQUFPLEVPcFYzQixVQUFVLEVBQUUsSUFBSSxFQUNoQixVQUFVLEVBQUUsSUFBSSxFQUNoQixVQUFVLEVBQUUsSUFBSSxFQU1sQiwwQkFBMEIsRUFBRSxLQUFLLEVBQ2pDLGtCQUFrQixFQUFFLHdCQUF3QixHUDZVekM7O0FwQjdPQyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0IyTjNDLGlCQUFpQixDQUFRLEVPalh6QixRQUFRLEVBQUUsTUFBTSxFQUNoQixRQUFRLEVBQUUsUUFBUSxFQUNsQixTQUFTLEVBQUUsTUFBTSxFQUNqQixXQUFXLEVBQUUsT0FBTyxFQTJCaEIsS0FBSyxFQUE0QixLQUFLLEdQcVZ6QztFQUVELEtBQUssQ0FBQyxpQkFBaUIsQ0FBUSxFQUM3QixLQUFLLEVBQUUsSUFBSSxHQUNaO0VBRUQsaUJBQWlCLENBQVEsRU94VXpCLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLFNBQVMsRUFBRSxJQUFJLEVBR2pCLDBCQUEwQixFQUFFLEtBQUssRUFDakMsa0JBQWtCLEVBQUUsd0JBQXdCLEdQcVV6QztFQUVELDJCQUEyQixDQUFRLEVPaFVyQyxPQUFPLEVBQUUsSUFBSSxFQUNiLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLFVBQVUsRUFBRSxJQUFJLEdQZ1ViO0VPOVRILDJCUDRUNkIsR081VDNCLE9BQU8sQ0FBQyxFQUNSLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLFNBQVMsRUFBRSxNQUFNLEdBQ2xCO0VQNlRDLG1CQUFtQixDQUFRLEVPcFYzQixVQUFVLEVBQUUsSUFBSSxFQUNoQixVQUFVLEVBQUUsSUFBSSxFQUNoQixVQUFVLEVBQUUsSUFBSSxFQU1sQiwwQkFBMEIsRUFBRSxLQUFLLEVBQ2pDLGtCQUFrQixFQUFFLHdCQUF3QixHUDZVekM7O0FBSUQsT0FBTyxXQUNPLENBQUMsRUFDWCxLQUFLLEVBQUUsSUFBSSxFT3pZZixRQUFRLEVBQUUsTUFBTSxFQUNoQixRQUFRLEVBQUUsUUFBUSxFQUNsQixTQUFTLEVBQUUsTUFBTSxFQUNqQixXQUFXLEVBQUUsT0FBTyxFQXlCaEIsTUFBTSxFQUE0QixLQUFLLEdQK1d4Qzs7QXBCclBELE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQmlQM0MsT0FBTyxrQkFPZ0IsQ0FBTyxFQUN4QixLQUFLLEVBQUUsSUFBSSxFTy9ZakIsUUFBUSxFQUFFLE1BQU0sRUFDaEIsUUFBUSxFQUFFLFFBQVEsRUFDbEIsU0FBUyxFQUFFLE1BQU0sRUFDakIsV0FBVyxFQUFFLE9BQU8sRUF5QmhCLE1BQU0sRUFBNEIsS0FBSyxHUHFYdEM7O0FwQjNQSCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0JpUDNDLE9BQU8saUJBT2UsQ0FBUSxFQUN4QixLQUFLLEVBQUUsSUFBSSxFTy9ZakIsUUFBUSxFQUFFLE1BQU0sRUFDaEIsUUFBUSxFQUFFLFFBQVEsRUFDbEIsU0FBUyxFQUFFLE1BQU0sRUFDakIsV0FBVyxFQUFFLE9BQU8sRUF5QmhCLE1BQU0sRUFBNEIsS0FBSyxHUHFYdEM7O0FBSUwsS0FBSyxDQUNILE9BQU8sV0FBVyxDQUFDLEVBQ2pCLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FwQmxRRCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0IrUDNDLEtBQUssQ0FLRCxPQUFPLGtCQUFrQixDQUFPLEVBQzlCLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FwQnRRSCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0IrUDNDLEtBQUssQ0FLRCxPQUFPLGlCQUFpQixDQUFRLEVBQzlCLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBblNQLGNBQWMsQ0FBUSxFQ3pHaEIsVUFBeUIsRUFBRyxLQUFpQyxFQUE3RCxhQUF5QixFQUFHLEtBQWlDLEdEd0lsRTs7QXBCRkcsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CN0I3QyxjQUFjLENBQVEsRUN6R2hCLFVBQXlCLEVBQUcsS0FBaUMsRUFBN0QsYUFBeUIsRUFBRyxLQUFpQyxHRHdJbEU7O0FBL0JELGNBQWMsR0FJVixLQUFLLENBQUMsRUc5RFIsTUFBYSxFQUR1QixpQkFBd0MsRUZyQzFFLFVBQXlCLEVBQUcsSUFBaUMsRUFBN0QsYUFBeUIsRUFBRyxJQUFpQyxHRHNHOUQ7O0FwQnVCQyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0I3QjdDLGNBQWMsR0FJVixLQUFLLENBT0ssRUdyRVosTUFBYSxFQUR1QixpQkFBd0MsRUZyQzFFLFVBQXlCLEVBQUcsSUFBaUMsRUFBN0QsYUFBeUIsRUFBRyxJQUFpQyxHRDZHMUQ7O0FBckNQLGNBd0JjLEdBeEJaLEtBQUssQ0FBVyxFRy9CaEIsTUFBYSxFQUFFLElBQUksR0hpQ3BCOztBQUVELGNBb0JjLEdBcEJaLE9BQU8sQ0FBVyxFRy9CbEIsTUFBYSxFQUFFLElBQUksR0hpQ3BCOztBQU1DLGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMscUJBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsUUFBUSxDQUFNLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HOztBQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRzs7QUFGRCxjQVlZLEdBWlYsU0FBUyxDQUFLLEVHbkNoQixNQUFhLEVBRHlDLHNCQUEwRCxHSHNDL0c7O0FBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxpQkFBMEQsR0hzQy9HOztBcEJ1Q0MsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CckQ3QyxjQXdCYyxHQXhCWixLQUFLLENBQVcsRUcvQmhCLE1BQWEsRUFBRSxJQUFJLEdIaUNwQjtFQUVELGNBb0JjLEdBcEJaLE9BQU8sQ0FBVyxFRy9CbEIsTUFBYSxFQUFFLElBQUksR0hpQ3BCO0VBTUMsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxxQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFFBQVEsQ0FBTSxFR25DaEIsTUFBYSxFQUR5QyxnQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxzQkFBMEQsR0hzQy9HO0VBRkQsY0FZWSxHQVpWLFNBQVMsQ0FBSyxFR25DaEIsTUFBYSxFQUR5QyxpQkFBMEQsR0hzQy9HO0VBZEgsY0F3QmMsR0F4QlosWUFBWSxDQUFJLEVHL0JoQixNQUFhLEVBQUUsSUFBSSxHSGlDcEI7RUFFRCxjQW9CYyxHQXBCWixjQUFjLENBQUksRUcvQmxCLE1BQWEsRUFBRSxJQUFJLEdIaUNwQjtFQU1DLGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMscUJBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsZ0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsZ0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsZ0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixVQUFVLENBQUksRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixVQUFVLENBQUksRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixVQUFVLENBQUksRUduQ2hCLE1BQWEsRUFEeUMsaUJBQTBELEdIc0MvRzs7QXBCdUNDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQnJEN0MsY0F3QmMsR0F4QlosV0FBVyxDQUFLLEVHL0JoQixNQUFhLEVBQUUsSUFBSSxHSGlDcEI7RUFFRCxjQW9CYyxHQXBCWixhQUFhLENBQUssRUcvQmxCLE1BQWEsRUFBRSxJQUFJLEdIaUNwQjtFQU1DLGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMscUJBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsZ0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsZ0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixRQUFRLENBQU0sRUduQ2hCLE1BQWEsRUFEeUMsZ0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsc0JBQTBELEdIc0MvRztFQUZELGNBWVksR0FaVixTQUFTLENBQUssRUduQ2hCLE1BQWEsRUFEeUMsaUJBQTBELEdIc0MvRzs7QUFtVEQsV0FBVyxjQUFjLENBQUMsRU8vWXRCLE1BQU0sRUFBRSxrQkFBMkIsR1BpWnRDOztBcEI5UUMsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSW9CNFEzQyxXQUFXLGNBQWMsQ0FBQyxFTy9ZdEIsTUFBTSxFQUFFLGtCQUEyQixHUGladEM7O0FwQjlRQyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0I0UTNDLFdBQVcsY0FBYyxDQUFDLEVPL1l0QixNQUFNLEVBQUUsa0JBQTJCLEdQaVp0Qzs7QXBCOVFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElvQmdSekMsY0FBYyxrQkFBa0IsQ0FBTyxFT25ackMsTUFBTSxFQUFFLGtCQUEyQixHUHFacEM7O0FwQmxSRCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJb0JnUnpDLGNBQWMsaUJBQWlCLENBQVEsRU9uWnJDLE1BQU0sRUFBRSxrQkFBMkIsR1BxWnBDOztBUS9LTCxPQUFPLENBQUMsRUFoTFIsT0FBTyxFQUFFLFlBQVksRUFDckIsY0FBYyxFQUFFLE1BQU0sRUFDdEIsTUFBTSxFdkIrTFEsVUFBb0IsRXVCckxoQyxPQUFPLEV2Qm9MTSxVQUFVLEV1QmpMekIsTUFBTSxFQUFFLHFCQUFxQixFQUM3QixhQUFhLEV2QmRDLElBQUksRXVCZWxCLFVBQVUsRXZCa01RLHFEQUFxRCxFdUJqTXZFLFdBQVcsRXZCNktRLE9BQU8sRXVCNUsxQixTQUFTLEV2QnlMQSxNQUFNLEV1QnhMZixrQkFBa0IsRUFBRSxJQUFJLEVBQ3hCLFdBQVcsRUFBRSxDQUFDLEVBQ2QsVUFBVSxFQUFFLE1BQU0sRUFDbEIsTUFBTSxFQUFFLE9BQU8sRUFxQ2YsZ0JBQWdCLEV2QjlFUCxPQUFPLEV1QitFaEIsS0FBSyxFdkJyRUMsT0FBTyxHdUJtVVo7O0N6QjZ3REQsY0d4OURBLENBQWdCLE9BQWhCLEFBQUMsRXNCZ0VELE9BQU8sQ3RCaEVvQixFQUN6QixPQUFPLEVBQUUsQ0FBQyxHQUNYOztBc0JuREQsT0FBQyxNQUFNLEVBaUhQLE9BakhVLE1BQU0sQ0FBQyxFQUNmLGdCQUFnQixFdkJvSU0sT0FBaUQsRXVCbkl2RSxLQUFLLEV2QnpFRCxPQUFPLEd1QjBFWjs7QUE4R0QsT0FBTyxLQUtHLENBQUssRUFDVCxTQUFTLEV2Qm9CVCxJQUFJLEd1Qm5CTDs7QUFQTCxPQUFPLE1BS0ksQ0FBSSxFQUNULFNBQVMsRXZCcUJSLE1BQU0sR3VCcEJSOztBQVBMLE9BQU8sTUFLSSxDQUFJLEVBQ1QsU0FBUyxFdkJ1QlIsTUFBTSxHdUJ0QlI7O0FBUEwsT0FBTyxTQVVLLENBQUMsRUE1SlgsT0FBTyxFQUFFLEtBQUssRUFDZCxLQUFLLEVBQUUsSUFBSSxFQUNYLFlBQVksRUFBRSxDQUFDLEVBQ2YsV0FBVyxFQUFFLENBQUMsR0F5SnlCOztBQVZ6QyxPQUFPLFFBc0NRLENBQUUsRUExSmpCLGdCQUFnQixFdkI5RVAsT0FBTyxFdUIrRWhCLEtBQUssRXZCdEVDLE9BQU8sR3VCaU9OOztBQXpKUCxPQWlITyxRQWpITixNQUFNLEVBaUhQLE9BQU8sUUFqSEcsTUFBTSxDQUFDLEVBQ2YsZ0JBQWdCLEVBUEcsT0FBaUUsRUFRcEYsS0FBSyxFdkIxRUQsT0FBTyxHdUIyRVo7O0FBOEdELE9BQU8sVUFzQ1UsQ0FBQSxFQTFKakIsZ0JBQWdCLEV2QjdFTCxPQUFPLEV1QjhFbEIsS0FBSyxFdkJyRUMsT0FBTyxHdUJnT047O0FBekpQLE9BaUhPLFVBakhOLE1BQU0sRUFpSFAsT0FBTyxVQWpIRyxNQUFNLENBQUMsRUFDZixnQkFBZ0IsRUFQRyxPQUFpRSxFQVFwRixLQUFLLEV2QnpFRCxPQUFPLEd1QjBFWjs7QUE4R0QsT0FBTyxRQXNDUSxDQUFFLEVBMUpqQixnQkFBZ0IsRXZCNUVQLE9BQU8sRXVCNkVoQixLQUFLLEV2QnRFQyxPQUFPLEd1QmlPTjs7QUF6SlAsT0FpSE8sUUFqSE4sTUFBTSxFQWlIUCxPQUFPLFFBakhHLE1BQU0sQ0FBQyxFQUNmLGdCQUFnQixFQVBHLE9BQWlFLEVBUXBGLEtBQUssRXZCMUVELE9BQU8sR3VCMkVaOztBQThHRCxPQUFPLFFBc0NRLENBQUUsRUExSmpCLGdCQUFnQixFdkIzRVAsT0FBTyxFdUI0RWhCLEtBQUssRXZCdEVDLE9BQU8sR3VCaU9OOztBQXpKUCxPQWlITyxRQWpITixNQUFNLEVBaUhQLE9BQU8sUUFqSEcsTUFBTSxDQUFDLEVBQ2YsZ0JBQWdCLEVBUEcsT0FBaUUsRUFRcEYsS0FBSyxFdkIxRUQsT0FBTyxHdUIyRVo7O0FBOEdELE9BQU8sTUFzQ00sQ0FBSSxFQTFKakIsZ0JBQWdCLEV2QjFFVCxPQUFPLEV1QjJFZCxLQUFLLEV2QnJFQyxPQUFPLEd1QmdPTjs7QUF6SlAsT0FpSE8sTUFqSE4sTUFBTSxFQWlIUCxPQUFPLE1BakhHLE1BQU0sQ0FBQyxFQUNmLGdCQUFnQixFQVBHLE9BQWlFLEVBUXBGLEtBQUssRXZCekVELE9BQU8sR3VCMEVaOztBQThHRCxPQUFPLFNBc0RLLEVBdERaLE9BQU8sQ0FBQSxRQXVESixFQUFXLEVBakhkLE9BQU8sRXZCMEZpQixJQUFJLEV1QnpGNUIsTUFBTSxFQUFFLFdBQVcsR0F3SGhCOztBQXRISCxPQXVETyxTQXNESyxFQXREWixPQUFPLFNBdkRILE1BQU0sRUF1RFYsT0FBTyxTQXZETSxNQUFNLEVBdURuQixPQUFPLENBQUEsUUF1REosR0F2REgsT0FBTyxDQUFBLFFBdURKLENBOUdDLE1BQU0sRUF1RFYsT0FBTyxDQUFBLFFBdURKLENBOUdVLE1BQU0sQ0FBQyxFQUNsQixnQkFBZ0IsRXZCNUlULE9BQU8sRXVCNklkLEtBQUssRXZCbklELE9BQU8sR3VCb0laOztBQW9ERCxPQUFPLFNBc0RLLFFBS0csRUEzRGYsT0FBTyxDQUFBLFFBdURKLENBSUksUUFBUSxDQUFFLEVBckhqQixPQUFPLEV2QjBGaUIsSUFBSSxFdUJ6RjVCLE1BQU0sRUFBRSxXQUFXLEdBc0haOztBQXBIUCxPQXVETyxTQXNESyxRQUtHLEVBM0RmLE9BQU8sU0FzREssUUE3R1IsTUFBTSxFQXVEVixPQUFPLFNBc0RLLFFBN0dDLE1BQU0sRUF1RG5CLE9BQU8sQ0FBQSxRQXVESixDQUlJLFFBQVEsRUEzRGYsT0FBTyxDQUFBLFFBdURKLENBSUksUUFsSEgsTUFBTSxFQXVEVixPQUFPLENBQUEsUUF1REosQ0FJSSxRQWxITSxNQUFNLENBQUMsRUFDbEIsZ0JBQWdCLEV2QjVJVCxPQUFPLEV1QjZJZCxLQUFLLEV2QnBJRCxPQUFPLEd1QnFJWjs7QUFvREQsT0FBTyxTQXNESyxVQUtLLEVBM0RqQixPQUFPLENBQUEsUUF1REosQ0FJSSxVQUFVLENBQUEsRUFySGpCLE9BQU8sRXZCMEZpQixJQUFJLEV1QnpGNUIsTUFBTSxFQUFFLFdBQVcsR0FzSFo7O0FBcEhQLE9BdURPLFNBc0RLLFVBS0ssRUEzRGpCLE9BQU8sU0FzREssVUE3R1IsTUFBTSxFQXVEVixPQUFPLFNBc0RLLFVBN0dDLE1BQU0sRUF1RG5CLE9BQU8sQ0FBQSxRQXVESixDQUlJLFVBQVUsRUEzRGpCLE9BQU8sQ0FBQSxRQXVESixDQUlJLFVBbEhILE1BQU0sRUF1RFYsT0FBTyxDQUFBLFFBdURKLENBSUksVUFsSE0sTUFBTSxDQUFDLEVBQ2xCLGdCQUFnQixFdkIzSVAsT0FBTyxFdUI0SWhCLEtBQUssRXZCbklELE9BQU8sR3VCb0laOztBQW9ERCxPQUFPLFNBc0RLLFFBS0csRUEzRGYsT0FBTyxDQUFBLFFBdURKLENBSUksUUFBUSxDQUFFLEVBckhqQixPQUFPLEV2QjBGaUIsSUFBSSxFdUJ6RjVCLE1BQU0sRUFBRSxXQUFXLEdBc0haOztBQXBIUCxPQXVETyxTQXNESyxRQUtHLEVBM0RmLE9BQU8sU0FzREssUUE3R1IsTUFBTSxFQXVEVixPQUFPLFNBc0RLLFFBN0dDLE1BQU0sRUF1RG5CLE9BQU8sQ0FBQSxRQXVESixDQUlJLFFBQVEsRUEzRGYsT0FBTyxDQUFBLFFBdURKLENBSUksUUFsSEgsTUFBTSxFQXVEVixPQUFPLENBQUEsUUF1REosQ0FJSSxRQWxITSxNQUFNLENBQUMsRUFDbEIsZ0JBQWdCLEV2QjFJVCxPQUFPLEV1QjJJZCxLQUFLLEV2QnBJRCxPQUFPLEd1QnFJWjs7QUFvREQsT0FBTyxTQXNESyxRQUtHLEVBM0RmLE9BQU8sQ0FBQSxRQXVESixDQUlJLFFBQVEsQ0FBRSxFQXJIakIsT0FBTyxFdkIwRmlCLElBQUksRXVCekY1QixNQUFNLEVBQUUsV0FBVyxHQXNIWjs7QUFwSFAsT0F1RE8sU0FzREssUUFLRyxFQTNEZixPQUFPLFNBc0RLLFFBN0dSLE1BQU0sRUF1RFYsT0FBTyxTQXNESyxRQTdHQyxNQUFNLEVBdURuQixPQUFPLENBQUEsUUF1REosQ0FJSSxRQUFRLEVBM0RmLE9BQU8sQ0FBQSxRQXVESixDQUlJLFFBbEhILE1BQU0sRUF1RFYsT0FBTyxDQUFBLFFBdURKLENBSUksUUFsSE0sTUFBTSxDQUFDLEVBQ2xCLGdCQUFnQixFdkJ6SVQsT0FBTyxFdUIwSWQsS0FBSyxFdkJwSUQsT0FBTyxHdUJxSVo7O0FBb0RELE9BQU8sU0FzREssTUFLQyxFQTNEYixPQUFPLENBQUEsUUF1REosQ0FJSSxNQUFNLENBQUksRUFySGpCLE9BQU8sRXZCMEZpQixJQUFJLEV1QnpGNUIsTUFBTSxFQUFFLFdBQVcsR0FzSFo7O0FBcEhQLE9BdURPLFNBc0RLLE1BS0MsRUEzRGIsT0FBTyxTQXNESyxNQTdHUixNQUFNLEVBdURWLE9BQU8sU0FzREssTUE3R0MsTUFBTSxFQXVEbkIsT0FBTyxDQUFBLFFBdURKLENBSUksTUFBTSxFQTNEYixPQUFPLENBQUEsUUF1REosQ0FJSSxNQWxISCxNQUFNLEVBdURWLE9BQU8sQ0FBQSxRQXVESixDQUlJLE1BbEhNLE1BQU0sQ0FBQyxFQUNsQixnQkFBZ0IsRXZCeElYLE9BQU8sRXVCeUlaLEtBQUssRXZCbklELE9BQU8sR3VCb0laOztBQW9ERCxPQUFPLE9BbUVLLENBQUMsRUF0SmIsTUFBTSxFdkIyR3FCLGlCQTFOWCxFdUJnSGhCLEtBQUssRXZCaEhJLE9BQU8sR3VCOFFYOztBQXJMTCxPQXlHTyxPQW1FSyxFQW5FWixPQUFPLE9BeEdOLE1BQU0sRUF3R1AsT0FBTyxPQXZHTixNQUFNLENBQUMsRUFDTixnQkFBZ0IsRUFBRSxXQUFXLEdBQzlCOztBQUlDLE9BaUdLLE9BbkdOLFNBQVMsRUFtR1YsT0FBTyxPQW5HTixTQUFTLE1BR0QsRUFnR1QsT0FBTyxPQW5HTixTQUFTLE1BR1EsRUFnR2xCLE9BQU8sT0FtRUssQ0FBQSxRQXJLWCxHQWtHRCxPQUFPLE9BbUVLLENBQUEsUUFyS1gsQ0FFRSxNQUFNLEVBZ0dULE9BQU8sT0FtRUssQ0FBQSxRQXJLWCxDQUVXLE1BQU0sQ0FBQyxFQUNmLGdCQUFnQixFQUFFLFdBQVcsR0FDOUI7O0FBY0gsT0FnRk8sT0FoRk4sTUFBTSxFQWdGUCxPQUFPLE9BaEZHLE1BQU0sQ0FBQyxFQUNmLFlBQVksRUFOQSxPQUFpRCxFQU83RCxLQUFLLEVBUE8sT0FBaUQsR0FhOUQ7O0FBTEMsT0E2RUssT0FoRk4sTUFBTSxTQUdLLEVBNkVaLE9BQU8sT0FoRk4sTUFBTSxDQUFBLFFBSUosR0E0RUgsT0FBTyxPQWhGRyxNQUFNLFNBR0osRUE2RVosT0FBTyxPQWhGRyxNQUFNLENBQUEsUUFJYixFQUFXLEVBQ1YsTUFBTSxFdkJtR2lCLGlCQTFOWCxFdUJ3SFosS0FBSyxFdkJ4SEEsT0FBTyxHdUJ5SGI7O0FBeUVILE9BQU8sT0FtRUssUUFLSyxDQUFFLEVBM0puQixNQUFNLEV2QjJHcUIsaUJBMU5YLEV1QmdIaEIsS0FBSyxFdkJoSEksT0FBTyxHdUI0UVA7O0FBMUpULE9BZ0ZPLE9BbUVLLFFBbkpYLE1BQU0sRUFnRlAsT0FBTyxPQW1FSyxRQW5KRixNQUFNLENBQUMsRUFDZixZQUFZLEVBTkEsT0FBaUQsRUFPN0QsS0FBSyxFQVBPLE9BQWlELEdBYTlEOztBQUxDLE9BNkVLLE9BbUVLLFFBbkpYLE1BQU0sU0FHSyxFQTZFWixPQUFPLE9BbUVLLFFBbkpYLE1BQU0sQ0FBQSxRQUlKLEdBNEVILE9BQU8sT0FtRUssUUFuSkYsTUFBTSxTQUdKLEVBNkVaLE9BQU8sT0FtRUssUUFuSkYsTUFBTSxDQUFBLFFBSWIsRUFBVyxFQUNWLE1BQU0sRXZCbUdpQixpQkExTlgsRXVCd0haLEtBQUssRXZCeEhBLE9BQU8sR3VCeUhiOztBQXlFSCxPQUFPLE9BbUVLLFVBS08sQ0FBQSxFQTNKbkIsTUFBTSxFdkIyR3FCLGlCQXpOVCxFdUIrR2xCLEtBQUssRXZCL0dNLE9BQU8sR3VCMlFUOztBQTFKVCxPQWdGTyxPQW1FSyxVQW5KWCxNQUFNLEVBZ0ZQLE9BQU8sT0FtRUssVUFuSkYsTUFBTSxDQUFDLEVBQ2YsWUFBWSxFQU5BLE9BQWlELEVBTzdELEtBQUssRUFQTyxPQUFpRCxHQWE5RDs7QUFMQyxPQTZFSyxPQW1FSyxVQW5KWCxNQUFNLFNBR0ssRUE2RVosT0FBTyxPQW1FSyxVQW5KWCxNQUFNLENBQUEsUUFJSixHQTRFSCxPQUFPLE9BbUVLLFVBbkpGLE1BQU0sU0FHSixFQTZFWixPQUFPLE9BbUVLLFVBbkpGLE1BQU0sQ0FBQSxRQUliLEVBQVcsRUFDVixNQUFNLEV2Qm1HaUIsaUJBek5ULEV1QnVIZCxLQUFLLEV2QnZIRSxPQUFPLEd1QndIZjs7QUF5RUgsT0FBTyxPQW1FSyxRQUtLLENBQUUsRUEzSm5CLE1BQU0sRXZCMkdxQixpQkF4TlgsRXVCOEdoQixLQUFLLEV2QjlHSSxPQUFPLEd1QjBRUDs7QUExSlQsT0FnRk8sT0FtRUssUUFuSlgsTUFBTSxFQWdGUCxPQUFPLE9BbUVLLFFBbkpGLE1BQU0sQ0FBQyxFQUNmLFlBQVksRUFOQSxPQUFpRCxFQU83RCxLQUFLLEVBUE8sT0FBaUQsR0FhOUQ7O0FBTEMsT0E2RUssT0FtRUssUUFuSlgsTUFBTSxTQUdLLEVBNkVaLE9BQU8sT0FtRUssUUFuSlgsTUFBTSxDQUFBLFFBSUosR0E0RUgsT0FBTyxPQW1FSyxRQW5KRixNQUFNLFNBR0osRUE2RVosT0FBTyxPQW1FSyxRQW5KRixNQUFNLENBQUEsUUFJYixFQUFXLEVBQ1YsTUFBTSxFdkJtR2lCLGlCQXhOWCxFdUJzSFosS0FBSyxFdkJ0SEEsT0FBTyxHdUJ1SGI7O0FBeUVILE9BQU8sT0FtRUssUUFLSyxDQUFFLEVBM0puQixNQUFNLEV2QjJHcUIsaUJBdk5YLEV1QjZHaEIsS0FBSyxFdkI3R0ksT0FBTyxHdUJ5UVA7O0FBMUpULE9BZ0ZPLE9BbUVLLFFBbkpYLE1BQU0sRUFnRlAsT0FBTyxPQW1FSyxRQW5KRixNQUFNLENBQUMsRUFDZixZQUFZLEVBTkEsT0FBaUQsRUFPN0QsS0FBSyxFQVBPLE9BQWlELEdBYTlEOztBQUxDLE9BNkVLLE9BbUVLLFFBbkpYLE1BQU0sU0FHSyxFQTZFWixPQUFPLE9BbUVLLFFBbkpYLE1BQU0sQ0FBQSxRQUlKLEdBNEVILE9BQU8sT0FtRUssUUFuSkYsTUFBTSxTQUdKLEVBNkVaLE9BQU8sT0FtRUssUUFuSkYsTUFBTSxDQUFBLFFBSWIsRUFBVyxFQUNWLE1BQU0sRXZCbUdpQixpQkF2TlgsRXVCcUhaLEtBQUssRXZCckhBLE9BQU8sR3VCc0hiOztBQXlFSCxPQUFPLE9BbUVLLE1BS0csQ0FBSSxFQTNKbkIsTUFBTSxFdkIyR3FCLGlCQXROYixFdUI0R2QsS0FBSyxFdkI1R0UsT0FBTyxHdUJ3UUw7O0FBMUpULE9BZ0ZPLE9BbUVLLE1BbkpYLE1BQU0sRUFnRlAsT0FBTyxPQW1FSyxNQW5KRixNQUFNLENBQUMsRUFDZixZQUFZLEVBTkEsT0FBaUQsRUFPN0QsS0FBSyxFQVBPLE9BQWlELEdBYTlEOztBQUxDLE9BNkVLLE9BbUVLLE1BbkpYLE1BQU0sU0FHSyxFQTZFWixPQUFPLE9BbUVLLE1BbkpYLE1BQU0sQ0FBQSxRQUlKLEdBNEVILE9BQU8sT0FtRUssTUFuSkYsTUFBTSxTQUdKLEVBNkVaLE9BQU8sT0FtRUssTUFuSkYsTUFBTSxDQUFBLFFBSWIsRUFBVyxFQUNWLE1BQU0sRXZCbUdpQixpQkF0TmIsRXVCb0hWLEtBQUssRXZCcEhGLE9BQU8sR3VCcUhYOztBQXlFSCxPQUFPLE1BaUZJLENBQUMsRUFwS1osTUFBTSxFdkIyR3FCLGlCQTFOWCxFdUJnSGhCLEtBQUssRXZCaEhJLE9BQU8sR3VCMlNYOztBQWxOTCxPQXlHTyxNQWlGSSxFQWpGWCxPQUFPLE1BeEdOLE1BQU0sRUF3R1AsT0FBTyxNQXZHTixNQUFNLENBQUMsRUFDTixnQkFBZ0IsRUFBRSxXQUFXLEdBQzlCOztBQUlDLE9BaUdLLE1BbkdOLFNBQVMsRUFtR1YsT0FBTyxNQW5HTixTQUFTLE1BR0QsRUFnR1QsT0FBTyxNQW5HTixTQUFTLE1BR1EsRUFnR2xCLE9BQU8sTUFpRkksQ0FBQSxRQW5MVixHQWtHRCxPQUFPLE1BaUZJLENBQUEsUUFuTFYsQ0FFRSxNQUFNLEVBZ0dULE9BQU8sTUFpRkksQ0FBQSxRQW5MVixDQUVXLE1BQU0sQ0FBQyxFQUNmLGdCQUFnQixFQUFFLFdBQVcsR0FDOUI7O0FBY0gsT0FnRk8sTUFoRk4sTUFBTSxFQWdGUCxPQUFPLE1BaEZHLE1BQU0sQ0FBQyxFQUNmLFlBQVksRUFOQSxPQUFpRCxFQU83RCxLQUFLLEVBUE8sT0FBaUQsR0FhOUQ7O0FBTEMsT0E2RUssTUFoRk4sTUFBTSxTQUdLLEVBNkVaLE9BQU8sTUFoRk4sTUFBTSxDQUFBLFFBSUosR0E0RUgsT0FBTyxNQWhGRyxNQUFNLFNBR0osRUE2RVosT0FBTyxNQWhGRyxNQUFNLENBQUEsUUFJYixFQUFXLEVBQ1YsTUFBTSxFdkJtR2lCLGlCQTFOWCxFdUJ3SFosS0FBSyxFdkJ4SEEsT0FBTyxHdUJ5SGI7O0FBeUVILE9BQU8sTUFpRkksRUFqRlgsT0FBTyxNQWlGSSxTQUtVLEVBdEZyQixPQUFPLE1BaUZJLENBQUEsUUFLYSxHQXRGeEIsT0FBTyxNQWlGSSxNQUlLLEVBckZoQixPQUFPLE1BaUZJLE1BSUssU0FDSyxFQXRGckIsT0FBTyxNQWlGSSxNQUlLLENBQUEsUUFDUSxHQXRGeEIsT0FBTyxNQWlGSSxNQUljLEVBckZ6QixPQUFPLE1BaUZJLE1BSWMsU0FDSixFQXRGckIsT0FBTyxNQWlGSSxNQUljLENBQUEsUUFDRCxFQUFXLEVBQ3pCLFlBQVksRUFBRSxXQUFXLEdBQzFCOztBQXhGVCxPQUFPLE1BaUZJLFFBV00sQ0FBRSxFQS9LbkIsTUFBTSxFdkIyR3FCLGlCQTFOWCxFdUJnSGhCLEtBQUssRXZCaEhJLE9BQU8sR3VCeVNQOztBQXZMVCxPQWdGTyxNQWlGSSxRQWpLVixNQUFNLEVBZ0ZQLE9BQU8sTUFpRkksUUFqS0QsTUFBTSxDQUFDLEVBQ2YsWUFBWSxFQU5BLE9BQWlELEVBTzdELEtBQUssRUFQTyxPQUFpRCxHQWE5RDs7QUFMQyxPQTZFSyxNQWlGSSxRQWpLVixNQUFNLFNBR0ssRUE2RVosT0FBTyxNQWlGSSxRQWpLVixNQUFNLENBQUEsUUFJSixHQTRFSCxPQUFPLE1BaUZJLFFBaktELE1BQU0sU0FHSixFQTZFWixPQUFPLE1BaUZJLFFBaktELE1BQU0sQ0FBQSxRQUliLEVBQVcsRUFDVixNQUFNLEV2Qm1HaUIsaUJBMU5YLEV1QndIWixLQUFLLEV2QnhIQSxPQUFPLEd1QnlIYjs7QUF5RUgsT0FBTyxNQWlGSSxRQVdNLEVBNUZqQixPQUFPLE1BaUZJLFFBV00sU0FNSyxFQWxHdEIsT0FBTyxNQWlGSSxRQVdNLENBQUEsUUFPSixHQW5HYixPQUFPLE1BaUZJLFFBV00sTUFHRyxFQS9GcEIsT0FBTyxNQWlGSSxRQVdNLE1BR0csU0FHRSxFQWxHdEIsT0FBTyxNQWlGSSxRQVdNLE1BR0csQ0FBQSxRQUlQLEdBbkdiLE9BQU8sTUFpRkksUUFXTSxNQUlBLEVBaEdqQixPQUFPLE1BaUZJLFFBV00sTUFJQSxTQUVLLEVBbEd0QixPQUFPLE1BaUZJLFFBV00sTUFJQSxDQUFBLFFBR0osRUFBVyxFQUNWLFlBQVksRUFBRSxXQUFXLEdBQzFCOztBQXJHYixPQUFPLE1BaUZJLFVBV1EsQ0FBQSxFQS9LbkIsTUFBTSxFdkIyR3FCLGlCQXpOVCxFdUIrR2xCLEtBQUssRXZCL0dNLE9BQU8sR3VCd1NUOztBQXZMVCxPQWdGTyxNQWlGSSxVQWpLVixNQUFNLEVBZ0ZQLE9BQU8sTUFpRkksVUFqS0QsTUFBTSxDQUFDLEVBQ2YsWUFBWSxFQU5BLE9BQWlELEVBTzdELEtBQUssRUFQTyxPQUFpRCxHQWE5RDs7QUFMQyxPQTZFSyxNQWlGSSxVQWpLVixNQUFNLFNBR0ssRUE2RVosT0FBTyxNQWlGSSxVQWpLVixNQUFNLENBQUEsUUFJSixHQTRFSCxPQUFPLE1BaUZJLFVBaktELE1BQU0sU0FHSixFQTZFWixPQUFPLE1BaUZJLFVBaktELE1BQU0sQ0FBQSxRQUliLEVBQVcsRUFDVixNQUFNLEV2Qm1HaUIsaUJBek5ULEV1QnVIZCxLQUFLLEV2QnZIRSxPQUFPLEd1QndIZjs7QUF5RUgsT0FBTyxNQWlGSSxVQVdRLEVBNUZuQixPQUFPLE1BaUZJLFVBV1EsU0FNRyxFQWxHdEIsT0FBTyxNQWlGSSxVQVdRLENBQUEsUUFPTixHQW5HYixPQUFPLE1BaUZJLFVBV1EsTUFHQyxFQS9GcEIsT0FBTyxNQWlGSSxVQVdRLE1BR0MsU0FHRSxFQWxHdEIsT0FBTyxNQWlGSSxVQVdRLE1BR0MsQ0FBQSxRQUlQLEdBbkdiLE9BQU8sTUFpRkksVUFXUSxNQUlGLEVBaEdqQixPQUFPLE1BaUZJLFVBV1EsTUFJRixTQUVLLEVBbEd0QixPQUFPLE1BaUZJLFVBV1EsTUFJRixDQUFBLFFBR0osRUFBVyxFQUNWLFlBQVksRUFBRSxXQUFXLEdBQzFCOztBQXJHYixPQUFPLE1BaUZJLFFBV00sQ0FBRSxFQS9LbkIsTUFBTSxFdkIyR3FCLGlCQXhOWCxFdUI4R2hCLEtBQUssRXZCOUdJLE9BQU8sR3VCdVNQOztBQXZMVCxPQWdGTyxNQWlGSSxRQWpLVixNQUFNLEVBZ0ZQLE9BQU8sTUFpRkksUUFqS0QsTUFBTSxDQUFDLEVBQ2YsWUFBWSxFQU5BLE9BQWlELEVBTzdELEtBQUssRUFQTyxPQUFpRCxHQWE5RDs7QUFMQyxPQTZFSyxNQWlGSSxRQWpLVixNQUFNLFNBR0ssRUE2RVosT0FBTyxNQWlGSSxRQWpLVixNQUFNLENBQUEsUUFJSixHQTRFSCxPQUFPLE1BaUZJLFFBaktELE1BQU0sU0FHSixFQTZFWixPQUFPLE1BaUZJLFFBaktELE1BQU0sQ0FBQSxRQUliLEVBQVcsRUFDVixNQUFNLEV2Qm1HaUIsaUJBeE5YLEV1QnNIWixLQUFLLEV2QnRIQSxPQUFPLEd1QnVIYjs7QUF5RUgsT0FBTyxNQWlGSSxRQVdNLEVBNUZqQixPQUFPLE1BaUZJLFFBV00sU0FNSyxFQWxHdEIsT0FBTyxNQWlGSSxRQVdNLENBQUEsUUFPSixHQW5HYixPQUFPLE1BaUZJLFFBV00sTUFHRyxFQS9GcEIsT0FBTyxNQWlGSSxRQVdNLE1BR0csU0FHRSxFQWxHdEIsT0FBTyxNQWlGSSxRQVdNLE1BR0csQ0FBQSxRQUlQLEdBbkdiLE9BQU8sTUFpRkksUUFXTSxNQUlBLEVBaEdqQixPQUFPLE1BaUZJLFFBV00sTUFJQSxTQUVLLEVBbEd0QixPQUFPLE1BaUZJLFFBV00sTUFJQSxDQUFBLFFBR0osRUFBVyxFQUNWLFlBQVksRUFBRSxXQUFXLEdBQzFCOztBQXJHYixPQUFPLE1BaUZJLFFBV00sQ0FBRSxFQS9LbkIsTUFBTSxFdkIyR3FCLGlCQXZOWCxFdUI2R2hCLEtBQUssRXZCN0dJLE9BQU8sR3VCc1NQOztBQXZMVCxPQWdGTyxNQWlGSSxRQWpLVixNQUFNLEVBZ0ZQLE9BQU8sTUFpRkksUUFqS0QsTUFBTSxDQUFDLEVBQ2YsWUFBWSxFQU5BLE9BQWlELEVBTzdELEtBQUssRUFQTyxPQUFpRCxHQWE5RDs7QUFMQyxPQTZFSyxNQWlGSSxRQWpLVixNQUFNLFNBR0ssRUE2RVosT0FBTyxNQWlGSSxRQWpLVixNQUFNLENBQUEsUUFJSixHQTRFSCxPQUFPLE1BaUZJLFFBaktELE1BQU0sU0FHSixFQTZFWixPQUFPLE1BaUZJLFFBaktELE1BQU0sQ0FBQSxRQUliLEVBQVcsRUFDVixNQUFNLEV2Qm1HaUIsaUJBdk5YLEV1QnFIWixLQUFLLEV2QnJIQSxPQUFPLEd1QnNIYjs7QUF5RUgsT0FBTyxNQWlGSSxRQVdNLEVBNUZqQixPQUFPLE1BaUZJLFFBV00sU0FNSyxFQWxHdEIsT0FBTyxNQWlGSSxRQVdNLENBQUEsUUFPSixHQW5HYixPQUFPLE1BaUZJLFFBV00sTUFHRyxFQS9GcEIsT0FBTyxNQWlGSSxRQVdNLE1BR0csU0FHRSxFQWxHdEIsT0FBTyxNQWlGSSxRQVdNLE1BR0csQ0FBQSxRQUlQLEdBbkdiLE9BQU8sTUFpRkksUUFXTSxNQUlBLEVBaEdqQixPQUFPLE1BaUZJLFFBV00sTUFJQSxTQUVLLEVBbEd0QixPQUFPLE1BaUZJLFFBV00sTUFJQSxDQUFBLFFBR0osRUFBVyxFQUNWLFlBQVksRUFBRSxXQUFXLEdBQzFCOztBQXJHYixPQUFPLE1BaUZJLE1BV0ksQ0FBSSxFQS9LbkIsTUFBTSxFdkIyR3FCLGlCQXROYixFdUI0R2QsS0FBSyxFdkI1R0UsT0FBTyxHdUJxU0w7O0FBdkxULE9BZ0ZPLE1BaUZJLE1BaktWLE1BQU0sRUFnRlAsT0FBTyxNQWlGSSxNQWpLRCxNQUFNLENBQUMsRUFDZixZQUFZLEVBTkEsT0FBaUQsRUFPN0QsS0FBSyxFQVBPLE9BQWlELEdBYTlEOztBQUxDLE9BNkVLLE1BaUZJLE1BaktWLE1BQU0sU0FHSyxFQTZFWixPQUFPLE1BaUZJLE1BaktWLE1BQU0sQ0FBQSxRQUlKLEdBNEVILE9BQU8sTUFpRkksTUFqS0QsTUFBTSxTQUdKLEVBNkVaLE9BQU8sTUFpRkksTUFqS0QsTUFBTSxDQUFBLFFBSWIsRUFBVyxFQUNWLE1BQU0sRXZCbUdpQixpQkF0TmIsRXVCb0hWLEtBQUssRXZCcEhGLE9BQU8sR3VCcUhYOztBQXlFSCxPQUFPLE1BaUZJLE1BV0ksRUE1RmYsT0FBTyxNQWlGSSxNQVdJLFNBTU8sRUFsR3RCLE9BQU8sTUFpRkksTUFXSSxDQUFBLFFBT0YsR0FuR2IsT0FBTyxNQWlGSSxNQVdJLE1BR0ssRUEvRnBCLE9BQU8sTUFpRkksTUFXSSxNQUdLLFNBR0UsRUFsR3RCLE9BQU8sTUFpRkksTUFXSSxNQUdLLENBQUEsUUFJUCxHQW5HYixPQUFPLE1BaUZJLE1BV0ksTUFJRSxFQWhHakIsT0FBTyxNQWlGSSxNQVdJLE1BSUUsU0FFSyxFQWxHdEIsT0FBTyxNQWlGSSxNQVdJLE1BSUUsQ0FBQSxRQUdKLEVBQVcsRUFDVixZQUFZLEVBQUUsV0FBVyxHQUMxQjs7QUE3SWIsT0F3Q08sU0F4Q04sT0FBTyxDQUFDLEV0QnZMVCxPQUFPLEVBQUUsS0FBSyxFQUNkLEtBQUssRUFBRSxDQUFDLEVBQ1IsTUFBTSxFQUFFLENBQUMsRUFFVCxNQUFNLEVBQUUsV3NCK0tJLEV0QjdLWixPQUFPLEVBQUUsRUFBRSxFQUdULG1CQUFtQixFQUFFLENBQUMsRUFDdEIsZ0JBQWdCLEVBQUUsS0FBSyxFQUN2QixZQUFZLEVENEJSLCtCQzVCaUQsRXNCOEtyRCxRQUFRLEVBQUUsUUFBUSxFQUNsQixHQUFHLEVBQUUsS0FBSyxFQUVWLE9BQU8sRUFBRSxZQUFZLEVBQ3JCLEtBQUssRUFBQyxLQUFDLEVBQ1AsV0FBc0IsRXZCaURGLEdBQUcsR3VCaER4Qjs7QUFnQ0QsT0FBTyxTQTZHSyxPQVNBLE9BQ0UsRUF2SGQsT0FBTyxTQTZHSyxNQVNTLE9BQ1AsQ0FBQyxFQUNQLGdCQUFnQixFdkIxVGYsT0FBTyxHdUIyVFQ7O0FBekhQLE9BQU8sU0E2R0ssT0FTQSxRQU1LLE9BQ0MsRUE3SGxCLE9BQU8sU0E2R0ssTUFTUyxRQU1KLE9BQ0MsQ0FBQyxFQUNQLGdCQUFnQixFdkJoVW5CLE9BQU8sR3VCaVVMOztBQS9IWCxPQUFPLFNBNkdLLE9BU0EsVUFNTyxPQUNELEVBN0hsQixPQUFPLFNBNkdLLE1BU1MsVUFNRixPQUNELENBQUMsRUFDUCxnQkFBZ0IsRXZCL1RqQixPQUFPLEd1QmdVUDs7QUEvSFgsT0FBTyxTQTZHSyxPQVNBLFFBTUssT0FDQyxFQTdIbEIsT0FBTyxTQTZHSyxNQVNTLFFBTUosT0FDQyxDQUFDLEVBQ1AsZ0JBQWdCLEV2QjlUbkIsT0FBTyxHdUIrVEw7O0FBL0hYLE9BQU8sU0E2R0ssT0FTQSxRQU1LLE9BQ0MsRUE3SGxCLE9BQU8sU0E2R0ssTUFTUyxRQU1KLE9BQ0MsQ0FBQyxFQUNQLGdCQUFnQixFdkI3VG5CLE9BQU8sR3VCOFRMOztBQS9IWCxPQUFPLFNBNkdLLE9BU0EsTUFNRyxPQUNHLEVBN0hsQixPQUFPLFNBNkdLLE1BU1MsTUFNTixPQUNHLENBQUMsRUFDUCxnQkFBZ0IsRXZCNVRyQixPQUFPLEd1QjZUSDs7QUEvSFgsT0FBTyxXQXNJTyxPQUFPLENBQUMsRUFDbEIsR0FBRyxFQUFFLE1BQU0sRUFDWCxLQUFLLEVBQUUsSUFBSSxFQUNYLFdBQXNCLEVBQVMsQ0FBQyxHQUNqQzs7QUFHSCxDQUFDLE9BQU8sTUFDQyxFQURULENBQUMsT0FBTyxNQUVDLENBQUMsRUFDTixlQUFlLEVBQUUsSUFBSSxHQUN0Qjs7QUMzVEgsYUFBYSxDQUFDLEVBWGQsUUFBUSxFQUFFLFFBQVEsRUFDbEIsS0FBSyxFeEJOSyxPQUFPLEV3Qk9qQixNQUFNLEVBQUUsT0FBTyxHQWNkOztDMUJxekVELGNHaHRFQSxDQUFnQixPQUFoQixBQUFDLEV1QjFHRCxhQUFhLEN2QjBHYyxFQUN6QixPQUFPLEVBQUUsQ0FBQyxHQUNYOztBdUJuSEQsYUFBQyxNQUFNLEVBT1AsYUFOQyxNQUFNLENBQUMsRUFDTixLQUFLLEV4QlZELE9BQU8sR3dCV1o7O0FBSUQsYUFBYSxNQUdKLENBQUMsRUExQlYsS0FBSyxFeEI2UUUsT0FBTyxFd0I1UWQsR0FBSyxFeEJnUkUsTUFBTSxFd0IvUWIsU0FBUyxFeEJtUkYsS0FBSyxFd0JsUlosV0FBVyxFeEJxUlksQ0FBQyxHd0I5UHdCOztBQUhoRCxhQUFhLEVBQWIsYUFBYSxPQUlBLENBQUMsRUEzQmQsS0FBSyxFeEI4UUcsSUFBSSxFd0I3UVosR0FBSyxFeEJpUkcsTUFBTSxFd0JoUmQsU0FBUyxFeEJvUkQsR0FBRyxFd0JuUlgsV0FBVyxFeEJxUlksQ0FBQyxHd0I3UDZCOztBNUJpQ3JELElBQUksZUFBZSxDQUFDLEVBQ2xCLFFBQVEsRUFBRSxLQUFLLEVBQ2YsS0FBSyxFQUFFLElBQUksRUFDWCxVQUFVLEVBQUUsTUFBTSxHQVNuQjs7QUFaRCxJQUFJLGVBQWUsY0FLRixDQUFDLEVBQ2QsVUFBVSxFQUFFLE1BQU0sR0FDbkI7O0FBUEgsSUFBSSxlQUFlLENBU2pCLElBQUksQ0FBQyxFQUNILFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQUlILGVBQWUsQ0FBQyxFQTNGaEIsUUFBUSxFQUFFLEtBQUssRUFDZixHQUFHLEVBQUUsQ0FBQyxFQUNOLEtBQUssRUFBRSxDQUFDLEVBQ1IsTUFBTSxFQUFFLENBQUMsRUFDVCxJQUFJLEVBQUUsQ0FBQyxFQUNQLE9BQU8sRUltcUJPLElBQUksRUpqcUJsQixPQUFPLEVBQUUsSUFBSSxFQUNiLGdCQUFnQixFSWdCVixzQkFBTyxFSmZiLFVBQVUsRUFBRSxJQUFJLEdBb0ZmOztBQUdELE9BQU8sQ0FBQyxFQWpGUixPQUFPLEVJeXBCTyxJQUFJLEVKdnBCbEIsbUJBQW1CLEVBQUUsTUFBTSxFQUUzQixPQUFPLEVBQUUsSUFBSSxFQUNiLE9BQU8sRUlXUSxJQUFJLEVKVG5CLE1BQU0sRUlncEJRLGlCQWhwQkssRUpDbkIsYUFBYSxFSVlDLElBQUksRUpYbEIsZ0JBQWdCLEVJQ1YsT0FBTyxFSjBFWCxRQUFRLEVBQUUsUUFBUSxFQUNsQixHQUFHLEVBQUUsS0FBSyxFQUNWLFlBQVksRUFBRSxJQUFJLEVBQ2xCLFdBQVcsRUFBRSxJQUFJLEVBQ2pCLFVBQVUsRUFBRSxJQUFJLEdBd0JqQjs7Q0VreEVELGNHaHdFQSxDQUFnQixPQUFoQixBQUFDLEVMakRELE9BQU8sQ0tpRG9CLEVBQ3pCLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FOckNHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElDZDdDLE9BQU8sQ0FBQyxFQXJFTixVQUFVLEVBQUUsQ0FBQyxHQW9HZDs7QUFoR0QsT0FpRU8sQ0FqRVAsT0FBTyxDQUFDLEVBQ04sU0FBUyxFQUFFLENBQUMsR0FDYjs7QUFHRCxPQTRETyxHQTVETCxXQUFXLENBQUMsRUFDWixhQUFhLEVBQUUsQ0FBQyxHQUNqQjs7QUR3RUcsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSUNkN0MsT0FBTyxDQUFDLEVBN0NOLEtBQUssRUlnbkJNLEtBQUssRUovbUJoQixTQUFTLEVPcEJELE1BQTZDLEdQK0Z0RDs7QUEvQkQsT0FBTyxTQVVLLENBQUMsRUFDVCxPQUFPLEVBQUUsQ0FBQyxHQUNYOztBREVDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElDZDdDLE9BQU8sS0FlQyxDQUFFLEVBNURSLEtBQUssRUE0RGlDLEdBQUcsRUEzRHpDLFNBQVMsRU9wQkQsTUFBNkMsR1ArRVA7O0FERDVDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElDZDdDLE9BQU8sTUFnQkUsQ0FBQyxFQTdEUixLQUFLLEVBNkRpQyxHQUFHLEVBNUR6QyxTQUFTLEVPcEJELE1BQTZDLEdQZ0ZQOztBREY1QyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJQ2Q3QyxPQUFPLE1BaUJFLENBQUMsRUE5RFIsS0FBSyxFQThEaUMsR0FBRyxFQTdEekMsU0FBUyxFT3BCRCxNQUE2QyxHUGlGUDs7QUFqQmhELE9BQU8sS0FvQkMsQ0FBQyxFQTFEVCxHQUFHLEVBQUUsQ0FBQyxFQUNOLEtBQUssRUFBRSxDQUFDLEVBQ1IsTUFBTSxFQUFFLENBQUMsRUFDVCxJQUFJLEVBQUUsQ0FBQyxFQUVQLEtBQUssRUFBRSxJQUFJLEVBQ1gsU0FBUyxFQUFFLElBQUksRUFDZixNQUFNLEVBQUUsSUFBSSxFQUNaLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLFdBQVcsRUFBRSxDQUFDLEVBRWQsTUFBTSxFQUFFLENBQUMsRUFDVCxhQUFhLEVBQUUsQ0FBQyxHQWdEYjs7QURIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLElDbkI1QyxPQUFPLENBQUMsRUF0Q1IsR0FBRyxFQUFFLENBQUMsRUFDTixLQUFLLEVBQUUsQ0FBQyxFQUNSLE1BQU0sRUFBRSxDQUFDLEVBQ1QsSUFBSSxFQUFFLENBQUMsRUFFUCxLQUFLLEVBQUUsSUFBSSxFQUNYLFNBQVMsRUFBRSxJQUFJLEVBQ2YsTUFBTSxFQUFFLElBQUksRUFDWixVQUFVLEVBQUUsSUFBSSxFQUNoQixXQUFXLEVBQUUsQ0FBQyxFQUVkLE1BQU0sRUFBRSxDQUFDLEVBQ1QsYUFBYSxFQUFFLENBQUMsR0F5RGY7O0FBL0JELE9BQU8sZ0JBNEJZLENBQUMsRUFDaEIsUUFBUSxFQUFFLEtBQUssR0FDaEI7O0E2QnRISCxLQUFLLENBQUMsRUFDSixPQUFPLEVBQUUsZUFBZSxHQUN6Qjs7QUFFRCxVQUFVLENBQUMsRUFDVCxVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QTlCcUdHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSThCdkYxQyxvQkFBb0IsQ0FBSSxFQTFCeEIsT0FBTyxFQUFFLGVBQWUsR0E0QnZCOztBQS9DRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxHQUFHLEdBQUcsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElBaUQvRCxvQkFBb0IsQ0FBSSxFQWhEdEIsT0FBTyxFQUFFLGVBQWUsR0FrRHpCOztBOUI0RUMsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSThCM0Z6QyxnQkFBZ0IsQ0FBRyxFQXpCckIsT0FBTyxFQUFFLGVBQWUsR0EyQnJCOztBOUI4RkQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJOEI1RnhDLGdCQUFnQixDQUFHLEVBakVyQixPQUFPLEVBQUUsZUFBZSxHQW1FckI7O0E5QjBGRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLE9BQU8sU0FBUyxFQUFFLFVBQVUsSThCdkZoRSxxQkFBcUIsQ0FBRyxFQTFCeEIsT0FBTyxFQUFFLGVBQWUsR0E0QnZCOztBQS9DRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEdBQUcsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElBaUR0RSxxQkFBcUIsQ0FBRyxFQWhEdEIsT0FBTyxFQUFFLGVBQWUsR0FrRHpCOztBOUI0RUMsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSThCM0Z6QyxlQUFlLENBQUksRUF6QnJCLE9BQU8sRUFBRSxlQUFlLEdBMkJyQjs7QTlCOEZELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSThCNUZ4QyxlQUFlLENBQUksRUFqRXJCLE9BQU8sRUFBRSxlQUFlLEdBbUVyQjs7QTlCMEZELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksT0FBTyxTQUFTLEVBQUUsVUFBVSxJOEJ2RmhFLG9CQUFvQixDQUFJLEVBMUJ4QixPQUFPLEVBQUUsZUFBZSxHQTRCdkI7O0FBL0NELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsR0FBRyxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSUFpRHRFLG9CQUFvQixDQUFJLEVBaER0QixPQUFPLEVBQUUsZUFBZSxHQWtEekI7O0FBS0gsWUFBWSxFQUNaLGNBQWMsQ0FBQyxFeEJrSGYsUUFBUSxFQUFFLG1CQUFtQixFQUM3QixLQUFLLEVBQUUsR0FBRyxFQUNWLE1BQU0sRUFBRSxHQUFHLEVBQ1gsT0FBTyxFQUFFLENBQUMsRUFDVixRQUFRLEVBQUUsTUFBTSxFQUNoQixJQUFJLEVBQUUsZ0JBQWEsRUFDbkIsV0FBVyxFQUFFLE1BQU0sRUFDbkIsTUFBTSxFQUFFLENBQUMsR3dCdkhSOztBQUdELGNBQWMsT0FDSixFQURWLGNBQWMsTUFFTCxDQUFDLEV4QnVIVixRQUFRLEVBQUUsaUJBQWlCLEVBQzNCLEtBQUssRUFBRSxJQUFJLEVBQ1gsTUFBTSxFQUFFLElBQUksRUFDWixRQUFRLEVBQUUsT0FBTyxFQUNqQixJQUFJLEVBQUUsSUFBSSxFQUNWLFdBQVcsRUFBRSxNQUFNLEd3QjFIaEI7O0FBSUgsbUJBQW1CLEVBQ25CLGtCQUFrQixDQUFDLEVBQ2pCLE9BQU8sRUFBRSxnQkFBZ0IsR0FTMUI7O0E5Qm1ERyxNQUFNLENBQUMsTUFBTSxNQUFNLFdBQVcsRUFBRSxTQUFTLEk4QjlEN0MsbUJBQW1CLEVBQ25CLGtCQUFrQixDQUFDLEVBSWYsT0FBTyxFQUFFLGdCQUFnQixHQU01Qjs7QTlCbURHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sV0FBVyxFQUFFLFFBQVEsSThCOUQ1QyxtQkFBbUIsRUFDbkIsa0JBQWtCLENBQUMsRUFRZixPQUFPLEVBQUUsZUFBZSxHQUUzQjs7QUFFRCxtQkFBbUIsRUFDbkIsa0JBQWtCLENBQUMsRUFDakIsT0FBTyxFQUFFLGVBQWUsR0FTekI7O0E5QnNDRyxNQUFNLENBQUMsTUFBTSxNQUFNLFdBQVcsRUFBRSxTQUFTLEk4QmpEN0MsbUJBQW1CLEVBQ25CLGtCQUFrQixDQUFDLEVBSWYsT0FBTyxFQUFFLGVBQWUsR0FNM0I7O0E5QnNDRyxNQUFNLENBQUMsTUFBTSxNQUFNLFdBQVcsRUFBRSxRQUFRLEk4QmpENUMsbUJBQW1CLEVBQ25CLGtCQUFrQixDQUFDLEVBUWYsT0FBTyxFQUFFLGdCQUFnQixHQUU1Qjs7QUM1SEQsV0FBVyxDQUFDLEVBQ1YsS0FBSyxFQUFFLGVBQWUsR0FDdkI7O0FBRUQsWUFBWSxDQUFDLEVBQ1gsS0FBSyxFQUFFLGdCQUFnQixHQUN4Qjs7QUFFRCxhQUFhLENBQUMsRUFDWixPQUFPLEVBQUUsS0FBSyxFQUNkLFlBQVksRUFBRSxJQUFJLEVBQ2xCLFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBekJvSkQsU0FBQyxRQUFRLEV5QmxKVCxTekJtSkMsT0FBTyxDQUFDLEVBQ1AsT0FBTyxFQUFFLEtBQUssRUFDZCxPQUFPLEVBQUUsR0FBRyxFQUdWLFVBQVUsRUFBRSxDQUFDLEVBQ2IsS0FBSyxFQUFFLENBQUMsR0FFWDs7QUFFRCxTQUFDLE9BQU8sQ0FBQyxFQUNQLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0EwQjVHQyxXQUFXLENBQUssRUNuQmxCLGVBQWUsRUFyRGdDLFVBQVUsR0QwRXREOztBQUZELFlBQVksQ0FBSSxFQ25CbEIsZUFBZSxFQXBEbUMsUUFBUSxHRHlFdkQ7O0FBRkQsYUFBYSxDQUFHLEVDbkJsQixlQUFlLEVBbkRILE1BQU0sR0R3RWY7O0FBRkQsY0FBYyxDQUFFLEVDbkJsQixlQUFlLEVBbERGLGFBQWEsR0R1RXZCOztBQUZELGFBQWEsQ0FBRyxFQ25CbEIsZUFBZSxFQWpESCxZQUFZLEdEc0VyQjs7QUFLRCxXQUFXLFNBQ0MsS0FDRixHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsRUM1QnRCLGVBQWUsRUFyRGdDLFVBQVUsR0RtRmxEOztBQUpMLFlBQVksU0FDQSxLQUNGLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQzVCdEIsZUFBZSxFQXBEbUMsUUFBUSxHRGtGbkQ7O0FBSkwsYUFBYSxTQUNELEtBQ0YsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVDNUJ0QixlQUFlLEVBbkRILE1BQU0sR0RpRlg7O0FBT0wsVUFBVSxDQUFNLEVDcENsQixXQUFXLEVBMUNKLFVBQVUsR0RnRmQ7O0FBRUQsZUFBZSxDQUFNLEVDeEJ2QixVQUFVLEVBMURILFVBQVUsR0RvRmQ7O0FBTkQsYUFBYSxDQUFHLEVDcENsQixXQUFXLEVBekNELFFBQVEsR0QrRWY7O0FBRUQsa0JBQWtCLENBQUcsRUN4QnZCLFVBQVUsRUF6REEsUUFBUSxHRG1GZjs7QUFORCxhQUFhLENBQUcsRUNwQ2xCLFdBQVcsRUF4Q0QsTUFBTSxHRDhFYjs7QUFFRCxrQkFBa0IsQ0FBRyxFQ3hCdkIsVUFBVSxFQXhEQSxNQUFNLEdEa0ZiOztBQU5ELGNBQWMsQ0FBRSxFQ3BDbEIsV0FBVyxFQXZDQSxPQUFPLEdENkVmOztBQUVELG1CQUFtQixDQUFFLEVDeEJ2QixVQUFVLEVBdkRDLE9BQU8sR0RpRmY7O0FBSUgsb0JBQW9CLENBQUMsRUMvQ3JCLGVBQWUsRUFuREgsTUFBTSxFQW9EbEIsV0FBVyxFQXhDRCxNQUFNLEVEd0ZkLGFBQWEsRUFBRSxNQUFNLEdBQ3RCOztBQUtHLGNBQWMsQ0FBWSxFQ2hDOUIsS0FBSyxFRCtCVSxDQUFDLEdBR1g7O0FBRkQsY0FBYyxDQUFZLEVDaEM5QixLQUFLLEVEK0JVLENBQUMsR0FHWDs7QUFGRCxjQUFjLENBQVksRUNoQzlCLEtBQUssRUQrQlUsQ0FBQyxHQUdYOztBQUZELGNBQWMsQ0FBWSxFQ2hDOUIsS0FBSyxFRCtCVSxDQUFDLEdBR1g7O0FBRkQsY0FBYyxDQUFZLEVDaEM5QixLQUFLLEVEK0JVLENBQUMsR0FHWDs7QUFGRCxjQUFjLENBQVksRUNoQzlCLEtBQUssRUQrQlUsQ0FBQyxHQUdYOztBaENzREQsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLE1BQU0sU0FBUyxFQUFFLElBQUksSWdDeER6QyxlQUFlLENBQVcsRUNoQzlCLEtBQUssRUQrQlUsQ0FBQyxHQUdYO0VBRkQsZUFBZSxDQUFXLEVDaEM5QixLQUFLLEVEK0JVLENBQUMsR0FHWDtFQUZELGVBQWUsQ0FBVyxFQ2hDOUIsS0FBSyxFRCtCVSxDQUFDLEdBR1g7RUFGRCxlQUFlLENBQVcsRUNoQzlCLEtBQUssRUQrQlUsQ0FBQyxHQUdYO0VBRkQsZUFBZSxDQUFXLEVDaEM5QixLQUFLLEVEK0JVLENBQUMsR0FHWDtFQUZELGVBQWUsQ0FBVyxFQ2hDOUIsS0FBSyxFRCtCVSxDQUFDLEdBR1g7O0FoQ3NERCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sTUFBTSxTQUFTLEVBQUUsSUFBSSxJZ0N4RHpDLGNBQWMsQ0FBWSxFQ2hDOUIsS0FBSyxFRCtCVSxDQUFDLEdBR1g7RUFGRCxjQUFjLENBQVksRUNoQzlCLEtBQUssRUQrQlUsQ0FBQyxHQUdYO0VBRkQsY0FBYyxDQUFZLEVDaEM5QixLQUFLLEVEK0JVLENBQUMsR0FHWDtFQUZELGNBQWMsQ0FBWSxFQ2hDOUIsS0FBSyxFRCtCVSxDQUFDLEdBR1g7RUFGRCxjQUFjLENBQVksRUNoQzlCLEtBQUssRUQrQlUsQ0FBQyxHQUdYO0VBRkQsY0FBYyxDQUFZLEVDaEM5QixLQUFLLEVEK0JVLENBQUMsR0FHWDs7QUEvRkwsZUFBZSxDQUFDLEVDWWhCLE9BQU8sRUFBRSxJQUFJLEdEVlo7O0FBRUQsZ0JBQWdCLENBQUMsRUFDZixJQUFJLEVBQUUsUUFBUSxHQUNmOztBQUVELGdCQUFnQixDQUFDLEVBQ2YsSUFBSSxFQUFFLFFBQVEsR0FDZjs7QUFFRCxrQkFBa0IsQ0FBQyxFQUNqQixJQUFJLEVBQUUsUUFBUSxHQUNmOztBQUdDLGFBQWEsQ0FBSyxFQ3NEcEIsY0FBYyxFQW5FUCxHQUFHLEdEZVA7O0FBRkQscUJBQXFCLENBQUgsRUNzRHBCLGNBQWMsRUFsRUMsV0FBVyxHRGN2Qjs7QUFGRCxnQkFBZ0IsQ0FBRSxFQ3NEcEIsY0FBYyxFQWpFSixNQUFNLEdEYWI7O0FBRkQsd0JBQXdCLENBQU4sRUNzRHBCLGNBQWMsRUFoRUksY0FBYyxHRFk3Qjs7QWhDa0lDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElnQzFIckMsc0JBQXNCLENBQUcsRUNmakMsT0FBTyxFQUFFLElBQUksR0RpQko7RUFFRCx1QkFBdUIsQ0FBRyxFQUN4QixJQUFJLEVBQUUsUUFBUSxHQUNmO0VBRUQsdUJBQXVCLENBQUcsRUFDeEIsSUFBSSxFQUFFLFFBQVEsR0FDZjtFQUVELHlCQUF5QixDQUFHLEVBQzFCLElBQUksRUFBRSxRQUFRLEdBQ2Y7RUFHQyxvQkFBb0IsQ0FBTyxFQzJCckMsY0FBYyxFQW5FUCxHQUFHLEdEMENDO0VBRkQsNEJBQTRCLENBQUQsRUMyQnJDLGNBQWMsRUFsRUMsV0FBVyxHRHlDZjtFQUZELHVCQUF1QixDQUFJLEVDMkJyQyxjQUFjLEVBakVKLE1BQU0sR0R3Q0w7RUFGRCwrQkFBK0IsQ0FBSixFQzJCckMsY0FBYyxFQWhFSSxjQUFjLEdEdUNyQjs7QWhDdUdQLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxNQUFNLFNBQVMsRUFBRSxJQUFJLElnQzFIckMscUJBQXFCLENBQUksRUNmakMsT0FBTyxFQUFFLElBQUksR0RpQko7RUFFRCxzQkFBc0IsQ0FBSSxFQUN4QixJQUFJLEVBQUUsUUFBUSxHQUNmO0VBRUQsc0JBQXNCLENBQUksRUFDeEIsSUFBSSxFQUFFLFFBQVEsR0FDZjtFQUVELHdCQUF3QixDQUFJLEVBQzFCLElBQUksRUFBRSxRQUFRLEdBQ2Y7RUFHQyxtQkFBbUIsQ0FBUSxFQzJCckMsY0FBYyxFQW5FUCxHQUFHLEdEMENDO0VBRkQsMkJBQTJCLENBQUEsRUMyQnJDLGNBQWMsRUFsRUMsV0FBVyxHRHlDZjtFQUZELHNCQUFzQixDQUFLLEVDMkJyQyxjQUFjLEVBakVKLE1BQU0sR0R3Q0w7RUFGRCw4QkFBOEIsQ0FBSCxFQzJCckMsY0FBYyxFQWhFSSxjQUFjLEdEdUNyQjs7QTlCdERYLElBQUksQ2dDVEYsRUFDSCxTQUFTLEVBQUUsZ0JBQWdCLEdBQzNCOztBaENpQkMsSUFBSSxDZ0NoQkYsRUFDQSxTQUFTLEVBQUUsSUFBSSxFQUNmLFdBQVcsRUFBRSxHQUFHLEdBQ25COztBQUVELEVBQUUsRUFDRixFQUFFLEVBQ0YsRUFBRSxFQUNGLEVBQUUsRUFDRixFQUFFLEVBQ0YsRUFBRSxDQUFBLEVBQ0QsV0FBVyxFQUFFLElBQUksR0FDakI7O0FBRUQsS0FBSyxDQUFBLEVBQ0osTUFBTSxFQUFFLElBQUksR0FDWjs7QUFFRCxTQUFTLENBQUEsRUFDUixRQUFRLEVBQUUsUUFBUSxHQUNsQjs7QUFFRCxhQUFhLENBQUEsRUFDWixLQUFLLEVBQUUsS0FBSyxFQUNaLFNBQVMsRUFBRSxJQUFJLEdBQ2Y7O0FBQ0QsQ0FBQyxDQUFBLEtBQUEsRUFBUSxNQUFSLEFBQUMsRUFBYyxFQUNaLFdBQVcsRUFBRSxJQUFJLEdBS3BCOztBbEN3SUssTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJa0M5STlDLENBQUMsQ0FBQSxLQUFBLEVBQVEsTUFBUixBQUFDLEVBQWMsRUFHVCxTQUFTLEVBQUUsZUFBZSxFQUMxQixXQUFXLEVBQUUsR0FBRyxHQUV0Qjs7QWxDd0lLLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSWtDdkk5QyxDQUFDLENBQUEsS0FBQSxFQUFRLE1BQVIsQUFBQyxFQUFjLEVBRVQsU0FBUyxFQUFFLGVBQWUsR0FFaEM7O0FBRUQsQ0FBQyxDQUFBLEtBQUEsRUFBUSxNQUFSLEFBQUMsRUFBYyxFQUNaLFdBQVcsRUFBRSxJQUFJLEdBQ3BCOztBakM0R0MsT0FBTyxDaUMxR0YsRUFDSCxVQUFVLEVBQUUsZUFBZSxFQUMzQixNQUFNLEVBQUUsZUFBZSxFQUN2QixhQUFhLEVBQUUsR0FDbkIsR0FBQzs7QWxDeUhLLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSWtDeEg5QyxJQUFJLENBQUMsbUJBQW1CLEVBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUEsRUFFbEIsVUFBVSxFQUFFLGlCQUFpQixHQUVwQzs7QUFHRCxhQUFhLENBQUMsS0FBSyxTQUFTLENBQUMsRUFDM0IsT0FBTyxFQUFFLGVBQWUsR0FDekI7O0FBRUQsa0JBQWtCLENBQUMsYUFBYSxTQUFTLENBQUMsRUFDeEMsT0FBTyxFQUFFLGVBQWUsR0FDekI7O0FDakVELDJCQUEyQixDQUFBLEVBQ3pCLFdBQVcsRUFBRSxHQUFHLEdBQ2pCOztBQ0RELE9BQU8sQ0FBRSxFQUNMLE1BQU0sRUFBRSxLQUFLLEVBQ2IsaUJBQWlCLEVBQUUsU0FBUyxFQUM1QixlQUFlLEVBQUUsS0FBSyxFQUN0QixtQkFBbUIsRUFBRSxNQUFNLEVBQzNCLEtBQUssRS9CMkVELE9BQU8sRStCMUVYLFFBQVEsRUFBRSxRQUFRLEdBU3JCOztBcEMySkssTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJb0MxSzlDLE9BQU8sQ0FBRSxFQVNELE1BQU0sRUFBRSxLQUFLLEdBTXBCOztBcEMySkssTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJb0MxSzlDLE9BQU8sQ0FBRSxFQVlELE1BQU0sRUFBRSxJQUFJLEVBQ1osT0FBTyxFQUFFLE9BQU8sR0FFdkI7O0FBR0QsYUFBYSxDQUFKLEVBQ0wsT0FBTyxFQUFFLGNBQWMsR0FDMUI7O0FBRUQsVUFBVSxDQUFDLEdBQUcsQ0FBQSxFQUNWLFVBQVUsRUFBRSxlQUFlLEdBQzlCOztBQUVELFVBQVUsQ0FBQyxHQUFHLE1BQU0sQ0FBQSxFQUNoQixPQUFPLEVBQUUsR0FBRyxFQUNaLFVBQVUsRUFBRSxlQUFlLEdBQzlCOztBQzNCQSxlQUFRLENBQUEsRUFDUCxTQUFTLEVBQUUsTUFBTSxFQUNqQixhQUFhLEVBQUUsSUFBSSxFQUNuQixLQUFLLEVoQzJFQyxPQUFPLEdnQ3ZFYjs7QXJDaUtJLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXFDeEs3QyxlQUFRLENBQUEsRUFLRyxTQUFTLEVBQUUsSUFBSSxHQUV6Qjs7QUFDRCxvQkFBYSxDQUFBLEVBQ1QsVUFBVSxFQUFFLGtCQUFrQixFQUM5QixRQUFRLEVBQUUsUUFBUSxFQUNsQixNQUFNLEVBQUUsR0FBRyxFQUNYLE9BQU8sRUFBRSxNQUFNLEVBQ2YsS0FBSyxFQUFFLElBQUksR0FNYjs7QXJDcUpHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXFDaEs3QyxvQkFBYSxDQUFBLEVBUVIsUUFBUSxFQUFFLFFBQVEsRUFDbEIsZ0JBQWdCLEVoQzJEVixPQUFPLEdnQ3pEaEI7O0FyQ3FKRyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLElxQ25KNUMsaUJBQVUsQ0FBQSxFQUVULFlBQVksRUFBRSxJQUFJLEVBQ2xCLGFBQWEsRUFBRSxJQUFJLEdBNERuQjs7QUEvREEsaUJBQVMsQ0FLVCxDQUFDLENBQUEsRUFDQSxLQUFLLEVoQ21ERCxPQUFPLEVnQ2xEWCxPQUFPLEVBQUUsWUFBWSxFQUNyQixXQUFXLEVBQUUsaUJoQ2lERixFZ0NoRFgsT0FBTyxFQUFFLE1BQU0sRUFDZixTQUFTLEVBQUUsTUFBTSxFQUNqQixXQUFXLEVBQUUsR0FBRyxFQUNoQixhQUFhLEVBQUUsSUFBSSxFQUNYLFFBQVEsRUFBRSxNQUFNLEdBbUN4Qjs7QUFoREQsaUJBQVMsQ0FLVCxDQUFDLFlBVWEsQ0FBQSxFQUNaLE1BQU0sRUFBRSxJQUFJLEVBQ0QsWUFBWSxFQUFFLENBQUMsR0FJMUI7O0FyQzhIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLElxQ25KM0MsaUJBQVMsQ0FLVCxDQUFDLFlBVWEsQ0FBQSxFQUlYLFlBQVksRUFBRSxJQUFJLEdBRW5COztBQXJCRixpQkFBUyxDQUtULENBQUMsV0FrQlksQ0FBQSxFQUlBLGFBQWEsRUFBRSxDQUFDLEdBQzNCOztBckN1SEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJcUNuSjNDLGlCQUFTLENBS1QsQ0FBQyxXQWtCWSxDQUFBLEVBRVgsYUFBYSxFQUFFLElBQUksR0FHbkI7O0FyQ3VIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLElxQ25KM0MsaUJBQVMsQ0FLVCxDQUFDLENBQUEsRUEwQkMsU0FBUyxFQUFFLE1BQU0sRUFDakIsT0FBTyxFQUFFLE1BQU0sR0FnQmhCOztBckNtR0UsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJcUNuSjNDLGlCQUFTLENBS1QsQ0FBQyxDQUFBLEVBK0JDLE9BQU8sRUFBRSxLQUFLLEVBQ2QsS0FBSyxFQUFFLElBQUksRUFDWCxXQUFXLEVBQUUsSUFBSSxFQUNqQixPQUFPLEVBQUUsNkJBQTZCLEVBQ3RDLGFBQWEsRUFBRSw0QkFBMkIsRUFDMUMsTUFBTSxFQUFFLHdCQUF3QixFQUNyQixTQUFTLEVBQUUsSUFBSSxFQUNmLFNBQVMsRUFBRSxLQUFLLEVBQ2hCLFVBQVUsRUFBRSxJQUFJLEVBQ2hCLFNBQVMsRUFBRSxJQUN2QixHQUVBOztBQWhERCxpQkFBUyxDQWlEVCxHQUFHLENBQUEsRUFDRixZQUFZLEVBQUUsSUFBSSxHQVdsQjs7QXJDc0ZFLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXFDbkozQyxpQkFBUyxDQWlEVCxHQUFHLENBQUEsRUFNVSxTQUFTLEVBQUUsSUFBSSxHQU0zQjs7QXJDc0ZFLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXFDbkozQyxpQkFBUyxDQWlEVCxHQUFHLENBQUEsRUFTRCxVQUFVLEVBQUUsS0FBSyxFQUNOLEtBQUssRUFBRSxJQUFJLEdBRXZCOztBQ3BGSixVQUFVLENBQUQsRUFFUixLQUFLLEVqQzhFRSxPQUFPLEVpQzdFZCxlQUFlLEVBQUUsS0FBSyxFQUN0QixpQkFBaUIsRUFBRSxTQUFTLEVBQzVCLG1CQUFtQixFQUFFLFVBQVUsRUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFDZixNQUFNLEVBQUUsT0FBTyxHQXVCZjs7QXRDNElLLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXNDMUs5QyxVQUFVLENBQUQsRUFVUCxnQkFBZ0IsRUFBRSxlQUFlLEVBQ2pDLDhDQUE4QyxDQUM5QyxXQUFXLEVBQUUsQ0FBQyxFQUNkLE1BQU0sRUFBRSxJQUFJLEdBaUJiO0VBOUJELFVBQVUsQ0FlRixDQUFDLENBQUEsRUFDRyxVQUFVLEVBQUUsa0JBQWtCLEdBQ2pDOztBQUlSLGlCQUFRLENBQUEsRUFDUCxhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QXRDbUpJLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXNDMUs5QyxVQUFVLENBeUJULEdBQUcsQ0FBQSxFQUVELFVBQVUsRUFBRSxNQUFNLEdBRW5COztBQzdCRixVQUFVLENBQUQsRUFDUixPQUFPLEVBQUUsTUFBTSxHQStCZjs7QXZDMElLLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXVDMUs5QyxVQUFVLENBSUYsQ0FBQyxDQUFBLEVBQ0csVUFBVSxFQUFFLGtCQUFrQixHQUNqQzs7QUFOVCxVQUFVLENBU1QsRUFBRSxDQUFBLEVBQ0ssbUJBQW1CLEVBQUUsT0FBTyxFQUM1QixZQUFZLEVBQUUsSUFBSSxFQUNsQixXQUFXLEVBQUUsQ0FBQyxHQUNqQjs7QUFiTCxVQUFVLENBY1QsRUFBRSxDQUFBLEVBQ0QsY0FBYyxFQUFFLElBQUksR0FLcEI7O0FBcEJGLFVBQVUsQ0FjVCxFQUFFLENBRUQsSUFBSSxDQUFBLEVBQ0gsY0FBYyxFQUFFLEtBQUssR0FDckI7O0FBbEJILFVBQVUsQ0FzQk4sU0FBUyxDQUFDLEVBRU4sS0FBSyxFQUFFLGdCQUFnQixFQUN2QixTQUFTLEVBQUUsZUFBZSxHQUs3Qjs7QXZDNElDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXVDMUs5QyxVQUFVLENBc0JOLFNBQVMsQ0FBQyxFQU1GLEtBQUssRUFBRSxnQkFBZ0IsR0FFOUI7O0F2QzRJQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl1Q3hJOUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFFbEIsS0FBSyxFQUFFLGdCQUFnQixHQUU5Qjs7QUN0Q0QsWUFBWSxDQUFILEVBQ0wsT0FBTyxFQUFFLFlBQVksR0FvQnhCOztBeENxSkssTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJd0MxSzlDLFlBQVksQ0FBSCxFQUlELE9BQU8sRUFBRSxXQUFXLEdBaUIzQjs7QUFyQkQsWUFBWSxDQU9SLGNBQWMsQ0FBQyxFQUNYLFVBQVUsRUFBRSxNQUFNLEdBWXJCOztBQXBCTCxZQUFZLENBT1IsY0FBYyxDQUdWLENBQUMsQ0FBQSxFQUNHLFlBQVksRUFBRSxpQkFBaUIsRUFDL0IsU0FBUyxFQUFFLE1BQU0sRUFDakIsS0FBSyxFQUFFLE9BQU8sRUFDZCxPQUFPLEVBQUUsTUFBTSxHQUtsQjs7QUFuQlQsWUFBWSxDQU9SLGNBQWMsQ0FHVixDQUFDLFdBTWUsQ0FBQSxFQUNSLE1BQU0sRUFBRSxJQUFJLEdBQ2Y7O0FBcURULGFBQU0sQ0FBQSxFQUNGLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLGdCQUFnQixFQUFFLE9BQU8sRUFDekIsYUFBYSxFQUFFLElBQUksRUFDbkIsYUFBYSxFQUFFLGFBQWEsRUFDNUIsUUFBUSxFQUFFLFFBQVEsRUFDbEIsWUFBWSxFQUFFLEtBQUssR0FTdEI7O0F4Q29GQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl3Q25HMUMsYUFBTSxDQUFBLEVBL0NOLFNBQVMsRUFBRSxLQUFLLEVBQ2hCLE1BQU0sRUFBRSxXQUFXLEVBQ25CLFlBQVksRUFBRSxJQUFJLEVBQ2xCLFdBQVcsRUFBRSxPQUFPLEdBMkRuQjs7QXhDb0ZDLE1BQU0sQ0FBQyxNQUFrQyxNQUF0QixTQUFTLEVBQUUsVUFBVSxPQUFyQixTQUFTLEVBQUUsVUFBVSxJd0NuRzFDLGFBQU0sQ0FBQSxFQXpDRixXQUFXLEVBQUUsT0FBTyxHQXdEdkI7O0FBSEcseUJBQWEsQ0FBQSxFQTNEakIsU0FBUyxFQUFFLEtBQUssRUFDaEIsTUFBTSxFQUFFLFdBQVcsRUFDbkIsWUFBWSxFQUFFLElBQUksRUFDbEIsV0FBVyxFQUFFLE9BQU8sR0EwRGY7O0F4Q3FGSCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl3Q3ZGdEMseUJBQWEsQ0FBQSxFQXJEYixXQUFXLEVBQUUsT0FBTyxHQXVEbkI7O0FBR0wsZ0JBQVMsQ0FBQSxFQUNMLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLEtBQUssRUFBRSxJQUFJLEVBQ1gsR0FBRyxFQUFFLENBQUMsR0FtQlQ7O0F4QzREQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl3Q2xGMUMsZ0JBQVMsQ0FBQSxFQU1ELEtBQUssRUFBRSxJQUFJLEdBZ0JsQjs7QUF0QkEsZ0JBQVEsQ0FTTCxHQUFHLENBQUEsRUFDQyxNQUFNLEVBQUUsV0FBVyxFQUNuQixRQUFRLEVBQUUsUUFBUSxFQUNsQixJQUFJLEVBQUUsQ0FBQyxFQUNQLEtBQUssRUFBRSxDQUFDLEVBQ1IsT0FBTyxFQUFFLFlBQVksRUFDckIsR0FBRyxFQUFFLE1BQU0sR0FNZDs7QXhDNkRILE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXdDbEZ6QyxnQkFBUSxDQVNMLEdBQUcsQ0FBQSxFQVNNLEdBQUcsRUFBRSxLQUFLLEVBQ1YsU0FBUyxFQUFFLE1BQU0sR0FFekI7O0FBR0wsZUFBUSxDQUFBLEVBQ0osUUFBUSxFQUFFLFFBQVEsRUFDbEIsSUFBSSxFQUFFLENBQUMsRUFDUCxHQUFHLEVBQUUsQ0FBQyxFQUNOLFlBQVksRUFBRSxJQUFJLEVBQ2xCLFlBQVksRUFBRSxpQkFBaUIsRUFDL0IsS0FBSyxFQUFFLEtBQUssRUFDWixtQkFBbUIsRUFBRSxVQUFVLEVBQy9CLGVBQWUsRUFBRSxLQUFLLEVBQ3RCLE1BQU0sRUFBRSxJQUFJLEdBV2Y7O0F4Q3NDQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl3QzFEMUMsZUFBUSxDQUFBLEVBOUVSLEtBQUssRUFBRSxJQUFJLEVBQ1gsVUFBVSxFQUFFLEtBQUssRUFDakIsYUFBYSxFQUFFLGlCQUFpQixFQUNoQyxTQUFTLEVBQUUsSUFBSSxFQUNmLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLGdCQUFnQixFQUFFLE9BQU8sRUFDekIsS0FBSyxFQUFFLElBQUksR0EyRlY7O0F4Q3NDQyxNQUFNLENBQUMsTUFBa0MsTUFBdEIsU0FBUyxFQUFFLFVBQVUsT0FBckIsU0FBUyxFQUFFLFVBQVUsSXdDMUQxQyxlQUFRLENBQUEsRUFyRUosVUFBVSxFQUFFLEtBQUssR0F5RnBCOztBQUxHLDJCQUFhLENBQUMsRUE3RmxCLEtBQUssRUFBRSxJQUFJLEVBQ1gsVUFBVSxFQUFFLEtBQUssRUFDakIsYUFBYSxFQUFFLGlCQUFpQixFQUNoQyxTQUFTLEVBQUUsSUFBSSxFQUNmLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLGdCQUFnQixFQUFFLE9BQU8sRUFDekIsS0FBSyxFQUFFLElBQUksR0F3Rk47O0F4Q3lDSCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl3QzNDdEMsMkJBQWEsQ0FBQyxFQXBGZCxVQUFVLEVBQUUsS0FBSyxHQXNGaEI7O0FBS0wsaUJBQVUsQ0FBQSxFQUNOLE9BQU8sRUFBRSxnQkFBZ0IsR0FZNUI7O0F4Q3VCQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl3Q3BDMUMsaUJBQVUsQ0FBQSxFQXZGVixPQUFPLEVBQUUsZ0JBQWlCLEVBQzFCLFFBQVEsRUFBRSxRQUFRLEdBbUdqQjs7QXhDdUJDLE1BQU0sQ0FBQyxNQUFrQyxNQUF0QixTQUFTLEVBQUUsVUFBVSxPQUFyQixTQUFTLEVBQUUsVUFBVSxJd0NwQzFDLGlCQUFVLENBQUEsRUFwRk4sT0FBTyxFQUFFLElBQUksR0FpR2hCOztBQU5HLDZCQUFhLENBQUMsRUE5RmxCLE9BQU8sRUFBRSxnQkFBaUIsRUFDMUIsUUFBUSxFQUFFLFFBQVEsR0ErRmI7O0F4QzJCSCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl3QzdCdEMsNkJBQWEsQ0FBQyxFQTNGZCxPQUFPLEVBQUUsSUFBSSxHQTZGWjs7QUFNTCxlQUFRLENBQUEsRUFDSixTQUFTLEVBQUUsTUFBTSxFQUNqQixLQUFLLEVBQUUsT0FBTyxFQUNkLFdBQVcsRUFBRSxJQUFJLEVBQ2pCLFdBQVcsRUFBRSxHQUFHLEVBQ2hCLGFBQWEsRUFBRSxNQUFNLEVBQ3JCLGFBQWEsRUFBRSxJQUFJLEdBV3RCOztBeENJQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl3Q3JCMUMsZUFBUSxDQUFBLEVBOUZSLEtBQUssRUFBRSxJQUFJLEVBQ1gsYUFBYSxFQUFFLElBQUksR0E4R2xCOztBeENJQyxNQUFNLENBQUMsTUFBa0MsTUFBdEIsU0FBUyxFQUFFLFVBQVUsT0FBckIsU0FBUyxFQUFFLFVBQVUsSXdDckIxQyxlQUFRLENBQUEsRUEzRkosYUFBYSxFQUFFLElBQUksRUFDbkIsU0FBUyxFQUFFLE1BQU0sR0EyR3BCOztBQUxHLDJCQUFhLENBQUMsRUExR2xCLEtBQUssRUFBRSxJQUFJLEVBQ1gsYUFBYSxFQUFFLElBQUksR0EyR2Q7O0F4Q09ILE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXdDVHRDLDJCQUFhLENBQUMsRUF2R2QsYUFBYSxFQUFFLElBQUksRUFDbkIsU0FBUyxFQUFFLE1BQU0sR0F3R2hCOztBQUtMLGlCQUFVLENBQUEsRUFDTixTQUFTLEVBQUUsTUFBTSxFQUNqQixLQUFLLEVBQUUsT0FBTyxHQUlqQjs7QUM5S0wsV0FBVyxDQUFGLEVBRVIsS0FBSyxFcEM4RUUsT0FBTyxFb0M3RWQsZUFBZSxFQUFFLEtBQUssRUFDdEIsaUJBQWlCLEVBQUUsU0FBUyxFQUM1QixtQkFBbUIsRUFBRSxVQUFVLEVBQy9CLE9BQU8sRUFBRSxNQUFNLEVBQ2YsTUFBTSxFQUFFLE9BQU8sR0FxQmY7O0F6QzhJSyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEl5QzFLOUMsV0FBVyxDQUFGLEVBVVAsZ0JBQWdCLEVBQUUsZUFBZSxFQUNqQyw4Q0FBOEMsQ0FDOUMsV0FBVyxFQUFFLENBQUMsRUFDZCxNQUFNLEVBQUUsSUFBSSxHQWViO0VBNUJELFdBQVcsQ0FjSCxDQUFDLENBQUEsRUFDRyxVQUFVLEVBQUUsa0JBQWtCLEdBQ2pDOztBQUdSLGtCQUFRLENBQUEsRUFDUCxhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QXpDcUpJLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSXlDMUs5QyxXQUFXLENBdUJWLEdBQUcsQ0FBQSxFQUVELFVBQVUsRUFBRSxNQUFNLEdBRW5COztBQzNCRixTQUFTLENBQUEsRUFDUixVQUFVLEVBQUUsSUFBSSxFQUNoQixpQkFBaUIsRUFBRSxNQUFNLEVBQ3pCLG1CQUFtQixFQUFFLE1BQU0sRUFDM0IsT0FBTyxFQUFFLElBQUksRUFDVixVQUFVLEVBQUUsT0FBTyxHQStKdEI7O0FBN0pBLGdCQUFRLENBQUEsRUFDUCxTQUFTLEVBQUUsTUFBTSxFQUNYLFdBQVcsRUFBRSxJQUFJLEVBQ3ZCLFVBQVUsRUFBRSxNQUFNLEVBQ1osS0FBSyxFQUFFLEtBQUssRUFDWixNQUFNLEVBQUUsTUFBTSxFQUNkLFNBQVMsRUFBRSxJQUFJLEdBQ3JCOztBQUVELGVBQU8sQ0FBQSxFQUNOLEtBQUssRUFBRSxLQUFLLEVBQ04sTUFBTSxFQUFFLE1BQU0sRUFDZCxTQUFTLEVBQUUsSUFBSSxHQW1CckI7O0FBdEJBLGVBQU0sQ0FLTixFQUFFLENBQUEsRUFDRCxTQUFTLEVBQUUsTUFBTSxFQUNqQixLQUFLLEVyQ3lEQSxPQUFPLEVxQ3hEWixVQUFVLEVBQUUsTUFBTSxFQUNsQixVQUFVLEVBQUUsQ0FBQyxFQUNiLFdBQVcsRUFBRSwwQkFBMEIsRUFDdkMsV0FBVyxFQUFFLE1BQU0sR0FDbkI7O0ExQzhJRyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEkwQzFKN0MsZUFBTyxDQUFBLEVBZ0JMLEtBQUssRUFBRSxlQUFlLEVBQ3RCLEtBQUssRUFBRSxJQUFJLEdBS1o7O0FBdEJBLGVBQU0sQ0FtQkEsV0FBVyxLQUFLLENBQUEsRUFDWixPQUFPLEVBQUUsZUFBZSxHQUMzQjs7QUFyQ1QsU0FBUyxDQXVDUixjQUFjLENBQUEsRUFDYixhQUFhLEVBQUUsWUFBWSxHQUMzQjs7QUF6Q0YsU0FBUyxDQTBDUixXQUFXLENBQ1YsaUJBQWlCLENBQUEsRUFDaEIsT0FBTyxFQUFFLElBQUksR0FDYjs7QUE3Q0gsU0FBUyxDQTBDUixXQUFXLENBSVYsR0FBRyxpQkFBaUIsQ0FBQSxFQUNuQixVQUFVLEVBQUUsWUFBWSxHQUN4Qjs7QUFoREgsU0FBUyxDQTBDUixXQUFXLENBT1YsYUFBYSxDQUFBLEVBQ1osT0FBTyxFQUFFLGVBQWUsR0FDeEI7O0FBbkRILFNBQVMsQ0EwQ1IsV0FBVyxDQVVWLEVBQUUsQ0FBQSxFQUNELEtBQUssRUFBRSxJQUFJLEVBQ1gsT0FBTyxFQUFFLHVCQUF1QixFQUNoQyxLQUFLLEVBQUUsa0JBQWtCLEVBQ3pCLE1BQU0sRUFBRSxZQUFZLEVBQ3BCLE9BQU8sRUFBRSxZQUFZLEdBTXJCOztBMUMyR0csTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJMEMxSzlDLFNBQVMsQ0EwQ1IsV0FBVyxDQVVWLEVBQUUsQ0FBQSxFQU9BLEtBQUssRUFBRSxlQUFlLEVBQ3RCLEtBQUssRUFBRSxJQUFJLEVBQ1gsTUFBTSxFQUFFLFlBQVksR0FFckI7O0FBL0RILFNBQVMsQ0EwQ1IsV0FBVyxDQXNCVixLQUFLLENBQUEsRUFDSixVQUFVLEVBQUUsd0JBQXVCLEVBQ25DLE1BQU0sRUFBRSxJQUFJLEVBQ1osTUFBTSxFQUFFLElBQUksRUFDWixhQUFhLEVBQUUsWUFBWSxFQUMzQixLQUFLLEVBQUUsZUFBZSxFQUN0QixLQUFLLEVBQUUsa0JBQWtCLEdBUXpCOztBQTlFSCxTQUFTLENBMENSLFdBQVcsQ0FzQlYsS0FBSyxhQVFVLENBQUMsRUFBRSwwQ0FBMEMsQ0FDdkQsS0FBSyxFQUFFLE9BQU8sRUFDZCxPQUFPLEVBQUUsQ0FBQyxFQUFFLGFBQWEsRUFDNUI7O0FBM0VKLFNBQVMsQ0EwQ1IsV0FBVyxDQXFDVixhQUFhLENBQUEsRUFDWixLQUFLLEVBQUUsZ0JBQWdCLEdBTXZCOztBMUNvRkcsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJMEMxSzlDLFNBQVMsQ0EwQ1IsV0FBVyxDQXFDVixhQUFhLENBQUEsRUFHWCxLQUFLLEVBQUUsZUFBZSxFQUN0QixLQUFLLEVBQUUsSUFBSSxFQUNYLE1BQU0sRUFBRSxZQUFZLEdBRXJCOztBQXRGSCxTQUFTLENBMENSLFdBQVcsQ0E2Q1YsY0FBYyxDQUFBLEVBQ2IsS0FBSyxFQUFFLGdCQUFnQixFQUN2QixXQUFXLEVBQUUsaUJBQWlCLEdBVTlCOztBQW5HSCxTQUFTLENBMENSLFdBQVcsQ0E2Q1YsY0FBYyxDQUdiLEtBQUssQ0FBQSxFQUVKLEtBQUssRUFBRSxlQUFlLEdBQ3RCOztBMUM2RUUsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsVUFBVSxJMEMxSzlDLFNBQVMsQ0EwQ1IsV0FBVyxDQTZDVixjQUFjLENBQUEsRUFRWixLQUFLLEVBQUUsZUFBZSxFQUN0QixLQUFLLEVBQUUsSUFBSSxFQUNYLE1BQU0sRUFBRSxZQUFZLEdBRXJCOztBQW5HSCxTQUFTLENBMENSLFdBQVcsQ0EwRFYsYUFBYSxDQUFBLEVBQ1osS0FBSyxFQUFFLGdCQUFnQixHQU12Qjs7QTFDK0RHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSTBDMUs5QyxTQUFTLENBMENSLFdBQVcsQ0EwRFYsYUFBYSxDQUFBLEVBR1gsS0FBSyxFQUFFLGVBQWUsRUFDdEIsS0FBSyxFQUFFLElBQUksRUFDWCxNQUFNLEVBQUUsWUFBWSxHQUVyQjs7QUEzR0gsU0FBUyxDQTBDUixXQUFXLENBa0VWLE9BQU8sVUFBVSxDQUFBLEVBQ2hCLGdCQUFnQixFQUFFLE9BQU8sRUFDekIsTUFBTSxFQUFFLElBQUksRUFDWixLQUFLLEVBQUUsS0FBSyxFQUNaLE1BQU0sRUFBRSxJQUFJLEVBQ1osV0FBVyxFQUFFLGVBQWUsRUFDNUIsU0FBUyxFQUFFLElBQUksRUFDZixxQ0FBcUMsQ0FDckMsTUFBTSxFQUFFLGtCQUFrQixFQUMxQixPQUFPLEVBQUUsWUFBWSxFQUNyQixPQUFPLEVBQUUsWUFBWSxFQUNyQixLQUFLLEVyQ3ZDQSxPQUFPLEVxQ3dDWixVQUFVLEVBQUUsZUFBZSxFQUNsQixvQ0FBb0MsRUFJN0M7O0ExQzZDRyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEkwQzFLOUMsU0FBUyxDQTBDUixXQUFXLENBa0VWLE9BQU8sVUFBVSxDQUFBLEVBZWYsTUFBTSxFQUFFLFlBQVksR0FFckI7O0FBN0hILFNBQVMsQ0EwQ1IsV0FBVyxDQW9GVixXQUFXLEtBQUssQ0FBQSxFQUNmLGdCQUFnQixFQUFFLE9BQU8sRUFDdEIsTUFBTSxFQUFFLElBQUksRUFDWixLQUFLLEVBQUUsS0FBSyxFQUNaLE1BQU0sRUFBRSxJQUFJLEVBQ1osV0FBVyxFQUFFLGVBQWUsRUFDNUIsU0FBUyxFQUFFLElBQUksRUFDZixNQUFNLEVBQUUsa0JBQWtCLEVBQzFCLE9BQU8sRUFBRSxZQUFZLEVBQ3JCLE9BQU8sRUFBRSxZQUFZLEVBQ3JCLEtBQUssRUFBRSxPQUFPLEVBQ2QsVUFBVSxFQUFFLGVBQWUsRUFDM0IsUUFBUSxFQUFFLFFBQVEsRUFDbEIsVUFBVSxFQUFFLE1BQU0sRUFDbEIsV0FBVyxFQUFFLElBQUksRUFDakIsZUFBZSxFQUFFLElBQUksR0FJeEI7O0ExQ3lCRyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEkwQzFLOUMsU0FBUyxDQTBDUixXQUFXLENBb0ZWLFdBQVcsS0FBSyxDQUFBLEVBaUJkLGFBQWEsRUFBRSxlQUFlLEdBRS9COztBQWpKSCxTQUFTLENBMENSLFdBQVcsQ0F3R1Ysd0JBQXdCLENBQUMsbUJBQW1CLENBQUEsRUFDM0MsT0FBTyxFQUFFLFlBQVksR0FDckI7O0FBcEpILFNBQVMsQ0EwQ1IsV0FBVyxDQTJHVixhQUFhLENBQUEsRUFDWixRQUFRLEVBQUUsUUFBUSxFQUNsQixJQUFJLEVBQUUsT0FBTyxFQUNiLEdBQUcsRUFBRSxDQUFDLEdBQ047O0FBekpILFNBQVMsQ0E0SlIsMkJBQTJCLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQSxFQUNqRSxTQUFTLEVBQUUsSUFBSSxFQUNmLEtBQUssRXJDOUVDLE9BQU8sRXFDK0ViLFdBQVcsRUFBRSwwQkFBMEIsRUFDdkMsV0FBVyxFQUFFLE1BQU0sRUFDbkIsVUFBVSxFQUFFLE1BQU0sR0FFbEI7O0FBRUYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUEsRUFDaEMsT0FBTyxFQUFFLFlBQVksRUFDckIsTUFBTSxFQUFFLFlBQVksR0FDcEI7O0FBQ0QsSUFBSSxDQUFDLGNBQWMsdUJBQXVCLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sYUFBYSxJQUFLLENBQUEsYUFBYSxDQUFDLElBQUssQ0FBQSxjQUFjLEVBQUMsRUFDdEgsU0FBUyxFQUFFLGVBQWUsR0FDMUI7O0FkNkZDLE9BQU8sQ2V2UUEsRUFFUCxXQUFXLEVBQUUsSUFBSSxFQUNqQixPQUFPLEVBQUUsU0FBUyxHQVVuQjs7QUFiRCxPQUFPLE1BT0UsQ0FBQSxFQUNMLHlDQUF5QyxDQUN6QyxrQkFBa0IsQ0FDbEIsTUFBTSxFQUFFLGVBQWUsR0FDeEI7O0FBSUgsR0FBRyxzQkFBc0IsQ0FBQSxFQUNyQixLQUFLLEVBQUUsSUFBSSxFQUNYLE9BQU8sRUFBRSx1QkFBdUIsRUFDaEMsT0FBTyxFQUFFLFdBQVcsRUFDcEIsYUFBYSxFQUFFLGVBQWUsR0FLakM7O0FBVEQsR0FBRyxzQkFBc0IsTUFNZCxDQUFBLEVBQ0gsTUFBTSxFQUFFLGVBQWUsR0FDMUI7O0FDbkJMLE9BQU8sQ0FBRSxFQUVMLFVBQVUsRUFKQSxPQUFPLEVBS2pCLE1BQU0sRUFBRSxJQUFJLEVBQ1osTUFBTSxFQUFFLEtBQUssRUFDYixRQUFRLEVBQUUsUUFBUSxFQUNsQixLQUFLLEVBQUUsSUFBSSxHQXVDZDs7QTVDd0hLLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLFVBQVUsSTRDcks5QyxPQUFPLENBQUUsRUFTRCxLQUFLLEVBQUUsSUFBSSxFQUNYLE1BQU0sRUFBRSxJQUFJLEdBbUNuQjs7QUE3Q0QsT0FBTyxNQWFJLENBQUEsRUFDSCxXQUFXLEVBQUUsc0JBQXNCLEVBQ25DLEtBQUssRUFBRSxHQUFHLEdBS2I7O0E1Q2lKQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEk0Q3JLOUMsT0FBTyxNQWFJLENBQUEsRUFLQyxXQUFXLEVBQUUsc0JBQXNCLEdBRTFDOztBQXBCTCxPQUFPLE9Bc0JLLENBQUEsRUFDSixZQUFZLEVBQUUsc0JBQXNCLEVBQ3BDLElBQUksRUFBRSxHQUFHLEdBS1o7O0E1Q3dJQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEk0Q3JLOUMsT0FBTyxPQXNCSyxDQUFBLEVBS0EsWUFBWSxFQUFFLHNCQUFzQixHQUUzQzs7QUE3QkwsT0FBTyxNQStCSSxFQS9CWCxPQUFPLE9BK0JjLENBQUEsRUFDYixVQUFVLEVBQUUsa0JBbENDLEVBbUNiLE9BQU8sRUFBRSxFQUFFLEVBQ1gsTUFBTSxFQUFFLENBQUMsRUFDVCxRQUFRLEVBQUUsUUFBUSxFQUNsQixNQUFNLEVBQUUsS0FBSyxFQUNiLEtBQUssRUFBRSxDQUFDLEdBTVg7O0E1QzBIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxVQUFVLEk0Q3JLOUMsT0FBTyxNQStCSSxFQS9CWCxPQUFPLE9BK0JjLENBQUEsRUFTVCxVQUFVLEVBQUUsa0JBMUNILEVBMkNULE1BQU0sRUFBRSxLQUFLLEdBRXBCOztBQy9DTCxtQ0FBbUMsQ0FFL0IsV0FBVyxDQUFDLEVBQ1IsYUFBYSxFQUFFLENBQUMsR0FVbkI7O0FBYkwsbUNBQW1DLENBRS9CLFdBQVcsQ0FHUCxFQUFFLENBQUMsRUFDQyxTQUFTLEVBQUUsSUFBSSxFQUNmLEtBQUssRUFBRSxPQUFPLEVBQ2QsV0FBVyxFQUFFLG1CQUFtQixFQUNoQyxXQUFXLEVBQUUsbUNBQW1DLEVBQ2hELFdBQVcsRUFBRSxNQUFNLEdBRXRCOztBQVpULG1DQUFtQyxDQWMvQixhQUFhLENBQUEsRUFDVCxXQUFXLEVBQUUsQ0FBQyxFQUNkLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLEdBQUcsRUFBRSxJQUFJLEVBQ1QsY0FBYyxFQUFFLENBQUMsR0FDcEIiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAuMDAxMjU7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuXG4vLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbi8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbi8vIFRoaXMgc2hvdWxkIGJlIGluIHRoZSBzYW1lIGJyZWFrcG9pbnQgdGhlbiBgQG1peGluIHJldmVhbC1tb2RhbC13aWR0aGBcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICVyZXZlYWwtY2VudGVyZWQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwsIC5yZXZlYWwudGlueSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC5sYXJnZSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7IH1cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDYyLjUlOyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyOTJjMmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzLjlyZW07XG4gIG1hcmdpbjogMCAwIDEuNnJlbTtcbiAgcGFkZGluZzogMC44cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSg0MSwgNDQsIDQ2LCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjkyYzJlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICBbdHlwZT0ndGV4dCddOmZvY3VzLCBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywgW3R5cGU9J2RhdGUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBbdHlwZT0nbW9udGgnXTpmb2N1cywgW3R5cGU9J3dlZWsnXTpmb2N1cywgW3R5cGU9J2VtYWlsJ106Zm9jdXMsIFt0eXBlPSdudW1iZXInXTpmb2N1cywgW3R5cGU9J3NlYXJjaCddOmZvY3VzLCBbdHlwZT0ndGVsJ106Zm9jdXMsIFt0eXBlPSd0aW1lJ106Zm9jdXMsIFt0eXBlPSd1cmwnXTpmb2N1cywgW3R5cGU9J2NvbG9yJ106Zm9jdXMsXG4gIHRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxZDFkMWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgdGV4dGFyZWFbcm93c10ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7IH1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NhY2FjYTsgfVxuXG5bdHlwZT0nZmlsZSddLFxuW3R5cGU9J2NoZWNrYm94J10sXG5bdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbjogMCAwIDEuNnJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC44cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEuNnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsW2Zvcl0sXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWxbZm9yXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG5sYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjhyZW07IH1cblxuW3R5cGU9J2ZpbGUnXSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMjkyYzJlOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMS42cmVtO1xuICAgIHBhZGRpbmc6IDAuOXJlbSAwOyB9XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC44cmVtO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzI5MmMyZTsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4OyB9XG4gIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbiAgY29sb3I6ICMyOTJjMmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZsZXg6IDEgMSAwcHg7XG4gIG1pbi13aWR0aDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4gIC5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07IH1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjhyZW0gMDtcbiAgcGFkZGluZzogMnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTsgfVxuICAuZmllbGRzZXQgbGVnZW5kIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjNyZW07XG4gICAgcGFkZGluZzogMCAwLjNyZW07IH1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAzLjlyZW07XG4gIG1hcmdpbjogMCAwIDEuNnJlbTtcbiAgcGFkZGluZzogMC44cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjkyYzJlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODI5LCAyOSwgMjklMjknPjwvcG9seWdvbj48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTEuNnJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMi40cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7IH0gfVxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzFkMWQxZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBzZWxlY3Q6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgc2VsZWN0W211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWVkZWI7IH1cbiAgLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyk6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5mb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAyLjRyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS45cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiA0LjhyZW07IH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiA0cmVtOyB9XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMy4xcmVtOyB9XG4gIGg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDEuNnJlbTsgfSB9XG5cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICM3OWE1YmE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjNWQ5MmFiOyB9XG4gIGEgaW1nIHtcbiAgICBib3JkZXI6IDA7IH1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiAxMjByZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAycmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC45cmVtIDJyZW0gMCAxLjlyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICMxZDFkMWQ7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgY29sb3I6ICMxZDFkMWQ7IH1cbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCUIFwiOyB9XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMjkyYzJlO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjVyZW0gMC4xcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMyOTJjMmU7IH1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzI5MmMyZTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjMWQxZDFkOyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiA3OC4xMjUlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIHAgKyAuc3RhdCB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07IH1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxZDFkMWQ7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvOyB9IH1cblxuLmdyaWQtY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mdWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cblxuLmdyaWQteCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cblxuLmNlbGwge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWluLWhlaWdodDogMHB4O1xuICBtaW4td2lkdGg6IDBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlbGwuYXV0byB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuY2VsbC5zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtZnVsbCwgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTMge1xuICB3aWR0aDogMjUlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTYge1xuICB3aWR0aDogNTAlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCB7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTJyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMnJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogY2FsYyg3NSUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pOyB9IH1cblxuLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTFyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMnJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnJlbTsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMnJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfSB9XG5cbi5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuXG4uc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgd2lkdGg6IDEyLjUlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDJyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDI1JSAtIDJyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDJyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDJyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDJyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEyLjUlIC0gMnJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDRyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSA0cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gNHJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDRyZW0pOyB9IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDFyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDFyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAxcmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDFyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAxcmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDFyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAxcmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAxcmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAxcmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDJyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMnJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDJyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAycmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMnJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDJyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAycmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMnJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDJyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAycmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAycmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAycmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDJyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDJyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMnJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAycmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDJyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMnJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAycmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDJyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMnJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAycmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMnJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDJyZW0pOyB9IH1cblxuLmdyaWQteSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAuZ3JpZC15ID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAuZ3JpZC15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC15ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IDI1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IDUwJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IDc1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMnJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIG1hcmdpbi1ib3R0b206IC0xcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMnJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDRyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDRyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMHZ3OyB9XG5cbi5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNlbGwtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2steSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbi5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgaGVpZ2h0OiAxMDB2aDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuLmNlbGwgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0ycmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDRyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDRyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gNHJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSA0cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMnJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDRyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDRyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDRyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgNHJlbSk7IH0gfVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc5YTViYTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzViOTFhYTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLnRpbnkge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAuYnV0dG9uLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTsgfVxuICAuYnV0dG9uLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbi5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzlhNWJhO1xuICAgIGNvbG9yOiAjMjkyYzJlOyB9XG4gICAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzUzODlhMjtcbiAgICAgIGNvbG9yOiAjMjkyYzJlOyB9XG4gIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgLmJ1dHRvbi53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMjkyYzJlOyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICAgIGNvbG9yOiAjMjkyYzJlOyB9XG4gIC5idXR0b24uYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzlhNWJhO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzlhNWJhO1xuICAgICAgICBjb2xvcjogIzI5MmMyZTsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgICAgIGNvbG9yOiAjMjkyYzJlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICAgICAgY29sb3I6ICMyOTJjMmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24uaG9sbG93IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNzlhNWJhO1xuICAgIGNvbG9yOiAjNzlhNWJhOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMzQ1NTY1O1xuICAgICAgY29sb3I6ICMzNDU1NjU7IH1cbiAgICAgIC5idXR0b24uaG9sbG93OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzlhNWJhO1xuICAgICAgICBjb2xvcjogIzc5YTViYTsgfVxuICAgIC5idXR0b24uaG9sbG93LnByaW1hcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc5YTViYTtcbiAgICAgIGNvbG9yOiAjNzlhNWJhOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMzQ1NTY1O1xuICAgICAgICBjb2xvcjogIzM0NTU2NTsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3OWE1YmE7XG4gICAgICAgICAgY29sb3I6ICM3OWE1YmE7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgICAgICAgY29sb3I6ICMzYjNiM2I7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gICAgICAgICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgIC5idXR0b24uaG9sbG93LmFsZXJ0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICAgICAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uY2xlYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3OWE1YmE7XG4gICAgY29sb3I6ICM3OWE1YmE7IH1cbiAgICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMzQ1NTY1O1xuICAgICAgY29sb3I6ICMzNDU1NjU7IH1cbiAgICAgIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3OWE1YmE7XG4gICAgICAgIGNvbG9yOiAjNzlhNWJhOyB9XG4gICAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3OWE1YmE7XG4gICAgICBjb2xvcjogIzc5YTViYTsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMzNDU1NjU7XG4gICAgICAgIGNvbG9yOiAjMzQ1NTY1OyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzlhNWJhO1xuICAgICAgICAgIGNvbG9yOiAjNzlhNWJhOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gICAgICBjb2xvcjogIzc2NzY3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICAgICAgICBjb2xvcjogIzNiM2IzYjsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZywgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydCwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNGVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjNzlhNWJhOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjNzlhNWJhOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzc2NzY3NjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzNhZGI3NjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgIHRvcDogLTAuMWVtO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmEuYnV0dG9uOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogIzFkMWQxZDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuY2xvc2UtYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjMjkyYzJlOyB9XG4gIC5jbG9zZS1idXR0b24uc21hbGwge1xuICAgIHJpZ2h0OiAwLjY2cmVtO1xuICAgIHRvcDogMC4zM2VtO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmNsb3NlLWJ1dHRvbiwgLmNsb3NlLWJ1dHRvbi5tZWRpdW0ge1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIHRvcDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbmh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy15OiBoaWRkZW47IH1cbiAgaHRtbC5pcy1yZXZlYWwtb3Blbi56Zi1oYXMtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47IH1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDEsIDQ0LCA0NiwgMC40NSk7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cblxuLnJldmVhbCB7XG4gIHotaW5kZXg6IDEwMDY7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucmV2ZWFsIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICBtaW4taGVpZ2h0OiAwOyB9IH1cbiAgLnJldmVhbCAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB3aWR0aDogNjAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDEyMHJlbTsgfSB9XG4gIC5yZXZlYWwuY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnRpbnkge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIG1heC13aWR0aDogMTIwcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnNtYWxsIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDEyMHJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5sYXJnZSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiAxMjByZW07IH0gfVxuICAucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cbiAgLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDsgfVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4uY2xlYXJmaXg6OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYWxpZ24tc3BhY2VkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgtY2hpbGQtYXV0byB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuXG4uZmxleC1kaXItcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuaHRtbCB7XG4gIG1pbi13aWR0aDogMzIwcHggIWltcG9ydGFudDsgfVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS40OyB9XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5oMTAwIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uY3VzdG9tLXdpZHRoIHtcbiAgd2lkdGg6IDYwMHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuKltzdHlsZSo9XCI1MHB4XCJdIHtcbiAgbGluZS1oZWlnaHQ6IDYwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICpbc3R5bGUqPVwiNTBweFwiXSB7XG4gICAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICpbc3R5bGUqPVwiMzBweFwiXSB7XG4gICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4qW3N0eWxlKj1cIjIycHhcIl0ge1xuICBsaW5lLWhlaWdodDogMzZweDsgfVxuXG4ucmV2ZWFsIHtcbiAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMHB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgYm9keSAubW9iaWxlLXRleHQtY2VudGVyLFxuICBib2R5IC5tb2JpbGUtdGV4dC1jZW50ZXIgKiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH0gfVxuXG4uZ2Zvcm1fZm9vdGVyIGlucHV0OmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5nZm9ybV9wYWdlX2Zvb3RlciAuZ2Zvcm1fYnV0dG9uOmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5mZnotc2VhcmNoLXNlbGVjdC1kcm9wZG93biB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cblxuLmJhbm5lciB7XG4gIGhlaWdodDogNjByZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmJhbm5lciB7XG4gICAgICBoZWlnaHQ6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5iYW5uZXIge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMTVyZW0gMDsgfSB9XG5cbi5jb250ZW50LXBhZ2Uge1xuICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDsgfVxuXG4udmlkZW9XcmFwIGltZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjsgfVxuXG4udmlkZW9XcmFwIGltZzpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyOyB9XG5cbi5waWxsYXJzX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMi44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBpbGxhcnNfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG5cbi5waWxsYXJzX19jYXRlZ29yaWVzIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMHB4O1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucGlsbGFyc19fY2F0ZWdvcmllcyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxZDFkOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucGlsbGFyc19fc2luZ2xlcyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH0gfVxuXG4ucGlsbGFyc19fc2luZ2xlcyBhIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmZmZmO1xuICBwYWRkaW5nOiAwIDRyZW07XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5waWxsYXJzX19zaW5nbGVzIGE6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAucGlsbGFyc19fc2luZ2xlcyBhOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwcmVtOyB9IH1cbiAgLnBpbGxhcnNfX3NpbmdsZXMgYTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLnBpbGxhcnNfX3NpbmdsZXMgYTpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAucGlsbGFyc19fc2luZ2xlcyBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgcGFkZGluZzogMCAxcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5waWxsYXJzX19zaW5nbGVzIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgcGFkZGluZzogMXJlbSAxLjVyZW0gMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbi5waWxsYXJzX19zaW5nbGVzIGltZyB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnBpbGxhcnNfX3NpbmdsZXMgaW1nIHtcbiAgICAgIG1heC13aWR0aDogNHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucGlsbGFyc19fc2luZ2xlcyBpbWcge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgICBmbG9hdDogbGVmdDsgfSB9XG5cbi5ibG9jay1vbmUge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgcGFkZGluZzogNHJlbSAwO1xuICBoZWlnaHQ6IDc2LjhyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5ibG9jay1vbmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLyogYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50OyAqL1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAgIC5ibG9jay1vbmUgKiB7XG4gICAgICAgIHRleHQtYWxpZ246IGluaGVyaXQgIWltcG9ydGFudDsgfSB9XG4gIC5ibG9jay1vbmVfX2ltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYmxvY2stb25lIGRpdiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uYmxvY2stdHdvIHtcbiAgcGFkZGluZzogNHJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYmxvY2stdHdvICoge1xuICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdCAhaW1wb3J0YW50OyB9IH1cbiAgLmJsb2NrLXR3byB1bCB7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJsb2NrLXR3byBsaSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgICAuYmxvY2stdHdvIGxpIHNwYW4ge1xuICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyOyB9XG4gIC5ibG9jay10d28gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDgwcHggIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5ibG9jay10d28gLm1lZGl1bS01IHtcbiAgICAgICAgd2lkdGg6IDM3MHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIGJvZHkgLmJsb2NrLXR3byAubWVkaXVtLTUge1xuICAgIHdpZHRoOiAzNzBweCAhaW1wb3J0YW50OyB9IH1cblxuLmJsb2NrLXRocmVlIHtcbiAgcGFkZGluZzogMTJyZW0gMCA1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYmxvY2stdGhyZWUge1xuICAgICAgcGFkZGluZzogNXJlbSAwIDVyZW07IH0gfVxuICAuYmxvY2stdGhyZWUgLmxpbmtzLXNlY3Rpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5ibG9jay10aHJlZSAubGlua3Mtc2VjdGlvbiBhIHtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMzZDQzNGE7XG4gICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgIGNvbG9yOiAjNzlhNWJhO1xuICAgICAgcGFkZGluZzogMCAxMHB4OyB9XG4gICAgICAuYmxvY2stdGhyZWUgLmxpbmtzLXNlY3Rpb24gYTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiBub25lOyB9XG5cbi5mZWF0dXJlX19ib3gge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY2O1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICBib3JkZXItcmFkaXVzOiAwIDdweCA3cHggN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMjNyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5mZWF0dXJlX19ib3gge1xuICAgICAgbWF4LXdpZHRoOiAzN3JlbTtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDNyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDByZW07XG4gICAgICBwYWRkaW5nLXRvcDogMTguMnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmZlYXR1cmVfX2JveCB7XG4gICAgICBwYWRkaW5nLXRvcDogMjIuMnJlbTsgfSB9XG4gIC5mZWF0dXJlX19ib3gtLW9uZS1jb2x1bW4ge1xuICAgIG1heC13aWR0aDogMzdyZW07XG4gICAgbWFyZ2luOiAwIGF1dG8gM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDByZW07XG4gICAgcGFkZGluZy10b3A6IDE4LjJyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuZmVhdHVyZV9fYm94LS1vbmUtY29sdW1uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIyLjJyZW07IH0gfVxuXG4uZmVhdHVyZV9fcGlsbGFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMjBweDtcbiAgdG9wOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fcGlsbGFyIHtcbiAgICAgIHJpZ2h0OiAxMHB4OyB9IH1cbiAgLmZlYXR1cmVfX3BpbGxhciBpbWcge1xuICAgIG1hcmdpbjogMXJlbSBhdXRvIDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRvcDogMS42cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZlYXR1cmVfX3BpbGxhciBpbWcge1xuICAgICAgICB0b3A6IC42cmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDIuNXJlbTsgfSB9XG5cbi5mZWF0dXJlX19pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICNmZmZmZmY7XG4gIHdpZHRoOiAyMXJlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9faW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAxODBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNmU2ZWU7XG4gICAgICBmbG9hdDogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmZlYXR1cmVfX2ltYWdlIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIyMnB4OyB9IH1cbiAgLmZlYXR1cmVfX2ltYWdlLS1vbmUtY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxODBweDtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2ZmZmZmZjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZTZlZTtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlX19pbWFnZS0tb25lLWNvbHVtbiB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDIyMnB4OyB9IH1cblxuLmZlYXR1cmVfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAzcmVtIDhyZW0gMnJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAzcmVtIDIuNXJlbSAycmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAycmVtOyB9IH1cbiAgLmZlYXR1cmVfX2NvbnRlbnQtLW9uZS1jb2x1bW4ge1xuICAgIHBhZGRpbmc6IDNyZW0gMi41cmVtIDJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZlYXR1cmVfX2NvbnRlbnQtLW9uZS1jb2x1bW4ge1xuICAgICAgICBwYWRkaW5nOiAycmVtOyB9IH1cblxuLmZlYXR1cmVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAyLjRyZW07XG4gIGNvbG9yOiAjNWQ2NjZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZy1yaWdodDogMS42cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fdGl0bGUge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZmVhdHVyZV9fdGl0bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMi4ycmVtOyB9IH1cbiAgLmZlYXR1cmVfX3RpdGxlLS1vbmUtY29sdW1uIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZlYXR1cmVfX3RpdGxlLS1vbmUtY29sdW1uIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAyLjJyZW07IH0gfVxuXG4uZmVhdHVyZV9fZXhjZXJwdCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBjb2xvcjogIzVkNjY2ZjsgfVxuXG4uYmxvY2stZm91ciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBwYWRkaW5nOiA0cmVtIDA7XG4gIGhlaWdodDogNzYuOHJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmJsb2NrLWZvdXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLyogYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50OyAqL1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAgIC5ibG9jay1mb3VyICoge1xuICAgICAgICB0ZXh0LWFsaWduOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH0gfVxuICAuYmxvY2stZm91cl9faW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5ibG9jay1mb3VyIGRpdiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4ucGV0aXRpb24ge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDNyZW07XG4gIGJhY2tncm91bmQ6ICNkNmU2ZWU7IH1cbiAgLnBldGl0aW9uX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA0NTVweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnBldGl0aW9uX19mb3JtIHtcbiAgICB3aWR0aDogNDU1cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLnBldGl0aW9uX19mb3JtIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZm9udC1mYW1pbHk6ICdXaGl0bmV5IEJvbGQnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wZXRpdGlvbl9fZm9ybSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsb2F0OiBub25lOyB9IH1cbiAgICAucGV0aXRpb25fX2Zvcm0gLmJ1dHRvbmxpbmsucmVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnBldGl0aW9uIC5nZm9ybV93cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC52YWxpZGF0aW9uX2Vycm9yIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyBkaXYuZ2lucHV0X2NvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyAuZ2ZpZWxkX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICBjbGVhcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfSB9XG4gIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyBpbnB1dCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsgfVxuICAgIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgICAgLyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovXG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAvKiBGaXJlZm94ICovIH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tc21hbGwge1xuICAgIHdpZHRoOiAxNzdweCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tc21hbGwge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH0gfVxuICAucGV0aXRpb24gLmN1c3RvbS1jc3MgLmN1c3RvbS1tZWRpdW0ge1xuICAgIHdpZHRoOiAyNjBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxLjFyZW0gIWltcG9ydGFudDsgfVxuICAgIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyAuY3VzdG9tLW1lZGl1bSBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tbWVkaXVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tbGFyZ2Uge1xuICAgIHdpZHRoOiA0NDdweCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5jdXN0b20tbGFyZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH0gfVxuICAucGV0aXRpb24gLmN1c3RvbS1jc3MgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3YmE3YjQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgLyogbWFyZ2luLWxlZnQ6IDEuMXJlbSAhaW1wb3J0YW50OyAqL1xuICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIC8qIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50OyAqLyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH0gfVxuICAucGV0aXRpb24gLmN1c3RvbS1jc3MgLmJ1dHRvbmxpbmsucmVhZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MyNDcyOTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgd2lkdGg6IDIxNXB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wZXRpdGlvbiAuY3VzdG9tLWNzcyAuYnV0dG9ubGluay5yZWFkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50OyB9IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5maWVsZF9kZXNjcmlwdGlvbl9iZWxvdyAuZ2ZpZWxkX2Rlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBldGl0aW9uIC5jdXN0b20tY3NzIC5nZm9ybV9idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIHRvcDogMDsgfVxuICAucGV0aXRpb24gLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyLmN1c3RvbS1jc3MgLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1mYW1pbHk6ICdXaGl0bmV5IEJvbGQnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cblxuYm9keSAuZ2Zvcm1fd3JhcHBlci5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIC5nZm9ybV9ib2R5IHVsIGxpLmdmaWVsZC5nZmllbGRfZXJyb3I6bm90KC5nZl9sZWZ0X2hhbGYpOm5vdCguZ2ZfcmlnaHRfaGFsZikge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4uYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDIwcHggMzBweDsgfVxuICAuYnV0dG9uOmhvdmVyIHtcbiAgICAvKiBib3gtc2hhZG93OiBpbnNldCA1cHggMTBweCAjODg4ODg4OyAqL1xuICAgIC8qIG9wYWNpdHk6IC45OyAqL1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpOyB9XG5cbmRpdi5mZnotYnV0dG9uLW9wZW4tbW9kYWwge1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICBib3JkZXItcmFkaXVzOiAxMHB4ICFpbXBvcnRhbnQ7IH1cbiAgZGl2LmZmei1idXR0b24tb3Blbi1tb2RhbDpob3ZlciB7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDkwJSk7IH1cblxuLnJpYmJvbiB7XG4gIGJhY2tncm91bmQ6ICMzZDQzNGE7XG4gIGhlaWdodDogODBweDtcbiAgbWFyZ2luOiAwIDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNDhweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJpYmJvbiB7XG4gICAgICB3aWR0aDogMzVweDtcbiAgICAgIGhlaWdodDogNDRweDsgfSB9XG4gIC5yaWJib246YWZ0ZXIge1xuICAgIGJvcmRlci1sZWZ0OiA0MHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiAwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucmliYm9uOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDM1cHggc29saWQgdHJhbnNwYXJlbnQ7IH0gfVxuICAucmliYm9uOmJlZm9yZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiA0MHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGxlZnQ6IDBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5yaWJib246YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAzNXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9IH1cbiAgLnJpYmJvbjphZnRlciwgLnJpYmJvbjpiZWZvcmUge1xuICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgIzNkNDM0YTtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTE1cHg7XG4gICAgd2lkdGg6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucmliYm9uOmFmdGVyLCAucmliYm9uOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3A6IDE1cHggc29saWQgIzNkNDM0YTtcbiAgICAgICAgYm90dG9tOiAtMTJweDsgfSB9XG5cbi5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLWZ1bGwtY3VzdG9tICN0aXRsZS1wYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1mdWxsLWN1c3RvbSAjdGl0bGUtcGFnZSBoMSB7XG4gICAgZm9udC1zaXplOiA2NHB4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCAjNDQ0NDQ0O1xuICAgIGZvbnQtZmFtaWx5OiBcIkdlb3JnaWFcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4ucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1mdWxsLWN1c3RvbSAjY29udGVudC1wYWdlIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+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+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbil7XG4gICQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICAgJ2xlZnQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LWVuZCwgZmxleC1zdGFydCksXG4gICAgJ3JpZ2h0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1zdGFydCwgZmxleC1lbmQpLFxuICAgICdjZW50ZXInOiBjZW50ZXIsXG4gICAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAgICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4gICk7XG5cbiAgQHJldHVybiAkLXpmLWZsZXgtanVzdGlmeTtcbn1cblxuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsImh0bWx7XG5cdG1pbi13aWR0aDogMzIwcHggIWltcG9ydGFudDtcbn1cbmJvZHl7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNntcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5oMTAwe1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5yZWxhdGl2ZXtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY3VzdG9tLXdpZHRoe1xuXHR3aWR0aDogNjAwcHg7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cbipbc3R5bGUqPVwiNTBweFwiXXtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudDtcbiAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH0gXG59XG4qW3N0eWxlKj1cIjMwcHhcIl17XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4qW3N0eWxlKj1cIjIycHhcIl17XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG59XG5cbi5yZXZlYWx7XG4gICAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDBweFxufVxuYm9keSAubW9iaWxlLXRleHQtY2VudGVyLFxuYm9keSAubW9iaWxlLXRleHQtY2VudGVyICp7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuXG4uZ2Zvcm1fZm9vdGVyIGlucHV0OmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZ2Zvcm1fcGFnZV9mb290ZXIgLmdmb3JtX2J1dHRvbjpkaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn0iLCIuZmZ6LXNlYXJjaC1zZWxlY3QtZHJvcGRvd257XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IFxufSIsIiRibG9jazogJy5iYW5uZXInO1xuI3skYmxvY2t9e1xuICAgIGhlaWdodDogNjByZW07XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGhlaWdodDogNzVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDE1cmVtIDA7XG4gICAgfVxufVxuXG4kYmxvY2s6ICcuY29udGVudC1wYWdlJztcbiN7JGJsb2NrfXtcbiAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnZpZGVvV3JhcCBpbWd7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xufVxuXG4udmlkZW9XcmFwIGltZzpob3ZlcntcbiAgICBvcGFjaXR5OiAwLjc7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xufSIsIiRibG9jazogJy5waWxsYXJzJztcbiN7JGJsb2NrfXtcblxuXHQmX190aXRsZXtcblx0XHRmb250LXNpemU6IDIuOHJlbTtcblx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtOyAgICBcbiAgICAgICAgfVxuXHR9XG5cdCZfX2NhdGVnb3JpZXN7XG4gICAgXHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgXHRib3R0b206IDBweDtcbiAgICBcdHBhZGRpbmc6IDJyZW0gMDtcbiAgICBcdHdpZHRoOiAxMDAlO1xuXG4gICAgXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICBcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuICAgIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuICAgIFx0fVxuIFx0fVxuXG4gXHQmX19zaW5nbGVze1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxcmVtO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMXJlbTtcblx0XHR9XG4gXHRcdGF7XG4gXHRcdFx0Y29sb3I6ICR3aGl0ZTtcbiBcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gXHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkd2hpdGU7XG4gXHRcdFx0cGFkZGluZzogMCA0cmVtO1xuIFx0XHRcdGZvbnQtc2l6ZTogMi4ycmVtO1xuIFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG4gXHRcdFx0bWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiBcdFx0XHQmOmZpcnN0LWNoaWxke1xuIFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiBcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiBcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwcmVtO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cblxuIFx0XHRcdCY6bGFzdC1jaGlsZHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDByZW07XG5cdFx0XHRcdH1cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuIFx0XHRcdH1cblxuIFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiBcdFx0XHRcdGZvbnQtc2l6ZTogMS42cmVtO1xuIFx0XHRcdFx0cGFkZGluZzogMCAxcmVtO1xuIFx0XHRcdH1cblxuIFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuIFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG4gXHRcdFx0XHRjbGVhcjogYm90aDtcbiBcdFx0XHRcdGJvcmRlci1sZWZ0OiBub25lO1xuIFx0XHRcdFx0cGFkZGluZzogMXJlbSAxLjVyZW0gMS41cmVtICFpbXBvcnRhbnQ7XG4gXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlICFpbXBvcnRhbnQ7XG4gXHRcdFx0XHRtYXJnaW46IDAgYXV0byAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweFxuIFx0XHRcdH1cbiBcdFx0XHRcbiBcdFx0fVxuIFx0XHRpbWd7XG4gXHRcdFx0bWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNHJlbTtcbiAgICAgICAgICAgIH1cbiBcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiBcdFx0XHRcdG1hcmdpbi10b3A6IC0xcmVtO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuIFx0XHRcdH1cbiBcdFx0fVxuIFx0XHRcbiBcdH1cbn0iLCIkYmxvY2s6ICcuYmxvY2stb25lJztcbiN7JGJsb2NrfXtcblxuXHRjb2xvcjogJHdoaXRlO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuXHRwYWRkaW5nOiA0cmVtIDA7XG5cdGhlaWdodDogNzYuOHJlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0LyogYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50OyAqL1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdGhlaWdodDogYXV0bztcblxuICAgICAgICAqe1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuXHR9XG5cblx0Jl9faW1hZ2V7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxuXG5cdGRpdntcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdH1cbn0iLCIkYmxvY2s6ICcuYmxvY2stdHdvJztcbiN7JGJsb2NrfXtcblx0cGFkZGluZzogNHJlbSAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICp7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxuXHR1bHtcbiAgICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cdGxpe1xuXHRcdHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXHRcdHNwYW57XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG5cdFx0fVxuXG5cdH1cbiAgICBcbiAgICAubWVkaXVtLTUge1xuXG4gICAgICAgIHdpZHRoOiA0ODBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIHdpZHRoOiAzNzBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXHRcbn1cblxuYm9keSAuYmxvY2stdHdvIC5tZWRpdW0tNSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHdpZHRoOiAzNzBweCAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIkYmxvY2s6ICcuYmxvY2stdGhyZWUnO1xuI3skYmxvY2t9e1xuICAgIHBhZGRpbmc6IDEycmVtIDAgNXJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgcGFkZGluZzogNXJlbSAwIDVyZW07XG4gICAgfVxuXG4gICAgLmxpbmtzLXNlY3Rpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgYXtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMzZDQzNGE7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNzlhNWJhO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gYm94LS1vbmUtY29sdW1uIHtcbiAgICBtYXgtd2lkdGg6IDM3cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvIDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwcmVtO1xuICAgIHBhZGRpbmctdG9wOiAxOC4ycmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMi4ycmVtO1xuICAgIH1cbn1cbkBtaXhpbiBib3hfX2ltYWdlLS1vbmUtY29sdW1ue1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDE4MHB4O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZmZmZmZmO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZlNmVlO1xuICAgIGZsb2F0OiBub25lO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICBtYXgtaGVpZ2h0OiAyMjJweDtcbiAgICB9XG59XG5AbWl4aW4gYm94X19jb250ZW50LS1vbmUtY29sdW1ue1xuICAgIHBhZGRpbmc6IDNyZW0gMi41cmVtIDJyZW0gO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICB9XG59XG5cbkBtaXhpbiBib3hfX3RpdGxlLS1vbmUtY29sdW1ue1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDRyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgIH1cbn1cblxuXG5cblxuJGJsb2NrOiAnLmZlYXR1cmUnO1xuI3skYmxvY2t9e1xuXG4gICAgXG4gICAgXG4gICAgJl9fYm94e1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDdweCA3cHggN3B4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjNyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3gtLW9uZS1jb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICAmLS1vbmUtY29sdW1ue1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94LS1vbmUtY29sdW1uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcGlsbGFye1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRvcDogMS42cmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgdG9wOiAuNnJlbTtcbiAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZXtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgI2ZmZmZmZjsgICAgXG4gICAgICAgIHdpZHRoOiAyMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3hfX2ltYWdlLS1vbmUtY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tb25lLWNvbHVtbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3hfX2ltYWdlLS1vbmUtY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgXG4gICAgfVxuXG4gICAgJl9fY29udGVudHtcbiAgICAgICAgcGFkZGluZzogM3JlbSA4cmVtIDJyZW0gMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgQGluY2x1ZGUgYm94X19jb250ZW50LS1vbmUtY29sdW1uO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLS1vbmUtY29sdW1uIHtcbiAgICAgICAgICAgQGluY2x1ZGUgYm94X19jb250ZW50LS1vbmUtY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgXG5cbiAgICB9XG5cbiAgICAmX190aXRsZXtcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgIGNvbG9yOiAjNWQ2NjZmO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS42cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94X190aXRsZS0tb25lLWNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW9uZS1jb2x1bW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94X190aXRsZS0tb25lLWNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIFxuICAgIH1cblxuICAgICZfX2V4Y2VycHR7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBjb2xvcjogIzVkNjY2ZjtcblxuICAgICAgICAgXG5cbiAgICB9XG5cbn1cbiIsIiRibG9jazogJy5ibG9jay1mb3VyJztcbiN7JGJsb2NrfXtcblxuXHRjb2xvcjogJHdoaXRlO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuXHRwYWRkaW5nOiA0cmVtIDA7XG5cdGhlaWdodDogNzYuOHJlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0LyogYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50OyAqL1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdGhlaWdodDogYXV0bztcbiAgICAgICAgKntcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXHR9XG5cblx0Jl9faW1hZ2V7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxuXG5cdGRpdntcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdH1cbn0iLCIkYmxvY2s6ICcucGV0aXRpb24nO1xuI3skYmxvY2t9e1xuXHRtYXJnaW4tdG9wOiAzcmVtO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDNyZW07XG4gICAgYmFja2dyb3VuZDogI2Q2ZTZlZTtcblxuXHQmX190aXRsZXtcblx0XHRmb250LXNpemU6IDIuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogNDU1cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cdH1cblxuXHQmX19mb3Jte1xuXHRcdHdpZHRoOiA0NTVweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuXHRcdGgze1xuXHRcdFx0Zm9udC1zaXplOiAzLjVyZW07XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdGZvbnQtZmFtaWx5OiAnV2hpdG5leSBCb2xkJywgc2Fucy1zZXJpZjtcblx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0fVxuXG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0XHRmbG9hdDogbm9uZTtcblx0XHR9XG4gICAgICAgIC5idXR0b25saW5rLnJlYWR7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblx0fVxuXHQuZ2Zvcm1fd3JhcHBlcntcblx0XHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cdH1cblx0LmN1c3RvbS1jc3N7XG5cdFx0LnZhbGlkYXRpb25fZXJyb3J7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0XHRkaXYuZ2lucHV0X2NvbnRhaW5lcntcblx0XHRcdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0LmdmaWVsZF9sYWJlbHtcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0bGl7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuXHRcdFx0Y2xlYXI6IGluaGVyaXQgIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHRpbnB1dHtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpO1xuXHRcdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuXHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG5cblx0XHRcdCY6OnBsYWNlaG9sZGVyIHsgLyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovXG5cdFx0XHQgICAgY29sb3I6ICMwMDAwMDA7XG5cdFx0XHQgICAgb3BhY2l0eTogMTsgLyogRmlyZWZveCAqL1xuXHRcdFx0fVxuXG5cdFx0XHRcblx0XHR9XG5cdFx0LmN1c3RvbS1zbWFsbHtcblx0XHRcdHdpZHRoOiAxNzdweCAhaW1wb3J0YW50O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuY3VzdG9tLW1lZGl1bXtcblx0XHRcdHdpZHRoOiAyNjBweCAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEuMXJlbSAhaW1wb3J0YW50O1xuXHRcdFx0aW5wdXR7XG5cblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bil7XG5cdFx0XHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmN1c3RvbS1sYXJnZXtcblx0XHRcdHdpZHRoOiA0NDdweCAhaW1wb3J0YW50O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuYnV0dG9uLnNlY29uZGFyeXtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICM3YmE3YjQ7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHR3aWR0aDogMjIwcHg7XG5cdFx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuXHRcdFx0Zm9udC1zaXplOiAyNHB4O1xuXHRcdFx0LyogbWFyZ2luLWxlZnQ6IDEuMXJlbSAhaW1wb3J0YW50OyAqL1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG5cdFx0XHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLyogYm9yZGVyLXJhZGl1czogMHB4ICFpbXBvcnRhbnQ7ICovXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pe1xuXHRcdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmJ1dHRvbmxpbmsucmVhZHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNjMjQ3Mjk7XG5cdFx0ICAgIGJvcmRlcjogbm9uZTtcblx0XHQgICAgd2lkdGg6IDIxNXB4O1xuXHRcdCAgICBoZWlnaHQ6IDUwcHg7XG5cdFx0ICAgIGxpbmUtaGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG5cdFx0ICAgIGZvbnQtc2l6ZTogMjRweDtcblx0XHQgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG5cdFx0ICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0XHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdCAgICBjb2xvcjogI2ZmZmZmZjtcblx0XHQgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHQgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgLmdmaWVsZF9kZXNjcmlwdGlvbntcblx0XHRcdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0Lmdmb3JtX2J1dHRvbntcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IC05OTk5cHg7XG5cdFx0XHR0b3A6IDA7XG5cdFx0fVxuXHRcdFxuXHR9XG5cdC5nZm9ybV9jb25maXJtYXRpb25fd3JhcHBlci5jdXN0b20tY3NzIC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZXtcblx0XHRmb250LXNpemU6IDNyZW07XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRmb250LWZhbWlseTogJ1doaXRuZXkgQm9sZCcsIHNhbnMtc2VyaWY7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0fVxufVxuYm9keSAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVye1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuYm9keSAuZ2Zvcm1fd3JhcHBlci5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIC5nZm9ybV9ib2R5IHVsIGxpLmdmaWVsZC5nZmllbGRfZXJyb3I6bm90KC5nZl9sZWZ0X2hhbGYpOm5vdCguZ2ZfcmlnaHRfaGFsZil7XG5cdG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufSIsIiRibG9jazogJy5idXR0b24nO1xuXG4jeyRibG9ja317XG4gIFxuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMjBweCAzMHB4O1xuXG4gXG5cbiAgJjpob3ZlcntcbiAgICAvKiBib3gtc2hhZG93OiBpbnNldCA1cHggMTBweCAjODg4ODg4OyAqL1xuICAgIC8qIG9wYWNpdHk6IC45OyAqL1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xuICB9XG4gIFxufVxuXG5kaXYuZmZ6LWJ1dHRvbi1vcGVuLW1vZGFse1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcblxuICAgICY6aG92ZXJ7XG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xuICAgIH1cbn0iLCIkYmxvY2s6ICcucmliYm9uJztcblxuJHNoYWRvdyA6ICM1MDdhYmQ7XG4kYmdDb2xvcjogI2YwZjRmNjtcbiRyaWJib25Db2xvcjpcdCMzZDQzNGE7XG5cbiN7JGJsb2NrfXtcblxuICAgIGJhY2tncm91bmQ6ICRyaWJib25Db2xvcjtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDQ4cHg7XG5cbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgIH1cbiAgICAgXG4gICAgJjphZnRlcntcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDQwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHJpZ2h0OiAwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMzVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3Jle1xuICAgICAgICBib3JkZXItcmlnaHQ6IDQwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGxlZnQ6IDBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMzVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YWZ0ZXIsICY6YmVmb3Jle1xuICAgICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICRyaWJib25Db2xvcjtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0xNXB4O1xuICAgICAgICB3aWR0aDogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDE1cHggc29saWQgJHJpYmJvbkNvbG9yO1xuICAgICAgICAgICAgYm90dG9tOiAtMTJweDtcbiAgICAgICAgfVxuICAgIH1cblxufVxuIiwiJGJsb2NrOiAnLnBhZ2UtdGVtcGxhdGUtdGVtcGxhdGUtZnVsbC1jdXN0b20nO1xuXG4jeyRibG9ja317XG5cbiAgICAjdGl0bGUtcGFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiA2NHB4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAxcHggIzQ0NDQ0NDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkdlb3JnaWFcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgIH1cbiAgICB9XG4gICAgI2NvbnRlbnQtcGFnZXtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG59XG5cblxuXG4iXX0= */
