@charset "UTF-8";
/**
 * Foundation for Sites
 * Version 6.6.3
 * https://get.foundation
 * Licensed under MIT Open Source
 */
@media screen and (min-width: 30em) {
  .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 {
  -webkit-box-sizing: content-box;
          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;
  -webkit-text-decoration: underline dotted;
          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 {
  -webkit-box-sizing: border-box;
          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"] {
  -webkit-box-sizing: border-box;
          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=30em&tablet-portrait=48em&tablet-landscape=62em&large=75em&xlarge=90em&xxlarge=90em"; }

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

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

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -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: 0; }

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.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;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  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;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  -webkit-box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
          box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -webkit-appearance: none;
     -moz-appearance: none;
          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 #8a8a8a;
    background-color: #fefefe;
    -webkit-box-shadow: 0 0 5px #cacaca;
            box-shadow: 0 0 5px #cacaca;
    -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }

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'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0; }

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

::-webkit-input-placeholder {
  color: #cacaca; }

::-moz-placeholder {
  color: #cacaca; }

:-ms-input-placeholder {
  color: #cacaca; }

::-ms-input-placeholder {
  color: #cacaca; }

::placeholder {
  color: #cacaca; }

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

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

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

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

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #0a0a0a; }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a; }

.input-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .input-group > :first-child, .input-group > :first-child.input-group-button > * {
    border-radius: 0 0 0 0; }
  .input-group > :last-child, .input-group > :last-child.input-group-button > * {
    border-radius: 0 0 0 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: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          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;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch;
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1rem; }

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

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

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #cacaca; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  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%28138, 138, 138%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }
  @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 #8a8a8a;
    background-color: #fefefe;
    -webkit-box-shadow: 0 0 5px #cacaca;
            box-shadow: 0 0 5px #cacaca;
    -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }
  select:disabled {
    background-color: #e6e6e6;
    cursor: not-allowed; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }
  select:not([multiple]) {
    padding-top: 0;
    padding-bottom: 0; }

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #f9ecea; }
  .is-invalid-input:not(:focus)::-webkit-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::-moz-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::-ms-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #cc4b37; }

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

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  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: "Helvetica Neue", Helvetica, Roboto, Arial, 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: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

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

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

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

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

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

@media screen and (min-width: 30em) {
  h1, .h1 {
    font-size: 3rem; }
  h2, .h2 {
    font-size: 2.5rem; }
  h3, .h3 {
    font-size: 1.9375rem; }
  h4, .h4 {
    font-size: 1.5625rem; }
  h5, .h5 {
    font-size: 1.25rem; }
  h6, .h6 {
    font-size: 1rem; } }

a {
  line-height: inherit;
  color: #1779ba;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #1468a0; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 1470px;
  height: 0;
  margin: 1.25rem 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.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #8a8a8a; }

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

figure {
  margin: 0; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #0a0a0a; }

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

.lead {
  font-size: 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; }

.cite-block, cite {
  display: block;
  color: #8a8a8a;
  font-size: 0.8125rem; }
  .cite-block:before, cite:before {
    content: "— "; }

.code-inline, code {
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
  display: inline;
  max-width: 100%;
  word-wrap: break-word;
  padding: 0.125rem 0.3125rem 0.0625rem; }

.code-block {
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
  display: block;
  overflow: auto;
  white-space: pre;
  padding: 1rem;
  margin-bottom: 1.5rem; }

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

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

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

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

@media screen and (min-width: 30em) {
  .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 screen and (min-width: 48em) {
  .tablet-portrait-text-left {
    text-align: left; }
  .tablet-portrait-text-right {
    text-align: right; }
  .tablet-portrait-text-center {
    text-align: center; }
  .tablet-portrait-text-justify {
    text-align: justify; } }

@media screen and (min-width: 62em) {
  .tablet-landscape-text-left {
    text-align: left; }
  .tablet-landscape-text-right {
    text-align: right; }
  .tablet-landscape-text-center {
    text-align: center; }
  .tablet-landscape-text-justify {
    text-align: justify; } }

@media screen and (min-width: 75em) {
  .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;
    color: black !important;
    -webkit-print-color-adjust: economy;
            color-adjust: economy;
    -webkit-box-shadow: none !important;
            box-shadow: none !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; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    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: 0.625rem;
  padding-left: 0.625rem;
  max-width: 1470px;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (min-width: 30em) {
    .grid-container {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .grid-container.fluid {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (min-width: 30em) {
      .grid-container.fluid {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
  .grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }

.grid-x {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.cell {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%; }
  .cell.auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .cell.shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            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 {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }

@media screen and (min-width: 30em) {
  .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 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 48em) {
  .grid-x > .tablet-portrait-shrink, .grid-x > .tablet-portrait-full, .grid-x > .tablet-portrait-1, .grid-x > .tablet-portrait-2, .grid-x > .tablet-portrait-3, .grid-x > .tablet-portrait-4, .grid-x > .tablet-portrait-5, .grid-x > .tablet-portrait-6, .grid-x > .tablet-portrait-7, .grid-x > .tablet-portrait-8, .grid-x > .tablet-portrait-9, .grid-x > .tablet-portrait-10, .grid-x > .tablet-portrait-11, .grid-x > .tablet-portrait-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 62em) {
  .grid-x > .tablet-landscape-shrink, .grid-x > .tablet-landscape-full, .grid-x > .tablet-landscape-1, .grid-x > .tablet-landscape-2, .grid-x > .tablet-landscape-3, .grid-x > .tablet-landscape-4, .grid-x > .tablet-landscape-5, .grid-x > .tablet-landscape-6, .grid-x > .tablet-landscape-7, .grid-x > .tablet-landscape-8, .grid-x > .tablet-landscape-9, .grid-x > .tablet-landscape-10, .grid-x > .tablet-landscape-11, .grid-x > .tablet-landscape-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 75em) {
  .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 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            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 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          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 screen and (min-width: 30em) {
  .grid-x > .medium-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            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 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            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 screen and (min-width: 48em) {
  .grid-x > .tablet-portrait-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .tablet-portrait-shrink, .grid-x > .tablet-portrait-1, .grid-x > .tablet-portrait-2, .grid-x > .tablet-portrait-3, .grid-x > .tablet-portrait-4, .grid-x > .tablet-portrait-5, .grid-x > .tablet-portrait-6, .grid-x > .tablet-portrait-7, .grid-x > .tablet-portrait-8, .grid-x > .tablet-portrait-9, .grid-x > .tablet-portrait-10, .grid-x > .tablet-portrait-11, .grid-x > .tablet-portrait-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .tablet-portrait-shrink {
    width: auto; }
  .grid-x > .tablet-portrait-1 {
    width: 8.33333%; }
  .grid-x > .tablet-portrait-2 {
    width: 16.66667%; }
  .grid-x > .tablet-portrait-3 {
    width: 25%; }
  .grid-x > .tablet-portrait-4 {
    width: 33.33333%; }
  .grid-x > .tablet-portrait-5 {
    width: 41.66667%; }
  .grid-x > .tablet-portrait-6 {
    width: 50%; }
  .grid-x > .tablet-portrait-7 {
    width: 58.33333%; }
  .grid-x > .tablet-portrait-8 {
    width: 66.66667%; }
  .grid-x > .tablet-portrait-9 {
    width: 75%; }
  .grid-x > .tablet-portrait-10 {
    width: 83.33333%; }
  .grid-x > .tablet-portrait-11 {
    width: 91.66667%; }
  .grid-x > .tablet-portrait-12 {
    width: 100%; } }

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

@media screen and (min-width: 75em) {
  .grid-x > .large-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            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 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            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: -0.625rem;
  margin-right: -0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-margin-x {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .grid-margin-x > .cell {
    width: calc(100% - 1.25rem);
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1.875rem);
      margin-left: 0.9375rem;
      margin-right: 0.9375rem; } }
  .grid-margin-x > .auto {
    width: auto; }
  .grid-margin-x > .shrink {
    width: auto; }
  .grid-margin-x > .small-1 {
    width: calc(8.33333% - 1.25rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1.25rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.25rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1.25rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.25rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.25rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1.25rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.25rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.25rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1.25rem); }
  @media screen and (min-width: 30em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1.875rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1.875rem); } }
  @media screen and (min-width: 48em) {
    .grid-margin-x > .tablet-portrait-auto {
      width: auto; }
    .grid-margin-x > .tablet-portrait-shrink {
      width: auto; }
    .grid-margin-x > .tablet-portrait-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .tablet-portrait-12 {
      width: calc(100% - 1.875rem); } }
  @media screen and (min-width: 62em) {
    .grid-margin-x > .tablet-landscape-auto {
      width: auto; }
    .grid-margin-x > .tablet-landscape-shrink {
      width: auto; }
    .grid-margin-x > .tablet-landscape-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .tablet-landscape-12 {
      width: calc(100% - 1.875rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 1.875rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }

.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }

.grid-padding-x > .cell {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-padding-x > .cell {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

.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 screen and (min-width: 30em) {
  .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 screen and (min-width: 48em) {
  .tablet-portrait-up-1 > .cell {
    width: 100%; }
  .tablet-portrait-up-2 > .cell {
    width: 50%; }
  .tablet-portrait-up-3 > .cell {
    width: 33.33333%; }
  .tablet-portrait-up-4 > .cell {
    width: 25%; }
  .tablet-portrait-up-5 > .cell {
    width: 20%; }
  .tablet-portrait-up-6 > .cell {
    width: 16.66667%; }
  .tablet-portrait-up-7 > .cell {
    width: 14.28571%; }
  .tablet-portrait-up-8 > .cell {
    width: 12.5%; } }

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

@media screen and (min-width: 75em) {
  .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% - 1.25rem); }

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

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

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

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

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

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

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

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

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

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

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

.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 screen and (min-width: 30em) {
    .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 screen and (min-width: 48em) {
    .small-margin-collapse > .tablet-portrait-1 {
      width: 8.33333%; }
    .small-margin-collapse > .tablet-portrait-2 {
      width: 16.66667%; }
    .small-margin-collapse > .tablet-portrait-3 {
      width: 25%; }
    .small-margin-collapse > .tablet-portrait-4 {
      width: 33.33333%; }
    .small-margin-collapse > .tablet-portrait-5 {
      width: 41.66667%; }
    .small-margin-collapse > .tablet-portrait-6 {
      width: 50%; }
    .small-margin-collapse > .tablet-portrait-7 {
      width: 58.33333%; }
    .small-margin-collapse > .tablet-portrait-8 {
      width: 66.66667%; }
    .small-margin-collapse > .tablet-portrait-9 {
      width: 75%; }
    .small-margin-collapse > .tablet-portrait-10 {
      width: 83.33333%; }
    .small-margin-collapse > .tablet-portrait-11 {
      width: 91.66667%; }
    .small-margin-collapse > .tablet-portrait-12 {
      width: 100%; } }
  @media screen and (min-width: 62em) {
    .small-margin-collapse > .tablet-landscape-1 {
      width: 8.33333%; }
    .small-margin-collapse > .tablet-landscape-2 {
      width: 16.66667%; }
    .small-margin-collapse > .tablet-landscape-3 {
      width: 25%; }
    .small-margin-collapse > .tablet-landscape-4 {
      width: 33.33333%; }
    .small-margin-collapse > .tablet-landscape-5 {
      width: 41.66667%; }
    .small-margin-collapse > .tablet-landscape-6 {
      width: 50%; }
    .small-margin-collapse > .tablet-landscape-7 {
      width: 58.33333%; }
    .small-margin-collapse > .tablet-landscape-8 {
      width: 66.66667%; }
    .small-margin-collapse > .tablet-landscape-9 {
      width: 75%; }
    .small-margin-collapse > .tablet-landscape-10 {
      width: 83.33333%; }
    .small-margin-collapse > .tablet-landscape-11 {
      width: 91.66667%; }
    .small-margin-collapse > .tablet-landscape-12 {
      width: 100%; } }
  @media screen and (min-width: 75em) {
    .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 screen and (min-width: 30em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media screen and (min-width: 30em) {
  .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 screen and (min-width: 30em) {
  .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 screen and (min-width: 48em) {
  .medium-margin-collapse > .tablet-portrait-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .tablet-portrait-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .tablet-portrait-3 {
    width: 25%; }
  .medium-margin-collapse > .tablet-portrait-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .tablet-portrait-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .tablet-portrait-6 {
    width: 50%; }
  .medium-margin-collapse > .tablet-portrait-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .tablet-portrait-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .tablet-portrait-9 {
    width: 75%; }
  .medium-margin-collapse > .tablet-portrait-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .tablet-portrait-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .tablet-portrait-12 {
    width: 100%; } }

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

@media screen and (min-width: 75em) {
  .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 screen and (min-width: 30em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 48em) {
  .tablet-portrait-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .tablet-portrait-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

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

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

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

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

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

@media screen and (min-width: 48em) {
  .tablet-portrait-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .tablet-portrait-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 62em) {
  .tablet-landscape-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .tablet-landscape-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

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

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

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

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

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

@media screen and (min-width: 62em) {
  .tablet-landscape-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .tablet-landscape-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

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

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

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

@media screen and (min-width: 75em) {
  .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 screen and (min-width: 75em) {
  .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% + 0.625rem); }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.grid-y {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }
  .grid-y > .cell {
    height: auto;
    max-height: 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 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; }
  @media screen and (min-width: 30em) {
    .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 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 48em) {
    .grid-y > .tablet-portrait-shrink, .grid-y > .tablet-portrait-full, .grid-y > .tablet-portrait-1, .grid-y > .tablet-portrait-2, .grid-y > .tablet-portrait-3, .grid-y > .tablet-portrait-4, .grid-y > .tablet-portrait-5, .grid-y > .tablet-portrait-6, .grid-y > .tablet-portrait-7, .grid-y > .tablet-portrait-8, .grid-y > .tablet-portrait-9, .grid-y > .tablet-portrait-10, .grid-y > .tablet-portrait-11, .grid-y > .tablet-portrait-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 62em) {
    .grid-y > .tablet-landscape-shrink, .grid-y > .tablet-landscape-full, .grid-y > .tablet-landscape-1, .grid-y > .tablet-landscape-2, .grid-y > .tablet-landscape-3, .grid-y > .tablet-landscape-4, .grid-y > .tablet-landscape-5, .grid-y > .tablet-landscape-6, .grid-y > .tablet-landscape-7, .grid-y > .tablet-landscape-8, .grid-y > .tablet-landscape-9, .grid-y > .tablet-landscape-10, .grid-y > .tablet-landscape-11, .grid-y > .tablet-landscape-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 75em) {
    .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 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              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 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            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 screen and (min-width: 30em) {
    .grid-y > .medium-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              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 {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              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 screen and (min-width: 48em) {
    .grid-y > .tablet-portrait-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .tablet-portrait-shrink, .grid-y > .tablet-portrait-1, .grid-y > .tablet-portrait-2, .grid-y > .tablet-portrait-3, .grid-y > .tablet-portrait-4, .grid-y > .tablet-portrait-5, .grid-y > .tablet-portrait-6, .grid-y > .tablet-portrait-7, .grid-y > .tablet-portrait-8, .grid-y > .tablet-portrait-9, .grid-y > .tablet-portrait-10, .grid-y > .tablet-portrait-11, .grid-y > .tablet-portrait-12 {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .tablet-portrait-shrink {
      height: auto; }
    .grid-y > .tablet-portrait-1 {
      height: 8.33333%; }
    .grid-y > .tablet-portrait-2 {
      height: 16.66667%; }
    .grid-y > .tablet-portrait-3 {
      height: 25%; }
    .grid-y > .tablet-portrait-4 {
      height: 33.33333%; }
    .grid-y > .tablet-portrait-5 {
      height: 41.66667%; }
    .grid-y > .tablet-portrait-6 {
      height: 50%; }
    .grid-y > .tablet-portrait-7 {
      height: 58.33333%; }
    .grid-y > .tablet-portrait-8 {
      height: 66.66667%; }
    .grid-y > .tablet-portrait-9 {
      height: 75%; }
    .grid-y > .tablet-portrait-10 {
      height: 83.33333%; }
    .grid-y > .tablet-portrait-11 {
      height: 91.66667%; }
    .grid-y > .tablet-portrait-12 {
      height: 100%; } }
  @media screen and (min-width: 62em) {
    .grid-y > .tablet-landscape-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .tablet-landscape-shrink, .grid-y > .tablet-landscape-1, .grid-y > .tablet-landscape-2, .grid-y > .tablet-landscape-3, .grid-y > .tablet-landscape-4, .grid-y > .tablet-landscape-5, .grid-y > .tablet-landscape-6, .grid-y > .tablet-landscape-7, .grid-y > .tablet-landscape-8, .grid-y > .tablet-landscape-9, .grid-y > .tablet-landscape-10, .grid-y > .tablet-landscape-11, .grid-y > .tablet-landscape-12 {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .tablet-landscape-shrink {
      height: auto; }
    .grid-y > .tablet-landscape-1 {
      height: 8.33333%; }
    .grid-y > .tablet-landscape-2 {
      height: 16.66667%; }
    .grid-y > .tablet-landscape-3 {
      height: 25%; }
    .grid-y > .tablet-landscape-4 {
      height: 33.33333%; }
    .grid-y > .tablet-landscape-5 {
      height: 41.66667%; }
    .grid-y > .tablet-landscape-6 {
      height: 50%; }
    .grid-y > .tablet-landscape-7 {
      height: 58.33333%; }
    .grid-y > .tablet-landscape-8 {
      height: 66.66667%; }
    .grid-y > .tablet-landscape-9 {
      height: 75%; }
    .grid-y > .tablet-landscape-10 {
      height: 83.33333%; }
    .grid-y > .tablet-landscape-11 {
      height: 91.66667%; }
    .grid-y > .tablet-landscape-12 {
      height: 100%; } }
  @media screen and (min-width: 75em) {
    .grid-y > .large-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              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 {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              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: -0.625rem;
  margin-bottom: -0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.9375rem;
      margin-bottom: -0.9375rem; } }

.grid-padding-y > .cell {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-padding-y > .cell {
      padding-top: 0.9375rem;
      padding-bottom: 0.9375rem; } }

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-margin-y {
      margin-top: -0.9375rem;
      margin-bottom: -0.9375rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.875rem);
      margin-top: 0.9375rem;
      margin-bottom: 0.9375rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  @media screen and (min-width: 30em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.875rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 48em) {
    .grid-margin-y > .tablet-portrait-auto {
      height: auto; }
    .grid-margin-y > .tablet-portrait-shrink {
      height: auto; }
    .grid-margin-y > .tablet-portrait-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 62em) {
    .grid-margin-y > .tablet-landscape-auto {
      height: auto; }
    .grid-margin-y > .tablet-landscape-shrink {
      height: auto; }
    .grid-margin-y > .tablet-landscape-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.875rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          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: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  max-height: 100%; }
  .cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; }

@media screen and (min-width: 30em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            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: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .medium-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              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 screen and (min-width: 48em) {
  .tablet-portrait-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .tablet-portrait-grid-frame {
    width: 100%; }
  .tablet-portrait-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .tablet-portrait-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .tablet-portrait-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .tablet-portrait-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

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

@media screen and (min-width: 75em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            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: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .large-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              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;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh; }

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

@media screen and (min-width: 48em) {
  .grid-y.tablet-portrait-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 62em) {
  .grid-y.tablet-landscape-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

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

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

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

@media screen and (min-width: 48em) {
  .cell .grid-y.tablet-portrait-grid-frame {
    height: 100%; } }

@media screen and (min-width: 62em) {
  .cell .grid-y.tablet-landscape-grid-frame {
    height: 100%; } }

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

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-margin-y {
      margin-top: -0.9375rem;
      margin-bottom: -0.9375rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; }
  @media screen and (min-width: 30em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.875rem);
      margin-top: 0.9375rem;
      margin-bottom: 0.9375rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  @media screen and (min-width: 30em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.875rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 48em) {
    .grid-margin-y > .tablet-portrait-auto {
      height: auto; }
    .grid-margin-y > .tablet-portrait-shrink {
      height: auto; }
    .grid-margin-y > .tablet-portrait-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .tablet-portrait-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 62em) {
    .grid-margin-y > .tablet-landscape-auto {
      height: auto; }
    .grid-margin-y > .tablet-landscape-shrink {
      height: auto; }
    .grid-margin-y > .tablet-landscape-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .tablet-landscape-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.875rem); } }

.grid-frame.grid-margin-y {
  height: calc(100vh + 1.25rem); }
  @media screen and (min-width: 30em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.875rem); } }
  @media screen and (min-width: 48em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.875rem); } }
  @media screen and (min-width: 62em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.875rem); } }
  @media screen and (min-width: 75em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.875rem); } }

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

@media screen and (min-width: 48em) {
  .grid-margin-y.tablet-portrait-grid-frame {
    height: calc(100vh + 1.875rem); } }

@media screen and (min-width: 62em) {
  .grid-margin-y.tablet-landscape-grid-frame {
    height: calc(100vh + 1.875rem); } }

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

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button, .button.disabled, .button[disabled], .button.disabled:hover, .button[disabled]:hover, .button.disabled:focus, .button[disabled]:focus {
    background-color: #1779ba;
    color: #fefefe; }
  .button:hover, .button:focus {
    background-color: #14679e;
    color: #fefefe; }
  .button.primary, .button.primary.disabled, .button.primary[disabled], .button.primary.disabled:hover, .button.primary[disabled]:hover, .button.primary.disabled:focus, .button.primary[disabled]:focus {
    background-color: #1779ba;
    color: #fefefe; }
  .button.primary:hover, .button.primary:focus {
    background-color: #126195;
    color: #fefefe; }
  .button.secondary, .button.secondary.disabled, .button.secondary[disabled], .button.secondary.disabled:hover, .button.secondary[disabled]:hover, .button.secondary.disabled:focus, .button.secondary[disabled]:focus {
    background-color: #767676;
    color: #fefefe; }
  .button.secondary:hover, .button.secondary:focus {
    background-color: #5e5e5e;
    color: #fefefe; }
  .button.success, .button.success.disabled, .button.success[disabled], .button.success.disabled:hover, .button.success[disabled]:hover, .button.success.disabled:focus, .button.success[disabled]:focus {
    background-color: #3adb76;
    color: #0a0a0a; }
  .button.success:hover, .button.success:focus {
    background-color: #22bb5b;
    color: #0a0a0a; }
  .button.warning, .button.warning.disabled, .button.warning[disabled], .button.warning.disabled:hover, .button.warning[disabled]:hover, .button.warning.disabled:focus, .button.warning[disabled]:focus {
    background-color: #ffae00;
    color: #0a0a0a; }
  .button.warning:hover, .button.warning:focus {
    background-color: #cc8b00;
    color: #0a0a0a; }
  .button.alert, .button.alert.disabled, .button.alert[disabled], .button.alert.disabled:hover, .button.alert[disabled]:hover, .button.alert.disabled:focus, .button.alert[disabled]:focus {
    background-color: #cc4b37;
    color: #fefefe; }
  .button.alert:hover, .button.alert:focus {
    background-color: #a53b2a;
    color: #fefefe; }
  .button.hollow, .button.hollow:hover, .button.hollow:focus, .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, .button.hollow.disabled, .button.hollow[disabled], .button.hollow.disabled:hover, .button.hollow[disabled]:hover, .button.hollow.disabled:focus, .button.hollow[disabled]:focus {
    border: 1px solid #1779ba;
    color: #1779ba; }
  .button.hollow:hover, .button.hollow:focus {
    border-color: #0c3d5d;
    color: #0c3d5d; }
  .button.hollow.primary, .button.hollow.primary.disabled, .button.hollow.primary[disabled], .button.hollow.primary.disabled:hover, .button.hollow.primary[disabled]:hover, .button.hollow.primary.disabled:focus, .button.hollow.primary[disabled]:focus {
    border: 1px solid #1779ba;
    color: #1779ba; }
  .button.hollow.primary:hover, .button.hollow.primary:focus {
    border-color: #0c3d5d;
    color: #0c3d5d; }
  .button.hollow.secondary, .button.hollow.secondary.disabled, .button.hollow.secondary[disabled], .button.hollow.secondary.disabled:hover, .button.hollow.secondary[disabled]:hover, .button.hollow.secondary.disabled:focus, .button.hollow.secondary[disabled]:focus {
    border: 1px solid #767676;
    color: #767676; }
  .button.hollow.secondary:hover, .button.hollow.secondary:focus {
    border-color: #3b3b3b;
    color: #3b3b3b; }
  .button.hollow.success, .button.hollow.success.disabled, .button.hollow.success[disabled], .button.hollow.success.disabled:hover, .button.hollow.success[disabled]:hover, .button.hollow.success.disabled:focus, .button.hollow.success[disabled]:focus {
    border: 1px solid #3adb76;
    color: #3adb76; }
  .button.hollow.success:hover, .button.hollow.success:focus {
    border-color: #157539;
    color: #157539; }
  .button.hollow.warning, .button.hollow.warning.disabled, .button.hollow.warning[disabled], .button.hollow.warning.disabled:hover, .button.hollow.warning[disabled]:hover, .button.hollow.warning.disabled:focus, .button.hollow.warning[disabled]:focus {
    border: 1px solid #ffae00;
    color: #ffae00; }
  .button.hollow.warning:hover, .button.hollow.warning:focus {
    border-color: #805700;
    color: #805700; }
  .button.hollow.alert, .button.hollow.alert.disabled, .button.hollow.alert[disabled], .button.hollow.alert.disabled:hover, .button.hollow.alert[disabled]:hover, .button.hollow.alert.disabled:focus, .button.hollow.alert[disabled]:focus {
    border: 1px solid #cc4b37;
    color: #cc4b37; }
  .button.hollow.alert:hover, .button.hollow.alert:focus {
    border-color: #67251a;
    color: #67251a; }
  .button.clear, .button.clear:hover, .button.clear:focus, .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
    border-color: transparent;
    background-color: transparent; }
  .button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear.disabled:hover, .button.clear[disabled]:hover, .button.clear.disabled:focus, .button.clear[disabled]:focus {
    color: #1779ba; }
  .button.clear:hover, .button.clear:focus {
    color: #0c3d5d; }
  .button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary.disabled:hover, .button.clear.primary[disabled]:hover, .button.clear.primary.disabled:focus, .button.clear.primary[disabled]:focus {
    color: #1779ba; }
  .button.clear.primary:hover, .button.clear.primary:focus {
    color: #0c3d5d; }
  .button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary.disabled:hover, .button.clear.secondary[disabled]:hover, .button.clear.secondary.disabled:focus, .button.clear.secondary[disabled]:focus {
    color: #767676; }
  .button.clear.secondary:hover, .button.clear.secondary:focus {
    color: #3b3b3b; }
  .button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success.disabled:hover, .button.clear.success[disabled]:hover, .button.clear.success.disabled:focus, .button.clear.success[disabled]:focus {
    color: #3adb76; }
  .button.clear.success:hover, .button.clear.success:focus {
    color: #157539; }
  .button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning.disabled:hover, .button.clear.warning[disabled]:hover, .button.clear.warning.disabled:focus, .button.clear.warning[disabled]:focus {
    color: #ffae00; }
  .button.clear.warning:hover, .button.clear.warning:focus {
    color: #805700; }
  .button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert.disabled:hover, .button.clear.alert[disabled]:hover, .button.clear.alert.disabled:focus, .button.clear.alert[disabled]:focus {
    color: #cc4b37; }
  .button.clear.alert:hover, .button.clear.alert:focus {
    color: #67251a; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
  .button.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe 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: #1779ba; }
  .button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
    border-top-color: #1779ba; }
  .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; }

.button-group {
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }
  .button-group::before, .button-group::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .button-group::after {
    clear: both; }
  .button-group::before, .button-group::after {
    display: none; }
  .button-group .button {
    margin: 0;
    margin-right: 1px;
    margin-bottom: 1px;
    font-size: 0.9rem;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .button-group .button:last-child {
      margin-right: 0; }
  .button-group.tiny .button {
    font-size: 0.6rem; }
  .button-group.small .button {
    font-size: 0.75rem; }
  .button-group.large .button {
    font-size: 1.25rem; }
  .button-group.expanded .button {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    margin-right: 0; }
  .button-group.primary .button, .button-group.primary .button.disabled, .button-group.primary .button[disabled], .button-group.primary .button.disabled:hover, .button-group.primary .button[disabled]:hover, .button-group.primary .button.disabled:focus, .button-group.primary .button[disabled]:focus {
    background-color: #1779ba;
    color: #fefefe; }
  .button-group.primary .button:hover, .button-group.primary .button:focus {
    background-color: #126195;
    color: #fefefe; }
  .button-group.secondary .button, .button-group.secondary .button.disabled, .button-group.secondary .button[disabled], .button-group.secondary .button.disabled:hover, .button-group.secondary .button[disabled]:hover, .button-group.secondary .button.disabled:focus, .button-group.secondary .button[disabled]:focus {
    background-color: #767676;
    color: #fefefe; }
  .button-group.secondary .button:hover, .button-group.secondary .button:focus {
    background-color: #5e5e5e;
    color: #fefefe; }
  .button-group.success .button, .button-group.success .button.disabled, .button-group.success .button[disabled], .button-group.success .button.disabled:hover, .button-group.success .button[disabled]:hover, .button-group.success .button.disabled:focus, .button-group.success .button[disabled]:focus {
    background-color: #3adb76;
    color: #0a0a0a; }
  .button-group.success .button:hover, .button-group.success .button:focus {
    background-color: #22bb5b;
    color: #0a0a0a; }
  .button-group.warning .button, .button-group.warning .button.disabled, .button-group.warning .button[disabled], .button-group.warning .button.disabled:hover, .button-group.warning .button[disabled]:hover, .button-group.warning .button.disabled:focus, .button-group.warning .button[disabled]:focus {
    background-color: #ffae00;
    color: #0a0a0a; }
  .button-group.warning .button:hover, .button-group.warning .button:focus {
    background-color: #cc8b00;
    color: #0a0a0a; }
  .button-group.alert .button, .button-group.alert .button.disabled, .button-group.alert .button[disabled], .button-group.alert .button.disabled:hover, .button-group.alert .button[disabled]:hover, .button-group.alert .button.disabled:focus, .button-group.alert .button[disabled]:focus {
    background-color: #cc4b37;
    color: #fefefe; }
  .button-group.alert .button:hover, .button-group.alert .button:focus {
    background-color: #a53b2a;
    color: #fefefe; }
  .button-group.hollow .button, .button-group.hollow .button:hover, .button-group.hollow .button:focus, .button-group.hollow .button.disabled, .button-group.hollow .button.disabled:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled], .button-group.hollow .button[disabled]:hover, .button-group.hollow .button[disabled]:focus {
    background-color: transparent; }
  .button-group.hollow .button, .button-group.hollow .button.disabled, .button-group.hollow .button[disabled], .button-group.hollow .button.disabled:hover, .button-group.hollow .button[disabled]:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled]:focus {
    border: 1px solid #1779ba;
    color: #1779ba; }
  .button-group.hollow .button:hover, .button-group.hollow .button:focus {
    border-color: #0c3d5d;
    color: #0c3d5d; }
  .button-group.hollow.primary .button, .button-group.hollow.primary .button.disabled, .button-group.hollow.primary .button[disabled], .button-group.hollow.primary .button.disabled:hover, .button-group.hollow.primary .button[disabled]:hover, .button-group.hollow.primary .button.disabled:focus, .button-group.hollow.primary .button[disabled]:focus, .button-group.hollow .button.primary, .button-group.hollow .button.primary.disabled, .button-group.hollow .button.primary[disabled], .button-group.hollow .button.primary.disabled:hover, .button-group.hollow .button.primary[disabled]:hover, .button-group.hollow .button.primary.disabled:focus, .button-group.hollow .button.primary[disabled]:focus {
    border: 1px solid #1779ba;
    color: #1779ba; }
  .button-group.hollow.primary .button:hover, .button-group.hollow.primary .button:focus, .button-group.hollow .button.primary:hover, .button-group.hollow .button.primary:focus {
    border-color: #0c3d5d;
    color: #0c3d5d; }
  .button-group.hollow.secondary .button, .button-group.hollow.secondary .button.disabled, .button-group.hollow.secondary .button[disabled], .button-group.hollow.secondary .button.disabled:hover, .button-group.hollow.secondary .button[disabled]:hover, .button-group.hollow.secondary .button.disabled:focus, .button-group.hollow.secondary .button[disabled]:focus, .button-group.hollow .button.secondary, .button-group.hollow .button.secondary.disabled, .button-group.hollow .button.secondary[disabled], .button-group.hollow .button.secondary.disabled:hover, .button-group.hollow .button.secondary[disabled]:hover, .button-group.hollow .button.secondary.disabled:focus, .button-group.hollow .button.secondary[disabled]:focus {
    border: 1px solid #767676;
    color: #767676; }
  .button-group.hollow.secondary .button:hover, .button-group.hollow.secondary .button:focus, .button-group.hollow .button.secondary:hover, .button-group.hollow .button.secondary:focus {
    border-color: #3b3b3b;
    color: #3b3b3b; }
  .button-group.hollow.success .button, .button-group.hollow.success .button.disabled, .button-group.hollow.success .button[disabled], .button-group.hollow.success .button.disabled:hover, .button-group.hollow.success .button[disabled]:hover, .button-group.hollow.success .button.disabled:focus, .button-group.hollow.success .button[disabled]:focus, .button-group.hollow .button.success, .button-group.hollow .button.success.disabled, .button-group.hollow .button.success[disabled], .button-group.hollow .button.success.disabled:hover, .button-group.hollow .button.success[disabled]:hover, .button-group.hollow .button.success.disabled:focus, .button-group.hollow .button.success[disabled]:focus {
    border: 1px solid #3adb76;
    color: #3adb76; }
  .button-group.hollow.success .button:hover, .button-group.hollow.success .button:focus, .button-group.hollow .button.success:hover, .button-group.hollow .button.success:focus {
    border-color: #157539;
    color: #157539; }
  .button-group.hollow.warning .button, .button-group.hollow.warning .button.disabled, .button-group.hollow.warning .button[disabled], .button-group.hollow.warning .button.disabled:hover, .button-group.hollow.warning .button[disabled]:hover, .button-group.hollow.warning .button.disabled:focus, .button-group.hollow.warning .button[disabled]:focus, .button-group.hollow .button.warning, .button-group.hollow .button.warning.disabled, .button-group.hollow .button.warning[disabled], .button-group.hollow .button.warning.disabled:hover, .button-group.hollow .button.warning[disabled]:hover, .button-group.hollow .button.warning.disabled:focus, .button-group.hollow .button.warning[disabled]:focus {
    border: 1px solid #ffae00;
    color: #ffae00; }
  .button-group.hollow.warning .button:hover, .button-group.hollow.warning .button:focus, .button-group.hollow .button.warning:hover, .button-group.hollow .button.warning:focus {
    border-color: #805700;
    color: #805700; }
  .button-group.hollow.alert .button, .button-group.hollow.alert .button.disabled, .button-group.hollow.alert .button[disabled], .button-group.hollow.alert .button.disabled:hover, .button-group.hollow.alert .button[disabled]:hover, .button-group.hollow.alert .button.disabled:focus, .button-group.hollow.alert .button[disabled]:focus, .button-group.hollow .button.alert, .button-group.hollow .button.alert.disabled, .button-group.hollow .button.alert[disabled], .button-group.hollow .button.alert.disabled:hover, .button-group.hollow .button.alert[disabled]:hover, .button-group.hollow .button.alert.disabled:focus, .button-group.hollow .button.alert[disabled]:focus {
    border: 1px solid #cc4b37;
    color: #cc4b37; }
  .button-group.hollow.alert .button:hover, .button-group.hollow.alert .button:focus, .button-group.hollow .button.alert:hover, .button-group.hollow .button.alert:focus {
    border-color: #67251a;
    color: #67251a; }
  .button-group.clear .button, .button-group.clear .button:hover, .button-group.clear .button:focus, .button-group.clear .button.disabled, .button-group.clear .button.disabled:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled], .button-group.clear .button[disabled]:hover, .button-group.clear .button[disabled]:focus {
    border-color: transparent;
    background-color: transparent; }
  .button-group.clear .button, .button-group.clear .button.disabled, .button-group.clear .button[disabled], .button-group.clear .button.disabled:hover, .button-group.clear .button[disabled]:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled]:focus {
    color: #1779ba; }
  .button-group.clear .button:hover, .button-group.clear .button:focus {
    color: #0c3d5d; }
  .button-group.clear.primary .button, .button-group.clear.primary .button.disabled, .button-group.clear.primary .button[disabled], .button-group.clear.primary .button.disabled:hover, .button-group.clear.primary .button[disabled]:hover, .button-group.clear.primary .button.disabled:focus, .button-group.clear.primary .button[disabled]:focus, .button-group.clear .button.primary, .button-group.clear .button.primary.disabled, .button-group.clear .button.primary[disabled], .button-group.clear .button.primary.disabled:hover, .button-group.clear .button.primary[disabled]:hover, .button-group.clear .button.primary.disabled:focus, .button-group.clear .button.primary[disabled]:focus {
    color: #1779ba; }
  .button-group.clear.primary .button:hover, .button-group.clear.primary .button:focus, .button-group.clear .button.primary:hover, .button-group.clear .button.primary:focus {
    color: #0c3d5d; }
  .button-group.clear.secondary .button, .button-group.clear.secondary .button.disabled, .button-group.clear.secondary .button[disabled], .button-group.clear.secondary .button.disabled:hover, .button-group.clear.secondary .button[disabled]:hover, .button-group.clear.secondary .button.disabled:focus, .button-group.clear.secondary .button[disabled]:focus, .button-group.clear .button.secondary, .button-group.clear .button.secondary.disabled, .button-group.clear .button.secondary[disabled], .button-group.clear .button.secondary.disabled:hover, .button-group.clear .button.secondary[disabled]:hover, .button-group.clear .button.secondary.disabled:focus, .button-group.clear .button.secondary[disabled]:focus {
    color: #767676; }
  .button-group.clear.secondary .button:hover, .button-group.clear.secondary .button:focus, .button-group.clear .button.secondary:hover, .button-group.clear .button.secondary:focus {
    color: #3b3b3b; }
  .button-group.clear.success .button, .button-group.clear.success .button.disabled, .button-group.clear.success .button[disabled], .button-group.clear.success .button.disabled:hover, .button-group.clear.success .button[disabled]:hover, .button-group.clear.success .button.disabled:focus, .button-group.clear.success .button[disabled]:focus, .button-group.clear .button.success, .button-group.clear .button.success.disabled, .button-group.clear .button.success[disabled], .button-group.clear .button.success.disabled:hover, .button-group.clear .button.success[disabled]:hover, .button-group.clear .button.success.disabled:focus, .button-group.clear .button.success[disabled]:focus {
    color: #3adb76; }
  .button-group.clear.success .button:hover, .button-group.clear.success .button:focus, .button-group.clear .button.success:hover, .button-group.clear .button.success:focus {
    color: #157539; }
  .button-group.clear.warning .button, .button-group.clear.warning .button.disabled, .button-group.clear.warning .button[disabled], .button-group.clear.warning .button.disabled:hover, .button-group.clear.warning .button[disabled]:hover, .button-group.clear.warning .button.disabled:focus, .button-group.clear.warning .button[disabled]:focus, .button-group.clear .button.warning, .button-group.clear .button.warning.disabled, .button-group.clear .button.warning[disabled], .button-group.clear .button.warning.disabled:hover, .button-group.clear .button.warning[disabled]:hover, .button-group.clear .button.warning.disabled:focus, .button-group.clear .button.warning[disabled]:focus {
    color: #ffae00; }
  .button-group.clear.warning .button:hover, .button-group.clear.warning .button:focus, .button-group.clear .button.warning:hover, .button-group.clear .button.warning:focus {
    color: #805700; }
  .button-group.clear.alert .button, .button-group.clear.alert .button.disabled, .button-group.clear.alert .button[disabled], .button-group.clear.alert .button.disabled:hover, .button-group.clear.alert .button[disabled]:hover, .button-group.clear.alert .button.disabled:focus, .button-group.clear.alert .button[disabled]:focus, .button-group.clear .button.alert, .button-group.clear .button.alert.disabled, .button-group.clear .button.alert[disabled], .button-group.clear .button.alert.disabled:hover, .button-group.clear .button.alert[disabled]:hover, .button-group.clear .button.alert.disabled:focus, .button-group.clear .button.alert[disabled]:focus {
    color: #cc4b37; }
  .button-group.clear.alert .button:hover, .button-group.clear.alert .button:focus, .button-group.clear .button.alert:hover, .button-group.clear .button.alert:focus {
    color: #67251a; }
  .button-group.no-gaps .button {
    margin-right: -0.0625rem; }
    .button-group.no-gaps .button + .button {
      border-left-color: transparent; }
  .button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%; }
      .button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
        margin-bottom: 0; }
    .button-group.stacked.expanded .button, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-medium.expanded .button {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      margin-right: 0; }
  @media screen and (min-width: 30em) {
    .button-group.stacked-for-small .button {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      margin-bottom: 0; } }
  @media screen and (min-width: 75em) {
    .button-group.stacked-for-medium .button {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      margin-bottom: 0; } }
  @media print, screen and (max-width: 29.99875em) {
    .button-group.stacked-for-small.expanded {
      display: block; }
      .button-group.stacked-for-small.expanded .button {
        display: block;
        margin-right: 0; } }
  @media print, screen and (max-width: 47.99875em) {
    .button-group.stacked-for-medium.expanded {
      display: block; }
      .button-group.stacked-for-medium.expanded .button {
        display: block;
        margin-right: 0; } }

.close-button {
  position: absolute;
  z-index: 10;
  color: #8a8a8a;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #0a0a0a; }
  .close-button.small {
    right: 0.66rem;
    top: 0.33em;
    font-size: 1.5em;
    line-height: 1; }
  .close-button.medium, .close-button {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #1779ba;
  color: #fefefe; }
  .label.primary {
    background: #1779ba;
    color: #fefefe; }
  .label.secondary {
    background: #767676;
    color: #fefefe; }
  .label.success {
    background: #3adb76;
    color: #0a0a0a; }
  .label.warning {
    background: #ffae00;
    color: #0a0a0a; }
  .label.alert {
    background: #cc4b37;
    color: #fefefe; }

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #989898;
    background-color: #fefefe; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold; }
  thead {
    background: #cbcbcb;
    color: #0a0a0a; }
  tfoot {
    background: #989898;
    color: #0a0a0a; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #989898; }
  table.unstriped tbody {
    background-color: #fefefe; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #989898;
      background-color: #fefefe; }

@media print, screen and (max-width: 47.99875em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: #c6c6c6; }

table.hover tfoot tr:hover {
  background-color: #939393; }

table.hover tbody tr:hover {
  background-color: #f9f9f9; }

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #939393; }

.table-scroll {
  overflow-x: auto; }

.breadcrumbs {
  margin: 0 0 1rem 0;
  list-style: none; }
  .breadcrumbs::before, .breadcrumbs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    font-size: 0.6875rem;
    color: #0a0a0a;
    cursor: default;
    text-transform: uppercase; }
    .breadcrumbs li:not(:last-child)::after {
      position: relative;
      margin: 0 0.75rem;
      opacity: 1;
      content: "/";
      color: #cacaca; }
  .breadcrumbs a {
    color: #1779ba; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #cacaca;
    cursor: not-allowed; }

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
  background-color: white;
  color: #0a0a0a; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #d7ecfa;
    color: #0a0a0a; }
  .callout.secondary {
    background-color: #eaeaea;
    color: #0a0a0a; }
  .callout.success {
    background-color: #e1faea;
    color: #0a0a0a; }
  .callout.warning {
    background-color: #fff3d9;
    color: #0a0a0a; }
  .callout.alert {
    background-color: #f7e4e1;
    color: #0a0a0a; }
  .callout.small {
    padding-top: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.5rem; }
  .callout.large {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem; }

.card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #fefefe;
  -webkit-box-shadow: none;
          box-shadow: none;
  overflow: hidden;
  color: #0a0a0a; }
  .card > :last-child {
    margin-bottom: 0; }

.card-divider {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  padding: 1rem;
  background: #e6e6e6; }
  .card-divider > :last-child {
    margin-bottom: 0; }

.card-section {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: 1rem; }
  .card-section > :last-child {
    margin-bottom: 0; }

.card-image {
  min-height: 1px; }

.dropdown-pane {
  position: absolute;
  z-index: 10;
  display: none;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-size: 1rem; }
  .dropdown-pane.is-opening {
    display: block; }
  .dropdown-pane.is-open {
    display: block;
    visibility: visible; }

.dropdown-pane.tiny {
  width: 100px; }

.dropdown-pane.small {
  width: 200px; }

.dropdown-pane.large {
  width: 400px; }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.0625rem;
    border-radius: 0;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media screen and (min-width: 30em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #0a0a0a; }
    .pagination a:hover,
    .pagination button:hover {
      background: #e6e6e6; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #1779ba;
    color: #fefefe;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #cacaca;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #0a0a0a; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: "«"; }

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: "»"; }

.media-object {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media print, screen and (max-width: 29.99875em) {
    .media-object.stack-for-small {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }

.media-object-section {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }
  .media-object-section:first-child {
    padding-right: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem; }
  .media-object-section > :last-child {
    margin-bottom: 0; }
  @media print, screen and (max-width: 29.99875em) {
    .stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      -webkit-flex-basis: 100%;
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%;
      max-width: 100%; }
      .stack-for-small .media-object-section img {
        width: 100%; } }
  .media-object-section.main-section {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden; }
  .responsive-embed iframe,
  .responsive-embed object,
  .responsive-embed embed,
  .responsive-embed video,
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive-embed.widescreen,
  .flex-video.widescreen {
    padding-bottom: 56.25%; }

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.7rem 1rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.simple {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .menu.simple li + li {
      margin-left: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media screen and (min-width: 30em) {
    .menu.medium-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.medium-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.medium-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.medium-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 48em) {
    .menu.tablet-portrait-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.tablet-portrait-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.tablet-portrait-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.tablet-portrait-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 62em) {
    .menu.tablet-landscape-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.tablet-landscape-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.tablet-landscape-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.tablet-landscape-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 75em) {
    .menu.large-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.large-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.large-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.large-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  .menu.nested {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.icons a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-left li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg {
      margin-right: 0.25rem; }
  .menu.icon-right li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg {
      margin-left: 0.25rem; }
  .menu.icon-top li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: #1779ba;
    color: #fefefe; }
  .menu .active > a {
    background: #1779ba;
    color: #fefefe; }
  .menu.align-left {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .menu.align-right li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .menu.align-right li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu.align-right.vertical li {
    display: block;
    text-align: right; }
    .menu.align-right.vertical li .submenu li {
      text-align: right; }
  .menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0; }
  .menu.align-center li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu.align-center li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.7rem 1rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .menu-centered > .menu li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu-centered > .menu li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }

.no-js [data-responsive-menu] ul {
  display: none; }

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #fefefe;
    -webkit-box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
            box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
    content: ''; }
  .menu-icon:hover::after {
    background: #cacaca;
    -webkit-box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca;
            box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    -webkit-box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
            box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
    content: ''; }
  .menu-icon.dark:hover::after {
    background: #8a8a8a;
    -webkit-box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a;
            box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; }

.accordion-menu li {
  width: 100%; }

.accordion-menu a {
  padding: 0.7rem 1rem; }

.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem; }

.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem; }

.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0; }

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative; }
  .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 1rem; }

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  right: 1rem;
  left: auto; }

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem; }

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.is-accordion-submenu-parent {
  position: relative; }

.has-submenu-toggle > a {
  margin-right: 40px; }

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  cursor: pointer; }
  .submenu-toggle::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    top: 0;
    bottom: 0;
    margin: auto; }

.submenu-toggle[aria-expanded='true']::after {
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.submenu-toggle-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0; }

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem; }

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1779ba transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.dropdown.menu > li > a {
  padding: 0.7rem 1rem; }

.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #1779ba; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 5px; }

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1779ba; }

@media screen and (min-width: 30em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba; } }

@media screen and (min-width: 48em) {
  .dropdown.menu.tablet-portrait-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.tablet-portrait-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.tablet-portrait-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.tablet-portrait-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.tablet-portrait-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.tablet-portrait-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.tablet-portrait-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.tablet-portrait-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.tablet-portrait-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.tablet-portrait-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba; } }

@media screen and (min-width: 62em) {
  .dropdown.menu.tablet-landscape-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.tablet-landscape-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.tablet-landscape-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.tablet-landscape-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.tablet-landscape-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.tablet-landscape-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.tablet-landscape-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.tablet-landscape-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.tablet-landscape-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.tablet-landscape-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba; } }

@media screen and (min-width: 75em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto; }

.is-dropdown-menu.vertical {
  width: 100px; }
  .is-dropdown-menu.vertical.align-right {
    float: right; }

.is-dropdown-submenu-parent {
  position: relative; }
  .is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    left: auto;
    margin-top: -6px; }
  .is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
    top: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #cacaca;
  background: #fefefe; }
  .dropdown .is-dropdown-submenu a {
    padding: 0.7rem 1rem; }
  .is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
    right: 14px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba; }
  .is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px; }
  .is-dropdown-submenu > li {
    width: 100%; }
  .is-dropdown-submenu.js-dropdown-active {
    display: block; }

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(10, 10, 10, 0.45);
  overflow-y: auto; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media screen and (min-width: 30em) {
    .reveal {
      min-height: 0; } }
  .reveal .column {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media screen and (min-width: 30em) {
    .reveal {
      width: 600px;
      max-width: 1470px; } }
  .reveal.collapse {
    padding: 0; }
  @media screen and (min-width: 30em) {
    .reveal.tiny {
      width: 30%;
      max-width: 1470px; } }
  @media screen and (min-width: 30em) {
    .reveal.small {
      width: 50%;
      max-width: 1470px; } }
  @media screen and (min-width: 30em) {
    .reveal.large {
      width: 90%;
      max-width: 1470px; } }
  .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 print, screen and (max-width: 29.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; }

.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: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.clearfix::after {
  clear: both; }

.align-left {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.align-right {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

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

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

.align-center.vertical.menu > li > a {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-top {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

.align-self-top {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start; }

.align-bottom {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.align-self-bottom {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end; }

.align-middle {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.align-self-middle {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center; }

.align-stretch {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.align-self-stretch {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch; }

.align-center-middle {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center; }

.small-order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.small-order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2; }

.small-order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3; }

.small-order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4; }

.small-order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5; }

.small-order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6; }

@media screen and (min-width: 30em) {
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 48em) {
  .tablet-portrait-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .tablet-portrait-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .tablet-portrait-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .tablet-portrait-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .tablet-portrait-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .tablet-portrait-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 62em) {
  .tablet-landscape-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .tablet-landscape-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .tablet-landscape-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .tablet-landscape-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .tablet-landscape-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .tablet-landscape-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 75em) {
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

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

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

.flex-dir-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.flex-dir-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.flex-dir-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media screen and (min-width: 30em) {
  .medium-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 48em) {
  .tablet-portrait-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .tablet-portrait-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .tablet-portrait-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .tablet-portrait-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .tablet-portrait-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .tablet-portrait-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .tablet-portrait-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .tablet-portrait-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 62em) {
  .tablet-landscape-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .tablet-landscape-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .tablet-landscape-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .tablet-landscape-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .tablet-landscape-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .tablet-landscape-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .tablet-landscape-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .tablet-landscape-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 75em) {
  .large-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

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

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

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

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

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

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

@media screen and (min-width: 48em) {
  .hide-for-tablet-portrait {
    display: none !important; } }

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

@media screen and (min-width: 48em) and (max-width: 61.99875em) {
  .hide-for-tablet-portrait-only {
    display: none !important; } }

@media screen and (max-width: 47.99875em), screen and (min-width: 62em) {
  .show-for-tablet-portrait-only {
    display: none !important; } }

@media screen and (min-width: 62em) {
  .hide-for-tablet-landscape {
    display: none !important; } }

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

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

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

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

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

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

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

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

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

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

.slide-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%); }

.slide-out-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%); }

.slide-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

.slide-out-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%); }

.fade-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 0;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 1;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  -webkit-transition-duration: 750ms !important;
          transition-duration: 750ms !important; }

.fast {
  -webkit-transition-duration: 250ms !important;
          transition-duration: 250ms !important; }

.linear {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important; }

.ease {
  -webkit-transition-timing-function: ease !important;
          transition-timing-function: ease !important; }

.ease-in {
  -webkit-transition-timing-function: ease-in !important;
          transition-timing-function: ease-in !important; }

.ease-out {
  -webkit-transition-timing-function: ease-out !important;
          transition-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-transition-timing-function: ease-in-out !important;
          transition-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-transition-delay: 300ms !important;
          transition-delay: 300ms !important; }

.long-delay {
  -webkit-transition-delay: 700ms !important;
          transition-delay: 700ms !important; }

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7; }

@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.spin-ccw {
  -webkit-animation-name: spin-ccw-1turn;
          animation-name: spin-ccw-1turn; }

@-webkit-keyframes spin-ccw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); } }

@keyframes spin-ccw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); } }

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg; }

@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms; }

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important; }

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important; }

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important; }

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important; }

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important; }

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important; }

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important; }

/*
//////////////////////////////////////////////////////
//
// Mixins
//
//////////////////////////////////////////////////////
*/
/*
Custom mixins
*/
/*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mixins
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/
/*
//////////////////////////////////////////////////////
//
// Utility styles that may come in useful
//
//////////////////////////////////////////////////////
*/
/*  Type helpers
--------------------------------------------------- /// */
.fs5 {
  font-size: 5px !important;
  font-size: 0.3125rem !important; }

.fs6 {
  font-size: 6px !important;
  font-size: 0.375rem !important; }

.fs7 {
  font-size: 7px !important;
  font-size: 0.4375rem !important; }

.fs8 {
  font-size: 8px !important;
  font-size: 0.5rem !important; }

.fs9 {
  font-size: 9px !important;
  font-size: 0.5625rem !important; }

.fs10 {
  font-size: 10px !important;
  font-size: 0.625rem !important; }

.fs11 {
  font-size: 11px !important;
  font-size: 0.6875rem !important; }

.fs12 {
  font-size: 12px !important;
  font-size: 0.75rem !important; }

.fs13 {
  font-size: 13px !important;
  font-size: 0.8125rem !important; }

.fs14 {
  font-size: 14px !important;
  font-size: 0.875rem !important; }

.fs15 {
  font-size: 15px !important;
  font-size: 0.9375rem !important; }

.fs16 {
  font-size: 16px !important;
  font-size: 1rem !important; }

.fs17 {
  font-size: 17px !important;
  font-size: 1.0625rem !important; }

.fs18 {
  font-size: 18px !important;
  font-size: 1.125rem !important; }

.fs19 {
  font-size: 19px !important;
  font-size: 1.1875rem !important; }

.fs20 {
  font-size: 20px !important;
  font-size: 1.25rem !important; }

.fs21 {
  font-size: 21px !important;
  font-size: 1.3125rem !important; }

.fs22 {
  font-size: 22px !important;
  font-size: 1.375rem !important; }

.fs23 {
  font-size: 23px !important;
  font-size: 1.4375rem !important; }

.fs24 {
  font-size: 24px !important;
  font-size: 1.5rem !important; }

.fs25 {
  font-size: 25px !important;
  font-size: 1.5625rem !important; }

.fs26 {
  font-size: 26px !important;
  font-size: 1.625rem !important; }

.fs27 {
  font-size: 27px !important;
  font-size: 1.6875rem !important; }

.fs28 {
  font-size: 28px !important;
  font-size: 1.75rem !important; }

.fs29 {
  font-size: 29px !important;
  font-size: 1.8125rem !important; }

.fs30 {
  font-size: 30px !important;
  font-size: 1.875rem !important; }

.fs31 {
  font-size: 31px !important;
  font-size: 1.9375rem !important; }

.fs32 {
  font-size: 32px !important;
  font-size: 2rem !important; }

.fs33 {
  font-size: 33px !important;
  font-size: 2.0625rem !important; }

.fs34 {
  font-size: 34px !important;
  font-size: 2.125rem !important; }

.fs35 {
  font-size: 35px !important;
  font-size: 2.1875rem !important; }

.fs36 {
  font-size: 36px !important;
  font-size: 2.25rem !important; }

.fs37 {
  font-size: 37px !important;
  font-size: 2.3125rem !important; }

.fs38 {
  font-size: 38px !important;
  font-size: 2.375rem !important; }

.fs39 {
  font-size: 39px !important;
  font-size: 2.4375rem !important; }

.fs40 {
  font-size: 40px !important;
  font-size: 2.5rem !important; }

.fs41 {
  font-size: 41px !important;
  font-size: 2.5625rem !important; }

.fs42 {
  font-size: 42px !important;
  font-size: 2.625rem !important; }

.fs43 {
  font-size: 43px !important;
  font-size: 2.6875rem !important; }

.fs44 {
  font-size: 44px !important;
  font-size: 2.75rem !important; }

.fs45 {
  font-size: 45px !important;
  font-size: 2.8125rem !important; }

.fs46 {
  font-size: 46px !important;
  font-size: 2.875rem !important; }

.fs47 {
  font-size: 47px !important;
  font-size: 2.9375rem !important; }

.fs48 {
  font-size: 48px !important;
  font-size: 3rem !important; }

.fs49 {
  font-size: 49px !important;
  font-size: 3.0625rem !important; }

.fs50 {
  font-size: 50px !important;
  font-size: 3.125rem !important; }

.fw100 {
  font-weight: 100 !important; }

.fw200 {
  font-weight: 200 !important; }

.fw300 {
  font-weight: 300 !important; }

.fw400 {
  font-weight: 400 !important; }

.fw500 {
  font-weight: 500 !important; }

.fw600 {
  font-weight: 600 !important; }

.fw700 {
  font-weight: 700 !important; }

.fw800 {
  font-weight: 800 !important; }

.fw900 {
  font-weight: 900 !important; }

.remove-padding {
  padding: 0 !important; }

.remove-margin {
  margin: 0 !important; }

.mr-0 {
  margin-right: 0 !important; }

.mr-1 {
  margin-right: 0.0625rem !important; }

.mr-2 {
  margin-right: 0.125rem !important; }

.mr-3 {
  margin-right: 0.1875rem !important; }

.mr-4 {
  margin-right: 0.25rem !important; }

.mr-5 {
  margin-right: 0.3125rem !important; }

.mr-6 {
  margin-right: 0.375rem !important; }

.mr-7 {
  margin-right: 0.4375rem !important; }

.mr-8 {
  margin-right: 0.5rem !important; }

.mr-9 {
  margin-right: 0.5625rem !important; }

.mr-10 {
  margin-right: 0.625rem !important; }

.mr-11 {
  margin-right: 0.6875rem !important; }

.mr-12 {
  margin-right: 0.75rem !important; }

.mr-13 {
  margin-right: 0.8125rem !important; }

.mr-14 {
  margin-right: 0.875rem !important; }

.mr-15 {
  margin-right: 0.9375rem !important; }

.mr-16 {
  margin-right: 1rem !important; }

.mr-17 {
  margin-right: 1.0625rem !important; }

.mr-18 {
  margin-right: 1.125rem !important; }

.mr-19 {
  margin-right: 1.1875rem !important; }

.mr-20 {
  margin-right: 1.25rem !important; }

.mr-21 {
  margin-right: 1.3125rem !important; }

.mr-22 {
  margin-right: 1.375rem !important; }

.mr-23 {
  margin-right: 1.4375rem !important; }

.mr-24 {
  margin-right: 1.5rem !important; }

.mr-25 {
  margin-right: 1.5625rem !important; }

.mr-26 {
  margin-right: 1.625rem !important; }

.mr-27 {
  margin-right: 1.6875rem !important; }

.mr-28 {
  margin-right: 1.75rem !important; }

.mr-29 {
  margin-right: 1.8125rem !important; }

.mr-30 {
  margin-right: 1.875rem !important; }

.mr-31 {
  margin-right: 1.9375rem !important; }

.mr-32 {
  margin-right: 2rem !important; }

.mr-33 {
  margin-right: 2.0625rem !important; }

.mr-34 {
  margin-right: 2.125rem !important; }

.mr-35 {
  margin-right: 2.1875rem !important; }

.mr-36 {
  margin-right: 2.25rem !important; }

.mr-37 {
  margin-right: 2.3125rem !important; }

.mr-38 {
  margin-right: 2.375rem !important; }

.mr-39 {
  margin-right: 2.4375rem !important; }

.mr-40 {
  margin-right: 2.5rem !important; }

.mr-41 {
  margin-right: 2.5625rem !important; }

.mr-42 {
  margin-right: 2.625rem !important; }

.mr-43 {
  margin-right: 2.6875rem !important; }

.mr-44 {
  margin-right: 2.75rem !important; }

.mr-45 {
  margin-right: 2.8125rem !important; }

.mr-46 {
  margin-right: 2.875rem !important; }

.mr-47 {
  margin-right: 2.9375rem !important; }

.mr-48 {
  margin-right: 3rem !important; }

.mr-49 {
  margin-right: 3.0625rem !important; }

.mr-50 {
  margin-right: 3.125rem !important; }

.ml-0 {
  margin-left: 0 !important; }

.ml-1 {
  margin-left: 0.0625rem !important; }

.ml-2 {
  margin-left: 0.125rem !important; }

.ml-3 {
  margin-left: 0.1875rem !important; }

.ml-4 {
  margin-left: 0.25rem !important; }

.ml-5 {
  margin-left: 0.3125rem !important; }

.ml-6 {
  margin-left: 0.375rem !important; }

.ml-7 {
  margin-left: 0.4375rem !important; }

.ml-8 {
  margin-left: 0.5rem !important; }

.ml-9 {
  margin-left: 0.5625rem !important; }

.ml-10 {
  margin-left: 0.625rem !important; }

.ml-11 {
  margin-left: 0.6875rem !important; }

.ml-12 {
  margin-left: 0.75rem !important; }

.ml-13 {
  margin-left: 0.8125rem !important; }

.ml-14 {
  margin-left: 0.875rem !important; }

.ml-15 {
  margin-left: 0.9375rem !important; }

.ml-16 {
  margin-left: 1rem !important; }

.ml-17 {
  margin-left: 1.0625rem !important; }

.ml-18 {
  margin-left: 1.125rem !important; }

.ml-19 {
  margin-left: 1.1875rem !important; }

.ml-20 {
  margin-left: 1.25rem !important; }

.ml-21 {
  margin-left: 1.3125rem !important; }

.ml-22 {
  margin-left: 1.375rem !important; }

.ml-23 {
  margin-left: 1.4375rem !important; }

.ml-24 {
  margin-left: 1.5rem !important; }

.ml-25 {
  margin-left: 1.5625rem !important; }

.ml-26 {
  margin-left: 1.625rem !important; }

.ml-27 {
  margin-left: 1.6875rem !important; }

.ml-28 {
  margin-left: 1.75rem !important; }

.ml-29 {
  margin-left: 1.8125rem !important; }

.ml-30 {
  margin-left: 1.875rem !important; }

.ml-31 {
  margin-left: 1.9375rem !important; }

.ml-32 {
  margin-left: 2rem !important; }

.ml-33 {
  margin-left: 2.0625rem !important; }

.ml-34 {
  margin-left: 2.125rem !important; }

.ml-35 {
  margin-left: 2.1875rem !important; }

.ml-36 {
  margin-left: 2.25rem !important; }

.ml-37 {
  margin-left: 2.3125rem !important; }

.ml-38 {
  margin-left: 2.375rem !important; }

.ml-39 {
  margin-left: 2.4375rem !important; }

.ml-40 {
  margin-left: 2.5rem !important; }

.ml-41 {
  margin-left: 2.5625rem !important; }

.ml-42 {
  margin-left: 2.625rem !important; }

.ml-43 {
  margin-left: 2.6875rem !important; }

.ml-44 {
  margin-left: 2.75rem !important; }

.ml-45 {
  margin-left: 2.8125rem !important; }

.ml-46 {
  margin-left: 2.875rem !important; }

.ml-47 {
  margin-left: 2.9375rem !important; }

.ml-48 {
  margin-left: 3rem !important; }

.ml-49 {
  margin-left: 3.0625rem !important; }

.ml-50 {
  margin-left: 3.125rem !important; }

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

.mt-1 {
  margin-top: 0.0625rem !important; }

.mt-2 {
  margin-top: 0.125rem !important; }

.mt-3 {
  margin-top: 0.1875rem !important; }

.mt-4 {
  margin-top: 0.25rem !important; }

.mt-5 {
  margin-top: 0.3125rem !important; }

.mt-6 {
  margin-top: 0.375rem !important; }

.mt-7 {
  margin-top: 0.4375rem !important; }

.mt-8 {
  margin-top: 0.5rem !important; }

.mt-9 {
  margin-top: 0.5625rem !important; }

.mt-10 {
  margin-top: 0.625rem !important; }

.mt-11 {
  margin-top: 0.6875rem !important; }

.mt-12 {
  margin-top: 0.75rem !important; }

.mt-13 {
  margin-top: 0.8125rem !important; }

.mt-14 {
  margin-top: 0.875rem !important; }

.mt-15 {
  margin-top: 0.9375rem !important; }

.mt-16 {
  margin-top: 1rem !important; }

.mt-17 {
  margin-top: 1.0625rem !important; }

.mt-18 {
  margin-top: 1.125rem !important; }

.mt-19 {
  margin-top: 1.1875rem !important; }

.mt-20 {
  margin-top: 1.25rem !important; }

.mt-21 {
  margin-top: 1.3125rem !important; }

.mt-22 {
  margin-top: 1.375rem !important; }

.mt-23 {
  margin-top: 1.4375rem !important; }

.mt-24 {
  margin-top: 1.5rem !important; }

.mt-25 {
  margin-top: 1.5625rem !important; }

.mt-26 {
  margin-top: 1.625rem !important; }

.mt-27 {
  margin-top: 1.6875rem !important; }

.mt-28 {
  margin-top: 1.75rem !important; }

.mt-29 {
  margin-top: 1.8125rem !important; }

.mt-30 {
  margin-top: 1.875rem !important; }

.mt-31 {
  margin-top: 1.9375rem !important; }

.mt-32 {
  margin-top: 2rem !important; }

.mt-33 {
  margin-top: 2.0625rem !important; }

.mt-34 {
  margin-top: 2.125rem !important; }

.mt-35 {
  margin-top: 2.1875rem !important; }

.mt-36 {
  margin-top: 2.25rem !important; }

.mt-37 {
  margin-top: 2.3125rem !important; }

.mt-38 {
  margin-top: 2.375rem !important; }

.mt-39 {
  margin-top: 2.4375rem !important; }

.mt-40 {
  margin-top: 2.5rem !important; }

.mt-41 {
  margin-top: 2.5625rem !important; }

.mt-42 {
  margin-top: 2.625rem !important; }

.mt-43 {
  margin-top: 2.6875rem !important; }

.mt-44 {
  margin-top: 2.75rem !important; }

.mt-45 {
  margin-top: 2.8125rem !important; }

.mt-46 {
  margin-top: 2.875rem !important; }

.mt-47 {
  margin-top: 2.9375rem !important; }

.mt-48 {
  margin-top: 3rem !important; }

.mt-49 {
  margin-top: 3.0625rem !important; }

.mt-50 {
  margin-top: 3.125rem !important; }

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

.mb-1 {
  margin-bottom: 0.0625rem !important; }

.mb-2 {
  margin-bottom: 0.125rem !important; }

.mb-3 {
  margin-bottom: 0.1875rem !important; }

.mb-4 {
  margin-bottom: 0.25rem !important; }

.mb-5 {
  margin-bottom: 0.3125rem !important; }

.mb-6 {
  margin-bottom: 0.375rem !important; }

.mb-7 {
  margin-bottom: 0.4375rem !important; }

.mb-8 {
  margin-bottom: 0.5rem !important; }

.mb-9 {
  margin-bottom: 0.5625rem !important; }

.mb-10 {
  margin-bottom: 0.625rem !important; }

.mb-11 {
  margin-bottom: 0.6875rem !important; }

.mb-12 {
  margin-bottom: 0.75rem !important; }

.mb-13 {
  margin-bottom: 0.8125rem !important; }

.mb-14 {
  margin-bottom: 0.875rem !important; }

.mb-15 {
  margin-bottom: 0.9375rem !important; }

.mb-16 {
  margin-bottom: 1rem !important; }

.mb-17 {
  margin-bottom: 1.0625rem !important; }

.mb-18 {
  margin-bottom: 1.125rem !important; }

.mb-19 {
  margin-bottom: 1.1875rem !important; }

.mb-20 {
  margin-bottom: 1.25rem !important; }

.mb-21 {
  margin-bottom: 1.3125rem !important; }

.mb-22 {
  margin-bottom: 1.375rem !important; }

.mb-23 {
  margin-bottom: 1.4375rem !important; }

.mb-24 {
  margin-bottom: 1.5rem !important; }

.mb-25 {
  margin-bottom: 1.5625rem !important; }

.mb-26 {
  margin-bottom: 1.625rem !important; }

.mb-27 {
  margin-bottom: 1.6875rem !important; }

.mb-28 {
  margin-bottom: 1.75rem !important; }

.mb-29 {
  margin-bottom: 1.8125rem !important; }

.mb-30 {
  margin-bottom: 1.875rem !important; }

.mb-31 {
  margin-bottom: 1.9375rem !important; }

.mb-32 {
  margin-bottom: 2rem !important; }

.mb-33 {
  margin-bottom: 2.0625rem !important; }

.mb-34 {
  margin-bottom: 2.125rem !important; }

.mb-35 {
  margin-bottom: 2.1875rem !important; }

.mb-36 {
  margin-bottom: 2.25rem !important; }

.mb-37 {
  margin-bottom: 2.3125rem !important; }

.mb-38 {
  margin-bottom: 2.375rem !important; }

.mb-39 {
  margin-bottom: 2.4375rem !important; }

.mb-40 {
  margin-bottom: 2.5rem !important; }

.mb-41 {
  margin-bottom: 2.5625rem !important; }

.mb-42 {
  margin-bottom: 2.625rem !important; }

.mb-43 {
  margin-bottom: 2.6875rem !important; }

.mb-44 {
  margin-bottom: 2.75rem !important; }

.mb-45 {
  margin-bottom: 2.8125rem !important; }

.mb-46 {
  margin-bottom: 2.875rem !important; }

.mb-47 {
  margin-bottom: 2.9375rem !important; }

.mb-48 {
  margin-bottom: 3rem !important; }

.mb-49 {
  margin-bottom: 3.0625rem !important; }

.mb-50 {
  margin-bottom: 3.125rem !important; }

.pr-0 {
  padding-right: 0 !important; }

.pr-1 {
  padding-right: 0.0625rem !important; }

.pr-2 {
  padding-right: 0.125rem !important; }

.pr-3 {
  padding-right: 0.1875rem !important; }

.pr-4 {
  padding-right: 0.25rem !important; }

.pr-5 {
  padding-right: 0.3125rem !important; }

.pr-6 {
  padding-right: 0.375rem !important; }

.pr-7 {
  padding-right: 0.4375rem !important; }

.pr-8 {
  padding-right: 0.5rem !important; }

.pr-9 {
  padding-right: 0.5625rem !important; }

.pr-10 {
  padding-right: 0.625rem !important; }

.pr-11 {
  padding-right: 0.6875rem !important; }

.pr-12 {
  padding-right: 0.75rem !important; }

.pr-13 {
  padding-right: 0.8125rem !important; }

.pr-14 {
  padding-right: 0.875rem !important; }

.pr-15 {
  padding-right: 0.9375rem !important; }

.pr-16 {
  padding-right: 1rem !important; }

.pr-17 {
  padding-right: 1.0625rem !important; }

.pr-18 {
  padding-right: 1.125rem !important; }

.pr-19 {
  padding-right: 1.1875rem !important; }

.pr-20 {
  padding-right: 1.25rem !important; }

.pr-21 {
  padding-right: 1.3125rem !important; }

.pr-22 {
  padding-right: 1.375rem !important; }

.pr-23 {
  padding-right: 1.4375rem !important; }

.pr-24 {
  padding-right: 1.5rem !important; }

.pr-25 {
  padding-right: 1.5625rem !important; }

.pr-26 {
  padding-right: 1.625rem !important; }

.pr-27 {
  padding-right: 1.6875rem !important; }

.pr-28 {
  padding-right: 1.75rem !important; }

.pr-29 {
  padding-right: 1.8125rem !important; }

.pr-30 {
  padding-right: 1.875rem !important; }

.pl-0 {
  padding-left: 0 !important; }

.pl-1 {
  padding-left: 0.0625rem !important; }

.pl-2 {
  padding-left: 0.125rem !important; }

.pl-3 {
  padding-left: 0.1875rem !important; }

.pl-4 {
  padding-left: 0.25rem !important; }

.pl-5 {
  padding-left: 0.3125rem !important; }

.pl-6 {
  padding-left: 0.375rem !important; }

.pl-7 {
  padding-left: 0.4375rem !important; }

.pl-8 {
  padding-left: 0.5rem !important; }

.pl-9 {
  padding-left: 0.5625rem !important; }

.pl-10 {
  padding-left: 0.625rem !important; }

.pl-11 {
  padding-left: 0.6875rem !important; }

.pl-12 {
  padding-left: 0.75rem !important; }

.pl-13 {
  padding-left: 0.8125rem !important; }

.pl-14 {
  padding-left: 0.875rem !important; }

.pl-15 {
  padding-left: 0.9375rem !important; }

.pl-16 {
  padding-left: 1rem !important; }

.pl-17 {
  padding-left: 1.0625rem !important; }

.pl-18 {
  padding-left: 1.125rem !important; }

.pl-19 {
  padding-left: 1.1875rem !important; }

.pl-20 {
  padding-left: 1.25rem !important; }

.pl-21 {
  padding-left: 1.3125rem !important; }

.pl-22 {
  padding-left: 1.375rem !important; }

.pl-23 {
  padding-left: 1.4375rem !important; }

.pl-24 {
  padding-left: 1.5rem !important; }

.pl-25 {
  padding-left: 1.5625rem !important; }

.pl-26 {
  padding-left: 1.625rem !important; }

.pl-27 {
  padding-left: 1.6875rem !important; }

.pl-28 {
  padding-left: 1.75rem !important; }

.pl-29 {
  padding-left: 1.8125rem !important; }

.pl-30 {
  padding-left: 1.875rem !important; }

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

.pt-1 {
  padding-top: 0.0625rem !important; }

.pt-2 {
  padding-top: 0.125rem !important; }

.pt-3 {
  padding-top: 0.1875rem !important; }

.pt-4 {
  padding-top: 0.25rem !important; }

.pt-5 {
  padding-top: 0.3125rem !important; }

.pt-6 {
  padding-top: 0.375rem !important; }

.pt-7 {
  padding-top: 0.4375rem !important; }

.pt-8 {
  padding-top: 0.5rem !important; }

.pt-9 {
  padding-top: 0.5625rem !important; }

.pt-10 {
  padding-top: 0.625rem !important; }

.pt-11 {
  padding-top: 0.6875rem !important; }

.pt-12 {
  padding-top: 0.75rem !important; }

.pt-13 {
  padding-top: 0.8125rem !important; }

.pt-14 {
  padding-top: 0.875rem !important; }

.pt-15 {
  padding-top: 0.9375rem !important; }

.pt-16 {
  padding-top: 1rem !important; }

.pt-17 {
  padding-top: 1.0625rem !important; }

.pt-18 {
  padding-top: 1.125rem !important; }

.pt-19 {
  padding-top: 1.1875rem !important; }

.pt-20 {
  padding-top: 1.25rem !important; }

.pt-21 {
  padding-top: 1.3125rem !important; }

.pt-22 {
  padding-top: 1.375rem !important; }

.pt-23 {
  padding-top: 1.4375rem !important; }

.pt-24 {
  padding-top: 1.5rem !important; }

.pt-25 {
  padding-top: 1.5625rem !important; }

.pt-26 {
  padding-top: 1.625rem !important; }

.pt-27 {
  padding-top: 1.6875rem !important; }

.pt-28 {
  padding-top: 1.75rem !important; }

.pt-29 {
  padding-top: 1.8125rem !important; }

.pt-30 {
  padding-top: 1.875rem !important; }

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

.pb-1 {
  padding-bottom: 0.0625rem !important; }

.pb-2 {
  padding-bottom: 0.125rem !important; }

.pb-3 {
  padding-bottom: 0.1875rem !important; }

.pb-4 {
  padding-bottom: 0.25rem !important; }

.pb-5 {
  padding-bottom: 0.3125rem !important; }

.pb-6 {
  padding-bottom: 0.375rem !important; }

.pb-7 {
  padding-bottom: 0.4375rem !important; }

.pb-8 {
  padding-bottom: 0.5rem !important; }

.pb-9 {
  padding-bottom: 0.5625rem !important; }

.pb-10 {
  padding-bottom: 0.625rem !important; }

.pb-11 {
  padding-bottom: 0.6875rem !important; }

.pb-12 {
  padding-bottom: 0.75rem !important; }

.pb-13 {
  padding-bottom: 0.8125rem !important; }

.pb-14 {
  padding-bottom: 0.875rem !important; }

.pb-15 {
  padding-bottom: 0.9375rem !important; }

.pb-16 {
  padding-bottom: 1rem !important; }

.pb-17 {
  padding-bottom: 1.0625rem !important; }

.pb-18 {
  padding-bottom: 1.125rem !important; }

.pb-19 {
  padding-bottom: 1.1875rem !important; }

.pb-20 {
  padding-bottom: 1.25rem !important; }

.pb-21 {
  padding-bottom: 1.3125rem !important; }

.pb-22 {
  padding-bottom: 1.375rem !important; }

.pb-23 {
  padding-bottom: 1.4375rem !important; }

.pb-24 {
  padding-bottom: 1.5rem !important; }

.pb-25 {
  padding-bottom: 1.5625rem !important; }

.pb-26 {
  padding-bottom: 1.625rem !important; }

.pb-27 {
  padding-bottom: 1.6875rem !important; }

.pb-28 {
  padding-bottom: 1.75rem !important; }

.pb-29 {
  padding-bottom: 1.8125rem !important; }

.pb-30 {
  padding-bottom: 1.875rem !important; }

.shift-right-0 {
  margin-right: 0 !important; }

.shift-right-1 {
  margin-right: -0.0625rem !important; }

.shift-right-2 {
  margin-right: -0.125rem !important; }

.shift-right-3 {
  margin-right: -0.1875rem !important; }

.shift-right-4 {
  margin-right: -0.25rem !important; }

.shift-right-5 {
  margin-right: -0.3125rem !important; }

.shift-right-6 {
  margin-right: -0.375rem !important; }

.shift-right-7 {
  margin-right: -0.4375rem !important; }

.shift-right-8 {
  margin-right: -0.5rem !important; }

.shift-right-9 {
  margin-right: -0.5625rem !important; }

.shift-right-10 {
  margin-right: -0.625rem !important; }

.shift-right-11 {
  margin-right: -0.6875rem !important; }

.shift-right-12 {
  margin-right: -0.75rem !important; }

.shift-right-13 {
  margin-right: -0.8125rem !important; }

.shift-right-14 {
  margin-right: -0.875rem !important; }

.shift-right-15 {
  margin-right: -0.9375rem !important; }

.shift-right-16 {
  margin-right: -1rem !important; }

.shift-right-17 {
  margin-right: -1.0625rem !important; }

.shift-right-18 {
  margin-right: -1.125rem !important; }

.shift-right-19 {
  margin-right: -1.1875rem !important; }

.shift-right-20 {
  margin-right: -1.25rem !important; }

.shift-right-21 {
  margin-right: -1.3125rem !important; }

.shift-right-22 {
  margin-right: -1.375rem !important; }

.shift-right-23 {
  margin-right: -1.4375rem !important; }

.shift-right-24 {
  margin-right: -1.5rem !important; }

.shift-right-25 {
  margin-right: -1.5625rem !important; }

.shift-right-26 {
  margin-right: -1.625rem !important; }

.shift-right-27 {
  margin-right: -1.6875rem !important; }

.shift-right-28 {
  margin-right: -1.75rem !important; }

.shift-right-29 {
  margin-right: -1.8125rem !important; }

.shift-right-30 {
  margin-right: -1.875rem !important; }

.shift-right-31 {
  margin-right: -1.9375rem !important; }

.shift-right-32 {
  margin-right: -2rem !important; }

.shift-right-33 {
  margin-right: -2.0625rem !important; }

.shift-right-34 {
  margin-right: -2.125rem !important; }

.shift-right-35 {
  margin-right: -2.1875rem !important; }

.shift-right-36 {
  margin-right: -2.25rem !important; }

.shift-right-37 {
  margin-right: -2.3125rem !important; }

.shift-right-38 {
  margin-right: -2.375rem !important; }

.shift-right-39 {
  margin-right: -2.4375rem !important; }

.shift-right-40 {
  margin-right: -2.5rem !important; }

.shift-right-41 {
  margin-right: -2.5625rem !important; }

.shift-right-42 {
  margin-right: -2.625rem !important; }

.shift-right-43 {
  margin-right: -2.6875rem !important; }

.shift-right-44 {
  margin-right: -2.75rem !important; }

.shift-right-45 {
  margin-right: -2.8125rem !important; }

.shift-right-46 {
  margin-right: -2.875rem !important; }

.shift-right-47 {
  margin-right: -2.9375rem !important; }

.shift-right-48 {
  margin-right: -3rem !important; }

.shift-right-49 {
  margin-right: -3.0625rem !important; }

.shift-right-50 {
  margin-right: -3.125rem !important; }

.shift-right-51 {
  margin-right: -3.1875rem !important; }

.shift-right-52 {
  margin-right: -3.25rem !important; }

.shift-right-53 {
  margin-right: -3.3125rem !important; }

.shift-right-54 {
  margin-right: -3.375rem !important; }

.shift-right-55 {
  margin-right: -3.4375rem !important; }

.shift-right-56 {
  margin-right: -3.5rem !important; }

.shift-right-57 {
  margin-right: -3.5625rem !important; }

.shift-right-58 {
  margin-right: -3.625rem !important; }

.shift-right-59 {
  margin-right: -3.6875rem !important; }

.shift-right-60 {
  margin-right: -3.75rem !important; }

.shift-right-61 {
  margin-right: -3.8125rem !important; }

.shift-right-62 {
  margin-right: -3.875rem !important; }

.shift-right-63 {
  margin-right: -3.9375rem !important; }

.shift-right-64 {
  margin-right: -4rem !important; }

.shift-right-65 {
  margin-right: -4.0625rem !important; }

.shift-right-66 {
  margin-right: -4.125rem !important; }

.shift-right-67 {
  margin-right: -4.1875rem !important; }

.shift-right-68 {
  margin-right: -4.25rem !important; }

.shift-right-69 {
  margin-right: -4.3125rem !important; }

.shift-right-70 {
  margin-right: -4.375rem !important; }

.shift-right-71 {
  margin-right: -4.4375rem !important; }

.shift-right-72 {
  margin-right: -4.5rem !important; }

.shift-right-73 {
  margin-right: -4.5625rem !important; }

.shift-right-74 {
  margin-right: -4.625rem !important; }

.shift-right-75 {
  margin-right: -4.6875rem !important; }

.shift-right-76 {
  margin-right: -4.75rem !important; }

.shift-right-77 {
  margin-right: -4.8125rem !important; }

.shift-right-78 {
  margin-right: -4.875rem !important; }

.shift-right-79 {
  margin-right: -4.9375rem !important; }

.shift-right-80 {
  margin-right: -5rem !important; }

.shift-right-81 {
  margin-right: -5.0625rem !important; }

.shift-right-82 {
  margin-right: -5.125rem !important; }

.shift-right-83 {
  margin-right: -5.1875rem !important; }

.shift-right-84 {
  margin-right: -5.25rem !important; }

.shift-right-85 {
  margin-right: -5.3125rem !important; }

.shift-right-86 {
  margin-right: -5.375rem !important; }

.shift-right-87 {
  margin-right: -5.4375rem !important; }

.shift-right-88 {
  margin-right: -5.5rem !important; }

.shift-right-89 {
  margin-right: -5.5625rem !important; }

.shift-right-90 {
  margin-right: -5.625rem !important; }

.shift-right-91 {
  margin-right: -5.6875rem !important; }

.shift-right-92 {
  margin-right: -5.75rem !important; }

.shift-right-93 {
  margin-right: -5.8125rem !important; }

.shift-right-94 {
  margin-right: -5.875rem !important; }

.shift-right-95 {
  margin-right: -5.9375rem !important; }

.shift-right-96 {
  margin-right: -6rem !important; }

.shift-right-97 {
  margin-right: -6.0625rem !important; }

.shift-right-98 {
  margin-right: -6.125rem !important; }

.shift-right-99 {
  margin-right: -6.1875rem !important; }

.shift-right-100 {
  margin-right: -6.25rem !important; }

.shift-right-101 {
  margin-right: -6.3125rem !important; }

.shift-right-102 {
  margin-right: -6.375rem !important; }

.shift-right-103 {
  margin-right: -6.4375rem !important; }

.shift-right-104 {
  margin-right: -6.5rem !important; }

.shift-right-105 {
  margin-right: -6.5625rem !important; }

.shift-right-106 {
  margin-right: -6.625rem !important; }

.shift-right-107 {
  margin-right: -6.6875rem !important; }

.shift-right-108 {
  margin-right: -6.75rem !important; }

.shift-right-109 {
  margin-right: -6.8125rem !important; }

.shift-right-110 {
  margin-right: -6.875rem !important; }

.shift-right-111 {
  margin-right: -6.9375rem !important; }

.shift-right-112 {
  margin-right: -7rem !important; }

.shift-right-113 {
  margin-right: -7.0625rem !important; }

.shift-right-114 {
  margin-right: -7.125rem !important; }

.shift-right-115 {
  margin-right: -7.1875rem !important; }

.shift-right-116 {
  margin-right: -7.25rem !important; }

.shift-right-117 {
  margin-right: -7.3125rem !important; }

.shift-right-118 {
  margin-right: -7.375rem !important; }

.shift-right-119 {
  margin-right: -7.4375rem !important; }

.shift-right-120 {
  margin-right: -7.5rem !important; }

.shift-right-121 {
  margin-right: -7.5625rem !important; }

.shift-right-122 {
  margin-right: -7.625rem !important; }

.shift-right-123 {
  margin-right: -7.6875rem !important; }

.shift-right-124 {
  margin-right: -7.75rem !important; }

.shift-right-125 {
  margin-right: -7.8125rem !important; }

.shift-right-126 {
  margin-right: -7.875rem !important; }

.shift-right-127 {
  margin-right: -7.9375rem !important; }

.shift-right-128 {
  margin-right: -8rem !important; }

.shift-right-129 {
  margin-right: -8.0625rem !important; }

.shift-right-130 {
  margin-right: -8.125rem !important; }

.shift-right-131 {
  margin-right: -8.1875rem !important; }

.shift-right-132 {
  margin-right: -8.25rem !important; }

.shift-right-133 {
  margin-right: -8.3125rem !important; }

.shift-right-134 {
  margin-right: -8.375rem !important; }

.shift-right-135 {
  margin-right: -8.4375rem !important; }

.shift-right-136 {
  margin-right: -8.5rem !important; }

.shift-right-137 {
  margin-right: -8.5625rem !important; }

.shift-right-138 {
  margin-right: -8.625rem !important; }

.shift-right-139 {
  margin-right: -8.6875rem !important; }

.shift-right-140 {
  margin-right: -8.75rem !important; }

.shift-right-141 {
  margin-right: -8.8125rem !important; }

.shift-right-142 {
  margin-right: -8.875rem !important; }

.shift-right-143 {
  margin-right: -8.9375rem !important; }

.shift-right-144 {
  margin-right: -9rem !important; }

.shift-right-145 {
  margin-right: -9.0625rem !important; }

.shift-right-146 {
  margin-right: -9.125rem !important; }

.shift-right-147 {
  margin-right: -9.1875rem !important; }

.shift-right-148 {
  margin-right: -9.25rem !important; }

.shift-right-149 {
  margin-right: -9.3125rem !important; }

.shift-right-150 {
  margin-right: -9.375rem !important; }

.shift-left-0 {
  margin-left: 0 !important; }

.shift-left-1 {
  margin-left: -0.0625rem !important; }

.shift-left-2 {
  margin-left: -0.125rem !important; }

.shift-left-3 {
  margin-left: -0.1875rem !important; }

.shift-left-4 {
  margin-left: -0.25rem !important; }

.shift-left-5 {
  margin-left: -0.3125rem !important; }

.shift-left-6 {
  margin-left: -0.375rem !important; }

.shift-left-7 {
  margin-left: -0.4375rem !important; }

.shift-left-8 {
  margin-left: -0.5rem !important; }

.shift-left-9 {
  margin-left: -0.5625rem !important; }

.shift-left-10 {
  margin-left: -0.625rem !important; }

.shift-left-11 {
  margin-left: -0.6875rem !important; }

.shift-left-12 {
  margin-left: -0.75rem !important; }

.shift-left-13 {
  margin-left: -0.8125rem !important; }

.shift-left-14 {
  margin-left: -0.875rem !important; }

.shift-left-15 {
  margin-left: -0.9375rem !important; }

.shift-left-16 {
  margin-left: -1rem !important; }

.shift-left-17 {
  margin-left: -1.0625rem !important; }

.shift-left-18 {
  margin-left: -1.125rem !important; }

.shift-left-19 {
  margin-left: -1.1875rem !important; }

.shift-left-20 {
  margin-left: -1.25rem !important; }

.shift-left-21 {
  margin-left: -1.3125rem !important; }

.shift-left-22 {
  margin-left: -1.375rem !important; }

.shift-left-23 {
  margin-left: -1.4375rem !important; }

.shift-left-24 {
  margin-left: -1.5rem !important; }

.shift-left-25 {
  margin-left: -1.5625rem !important; }

.shift-left-26 {
  margin-left: -1.625rem !important; }

.shift-left-27 {
  margin-left: -1.6875rem !important; }

.shift-left-28 {
  margin-left: -1.75rem !important; }

.shift-left-29 {
  margin-left: -1.8125rem !important; }

.shift-left-30 {
  margin-left: -1.875rem !important; }

.shift-left-31 {
  margin-left: -1.9375rem !important; }

.shift-left-32 {
  margin-left: -2rem !important; }

.shift-left-33 {
  margin-left: -2.0625rem !important; }

.shift-left-34 {
  margin-left: -2.125rem !important; }

.shift-left-35 {
  margin-left: -2.1875rem !important; }

.shift-left-36 {
  margin-left: -2.25rem !important; }

.shift-left-37 {
  margin-left: -2.3125rem !important; }

.shift-left-38 {
  margin-left: -2.375rem !important; }

.shift-left-39 {
  margin-left: -2.4375rem !important; }

.shift-left-40 {
  margin-left: -2.5rem !important; }

.shift-left-41 {
  margin-left: -2.5625rem !important; }

.shift-left-42 {
  margin-left: -2.625rem !important; }

.shift-left-43 {
  margin-left: -2.6875rem !important; }

.shift-left-44 {
  margin-left: -2.75rem !important; }

.shift-left-45 {
  margin-left: -2.8125rem !important; }

.shift-left-46 {
  margin-left: -2.875rem !important; }

.shift-left-47 {
  margin-left: -2.9375rem !important; }

.shift-left-48 {
  margin-left: -3rem !important; }

.shift-left-49 {
  margin-left: -3.0625rem !important; }

.shift-left-50 {
  margin-left: -3.125rem !important; }

.shift-left-51 {
  margin-left: -3.1875rem !important; }

.shift-left-52 {
  margin-left: -3.25rem !important; }

.shift-left-53 {
  margin-left: -3.3125rem !important; }

.shift-left-54 {
  margin-left: -3.375rem !important; }

.shift-left-55 {
  margin-left: -3.4375rem !important; }

.shift-left-56 {
  margin-left: -3.5rem !important; }

.shift-left-57 {
  margin-left: -3.5625rem !important; }

.shift-left-58 {
  margin-left: -3.625rem !important; }

.shift-left-59 {
  margin-left: -3.6875rem !important; }

.shift-left-60 {
  margin-left: -3.75rem !important; }

.shift-left-61 {
  margin-left: -3.8125rem !important; }

.shift-left-62 {
  margin-left: -3.875rem !important; }

.shift-left-63 {
  margin-left: -3.9375rem !important; }

.shift-left-64 {
  margin-left: -4rem !important; }

.shift-left-65 {
  margin-left: -4.0625rem !important; }

.shift-left-66 {
  margin-left: -4.125rem !important; }

.shift-left-67 {
  margin-left: -4.1875rem !important; }

.shift-left-68 {
  margin-left: -4.25rem !important; }

.shift-left-69 {
  margin-left: -4.3125rem !important; }

.shift-left-70 {
  margin-left: -4.375rem !important; }

.shift-left-71 {
  margin-left: -4.4375rem !important; }

.shift-left-72 {
  margin-left: -4.5rem !important; }

.shift-left-73 {
  margin-left: -4.5625rem !important; }

.shift-left-74 {
  margin-left: -4.625rem !important; }

.shift-left-75 {
  margin-left: -4.6875rem !important; }

.shift-left-76 {
  margin-left: -4.75rem !important; }

.shift-left-77 {
  margin-left: -4.8125rem !important; }

.shift-left-78 {
  margin-left: -4.875rem !important; }

.shift-left-79 {
  margin-left: -4.9375rem !important; }

.shift-left-80 {
  margin-left: -5rem !important; }

.shift-left-81 {
  margin-left: -5.0625rem !important; }

.shift-left-82 {
  margin-left: -5.125rem !important; }

.shift-left-83 {
  margin-left: -5.1875rem !important; }

.shift-left-84 {
  margin-left: -5.25rem !important; }

.shift-left-85 {
  margin-left: -5.3125rem !important; }

.shift-left-86 {
  margin-left: -5.375rem !important; }

.shift-left-87 {
  margin-left: -5.4375rem !important; }

.shift-left-88 {
  margin-left: -5.5rem !important; }

.shift-left-89 {
  margin-left: -5.5625rem !important; }

.shift-left-90 {
  margin-left: -5.625rem !important; }

.shift-left-91 {
  margin-left: -5.6875rem !important; }

.shift-left-92 {
  margin-left: -5.75rem !important; }

.shift-left-93 {
  margin-left: -5.8125rem !important; }

.shift-left-94 {
  margin-left: -5.875rem !important; }

.shift-left-95 {
  margin-left: -5.9375rem !important; }

.shift-left-96 {
  margin-left: -6rem !important; }

.shift-left-97 {
  margin-left: -6.0625rem !important; }

.shift-left-98 {
  margin-left: -6.125rem !important; }

.shift-left-99 {
  margin-left: -6.1875rem !important; }

.shift-left-100 {
  margin-left: -6.25rem !important; }

.shift-left-101 {
  margin-left: -6.3125rem !important; }

.shift-left-102 {
  margin-left: -6.375rem !important; }

.shift-left-103 {
  margin-left: -6.4375rem !important; }

.shift-left-104 {
  margin-left: -6.5rem !important; }

.shift-left-105 {
  margin-left: -6.5625rem !important; }

.shift-left-106 {
  margin-left: -6.625rem !important; }

.shift-left-107 {
  margin-left: -6.6875rem !important; }

.shift-left-108 {
  margin-left: -6.75rem !important; }

.shift-left-109 {
  margin-left: -6.8125rem !important; }

.shift-left-110 {
  margin-left: -6.875rem !important; }

.shift-left-111 {
  margin-left: -6.9375rem !important; }

.shift-left-112 {
  margin-left: -7rem !important; }

.shift-left-113 {
  margin-left: -7.0625rem !important; }

.shift-left-114 {
  margin-left: -7.125rem !important; }

.shift-left-115 {
  margin-left: -7.1875rem !important; }

.shift-left-116 {
  margin-left: -7.25rem !important; }

.shift-left-117 {
  margin-left: -7.3125rem !important; }

.shift-left-118 {
  margin-left: -7.375rem !important; }

.shift-left-119 {
  margin-left: -7.4375rem !important; }

.shift-left-120 {
  margin-left: -7.5rem !important; }

.shift-left-121 {
  margin-left: -7.5625rem !important; }

.shift-left-122 {
  margin-left: -7.625rem !important; }

.shift-left-123 {
  margin-left: -7.6875rem !important; }

.shift-left-124 {
  margin-left: -7.75rem !important; }

.shift-left-125 {
  margin-left: -7.8125rem !important; }

.shift-left-126 {
  margin-left: -7.875rem !important; }

.shift-left-127 {
  margin-left: -7.9375rem !important; }

.shift-left-128 {
  margin-left: -8rem !important; }

.shift-left-129 {
  margin-left: -8.0625rem !important; }

.shift-left-130 {
  margin-left: -8.125rem !important; }

.shift-left-131 {
  margin-left: -8.1875rem !important; }

.shift-left-132 {
  margin-left: -8.25rem !important; }

.shift-left-133 {
  margin-left: -8.3125rem !important; }

.shift-left-134 {
  margin-left: -8.375rem !important; }

.shift-left-135 {
  margin-left: -8.4375rem !important; }

.shift-left-136 {
  margin-left: -8.5rem !important; }

.shift-left-137 {
  margin-left: -8.5625rem !important; }

.shift-left-138 {
  margin-left: -8.625rem !important; }

.shift-left-139 {
  margin-left: -8.6875rem !important; }

.shift-left-140 {
  margin-left: -8.75rem !important; }

.shift-left-141 {
  margin-left: -8.8125rem !important; }

.shift-left-142 {
  margin-left: -8.875rem !important; }

.shift-left-143 {
  margin-left: -8.9375rem !important; }

.shift-left-144 {
  margin-left: -9rem !important; }

.shift-left-145 {
  margin-left: -9.0625rem !important; }

.shift-left-146 {
  margin-left: -9.125rem !important; }

.shift-left-147 {
  margin-left: -9.1875rem !important; }

.shift-left-148 {
  margin-left: -9.25rem !important; }

.shift-left-149 {
  margin-left: -9.3125rem !important; }

.shift-left-150 {
  margin-left: -9.375rem !important; }

.shift-up-0 {
  margin-top: 0 !important; }

.shift-up-1 {
  margin-top: -0.0625rem !important; }

.shift-up-2 {
  margin-top: -0.125rem !important; }

.shift-up-3 {
  margin-top: -0.1875rem !important; }

.shift-up-4 {
  margin-top: -0.25rem !important; }

.shift-up-5 {
  margin-top: -0.3125rem !important; }

.shift-up-6 {
  margin-top: -0.375rem !important; }

.shift-up-7 {
  margin-top: -0.4375rem !important; }

.shift-up-8 {
  margin-top: -0.5rem !important; }

.shift-up-9 {
  margin-top: -0.5625rem !important; }

.shift-up-10 {
  margin-top: -0.625rem !important; }

.shift-up-11 {
  margin-top: -0.6875rem !important; }

.shift-up-12 {
  margin-top: -0.75rem !important; }

.shift-up-13 {
  margin-top: -0.8125rem !important; }

.shift-up-14 {
  margin-top: -0.875rem !important; }

.shift-up-15 {
  margin-top: -0.9375rem !important; }

.shift-up-16 {
  margin-top: -1rem !important; }

.shift-up-17 {
  margin-top: -1.0625rem !important; }

.shift-up-18 {
  margin-top: -1.125rem !important; }

.shift-up-19 {
  margin-top: -1.1875rem !important; }

.shift-up-20 {
  margin-top: -1.25rem !important; }

.shift-up-21 {
  margin-top: -1.3125rem !important; }

.shift-up-22 {
  margin-top: -1.375rem !important; }

.shift-up-23 {
  margin-top: -1.4375rem !important; }

.shift-up-24 {
  margin-top: -1.5rem !important; }

.shift-up-25 {
  margin-top: -1.5625rem !important; }

.shift-up-26 {
  margin-top: -1.625rem !important; }

.shift-up-27 {
  margin-top: -1.6875rem !important; }

.shift-up-28 {
  margin-top: -1.75rem !important; }

.shift-up-29 {
  margin-top: -1.8125rem !important; }

.shift-up-30 {
  margin-top: -1.875rem !important; }

.shift-up-31 {
  margin-top: -1.9375rem !important; }

.shift-up-32 {
  margin-top: -2rem !important; }

.shift-up-33 {
  margin-top: -2.0625rem !important; }

.shift-up-34 {
  margin-top: -2.125rem !important; }

.shift-up-35 {
  margin-top: -2.1875rem !important; }

.shift-up-36 {
  margin-top: -2.25rem !important; }

.shift-up-37 {
  margin-top: -2.3125rem !important; }

.shift-up-38 {
  margin-top: -2.375rem !important; }

.shift-up-39 {
  margin-top: -2.4375rem !important; }

.shift-up-40 {
  margin-top: -2.5rem !important; }

.shift-up-41 {
  margin-top: -2.5625rem !important; }

.shift-up-42 {
  margin-top: -2.625rem !important; }

.shift-up-43 {
  margin-top: -2.6875rem !important; }

.shift-up-44 {
  margin-top: -2.75rem !important; }

.shift-up-45 {
  margin-top: -2.8125rem !important; }

.shift-up-46 {
  margin-top: -2.875rem !important; }

.shift-up-47 {
  margin-top: -2.9375rem !important; }

.shift-up-48 {
  margin-top: -3rem !important; }

.shift-up-49 {
  margin-top: -3.0625rem !important; }

.shift-up-50 {
  margin-top: -3.125rem !important; }

.shift-up-51 {
  margin-top: -3.1875rem !important; }

.shift-up-52 {
  margin-top: -3.25rem !important; }

.shift-up-53 {
  margin-top: -3.3125rem !important; }

.shift-up-54 {
  margin-top: -3.375rem !important; }

.shift-up-55 {
  margin-top: -3.4375rem !important; }

.shift-up-56 {
  margin-top: -3.5rem !important; }

.shift-up-57 {
  margin-top: -3.5625rem !important; }

.shift-up-58 {
  margin-top: -3.625rem !important; }

.shift-up-59 {
  margin-top: -3.6875rem !important; }

.shift-up-60 {
  margin-top: -3.75rem !important; }

.shift-up-61 {
  margin-top: -3.8125rem !important; }

.shift-up-62 {
  margin-top: -3.875rem !important; }

.shift-up-63 {
  margin-top: -3.9375rem !important; }

.shift-up-64 {
  margin-top: -4rem !important; }

.shift-up-65 {
  margin-top: -4.0625rem !important; }

.shift-up-66 {
  margin-top: -4.125rem !important; }

.shift-up-67 {
  margin-top: -4.1875rem !important; }

.shift-up-68 {
  margin-top: -4.25rem !important; }

.shift-up-69 {
  margin-top: -4.3125rem !important; }

.shift-up-70 {
  margin-top: -4.375rem !important; }

.shift-up-71 {
  margin-top: -4.4375rem !important; }

.shift-up-72 {
  margin-top: -4.5rem !important; }

.shift-up-73 {
  margin-top: -4.5625rem !important; }

.shift-up-74 {
  margin-top: -4.625rem !important; }

.shift-up-75 {
  margin-top: -4.6875rem !important; }

.shift-up-76 {
  margin-top: -4.75rem !important; }

.shift-up-77 {
  margin-top: -4.8125rem !important; }

.shift-up-78 {
  margin-top: -4.875rem !important; }

.shift-up-79 {
  margin-top: -4.9375rem !important; }

.shift-up-80 {
  margin-top: -5rem !important; }

.shift-up-81 {
  margin-top: -5.0625rem !important; }

.shift-up-82 {
  margin-top: -5.125rem !important; }

.shift-up-83 {
  margin-top: -5.1875rem !important; }

.shift-up-84 {
  margin-top: -5.25rem !important; }

.shift-up-85 {
  margin-top: -5.3125rem !important; }

.shift-up-86 {
  margin-top: -5.375rem !important; }

.shift-up-87 {
  margin-top: -5.4375rem !important; }

.shift-up-88 {
  margin-top: -5.5rem !important; }

.shift-up-89 {
  margin-top: -5.5625rem !important; }

.shift-up-90 {
  margin-top: -5.625rem !important; }

.shift-up-91 {
  margin-top: -5.6875rem !important; }

.shift-up-92 {
  margin-top: -5.75rem !important; }

.shift-up-93 {
  margin-top: -5.8125rem !important; }

.shift-up-94 {
  margin-top: -5.875rem !important; }

.shift-up-95 {
  margin-top: -5.9375rem !important; }

.shift-up-96 {
  margin-top: -6rem !important; }

.shift-up-97 {
  margin-top: -6.0625rem !important; }

.shift-up-98 {
  margin-top: -6.125rem !important; }

.shift-up-99 {
  margin-top: -6.1875rem !important; }

.shift-up-100 {
  margin-top: -6.25rem !important; }

.shift-up-101 {
  margin-top: -6.3125rem !important; }

.shift-up-102 {
  margin-top: -6.375rem !important; }

.shift-up-103 {
  margin-top: -6.4375rem !important; }

.shift-up-104 {
  margin-top: -6.5rem !important; }

.shift-up-105 {
  margin-top: -6.5625rem !important; }

.shift-up-106 {
  margin-top: -6.625rem !important; }

.shift-up-107 {
  margin-top: -6.6875rem !important; }

.shift-up-108 {
  margin-top: -6.75rem !important; }

.shift-up-109 {
  margin-top: -6.8125rem !important; }

.shift-up-110 {
  margin-top: -6.875rem !important; }

.shift-up-111 {
  margin-top: -6.9375rem !important; }

.shift-up-112 {
  margin-top: -7rem !important; }

.shift-up-113 {
  margin-top: -7.0625rem !important; }

.shift-up-114 {
  margin-top: -7.125rem !important; }

.shift-up-115 {
  margin-top: -7.1875rem !important; }

.shift-up-116 {
  margin-top: -7.25rem !important; }

.shift-up-117 {
  margin-top: -7.3125rem !important; }

.shift-up-118 {
  margin-top: -7.375rem !important; }

.shift-up-119 {
  margin-top: -7.4375rem !important; }

.shift-up-120 {
  margin-top: -7.5rem !important; }

.shift-up-121 {
  margin-top: -7.5625rem !important; }

.shift-up-122 {
  margin-top: -7.625rem !important; }

.shift-up-123 {
  margin-top: -7.6875rem !important; }

.shift-up-124 {
  margin-top: -7.75rem !important; }

.shift-up-125 {
  margin-top: -7.8125rem !important; }

.shift-up-126 {
  margin-top: -7.875rem !important; }

.shift-up-127 {
  margin-top: -7.9375rem !important; }

.shift-up-128 {
  margin-top: -8rem !important; }

.shift-up-129 {
  margin-top: -8.0625rem !important; }

.shift-up-130 {
  margin-top: -8.125rem !important; }

.shift-up-131 {
  margin-top: -8.1875rem !important; }

.shift-up-132 {
  margin-top: -8.25rem !important; }

.shift-up-133 {
  margin-top: -8.3125rem !important; }

.shift-up-134 {
  margin-top: -8.375rem !important; }

.shift-up-135 {
  margin-top: -8.4375rem !important; }

.shift-up-136 {
  margin-top: -8.5rem !important; }

.shift-up-137 {
  margin-top: -8.5625rem !important; }

.shift-up-138 {
  margin-top: -8.625rem !important; }

.shift-up-139 {
  margin-top: -8.6875rem !important; }

.shift-up-140 {
  margin-top: -8.75rem !important; }

.shift-up-141 {
  margin-top: -8.8125rem !important; }

.shift-up-142 {
  margin-top: -8.875rem !important; }

.shift-up-143 {
  margin-top: -8.9375rem !important; }

.shift-up-144 {
  margin-top: -9rem !important; }

.shift-up-145 {
  margin-top: -9.0625rem !important; }

.shift-up-146 {
  margin-top: -9.125rem !important; }

.shift-up-147 {
  margin-top: -9.1875rem !important; }

.shift-up-148 {
  margin-top: -9.25rem !important; }

.shift-up-149 {
  margin-top: -9.3125rem !important; }

.shift-up-150 {
  margin-top: -9.375rem !important; }

.shift-down-0 {
  margin-bottom: 0 !important; }

.shift-down-1 {
  margin-bottom: -0.0625rem !important; }

.shift-down-2 {
  margin-bottom: -0.125rem !important; }

.shift-down-3 {
  margin-bottom: -0.1875rem !important; }

.shift-down-4 {
  margin-bottom: -0.25rem !important; }

.shift-down-5 {
  margin-bottom: -0.3125rem !important; }

.shift-down-6 {
  margin-bottom: -0.375rem !important; }

.shift-down-7 {
  margin-bottom: -0.4375rem !important; }

.shift-down-8 {
  margin-bottom: -0.5rem !important; }

.shift-down-9 {
  margin-bottom: -0.5625rem !important; }

.shift-down-10 {
  margin-bottom: -0.625rem !important; }

.shift-down-11 {
  margin-bottom: -0.6875rem !important; }

.shift-down-12 {
  margin-bottom: -0.75rem !important; }

.shift-down-13 {
  margin-bottom: -0.8125rem !important; }

.shift-down-14 {
  margin-bottom: -0.875rem !important; }

.shift-down-15 {
  margin-bottom: -0.9375rem !important; }

.shift-down-16 {
  margin-bottom: -1rem !important; }

.shift-down-17 {
  margin-bottom: -1.0625rem !important; }

.shift-down-18 {
  margin-bottom: -1.125rem !important; }

.shift-down-19 {
  margin-bottom: -1.1875rem !important; }

.shift-down-20 {
  margin-bottom: -1.25rem !important; }

.shift-down-21 {
  margin-bottom: -1.3125rem !important; }

.shift-down-22 {
  margin-bottom: -1.375rem !important; }

.shift-down-23 {
  margin-bottom: -1.4375rem !important; }

.shift-down-24 {
  margin-bottom: -1.5rem !important; }

.shift-down-25 {
  margin-bottom: -1.5625rem !important; }

.shift-down-26 {
  margin-bottom: -1.625rem !important; }

.shift-down-27 {
  margin-bottom: -1.6875rem !important; }

.shift-down-28 {
  margin-bottom: -1.75rem !important; }

.shift-down-29 {
  margin-bottom: -1.8125rem !important; }

.shift-down-30 {
  margin-bottom: -1.875rem !important; }

.shift-down-31 {
  margin-bottom: -1.9375rem !important; }

.shift-down-32 {
  margin-bottom: -2rem !important; }

.shift-down-33 {
  margin-bottom: -2.0625rem !important; }

.shift-down-34 {
  margin-bottom: -2.125rem !important; }

.shift-down-35 {
  margin-bottom: -2.1875rem !important; }

.shift-down-36 {
  margin-bottom: -2.25rem !important; }

.shift-down-37 {
  margin-bottom: -2.3125rem !important; }

.shift-down-38 {
  margin-bottom: -2.375rem !important; }

.shift-down-39 {
  margin-bottom: -2.4375rem !important; }

.shift-down-40 {
  margin-bottom: -2.5rem !important; }

.shift-down-41 {
  margin-bottom: -2.5625rem !important; }

.shift-down-42 {
  margin-bottom: -2.625rem !important; }

.shift-down-43 {
  margin-bottom: -2.6875rem !important; }

.shift-down-44 {
  margin-bottom: -2.75rem !important; }

.shift-down-45 {
  margin-bottom: -2.8125rem !important; }

.shift-down-46 {
  margin-bottom: -2.875rem !important; }

.shift-down-47 {
  margin-bottom: -2.9375rem !important; }

.shift-down-48 {
  margin-bottom: -3rem !important; }

.shift-down-49 {
  margin-bottom: -3.0625rem !important; }

.shift-down-50 {
  margin-bottom: -3.125rem !important; }

.shift-down-51 {
  margin-bottom: -3.1875rem !important; }

.shift-down-52 {
  margin-bottom: -3.25rem !important; }

.shift-down-53 {
  margin-bottom: -3.3125rem !important; }

.shift-down-54 {
  margin-bottom: -3.375rem !important; }

.shift-down-55 {
  margin-bottom: -3.4375rem !important; }

.shift-down-56 {
  margin-bottom: -3.5rem !important; }

.shift-down-57 {
  margin-bottom: -3.5625rem !important; }

.shift-down-58 {
  margin-bottom: -3.625rem !important; }

.shift-down-59 {
  margin-bottom: -3.6875rem !important; }

.shift-down-60 {
  margin-bottom: -3.75rem !important; }

.shift-down-61 {
  margin-bottom: -3.8125rem !important; }

.shift-down-62 {
  margin-bottom: -3.875rem !important; }

.shift-down-63 {
  margin-bottom: -3.9375rem !important; }

.shift-down-64 {
  margin-bottom: -4rem !important; }

.shift-down-65 {
  margin-bottom: -4.0625rem !important; }

.shift-down-66 {
  margin-bottom: -4.125rem !important; }

.shift-down-67 {
  margin-bottom: -4.1875rem !important; }

.shift-down-68 {
  margin-bottom: -4.25rem !important; }

.shift-down-69 {
  margin-bottom: -4.3125rem !important; }

.shift-down-70 {
  margin-bottom: -4.375rem !important; }

.shift-down-71 {
  margin-bottom: -4.4375rem !important; }

.shift-down-72 {
  margin-bottom: -4.5rem !important; }

.shift-down-73 {
  margin-bottom: -4.5625rem !important; }

.shift-down-74 {
  margin-bottom: -4.625rem !important; }

.shift-down-75 {
  margin-bottom: -4.6875rem !important; }

.shift-down-76 {
  margin-bottom: -4.75rem !important; }

.shift-down-77 {
  margin-bottom: -4.8125rem !important; }

.shift-down-78 {
  margin-bottom: -4.875rem !important; }

.shift-down-79 {
  margin-bottom: -4.9375rem !important; }

.shift-down-80 {
  margin-bottom: -5rem !important; }

.shift-down-81 {
  margin-bottom: -5.0625rem !important; }

.shift-down-82 {
  margin-bottom: -5.125rem !important; }

.shift-down-83 {
  margin-bottom: -5.1875rem !important; }

.shift-down-84 {
  margin-bottom: -5.25rem !important; }

.shift-down-85 {
  margin-bottom: -5.3125rem !important; }

.shift-down-86 {
  margin-bottom: -5.375rem !important; }

.shift-down-87 {
  margin-bottom: -5.4375rem !important; }

.shift-down-88 {
  margin-bottom: -5.5rem !important; }

.shift-down-89 {
  margin-bottom: -5.5625rem !important; }

.shift-down-90 {
  margin-bottom: -5.625rem !important; }

.shift-down-91 {
  margin-bottom: -5.6875rem !important; }

.shift-down-92 {
  margin-bottom: -5.75rem !important; }

.shift-down-93 {
  margin-bottom: -5.8125rem !important; }

.shift-down-94 {
  margin-bottom: -5.875rem !important; }

.shift-down-95 {
  margin-bottom: -5.9375rem !important; }

.shift-down-96 {
  margin-bottom: -6rem !important; }

.shift-down-97 {
  margin-bottom: -6.0625rem !important; }

.shift-down-98 {
  margin-bottom: -6.125rem !important; }

.shift-down-99 {
  margin-bottom: -6.1875rem !important; }

.shift-down-100 {
  margin-bottom: -6.25rem !important; }

.shift-down-101 {
  margin-bottom: -6.3125rem !important; }

.shift-down-102 {
  margin-bottom: -6.375rem !important; }

.shift-down-103 {
  margin-bottom: -6.4375rem !important; }

.shift-down-104 {
  margin-bottom: -6.5rem !important; }

.shift-down-105 {
  margin-bottom: -6.5625rem !important; }

.shift-down-106 {
  margin-bottom: -6.625rem !important; }

.shift-down-107 {
  margin-bottom: -6.6875rem !important; }

.shift-down-108 {
  margin-bottom: -6.75rem !important; }

.shift-down-109 {
  margin-bottom: -6.8125rem !important; }

.shift-down-110 {
  margin-bottom: -6.875rem !important; }

.shift-down-111 {
  margin-bottom: -6.9375rem !important; }

.shift-down-112 {
  margin-bottom: -7rem !important; }

.shift-down-113 {
  margin-bottom: -7.0625rem !important; }

.shift-down-114 {
  margin-bottom: -7.125rem !important; }

.shift-down-115 {
  margin-bottom: -7.1875rem !important; }

.shift-down-116 {
  margin-bottom: -7.25rem !important; }

.shift-down-117 {
  margin-bottom: -7.3125rem !important; }

.shift-down-118 {
  margin-bottom: -7.375rem !important; }

.shift-down-119 {
  margin-bottom: -7.4375rem !important; }

.shift-down-120 {
  margin-bottom: -7.5rem !important; }

.shift-down-121 {
  margin-bottom: -7.5625rem !important; }

.shift-down-122 {
  margin-bottom: -7.625rem !important; }

.shift-down-123 {
  margin-bottom: -7.6875rem !important; }

.shift-down-124 {
  margin-bottom: -7.75rem !important; }

.shift-down-125 {
  margin-bottom: -7.8125rem !important; }

.shift-down-126 {
  margin-bottom: -7.875rem !important; }

.shift-down-127 {
  margin-bottom: -7.9375rem !important; }

.shift-down-128 {
  margin-bottom: -8rem !important; }

.shift-down-129 {
  margin-bottom: -8.0625rem !important; }

.shift-down-130 {
  margin-bottom: -8.125rem !important; }

.shift-down-131 {
  margin-bottom: -8.1875rem !important; }

.shift-down-132 {
  margin-bottom: -8.25rem !important; }

.shift-down-133 {
  margin-bottom: -8.3125rem !important; }

.shift-down-134 {
  margin-bottom: -8.375rem !important; }

.shift-down-135 {
  margin-bottom: -8.4375rem !important; }

.shift-down-136 {
  margin-bottom: -8.5rem !important; }

.shift-down-137 {
  margin-bottom: -8.5625rem !important; }

.shift-down-138 {
  margin-bottom: -8.625rem !important; }

.shift-down-139 {
  margin-bottom: -8.6875rem !important; }

.shift-down-140 {
  margin-bottom: -8.75rem !important; }

.shift-down-141 {
  margin-bottom: -8.8125rem !important; }

.shift-down-142 {
  margin-bottom: -8.875rem !important; }

.shift-down-143 {
  margin-bottom: -8.9375rem !important; }

.shift-down-144 {
  margin-bottom: -9rem !important; }

.shift-down-145 {
  margin-bottom: -9.0625rem !important; }

.shift-down-146 {
  margin-bottom: -9.125rem !important; }

.shift-down-147 {
  margin-bottom: -9.1875rem !important; }

.shift-down-148 {
  margin-bottom: -9.25rem !important; }

.shift-down-149 {
  margin-bottom: -9.3125rem !important; }

.shift-down-150 {
  margin-bottom: -9.375rem !important; }

.shift-up-phone-1 {
  margin-top: -0.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-1 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-1 {
    margin-top: inherit; } }

.shift-up-phone-2 {
  margin-top: -0.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-2 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-2 {
    margin-top: inherit; } }

.shift-up-phone-3 {
  margin-top: -0.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-3 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-3 {
    margin-top: inherit; } }

.shift-up-phone-4 {
  margin-top: -0.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-4 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-4 {
    margin-top: inherit; } }

.shift-up-phone-5 {
  margin-top: -0.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-5 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-5 {
    margin-top: inherit; } }

.shift-up-phone-6 {
  margin-top: -0.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-6 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-6 {
    margin-top: inherit; } }

.shift-up-phone-7 {
  margin-top: -0.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-7 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-7 {
    margin-top: inherit; } }

.shift-up-phone-8 {
  margin-top: -0.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-8 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-8 {
    margin-top: inherit; } }

.shift-up-phone-9 {
  margin-top: -0.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-9 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-9 {
    margin-top: inherit; } }

.shift-up-phone-10 {
  margin-top: -0.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-10 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-10 {
    margin-top: inherit; } }

.shift-up-phone-11 {
  margin-top: -0.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-11 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-11 {
    margin-top: inherit; } }

.shift-up-phone-12 {
  margin-top: -0.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-12 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-12 {
    margin-top: inherit; } }

.shift-up-phone-13 {
  margin-top: -0.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-13 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-13 {
    margin-top: inherit; } }

.shift-up-phone-14 {
  margin-top: -0.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-14 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-14 {
    margin-top: inherit; } }

.shift-up-phone-15 {
  margin-top: -0.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-15 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-15 {
    margin-top: inherit; } }

.shift-up-phone-16 {
  margin-top: -1rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-16 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-16 {
    margin-top: inherit; } }

.shift-up-phone-17 {
  margin-top: -1.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-17 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-17 {
    margin-top: inherit; } }

.shift-up-phone-18 {
  margin-top: -1.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-18 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-18 {
    margin-top: inherit; } }

.shift-up-phone-19 {
  margin-top: -1.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-19 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-19 {
    margin-top: inherit; } }

.shift-up-phone-20 {
  margin-top: -1.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-20 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-20 {
    margin-top: inherit; } }

.shift-up-phone-21 {
  margin-top: -1.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-21 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-21 {
    margin-top: inherit; } }

.shift-up-phone-22 {
  margin-top: -1.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-22 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-22 {
    margin-top: inherit; } }

.shift-up-phone-23 {
  margin-top: -1.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-23 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-23 {
    margin-top: inherit; } }

.shift-up-phone-24 {
  margin-top: -1.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-24 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-24 {
    margin-top: inherit; } }

.shift-up-phone-25 {
  margin-top: -1.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-25 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-25 {
    margin-top: inherit; } }

.shift-up-phone-26 {
  margin-top: -1.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-26 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-26 {
    margin-top: inherit; } }

.shift-up-phone-27 {
  margin-top: -1.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-27 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-27 {
    margin-top: inherit; } }

.shift-up-phone-28 {
  margin-top: -1.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-28 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-28 {
    margin-top: inherit; } }

.shift-up-phone-29 {
  margin-top: -1.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-29 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-29 {
    margin-top: inherit; } }

.shift-up-phone-30 {
  margin-top: -1.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-30 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-30 {
    margin-top: inherit; } }

.shift-up-phone-31 {
  margin-top: -1.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-31 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-31 {
    margin-top: inherit; } }

.shift-up-phone-32 {
  margin-top: -2rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-32 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-32 {
    margin-top: inherit; } }

.shift-up-phone-33 {
  margin-top: -2.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-33 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-33 {
    margin-top: inherit; } }

.shift-up-phone-34 {
  margin-top: -2.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-34 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-34 {
    margin-top: inherit; } }

.shift-up-phone-35 {
  margin-top: -2.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-35 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-35 {
    margin-top: inherit; } }

.shift-up-phone-36 {
  margin-top: -2.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-36 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-36 {
    margin-top: inherit; } }

.shift-up-phone-37 {
  margin-top: -2.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-37 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-37 {
    margin-top: inherit; } }

.shift-up-phone-38 {
  margin-top: -2.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-38 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-38 {
    margin-top: inherit; } }

.shift-up-phone-39 {
  margin-top: -2.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-39 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-39 {
    margin-top: inherit; } }

.shift-up-phone-40 {
  margin-top: -2.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-40 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-40 {
    margin-top: inherit; } }

.shift-up-phone-41 {
  margin-top: -2.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-41 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-41 {
    margin-top: inherit; } }

.shift-up-phone-42 {
  margin-top: -2.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-42 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-42 {
    margin-top: inherit; } }

.shift-up-phone-43 {
  margin-top: -2.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-43 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-43 {
    margin-top: inherit; } }

.shift-up-phone-44 {
  margin-top: -2.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-44 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-44 {
    margin-top: inherit; } }

.shift-up-phone-45 {
  margin-top: -2.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-45 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-45 {
    margin-top: inherit; } }

.shift-up-phone-46 {
  margin-top: -2.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-46 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-46 {
    margin-top: inherit; } }

.shift-up-phone-47 {
  margin-top: -2.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-47 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-47 {
    margin-top: inherit; } }

.shift-up-phone-48 {
  margin-top: -3rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-48 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-48 {
    margin-top: inherit; } }

.shift-up-phone-49 {
  margin-top: -3.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-49 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-49 {
    margin-top: inherit; } }

.shift-up-phone-50 {
  margin-top: -3.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-50 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-50 {
    margin-top: inherit; } }

.shift-up-phone-51 {
  margin-top: -3.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-51 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-51 {
    margin-top: inherit; } }

.shift-up-phone-52 {
  margin-top: -3.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-52 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-52 {
    margin-top: inherit; } }

.shift-up-phone-53 {
  margin-top: -3.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-53 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-53 {
    margin-top: inherit; } }

.shift-up-phone-54 {
  margin-top: -3.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-54 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-54 {
    margin-top: inherit; } }

.shift-up-phone-55 {
  margin-top: -3.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-55 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-55 {
    margin-top: inherit; } }

.shift-up-phone-56 {
  margin-top: -3.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-56 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-56 {
    margin-top: inherit; } }

.shift-up-phone-57 {
  margin-top: -3.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-57 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-57 {
    margin-top: inherit; } }

.shift-up-phone-58 {
  margin-top: -3.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-58 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-58 {
    margin-top: inherit; } }

.shift-up-phone-59 {
  margin-top: -3.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-59 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-59 {
    margin-top: inherit; } }

.shift-up-phone-60 {
  margin-top: -3.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-60 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-60 {
    margin-top: inherit; } }

.shift-up-phone-61 {
  margin-top: -3.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-61 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-61 {
    margin-top: inherit; } }

.shift-up-phone-62 {
  margin-top: -3.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-62 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-62 {
    margin-top: inherit; } }

.shift-up-phone-63 {
  margin-top: -3.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-63 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-63 {
    margin-top: inherit; } }

.shift-up-phone-64 {
  margin-top: -4rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-64 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-64 {
    margin-top: inherit; } }

.shift-up-phone-65 {
  margin-top: -4.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-65 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-65 {
    margin-top: inherit; } }

.shift-up-phone-66 {
  margin-top: -4.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-66 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-66 {
    margin-top: inherit; } }

.shift-up-phone-67 {
  margin-top: -4.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-67 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-67 {
    margin-top: inherit; } }

.shift-up-phone-68 {
  margin-top: -4.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-68 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-68 {
    margin-top: inherit; } }

.shift-up-phone-69 {
  margin-top: -4.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-69 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-69 {
    margin-top: inherit; } }

.shift-up-phone-70 {
  margin-top: -4.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-70 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-70 {
    margin-top: inherit; } }

.shift-up-phone-71 {
  margin-top: -4.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-71 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-71 {
    margin-top: inherit; } }

.shift-up-phone-72 {
  margin-top: -4.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-72 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-72 {
    margin-top: inherit; } }

.shift-up-phone-73 {
  margin-top: -4.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-73 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-73 {
    margin-top: inherit; } }

.shift-up-phone-74 {
  margin-top: -4.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-74 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-74 {
    margin-top: inherit; } }

.shift-up-phone-75 {
  margin-top: -4.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-75 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-75 {
    margin-top: inherit; } }

.shift-up-phone-76 {
  margin-top: -4.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-76 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-76 {
    margin-top: inherit; } }

.shift-up-phone-77 {
  margin-top: -4.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-77 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-77 {
    margin-top: inherit; } }

.shift-up-phone-78 {
  margin-top: -4.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-78 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-78 {
    margin-top: inherit; } }

.shift-up-phone-79 {
  margin-top: -4.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-79 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-79 {
    margin-top: inherit; } }

.shift-up-phone-80 {
  margin-top: -5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-80 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-80 {
    margin-top: inherit; } }

.shift-up-phone-81 {
  margin-top: -5.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-81 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-81 {
    margin-top: inherit; } }

.shift-up-phone-82 {
  margin-top: -5.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-82 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-82 {
    margin-top: inherit; } }

.shift-up-phone-83 {
  margin-top: -5.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-83 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-83 {
    margin-top: inherit; } }

.shift-up-phone-84 {
  margin-top: -5.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-84 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-84 {
    margin-top: inherit; } }

.shift-up-phone-85 {
  margin-top: -5.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-85 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-85 {
    margin-top: inherit; } }

.shift-up-phone-86 {
  margin-top: -5.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-86 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-86 {
    margin-top: inherit; } }

.shift-up-phone-87 {
  margin-top: -5.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-87 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-87 {
    margin-top: inherit; } }

.shift-up-phone-88 {
  margin-top: -5.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-88 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-88 {
    margin-top: inherit; } }

.shift-up-phone-89 {
  margin-top: -5.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-89 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-89 {
    margin-top: inherit; } }

.shift-up-phone-90 {
  margin-top: -5.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-90 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-90 {
    margin-top: inherit; } }

.shift-up-phone-91 {
  margin-top: -5.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-91 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-91 {
    margin-top: inherit; } }

.shift-up-phone-92 {
  margin-top: -5.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-92 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-92 {
    margin-top: inherit; } }

.shift-up-phone-93 {
  margin-top: -5.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-93 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-93 {
    margin-top: inherit; } }

.shift-up-phone-94 {
  margin-top: -5.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-94 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-94 {
    margin-top: inherit; } }

.shift-up-phone-95 {
  margin-top: -5.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-95 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-95 {
    margin-top: inherit; } }

.shift-up-phone-96 {
  margin-top: -6rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-96 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-96 {
    margin-top: inherit; } }

.shift-up-phone-97 {
  margin-top: -6.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-97 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-97 {
    margin-top: inherit; } }

.shift-up-phone-98 {
  margin-top: -6.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-98 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-98 {
    margin-top: inherit; } }

.shift-up-phone-99 {
  margin-top: -6.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-99 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-99 {
    margin-top: inherit; } }

.shift-up-phone-100 {
  margin-top: -6.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-100 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-100 {
    margin-top: inherit; } }

.shift-up-phone-101 {
  margin-top: -6.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-101 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-101 {
    margin-top: inherit; } }

.shift-up-phone-102 {
  margin-top: -6.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-102 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-102 {
    margin-top: inherit; } }

.shift-up-phone-103 {
  margin-top: -6.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-103 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-103 {
    margin-top: inherit; } }

.shift-up-phone-104 {
  margin-top: -6.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-104 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-104 {
    margin-top: inherit; } }

.shift-up-phone-105 {
  margin-top: -6.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-105 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-105 {
    margin-top: inherit; } }

.shift-up-phone-106 {
  margin-top: -6.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-106 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-106 {
    margin-top: inherit; } }

.shift-up-phone-107 {
  margin-top: -6.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-107 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-107 {
    margin-top: inherit; } }

.shift-up-phone-108 {
  margin-top: -6.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-108 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-108 {
    margin-top: inherit; } }

.shift-up-phone-109 {
  margin-top: -6.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-109 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-109 {
    margin-top: inherit; } }

.shift-up-phone-110 {
  margin-top: -6.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-110 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-110 {
    margin-top: inherit; } }

.shift-up-phone-111 {
  margin-top: -6.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-111 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-111 {
    margin-top: inherit; } }

.shift-up-phone-112 {
  margin-top: -7rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-112 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-112 {
    margin-top: inherit; } }

.shift-up-phone-113 {
  margin-top: -7.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-113 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-113 {
    margin-top: inherit; } }

.shift-up-phone-114 {
  margin-top: -7.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-114 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-114 {
    margin-top: inherit; } }

.shift-up-phone-115 {
  margin-top: -7.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-115 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-115 {
    margin-top: inherit; } }

.shift-up-phone-116 {
  margin-top: -7.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-116 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-116 {
    margin-top: inherit; } }

.shift-up-phone-117 {
  margin-top: -7.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-117 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-117 {
    margin-top: inherit; } }

.shift-up-phone-118 {
  margin-top: -7.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-118 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-118 {
    margin-top: inherit; } }

.shift-up-phone-119 {
  margin-top: -7.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-119 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-119 {
    margin-top: inherit; } }

.shift-up-phone-120 {
  margin-top: -7.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-120 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-120 {
    margin-top: inherit; } }

.shift-up-phone-121 {
  margin-top: -7.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-121 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-121 {
    margin-top: inherit; } }

.shift-up-phone-122 {
  margin-top: -7.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-122 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-122 {
    margin-top: inherit; } }

.shift-up-phone-123 {
  margin-top: -7.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-123 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-123 {
    margin-top: inherit; } }

.shift-up-phone-124 {
  margin-top: -7.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-124 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-124 {
    margin-top: inherit; } }

.shift-up-phone-125 {
  margin-top: -7.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-125 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-125 {
    margin-top: inherit; } }

.shift-up-phone-126 {
  margin-top: -7.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-126 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-126 {
    margin-top: inherit; } }

.shift-up-phone-127 {
  margin-top: -7.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-127 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-127 {
    margin-top: inherit; } }

.shift-up-phone-128 {
  margin-top: -8rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-128 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-128 {
    margin-top: inherit; } }

.shift-up-phone-129 {
  margin-top: -8.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-129 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-129 {
    margin-top: inherit; } }

.shift-up-phone-130 {
  margin-top: -8.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-130 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-130 {
    margin-top: inherit; } }

.shift-up-phone-131 {
  margin-top: -8.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-131 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-131 {
    margin-top: inherit; } }

.shift-up-phone-132 {
  margin-top: -8.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-132 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-132 {
    margin-top: inherit; } }

.shift-up-phone-133 {
  margin-top: -8.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-133 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-133 {
    margin-top: inherit; } }

.shift-up-phone-134 {
  margin-top: -8.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-134 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-134 {
    margin-top: inherit; } }

.shift-up-phone-135 {
  margin-top: -8.4375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-135 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-135 {
    margin-top: inherit; } }

.shift-up-phone-136 {
  margin-top: -8.5rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-136 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-136 {
    margin-top: inherit; } }

.shift-up-phone-137 {
  margin-top: -8.5625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-137 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-137 {
    margin-top: inherit; } }

.shift-up-phone-138 {
  margin-top: -8.625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-138 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-138 {
    margin-top: inherit; } }

.shift-up-phone-139 {
  margin-top: -8.6875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-139 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-139 {
    margin-top: inherit; } }

.shift-up-phone-140 {
  margin-top: -8.75rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-140 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-140 {
    margin-top: inherit; } }

.shift-up-phone-141 {
  margin-top: -8.8125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-141 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-141 {
    margin-top: inherit; } }

.shift-up-phone-142 {
  margin-top: -8.875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-142 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-142 {
    margin-top: inherit; } }

.shift-up-phone-143 {
  margin-top: -8.9375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-143 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-143 {
    margin-top: inherit; } }

.shift-up-phone-144 {
  margin-top: -9rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-144 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-144 {
    margin-top: inherit; } }

.shift-up-phone-145 {
  margin-top: -9.0625rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-145 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-145 {
    margin-top: inherit; } }

.shift-up-phone-146 {
  margin-top: -9.125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-146 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-146 {
    margin-top: inherit; } }

.shift-up-phone-147 {
  margin-top: -9.1875rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-147 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-147 {
    margin-top: inherit; } }

.shift-up-phone-148 {
  margin-top: -9.25rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-148 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-148 {
    margin-top: inherit; } }

.shift-up-phone-149 {
  margin-top: -9.3125rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-149 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-149 {
    margin-top: inherit; } }

.shift-up-phone-150 {
  margin-top: -9.375rem; }

@media screen and (min-width: 30em) {
  .shift-up-phone-150 {
    margin-top: inherit; } }

@media screen and (min-width: 75em) {
  .shift-up-phone-150 {
    margin-top: inherit; } }

.width-0 {
  width: 0% !important; }

.width-1 {
  width: 1% !important; }

.width-2 {
  width: 2% !important; }

.width-3 {
  width: 3% !important; }

.width-4 {
  width: 4% !important; }

.width-5 {
  width: 5% !important; }

.width-6 {
  width: 6% !important; }

.width-7 {
  width: 7% !important; }

.width-8 {
  width: 8% !important; }

.width-9 {
  width: 9% !important; }

.width-10 {
  width: 10% !important; }

.width-11 {
  width: 11% !important; }

.width-12 {
  width: 12% !important; }

.width-13 {
  width: 13% !important; }

.width-14 {
  width: 14% !important; }

.width-15 {
  width: 15% !important; }

.width-16 {
  width: 16% !important; }

.width-17 {
  width: 17% !important; }

.width-18 {
  width: 18% !important; }

.width-19 {
  width: 19% !important; }

.width-20 {
  width: 20% !important; }

.width-21 {
  width: 21% !important; }

.width-22 {
  width: 22% !important; }

.width-23 {
  width: 23% !important; }

.width-24 {
  width: 24% !important; }

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

.width-26 {
  width: 26% !important; }

.width-27 {
  width: 27% !important; }

.width-28 {
  width: 28% !important; }

.width-29 {
  width: 29% !important; }

.width-30 {
  width: 30% !important; }

.width-31 {
  width: 31% !important; }

.width-32 {
  width: 32% !important; }

.width-33 {
  width: 33% !important; }

.width-34 {
  width: 34% !important; }

.width-35 {
  width: 35% !important; }

.width-36 {
  width: 36% !important; }

.width-37 {
  width: 37% !important; }

.width-38 {
  width: 38% !important; }

.width-39 {
  width: 39% !important; }

.width-40 {
  width: 40% !important; }

.width-41 {
  width: 41% !important; }

.width-42 {
  width: 42% !important; }

.width-43 {
  width: 43% !important; }

.width-44 {
  width: 44% !important; }

.width-45 {
  width: 45% !important; }

.width-46 {
  width: 46% !important; }

.width-47 {
  width: 47% !important; }

.width-48 {
  width: 48% !important; }

.width-49 {
  width: 49% !important; }

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

.width-51 {
  width: 51% !important; }

.width-52 {
  width: 52% !important; }

.width-53 {
  width: 53% !important; }

.width-54 {
  width: 54% !important; }

.width-55 {
  width: 55% !important; }

.width-56 {
  width: 56% !important; }

.width-57 {
  width: 57% !important; }

.width-58 {
  width: 58% !important; }

.width-59 {
  width: 59% !important; }

.width-60 {
  width: 60% !important; }

.width-61 {
  width: 61% !important; }

.width-62 {
  width: 62% !important; }

.width-63 {
  width: 63% !important; }

.width-64 {
  width: 64% !important; }

.width-65 {
  width: 65% !important; }

.width-66 {
  width: 66% !important; }

.width-67 {
  width: 67% !important; }

.width-68 {
  width: 68% !important; }

.width-69 {
  width: 69% !important; }

.width-70 {
  width: 70% !important; }

.width-71 {
  width: 71% !important; }

.width-72 {
  width: 72% !important; }

.width-73 {
  width: 73% !important; }

.width-74 {
  width: 74% !important; }

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

.width-76 {
  width: 76% !important; }

.width-77 {
  width: 77% !important; }

.width-78 {
  width: 78% !important; }

.width-79 {
  width: 79% !important; }

.width-80 {
  width: 80% !important; }

.width-81 {
  width: 81% !important; }

.width-82 {
  width: 82% !important; }

.width-83 {
  width: 83% !important; }

.width-84 {
  width: 84% !important; }

.width-85 {
  width: 85% !important; }

.width-86 {
  width: 86% !important; }

.width-87 {
  width: 87% !important; }

.width-88 {
  width: 88% !important; }

.width-89 {
  width: 89% !important; }

.width-90 {
  width: 90% !important; }

.width-91 {
  width: 91% !important; }

.width-92 {
  width: 92% !important; }

.width-93 {
  width: 93% !important; }

.width-94 {
  width: 94% !important; }

.width-95 {
  width: 95% !important; }

.width-96 {
  width: 96% !important; }

.width-97 {
  width: 97% !important; }

.width-98 {
  width: 98% !important; }

.width-99 {
  width: 99% !important; }

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

.auto-center {
  margin: auto !important; }

.brd-top {
  border-top: solid 1px; }

.brd-bottom {
  border-bottom: solid 1px; }

.lhl-0 {
  line-height: 1em; }

.lhl-1 {
  line-height: 1.1em; }

.lhl-2 {
  line-height: 1.2em; }

.lhl-3 {
  line-height: 1.3em; }

.lhl-4 {
  line-height: 1.4em; }

.lhl-5 {
  line-height: 1.5em; }

.lhl-6 {
  line-height: 1.6em; }

.lhl-7 {
  line-height: 1.7em; }

.lhl-8 {
  line-height: 1.8em; }

.lhl-9 {
  line-height: 1.9em; }

.lhl-10 {
  line-height: 2em; }

em,
.italic {
  font-style: italic !important; }

.uppercase {
  text-transform: uppercase; }

.lowercase {
  text-transform: lowercase; }

.capitalize {
  text-transform: lowercase; }

.smallcaps {
  font-variant: small-caps; }

.normal {
  font-weight: normal !important; }

.bold {
  font-weight: bold !important; }

.bolder {
  font-weight: 900 !important; }

.underline,
.underline-links a {
  text-decoration: underline; }

.no-indent {
  margin-left: 0;
  padding-left: 0; }

img.no-resize {
  max-width: none !important; }

img.no-border {
  border: none !important; }

img.has-border {
  -webkit-box-shadow: 0 0 0.3125rem;
  box-shadow: 0 0 0.3125rem;
  padding: 0.3em !important;
  background-color: !important; }

.rounded {
  -webkit-border-radius: 0.3125rem !important;
  -moz-border-radius: 0.3125rem !important; }

.inline {
  display: inline; }

.committee-topmargin-spacer {
  margin-top: 40px; }
  @media print {
    .committee-topmargin-spacer {
      margin-top: 0; } }

@font-face {
  font-family: NeogroteskEssAlt-Regular;
  src: url("/assets/fonts/neogroteskessalt-regular.woff2") format("woff2"); }

@font-face {
  font-family: NeogroteskEssAlt-Light;
  src: url("/assets/fonts/neogroteskessalt-light.woff2") format("woff2"); }

@font-face {
  font-family: NeogroteskEssAlt-LightIt;
  src: url("/assets/fonts/neogroteskessalt-lightit.woff2") format("woff2"); }

@font-face {
  font-family: Rationell-ExtraBold;
  src: url("/assets/fonts/Rationell-ExtraBold.woff2") format("woff2"); }

@font-face {
  font-family: Rationell-book;
  src: url("/assets/fonts/Rationell-Book.woff2") format("woff2"); }

p,
span,
li {
  color: #333;
  font-family: NeogroteskEssAlt-Light, sans-serif;
  font-size: 18px; }

a {
  color: #E62516;
  -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
  a:hover {
    color: #0080A6; }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #ED5145;
  font-family: Rationell-ExtraBold, sans-serif;
  font-size: 1.3rem;
  line-height: 1.1;
  letter-spacing: -1px;
  padding-bottom: 1rem; }
  @media screen and (min-width: 30em) {
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
      font-size: 2.3rem; } }
  h1 a,
  h2 a,
  h3 a,
  h4 a,
  h5 a,
  h6 a {
    color: #ED5145; }

h2 {
  font-size: 1.5rem;
  line-height: 1.2; }
  @media screen and (min-width: 30em) {
    h2 {
      font-size: 2.3rem;
      line-height: 1.1; } }

h3 {
  font-size: 1.8rem; }

.heading--thin, .main-body h2, .main-body h3, .main-body h4 {
  font-weight: normal;
  font-family: "Rationell-book";
  font-size: 1.2rem;
  line-height: 1.3;
  color: black;
  padding-bottom: 0; }
  @media screen and (min-width: 75em) {
    .heading--thin, .main-body h2, .main-body h3, .main-body h4 {
      font-size: 24px;
      line-height: 1.2; } }

.heading--blue {
  color: #0080A6; }

.heading--red {
  color: #ED5145; }

.heading--yellow {
  color: #FDFCDC; }

.has-border--peach, .main-body h1 {
  border-bottom: 2px solid #FED9B7; }

.has-border--light-blue {
  border-bottom: 2px solid #00AFB9; }

.has-border--red {
  border-bottom: 2px solid #ED5145; }

.section-link {
  font-family: NeogroteskEssAlt-LightIt, sans-serif;
  font-size: 0.9rem;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  border-bottom: 1px solid rgba(255, 255, 255, 0); }
  .section-link:after {
    content: " →";
    display: inline-block;
    position: relative;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    opacity: 0;
    width: 0; }
  .section-link:hover {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    border-bottom: 1px solid;
    margin-right: 15px; }
    .section-link:hover:after {
      content: " →";
      opacity: 1;
      padding-left: 2px; }
  .section-link--blue {
    color: #0080A6; }
    .section-link--blue:hover {
      color: #0080A6; }
  .section-link--white {
    color: #fefefe; }
    .section-link--white:hover {
      color: #fefefe; }
  .section-link--peach {
    color: #FED9B7; }
    .section-link--peach:hover {
      color: #FED9B7; }
  .section-link--red {
    color: #E62516; }
    .section-link--red:hover {
      color: #E62516; }

.cfk-button {
  background-size: 100% 300%;
  border: 0;
  border-radius: 100rem !important;
  display: inline-block;
  color: #fff;
  padding: 1rem 2.7rem;
  font-size: 18px;
  font-family: "NeogroteskEssAlt-Regular";
  margin: 1rem 0;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out; }
  @media screen and (min-width: 75em) {
    .cfk-button {
      padding: 1rem 2.7rem;
      font-size: 20px; } }
  .cfk-button--gradient {
    background-image: -webkit-gradient(linear, left top, right top, color-stop(10%, #0080A6), color-stop(100%, #00AFB9), to(#0080A6));
    background-image: linear-gradient(90deg, #0080A6 10%, #00AFB9 100%, #0080A6 100%); }
    .cfk-button--gradient:hover {
      background-size: 300% 300%;
      background-position: 0;
      color: #fff; }
  .cfk-button--outline-peach {
    background: transparent;
    border: 2px solid #FED9B7;
    color: #FED9B7;
    padding: 0.9rem 2.6rem; }
    .cfk-button--outline-peach:hover {
      background-size: 300% 300%;
      background-position: 0;
      background-color: #0080A6;
      color: #fff;
      border: 2px solid #fff; }
  .cfk-button--outline-red {
    background: transparent;
    border: 2px solid #ED5145;
    color: #E62516;
    padding: 0.9rem 2.6rem; }
    .cfk-button--outline-red:hover {
      background-size: 300% 300%;
      background-position: 0;
      background-color: rgba(254, 217, 183, 0.7);
      color: #E62516;
      border: 2px solid #E62516; }
  .cfk-button--outline-blue {
    background: transparent;
    border: 2px solid #0080A6;
    color: #0080A6;
    padding: 0.9rem 2.6rem; }
    .cfk-button--outline-blue:hover {
      background-size: 300% 300%;
      background-position: 0;
      background-color: rgba(254, 217, 183, 0.7);
      color: #E62516;
      border: 2px solid #ED5145; }

.main-body a {
  color: #0080A6;
  border-bottom: 1px solid; }
  .main-body a:hover {
    color: #E62516; }

.main-body h1 {
  margin-bottom: 1.3rem;
  font-size: 2rem; }
  @media screen and (min-width: 75em) {
    .main-body h1 {
      font-size: 2.3rem; } }

.main-body h2 {
  font-size: 1.5rem;
  color: #0080A6;
  padding: 0 0 1rem; }
  @media screen and (min-width: 75em) {
    .main-body h2 {
      font-size: 2rem; } }

.main-body h3 {
  font-size: 1.2rem;
  color: #0080A6;
  padding: 0 0 1rem; }
  @media screen and (min-width: 75em) {
    .main-body h3 {
      font-size: 1.5rem; } }

.main-body h4 {
  font-size: 1.2rem;
  color: #0080A6;
  padding: 0 0 1rem; }
  @media screen and (min-width: 75em) {
    .main-body h4 {
      font-size: 1.5rem; } }

.main-body .more-info,
.main-body .reviewed-by {
  background: #fdfcdc;
  border-radius: 7px;
  padding: 1.5rem 1rem;
  margin: 2rem 0;
  clear: both; }
  @media print {
    .main-body .more-info,
    .main-body .reviewed-by {
      margin-top: 0; }
      .main-body .more-info .has-border--peach, .main-body .more-info h1,
      .main-body .reviewed-by .has-border--peach,
      .main-body .reviewed-by h1 {
        border-bottom: none; } }
  @media screen and (min-width: 75em) {
    .main-body .more-info,
    .main-body .reviewed-by {
      margin: 2.5rem auto 1rem auto;
      padding: 2.3rem 2rem; } }
  @media print {
    .main-body .more-info h3,
    .main-body .reviewed-by h3 {
      margin-left: -25px; } }
  .main-body .more-info__heading,
  .main-body .reviewed-by__heading {
    color: #E62516;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem; }
  .main-body .more-info__list,
  .main-body .reviewed-by__list {
    margin-left: 2rem;
    margin-bottom: 0; }
    @media screen and (min-width: 75em) {
      .main-body .more-info__list,
      .main-body .reviewed-by__list {
        margin-left: 1.5rem;
        margin-bottom: 0; } }
    @media print {
      .main-body .more-info__list,
      .main-body .reviewed-by__list {
        margin-bottom: 20px; } }
  .main-body .more-info__item,
  .main-body .reviewed-by__item {
    padding: 0.5rem 0;
    font-family: "NeogroteskEssAlt-Light";
    font-size: 1rem;
    margin: 0.125rem 0; }
    @media screen and (min-width: 75em) {
      .main-body .more-info__item,
      .main-body .reviewed-by__item {
        font-size: 18px; } }
    @media print {
      .main-body .more-info__item a[href]::after,
      .main-body .reviewed-by__item a[href]::after {
        content: "\a(" attr(href) ")";
        white-space: break-spaces; } }
  .main-body .more-info__link,
  .main-body .reviewed-by__link {
    color: #00789c; }
    .main-body .more-info__link:hover,
    .main-body .reviewed-by__link:hover {
      color: #E62516; }

.main-body .last-updated {
  display: table;
  margin-top: 2rem;
  text-align: center;
  white-space: nowrap; }
  .main-body .last-updated__span {
    color: #555;
    font-size: 1rem;
    padding: 0 1rem; }
  .main-body .last-updated:before {
    right: 0%; }
  .main-body .last-updated:before, .main-body .last-updated:after {
    border-top: 2px solid #FED9B7;
    content: '';
    display: table-cell;
    position: relative;
    top: 0.8em;
    width: 50%; }
  .main-body .last-updated:after {
    left: 0%; }

.main-body .reviewed-by__list {
  margin-left: 2rem;
  margin-bottom: 0; }
  @media screen and (min-width: 75em) {
    .main-body .reviewed-by__list {
      margin-left: 3.5rem; } }

.has-transition, .cfk-button--outline-peach, .cfk-button--outline-red, .cfk-button--outline-blue, .main-body .more-info__link,
.main-body .reviewed-by__link, .front-and-centre, .active-kids, .well-beings {
  -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transition: all .2s ease;
  transition: all .2s ease; }

.image {
  display: block;
  width: 100%;
  border-radius: 7px; }

.show-for-xlarge {
  display: none; }
  @media screen and (min-width: 90em) {
    .show-for-xlarge {
      display: block; } }

.featured-video__container {
  background: linear-gradient(-45deg, #ED5145, #0080A6);
  border-radius: 7px;
  background-size: 100%;
  -webkit-transition: all 2.5s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 2.5s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out; }

.featured-video__image {
  mix-blend-mode: screen; }

.video-wrap {
  position: relative; }

.play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  z-index: 0; }

.featured-video:hover .play-button {
  z-index: 10; }

.featured-video:hover .featured-video__container {
  background: linear-gradient(45deg, #ED5145, #0080A6);
  background-position: right; }

/* breadcrumbs */
.breadcrumbs li {
  font-size: 1rem; }

.transparent-logo {
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border-radius: unset !important; }

.sidenav-logo {
  width: 70%; }

button:focus {
  outline: 0; }

@media print {
  .header {
    margin-bottom: 0; } }

.logo {
  background: #ffffff;
  display: block;
  position: absolute;
  min-width: 90px;
  padding: 10px 15px;
  top: 0;
  border-radius: 0 3rem 0 0; }
  @media screen and (min-width: 30em) {
    .logo {
      border-radius: 0 6.5rem 0 0;
      margin-top: -2rem;
      padding: 3rem 2rem 2rem;
      width: 160px; } }
  @media screen and (min-width: 75em) {
    .logo {
      width: 230px; } }
  @media print {
    .logo {
      width: 175px; } }
  .logo__fra {
    background: #ffffff;
    display: block;
    position: absolute;
    min-width: 90px;
    padding: 10px 15px;
    top: 0;
    border-radius: 0 3rem 0 0; }
    @media screen and (min-width: 30em) {
      .logo__fra {
        border-radius: 0 6.5rem 0 0;
        margin-top: -2rem;
        padding: 3rem 2rem 2rem;
        width: 160px; } }
    @media screen and (min-width: 75em) {
      .logo__fra {
        width: 325px; } }
    @media print {
      .logo__fra {
        width: 225px; } }

.cps-logo {
  display: block;
  width: 100px;
  margin: 1rem auto 0; }
  @media screen and (min-width: 75em) {
    .cps-logo {
      float: right;
      margin-top: 0;
      margin-right: 5px;
      width: 120px; } }

.secondary-menu {
  text-align: center; }
  .secondary-menu__link {
    color: white; }
    @media screen and (min-width: 75em) {
      .secondary-menu__link {
        display: none; } }
    .secondary-menu__link:hover {
      color: #FDFCDC;
      text-decoration: underline; }

.top-menu {
  background: transparent url("/assets/img/secondary-menu-bg.png") repeat-x center top;
  padding: 1.5rem 0 1.5rem; }
  @media screen and (min-width: 75em) {
    .top-menu {
      padding: 0; } }

.menu .icon {
  border: 2px solid #fff;
  padding: 7px;
  display: inline-block;
  border-radius: 100rem;
  background: #ffffff;
  height: 42px; }
  .menu .icon:hover {
    background-color: #FED9B7; }

.menu--icons {
  position: absolute;
  right: 0; }
  @media screen and (min-width: 75em) {
    .menu--icons {
      top: 24px; } }

.menu .filter-by-category {
  display: block;
  font-weight: bold;
  font-size: 1rem;
  margin-right: 2rem; }
  .menu .filter-by-category__link {
    text-decoration: underline;
    display: inline;
    padding: 0; }

.mobile-icons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-items: center; }
  .mobile-icons__link.icon {
    background: rgba(254, 217, 183, 0.5);
    margin: 0 0.5rem;
    width: auto;
    height: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }

.mobile-secondary {
  border-top: 1px solid #FED9B7;
  border-radius: 7px;
  background: rgba(254, 217, 183, 0.2);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-items: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  margin: 1rem 0;
  padding: 1rem 0;
  width: 90%; }
  .mobile-secondary__link {
    padding: 0 !important;
    margin: 0; }

.title-bar {
  background: transparent;
  color: #fff;
  padding: 0;
  height: 30px;
  margin-right: 10px;
  margin-top: -19px; }

.menu--primary {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fffef9;
  -webkit-box-shadow: 0px 10px 100px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 10px 100px rgba(0, 0, 0, 0.4);
  border-radius: 7px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  padding: 1rem 0;
  margin: 1rem;
  margin-top: -100px; }
  @media screen and (min-width: 75em) {
    .menu--primary {
      background-color: transparent;
      -webkit-box-shadow: none;
              box-shadow: none;
      letter-spacing: -0.5px;
      margin-top: 0; } }
  .menu--primary__item {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    border-left: none;
    padding: 0 0.5rem;
    text-align: center;
    width: 100%; }
    @media screen and (min-width: 75em) {
      .menu--primary__item {
        border-left: 1px solid #FED9B7;
        width: 200px; } }
    .menu--primary__item:first-child {
      border: 0; }
    .menu--primary__item--small {
      font-size: 0.9rem; }
  .menu--primary__link {
    color: #0080A6;
    display: block;
    font-family: NeogroteskEssAlt-Regular;
    height: 100%;
    line-height: 1.2 !important;
    padding: 10px !important; }
    .menu--primary__link:hover {
      color: #0080A6 !important; }
    @media screen and (min-width: 75em) {
      .menu--primary__link {
        margin: 0.5rem 0;
        padding: 5px 1rem !important; } }
  .menu--primary__span {
    color: inherit;
    display: inline;
    font-family: inherit; }
    @media screen and (min-width: 75em) {
      .menu--primary__span {
        display: block; } }

.menu.align-center li {
  display: block; }

.dropdown-content {
  border-radius: 7px;
  border: 0;
  padding: 0.5rem;
  margin: 0; }
  @media screen and (min-width: 30em) {
    .dropdown-content {
      -webkit-box-shadow: 0px 16px 25px rgba(0, 0, 0, 0.1);
              box-shadow: 0px 16px 25px rgba(0, 0, 0, 0.1);
      margin: 5px 8px 0; } }

/* can change submenu items to be centered by adjusting text-align code below */
.dropdown .is-dropdown-submenu a {
  color: #0080A6;
  padding: 0.5rem 0.5rem;
  min-width: 200px;
  max-width: 250px;
  border-radius: 3px;
  text-align: left; }
  .dropdown .is-dropdown-submenu a:hover {
    background: #E62516;
    color: white; }

.dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after,
.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  display: none; }

.search {
  margin-top: -5px;
  margin-right: 15px; }
  @media screen and (min-width: 75em) {
    .search {
      margin: 0; } }
  .search .input-group {
    margin-bottom: 0; }
  .search .input-group-field {
    -webkit-box-shadow: none;
            box-shadow: none;
    border: 0;
    border-radius: 100rem 0 0 100rem;
    padding-left: 1rem;
    font-size: 0.9rem;
    font-style: italic;
    width: 130px; }
    @media screen and (min-width: 75em) {
      .search .input-group-field {
        width: auto; } }
  .search__button {
    margin-right: 10px;
    width: 22px;
    cursor: pointer; }
  .search .input-group-button {
    background: #fff;
    border-radius: 0 100rem 100rem 0;
    overflow: hidden;
    margin-right: 1rem; }

@media screen and (min-width: 75em) {
  .tagline-container {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(50% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem; } }

@media print {
  .tagline-container {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(50% - 1.25rem);
    margin-left: 0.625rem;
    margin-right: 0.625rem;
    margin-left: calc(50% + 0.625rem); } }

.tagline {
  margin: 2rem 0;
  padding-bottom: 0; }
  @media print {
    .tagline {
      margin: -0.5rem 0 1rem 0; } }
  @media screen and (min-width: 75em) {
    .tagline {
      text-align: right;
      margin: 2rem 0; } }
  .tagline__parents, .tagline__paediatricians {
    color: #0080A6;
    font-family: "NeogroteskEssAlt-Regular";
    font-family: Rationell-ExtraBold;
    font-size: 18px; }
    @media screen and (min-width: 90em) {
      .tagline__parents, .tagline__paediatricians {
        letter-spacing: -1px;
        font-size: 31px; } }
  .tagline__line-1, .tagline__line-2 {
    color: #E62516;
    line-height: 1.2;
    text-align: center;
    font-family: "Rationell-book";
    display: block;
    font-size: 18px; }
    @media print {
      .tagline__line-1, .tagline__line-2 {
        text-align: center; } }
    @media screen and (min-width: 90em) {
      .tagline__line-1, .tagline__line-2 {
        letter-spacing: -1.5px;
        font-size: 31px; } }

.footer {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 128, 166, 0.2)), to(#fdfcdc));
  background: linear-gradient(180deg, rgba(0, 128, 166, 0.2) 0%, #fdfcdc 100%);
  overflow: hidden;
  padding: 0;
  margin-top: 3rem; }
  @media screen and (min-width: 75em) {
    .footer {
      margin-top: 0;
      padding: 5rem 0; } }

.front-and-centre {
  display: none;
  background: #0080A6 url("/assets/img/baby.jpg") no-repeat center center;
  background-blend-mode: multiply;
  background-size: cover;
  border-radius: 7px;
  padding: 2rem 1.5rem 1rem; }
  @media screen and (min-width: 75em) {
    .front-and-centre {
      display: block;
      padding: 3rem; } }
  @media screen and (min-width: 90em) {
    .front-and-centre {
      background-size: 100%;
      padding: 3rem; }
      .front-and-centre:hover {
        background-size: 105%; } }
  .front-and-centre__copy {
    color: #fff; }
  .front-and-centre__heading,
  .front-and-centre__heading a {
    color: #FDFCDC;
    padding-bottom: 1rem;
    margin-bottom: 0; }
    @media screen and (min-width: 75em) {
      .front-and-centre__heading,
      .front-and-centre__heading a {
        font-size: 2rem; } }

.active-kids {
  display: none;
  background: #fff;
  border-radius: 7px;
  height: 100%;
  margin: 1rem 0;
  padding: 2rem 1.5rem 0rem; }
  @media screen and (min-width: 75em) {
    .active-kids {
      display: block; }
      .active-kids:hover {
        -webkit-box-shadow: 0px 4px 35px rgba(0, 0, 0, 0.15);
                box-shadow: 0px 4px 35px rgba(0, 0, 0, 0.15);
        -webkit-box-shadow: 0px 60px 25px -50px rgba(0, 0, 0, 0.15);
                box-shadow: 0px 60px 25px -50px rgba(0, 0, 0, 0.15);
        margin-top: -0.5rem; } }
  @media screen and (min-width: 75em) {
    .active-kids {
      margin: 0 0;
      padding: 2rem; } }
  .active-kids__logo {
    display: block;
    margin: 0 auto 2rem; }
  .active-kids__copy {
    text-align: left; }

.well-beings {
  display: none;
  background: #fff;
  border-radius: 7px;
  height: 100%;
  margin: 2rem 0;
  padding: 2rem 1.5rem 0rem; }
  @media screen and (min-width: 75em) {
    .well-beings {
      display: block;
      margin: 0 0;
      padding: 2rem; }
      .well-beings:hover {
        margin-top: -0.5rem;
        -webkit-box-shadow: 0px 4px 35px rgba(0, 0, 0, 0.15);
                box-shadow: 0px 4px 35px rgba(0, 0, 0, 0.15);
        -webkit-box-shadow: 0px 60px 25px -50px rgba(0, 0, 0, 0.15);
                box-shadow: 0px 60px 25px -50px rgba(0, 0, 0, 0.15); } }
  .well-beings__logo {
    background: #00467F;
    display: block;
    margin: 0 auto 2rem;
    padding: 1rem; }
  .well-beings__copy {
    text-align: left; }

.homepage .active-kids {
  display: block; }
  @media screen and (min-width: 75em) {
    .homepage .active-kids {
      display: block; } }

.footer-menu {
  border-bottom: 2px solid rgba(0, 175, 185, 0.3);
  border-top: 2px solid rgba(0, 175, 185, 0.3);
  margin: 4rem auto 2rem;
  padding: 1.5rem 0;
  width: 80%;
  letter-spacing: -0.5px; }
  @media screen and (min-width: 75em) {
    .footer-menu {
      margin: 5rem auto;
      width: 100%; } }
  .footer-menu__list {
    margin: 0 auto; }
  .footer-menu__item {
    font-size: 1rem;
    text-align: center; }
    @media screen and (min-width: 75em) {
      .footer-menu__item {
        margin: 0 3rem;
        font-size: 20px;
        width: auto; } }
  .footer-menu__link {
    border-bottom: 1px solid transparent;
    color: #E62516;
    font-family: "NeogroteskEssAlt-Regular";
    padding: 1rem 0; }
    @media screen and (min-width: 75em) {
      .footer-menu__link {
        padding: 0 !important; } }
    .footer-menu__link:hover {
      border-bottom: 1px solid #0080A6; }

.footer-logos {
  margin: 0 auto; }
  .footer-logos__item {
    text-align: center;
    margin: 1rem 0; }
    @media screen and (min-width: 75em) {
      .footer-logos__item {
        margin: 0; } }
  .footer-logos__text {
    line-height: 1.2;
    display: block;
    margin-top: 1rem;
    text-align: center;
    font-size: 0.8rem; }
    @media screen and (min-width: 75em) {
      .footer-logos__text {
        font-size: 0.9rem; } }
    @media print {
      .footer-logos__text {
        margin-top: 1.25rem; } }

body {
  background-color: white; }

.stripe {
  border-radius: 0 0 7px 7px;
  bottom: 0;
  position: absolute; }

.hero {
  margin: 0 auto;
  border-radius: 7px;
  position: relative;
  padding-bottom: 200px; }
  @media screen and (min-width: 75em) {
    .hero {
      min-height: 716px; } }
  .hero--one {
    padding-bottom: 150px; }
    @media screen and (min-width: 30em) {
      .hero--one {
        background-size: 100%; } }
    @media screen and (min-width: 75em) {
      .hero--one {
        background-size: 80%; } }
    .hero--one__stripe {
      background: #FDFCDC;
      mix-blend-mode: multiply;
      width: 100%;
      height: 50px; }
      @media screen and (min-width: 75em) {
        .hero--one__stripe {
          height: 72px; } }
    @media screen and (min-width: 30em) {
      .hero--one__content {
        width: 50%; } }
    @media screen and (min-width: 48em) {
      .hero--one__content {
        width: 50%; } }
    @media screen and (min-width: 62em) {
      .hero--one__content {
        width: 40%; } }
    .hero--one__heading {
      margin-bottom: 0; }
  .hero__content {
    position: relative; }
    @media screen and (min-width: 75em) {
      .hero__content {
        padding-left: 85px;
        margin-left: 4rem; } }
  .hero--two {
    background: white;
    border-radius: 7px;
    -webkit-box-shadow: 1rem 1rem 10rem rgba(0, 0, 0, 0.2);
            box-shadow: 1rem 1rem 10rem rgba(0, 0, 0, 0.2);
    margin: -2rem 0.5rem;
    min-height: 0;
    padding: 2rem;
    z-index: 10; }
    .hero--two img {
      width: 100%;
      height: 100%;
      border-radius: 7px !important; }
    @media screen and (min-width: 30em) {
      .hero--two {
        margin: -5rem 0.5rem; } }
    @media screen and (min-width: 75em) {
      .hero--two {
        margin: -3rem 4rem -3rem;
        padding: 4rem 4rem 1.5rem 4rem; } }
    .hero--two__content {
      padding-left: 0;
      margin-left: 0; }
    @media screen and (min-width: 75em) {
      .hero--two__heading {
        margin-bottom: 2rem; } }
    @media screen and (min-width: 75em) {
      .hero--two__copy {
        padding-left: 1rem; } }
  .hero .video-wrap {
    line-height: normal; }
    @media print {
      .hero .video-wrap {
        display: none; } }
  .hero .video-wrap img,
  .hero .video-wrap .play-button {
    cursor: pointer; }
  .hero .video-wrap iframe {
    top: 0;
    left: 0;
    /* height: 375px;
        width: 561px; */
    width: 100%;
    height: 100%;
    min-height: 185px;
    line-height: normal !important; }
    @media screen and (min-width: 30em) {
      .hero .video-wrap iframe {
        min-height: 443px; } }
    @media screen and (min-width: 75em) {
      .hero .video-wrap iframe {
        min-height: 375px; } }
  .hero .featured-video {
    margin-top: 1rem;
    margin-bottom: 1rem; }
    @media screen and (min-width: 75em) {
      .hero .featured-video {
        margin-top: 0;
        margin-bottom: 0; } }
    .hero .featured-video__image {
      width: 100%; }
  .hero--three {
    border-radius: 7px 7px 0 0 !important;
    border-radius: 7px !important;
    padding-bottom: 0;
    min-height: 0;
    margin-top: 2rem; }
    @media screen and (min-width: 30em) {
      .hero--three {
        margin-bottom: 2rem; } }
    @media screen and (min-width: 75em) {
      .hero--three {
        margin-bottom: 5rem;
        border-radius: 7px;
        padding-top: 0;
        padding-bottom: 100px; } }
    .hero--three__content {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(56.71%, #0080a6), color-stop(112.25%, #00afb9));
      background: linear-gradient(180deg, #0080a6 56.71%, #00afb9 112.25%);
      -webkit-box-shadow: 0px 4px 35px rgba(0, 0, 0, 0.15);
              box-shadow: 0px 4px 35px rgba(0, 0, 0, 0.15);
      border-radius: 7px;
      padding: 2rem 2rem 1rem;
      margin: 0rem 0.5rem 0; }
      @media screen and (min-width: 75em) {
        .hero--three__content {
          background: -webkit-gradient(linear, left top, left bottom, color-stop(56.71%, rgba(0, 128, 166, 0.9)), color-stop(112.25%, rgba(0, 175, 185, 0.9)));
          background: linear-gradient(180deg, rgba(0, 128, 166, 0.9) 56.71%, rgba(0, 175, 185, 0.9) 112.25%);
          margin-top: 2.5rem;
          padding: 3rem;
          margin-left: 4rem;
          opacity: initial;
          margin-bottom: 1rem; } }
      @media screen and (min-width: 90em) {
        .hero--three__content {
          width: 65%; } }
    .hero--three__heading {
      font-weight: normal;
      margin-bottom: 0;
      padding-bottom: 1rem; }
      @media screen and (min-width: 75em) {
        .hero--three__heading {
          font-size: 2rem; } }
      .hero--three__heading a {
        color: #FDFCDC; }
        .hero--three__heading a:hover {
          color: #FED9B7; }
    .hero--three__stripe {
      background: #0080A6;
      mix-blend-mode: multiply;
      opacity: 0.5;
      width: 100%;
      height: 72px; }
    .hero--three__summary {
      /* heart shaped bullets for hero */ }
      .hero--three__summary p,
      .hero--three__summary li {
        color: #fff; }
      .hero--three__summary ul {
        list-style-type: none;
        margin-top: 1.875rem; }
        .hero--three__summary ul li {
          margin: 1rem 0;
          padding-left: 1rem; }
          .hero--three__summary ul li:before {
            content: '';
            display: inline-block;
            height: 0.8rem;
            width: 1.25em;
            background-image: url(/assets/img/heart-bullet.svg);
            background-size: contain;
            background-repeat: no-repeat;
            margin-left: -1.25em; }
  .hero--four {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(40%, #0080a6), color-stop(70%, #0080a630), to(#fff));
    background: linear-gradient(180deg, #fff 0, #0080a6 40%, #0080a630 70%, #fff);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(10%, rgba(0, 128, 166, 0.5)), color-stop(60%, rgba(0, 175, 185, 0.3)), to(#fff));
    background: linear-gradient(180deg, #fff 0, rgba(0, 128, 166, 0.5) 10%, rgba(0, 175, 185, 0.3) 60%, #fff);
    background-position: right top;
    padding-bottom: 0;
    min-height: 0;
    margin: 0 -10px;
    margin-top: 2rem; }
    @media screen and (min-width: 30em) {
      .hero--four {
        margin-bottom: 2rem; } }
    @media screen and (min-width: 75em) {
      .hero--four {
        border-radius: 7px !important;
        background: -webkit-gradient(linear, left top, right top, color-stop(30%, #fff), color-stop(50%, #fff0)), -webkit-gradient(linear, left top, right top, color-stop(25.07%, #fff), color-stop(0%, #fff0)), -webkit-gradient(linear, left top, right top, from(#fff), to(#0080A6));
        background: linear-gradient(90deg, #fff 30%, #fff0 50%), linear-gradient(90deg, #fff 25.07%, #fff0 0%), linear-gradient(90deg, #fff, #0080A6);
        margin: 0;
        margin-bottom: 5rem;
        padding: 10rem 0; } }
    @media screen and (min-width: 90em) {
      .hero--four {
        padding: 15rem 0;
        border-radius: 7px; } }
    .hero--four__content {
      background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.5)), to(white));
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, white 100%);
      background: transparent;
      padding: 1rem;
      padding-top: 3rem;
      position: relative; }
      @media screen and (min-width: 75em) {
        .hero--four__content {
          padding: 0rem 3rem 0rem 6rem;
          margin-left: 4rem; } }
    .hero--four__heading {
      font-weight: normal;
      margin-bottom: 0; }
      @media screen and (min-width: 75em) {
        .hero--four__heading {
          font-size: 2rem; } }
      .hero--four__heading.heading--thin, .main-body h2.hero--four__heading, .main-body h3.hero--four__heading, .main-body h4.hero--four__heading {
        margin-bottom: 1rem; }
        @media screen and (min-width: 75em) {
          .hero--four__heading.heading--thin, .main-body h2.hero--four__heading, .main-body h3.hero--four__heading, .main-body h4.hero--four__heading {
            margin: 3rem 0 1rem; } }
    .hero--four__stripe {
      background: #0080A6;
      mix-blend-mode: multiply;
      opacity: 0.5;
      width: 100%;
      height: 72px; }
  .hero--five {
    background: rgba(253, 252, 220, 0.75);
    border-radius: 0 0 7px 7px !important;
    border-radius: 7px !important;
    padding: 4rem 0; }
    @media screen and (min-width: 30em) {
      .hero--five {
        background-size: 100%;
        margin-bottom: 5rem;
        padding: 7rem 0;
        border-radius: 7px; } }
    @media screen and (min-width: 75em) {
      .hero--five {
        background-size: 100%;
        margin-bottom: 3rem;
        padding: 10rem 0;
        border-radius: 7px; } }
    .hero--five__content {
      position: relative;
      padding: 1rem; }
      @media screen and (min-width: 75em) {
        .hero--five__content {
          padding: 0rem 3rem 0rem 11rem;
          margin-right: 5rem; } }
    .hero--five__heading {
      font-weight: normal;
      margin-bottom: 0; }
    .hero--five__stripe {
      background: #ED5145;
      mix-blend-mode: multiply;
      opacity: 0.5;
      width: 100%;
      height: 72px; }
  .hero--six {
    background: -webkit-gradient(linear, left top, right top, color-stop(9.06%, #FFFFFF), color-stop(50%, rgba(255, 255, 255, 0))), -webkit-gradient(linear, left top, left bottom, color-stop(55.07%, #FFFFFF), color-stop(63.03%, rgba(255, 255, 255, 0))), -webkit-gradient(linear, left bottom, left top, from(#FED9B7), to(#FED9B7));
    background: linear-gradient(90deg, #FFFFFF 9.06%, rgba(255, 255, 255, 0) 50%), linear-gradient(180deg, #FFFFFF 55.07%, rgba(255, 255, 255, 0) 63.03%), linear-gradient(0deg, #FED9B7, #FED9B7);
    padding-bottom: 4rem;
    margin-top: 1rem; }
    @media screen and (min-width: 75em) {
      .hero--six {
        background: -webkit-gradient(linear, left top, right top, color-stop(9.06%, #FFFFFF), color-stop(50%, rgba(255, 255, 255, 0))), -webkit-gradient(linear, left top, left bottom, color-stop(25.07%, #FFFFFF), color-stop(63.03%, rgba(255, 255, 255, 0))), -webkit-gradient(linear, left bottom, left top, from(#FED9B7), to(#FED9B7));
        background: linear-gradient(90deg, #FFFFFF 9.06%, rgba(255, 255, 255, 0) 50%), linear-gradient(180deg, #FFFFFF 25.07%, rgba(255, 255, 255, 0) 63.03%), linear-gradient(0deg, #FED9B7, #FED9B7);
        border-radius: 7px;
        margin-bottom: 5rem;
        padding-bottom: 0rem; } }
    .hero--six__content {
      padding: 1rem;
      position: relative; }
      @media screen and (min-width: 90em) {
        .hero--six__content {
          padding: 0 5rem; } }
    .hero--six__heading {
      font-weight: normal;
      margin-bottom: 0;
      margin-top: 2rem; }
      .hero--six__heading a {
        color: #0080A6; }
        .hero--six__heading a:hover {
          color: #ED5145; }
      @media screen and (min-width: 75em) {
        .hero--six__heading {
          margin-top: 0; } }
    .hero--six__stripe {
      background: #00AFB9;
      mix-blend-mode: multiply;
      opacity: 0.5;
      width: 100%;
      height: 72px; }
  .hero--seven {
    padding-bottom: 0;
    padding-top: 2rem; }
    @media screen and (min-width: 75em) {
      .hero--seven {
        margin-bottom: 5rem; } }
    .hero--seven__content {
      position: relative; }
      @media screen and (min-width: 75em) {
        .hero--seven__content {
          padding-top: 0rem;
          padding-left: 85px; } }
    .hero--seven p,
    .hero--seven li {
      letter-spacing: normal; }
    .hero--seven__heading {
      font-weight: normal;
      margin-bottom: 0; }
      @media screen and (min-width: 75em) {
        .hero--seven__heading {
          font-size: 2.3rem; } }
      .hero--seven__heading a {
        color: #0080A6; }
        .hero--seven__heading a:hover {
          color: #ED5145; }
      .hero--seven__heading.heading--thin, .main-body h2.hero--seven__heading, .main-body h3.hero--seven__heading, .main-body h4.hero--seven__heading {
        margin-bottom: 1rem; }
        @media screen and (min-width: 75em) {
          .hero--seven__heading.heading--thin, .main-body h2.hero--seven__heading, .main-body h3.hero--seven__heading, .main-body h4.hero--seven__heading {
            font-size: 2rem;
            margin: 3rem 0 1rem; } }
    .hero--seven__aside {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(56.71%, #0080A6), color-stop(112.25%, #00AFB9));
      background: linear-gradient(180deg, #0080A6 56.71%, #00AFB9 112.25%);
      -webkit-box-shadow: 0px 4px 35px rgba(0, 0, 0, 0.15);
              box-shadow: 0px 4px 35px rgba(0, 0, 0, 0.15);
      border-radius: 7px;
      padding: 2rem 1.5rem 1rem;
      margin: 0;
      min-height: 750px;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(20.91%, #0080A6), to(rgba(255, 255, 255, 0)));
      background: linear-gradient(180deg, #0080A6 20.91%, rgba(255, 255, 255, 0) 100%);
      -webkit-filter: drop-shadow(0px 4px 35px rgba(0, 0, 0, 0.15));
              filter: drop-shadow(0px 4px 35px rgba(0, 0, 0, 0.15)); }
      @media screen and (min-width: 75em) {
        .hero--seven__aside {
          opacity: initial;
          padding: 2rem 2rem 1rem; } }
    .hero--seven .aside__heading {
      margin: 0;
      padding-bottom: 7px; }
    .hero--seven__list li {
      color: white; }
  @media screen and (min-width: 75em) {
    .hero__summary {
      margin-bottom: 3rem; } }
  @media print {
    .hero img {
      display: none; } }

.hearts {
  background: white url("/assets/img/Big Hearts.png");
  background-size: auto; }

.color-bar {
  display: none;
  height: 100%;
  position: absolute;
  width: 20px; }
  @media screen and (min-width: 75em) {
    .color-bar {
      display: block; } }
  .color-bar--one {
    background: #ED5145;
    left: 0px; }
  .color-bar--two {
    background: #FED9B7;
    left: 20px; }
  .color-bar--three {
    background: #FDFCDC;
    left: 40px; }
  .color-bar--blue {
    background: #0080A6; }
  .color-bar--light-blue {
    background: #00AFB9; }
  .color-bar--peach {
    background: #FED9B7; }
  .color-bar--yellow {
    background: #FDFCDC; }

/* reveal pop up styles */
.childrens-health {
  border-radius: 1.25rem !important;
  padding: 25px 40px 20px 40px;
  margin: auto;
  width: 95%;
  height: auto;
  min-height: auto; }
  @media screen and (min-width: 30em) {
    .childrens-health {
      width: 600px;
      height: auto;
      min-height: auto; } }
  @media screen and (min-width: 48em) {
    .childrens-health {
      width: 600px;
      height: auto;
      min-height: auto; } }
  @media screen and (min-width: 62em) {
    .childrens-health {
      width: 600px;
      height: auto;
      min-height: auto; } }
  @media screen and (min-width: 75em) {
    .childrens-health {
      width: 800px;
      height: auto;
      min-height: auto; } }

.new-site {
  padding: 4px;
  margin: auto;
  width: 95%;
  height: auto;
  min-height: auto; }
  @media screen and (min-width: 30em) {
    .new-site {
      width: 600px;
      height: auto;
      min-height: auto; } }
  @media screen and (min-width: 48em) {
    .new-site {
      width: 600px;
      height: auto;
      min-height: auto; } }
  @media screen and (min-width: 62em) {
    .new-site {
      width: 600px;
      height: auto;
      min-height: auto; } }
  @media screen and (min-width: 75em) {
    .new-site {
      width: 800px;
      height: auto;
      min-height: auto; } }

*:focus {
  outline: none; }

.content {
  background: transparent url("/assets/img/Big Hearts.png") repeat-x 0 0; }
  .content img {
    -webkit-box-shadow: 1rem 1rem 10rem rgba(0, 0, 0, 0.2);
            box-shadow: 1rem 1rem 10rem rgba(0, 0, 0, 0.2);
    border-radius: 7px; }

.sidebar-nav {
  margin-bottom: 1rem; }
  .sidebar-nav__panel {
    background: white;
    border-radius: 7px;
    -webkit-box-shadow: 1rem 1rem 10rem rgba(0, 0, 0, 0.2);
            box-shadow: 1rem 1rem 10rem rgba(0, 0, 0, 0.2);
    padding: 2rem 2rem 1rem 2rem;
    margin: 0; }
    .sidebar-nav__panel__list {
      list-style-type: none;
      margin: 0; }
    .sidebar-nav__panel__link {
      display: block;
      line-height: 1.2;
      padding: 0.5rem 0; }

.content {
  margin: 0; }
  @media screen and (min-width: 75em) {
    .content {
      margin: 0 0 2.5rem 0; } }

.main-body {
  padding: 1rem 0;
  /* tables */ }
  @media screen and (min-width: 75em) {
    .main-body {
      padding: 0; } }
  .main-body img {
    -webkit-box-shadow: none;
            box-shadow: none;
    margin: 1rem 0; }
  .main-body a {
    color: #E62516; }
    .main-body a:hover {
      color: #0080A6; }
  .main-body ul,
  .main-body ul > ul,
  .main-body ol,
  .main-body ol > ol {
    margin-left: 2rem; }
    @media screen and (min-width: 30em) {
      .main-body ul,
      .main-body ul > ul,
      .main-body ol,
      .main-body ol > ol {
        margin-left: 3.25rem; } }
  .main-body li {
    margin: 12px 0; }
  @media print, screen and (max-width: 29.99875em) {
    .main-body .activekids {
      display: block;
      width: 100%;
      overflow-x: auto; } }
  .main-body .activekids th {
    background-color: #ED5145 !important;
    border: solid 1px #ED5145;
    color: #fefefe;
    text-align: center; }
  .main-body table {
    margin: 30px 0;
    width: 100%;
    border-collapse: collapse;
    /* thead styles */
    /* tbody styles */ }
    @media print, screen and (max-width: 29.99875em) {
      .main-body table {
        display: block;
        width: 100%;
        overflow-x: auto; } }
    .main-body table thead th {
      background-color: #ddd; }
    .main-body table thead td,
    .main-body table thead th {
      font-size: 0.875rem;
      border: 1px solid #dedede;
      padding: 10px;
      vertical-align: top; }
      .main-body table thead td ul,
      .main-body table thead th ul {
        margin: -13px 0 -13px 25px;
        padding: 0; }
        .main-body table thead td ul li,
        .main-body table thead th ul li {
          font-size: 0.875rem; }
      .main-body table thead td p,
      .main-body table thead th p {
        font-size: 0.875rem; }
    .main-body table tbody th {
      background-color: #ddd; }
    .main-body table tbody td {
      background-color: #fefefe; }
    .main-body table tbody td,
    .main-body table tbody th {
      font-size: 0.875rem;
      border: 1px solid #dedede;
      padding: 10px;
      vertical-align: top; }
      .main-body table tbody td ul,
      .main-body table tbody th ul {
        margin: -13px 0 -13px 25px;
        padding: 0; }
        .main-body table tbody td ul li,
        .main-body table tbody th ul li {
          font-size: 0.875rem; }
      .main-body table tbody td p,
      .main-body table tbody th p {
        font-size: 0.875rem;
        padding: 0;
        margin: 0; }
      .main-body table tbody td h2,
      .main-body table tbody th h2 {
        font-size: 0.875rem;
        font-weight: bold;
        margin: 0;
        padding: 0; }

/* featured images for handouts */
img.handout-featured-image {
  float: right;
  margin-left: 1.875rem;
  margin-bottom: 1.25rem; }

/* active kids */
.active-kids-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-left: 0.15625rem;
  margin-right: 0.15625rem; }
  .active-kids-block > .block-item {
    width: calc(100% - 0.625rem);
    margin-left: 0.3125rem;
    margin-right: 0.3125rem; }
  @media screen and (min-width: 30em) {
    .active-kids-block > .block-item {
      width: calc(50% - 0.625rem);
      margin-left: 0.3125rem;
      margin-right: 0.3125rem;
      margin-top: 0.3125rem;
      margin-bottom: 0.3125rem; } }
  @media screen and (min-width: 75em) {
    .active-kids-block > .block-item {
      width: calc(25% - 0.625rem);
      margin-left: 0.3125rem;
      margin-right: 0.3125rem; } }

.active-kids-card img {
  max-height: 413px;
  border-radius: 0;
  margin: 0; }
  @media screen and (min-width: 75em) {
    .active-kids-card img {
      max-height: 264px; } }

/* active kids thumbnail video */
ul.video-thumbnails {
  list-style-type: none;
  margin-left: 25px; }
  ul.video-thumbnails li {
    list-style: none;
    margin-right: 0.625rem;
    display: inline-block !important;
    vertical-align: top;
    width: 160px; }
    ul.video-thumbnails li span {
      display: block;
      margin-top: -0.9375rem;
      font-size: 0.875rem; }

.cfk-reveal {
  padding: 5px 20px;
  width: 35% !important;
  border-radius: 10px; }
  .cfk-reveal h2 {
    margin-top: 20px; }
  .cfk-reveal > button > span {
    font-size: 2.5rem !important;
    font-weight: bolder; }

/* highlights for handouts */
.highlights-container {
  width: 100%;
  float: none;
  margin-bottom: 1.25rem;
  background-color: transparent; }
  @media screen and (min-width: 30em) {
    .highlights-container {
      float: right;
      width: 40%;
      margin: 0 0 1.25rem 1.25rem; } }
  @media screen and (min-width: 75em) {
    .highlights-container {
      width: 30%; } }
  .highlights-container div.header {
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    background-color: #ED5145; }
    .highlights-container div.header h2 {
      margin-bottom: 0;
      padding: 0.625rem;
      color: #fefefe;
      font-size: 1.25rem;
      font-weight: bold; }
      .highlights-container div.header h2 svg {
        margin-top: -0.3125rem;
        margin-bottom: -7px; }
  .highlights-container div.highlights {
    margin-top: 0;
    padding: 0.625rem;
    border: solid 1px #ED5145;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px; }
    .highlights-container div.highlights ul {
      margin: 0 0 0 1.5625rem;
      padding: 0; }
      .highlights-container div.highlights ul li {
        margin: 0.375rem 0;
        font-size: 1rem;
        font-weight: bold; }

.pagination-style a {
  border-radius: 10px;
  background-color: #c9e6f8;
  border-bottom: none;
  color: #0a0a0a; }
  .pagination-style a:hover {
    background-color: #c9e6f8; }

.pagination-style li {
  margin: 0 0.3125rem; }

.pagination-style .current {
  padding: 0;
  border-radius: 10px; }
  .pagination-style .current a {
    color: #fefefe;
    background-color: #299ae5; }
    .pagination-style .current a:hover {
      background-color: #94ccf2;
      color: #0a0a0a; }

.object-fit {
  mix-blend-mode: multiply;
  position: absolute;
  bottom: 0;
  border-radius: 7px; }

.hero--one__object-fit {
  -o-object-fit: contain;
     object-fit: contain; }
  @media screen and (min-width: 75em) {
    .hero--one__object-fit {
      -o-object-fit: cover;
         object-fit: cover;
      height: 80%;
      opacity: 1;
      right: 0; } }

.hero--three__object-fit {
  height: auto;
  position: relative;
  margin-bottom: -2rem;
  z-index: -1; }
  @media screen and (min-width: 75em) {
    .hero--three__object-fit {
      position: absolute;
      top: 0;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      opacity: 1;
      width: 100%; } }

.hero--four__object-fit {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right top;
     object-position: right top;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  mix-blend-mode: screen; }
  @media screen and (min-width: 75em) {
    .hero--four__object-fit {
      mix-blend-mode: screen;
      -o-object-fit: contain;
         object-fit: contain;
      opacity: 1; } }

.hero--five__object-fit {
  -o-object-fit: contain;
     object-fit: contain;
  opacity: 0.5; }
  @media screen and (min-width: 75em) {
    .hero--five__object-fit {
      -o-object-fit: cover;
         object-fit: cover;
      opacity: 1;
      width: 100%;
      height: 100%; } }

.hero--six__object-fit {
  -o-object-fit: cover;
     object-fit: cover;
  bottom: 0;
  height: 50%;
  -o-object-position: bottom center;
     object-position: bottom center;
  right: 0;
  mix-blend-mode: screen; }
  @media screen and (min-width: 75em) {
    .hero--six__object-fit {
      -o-object-fit: cover;
         object-fit: cover;
      height: 80%;
      opacity: 0.8;
      width: 70%; } }

.hero--seven__object-fit {
  -o-object-fit: cover;
     object-fit: cover;
  bottom: 0;
  height: 100%;
  width: 100%;
  -o-object-position: bottom center;
     object-position: bottom center;
  right: 0;
  z-index: -1; }
  @media screen and (min-width: 75em) {
    .hero--seven__object-fit {
      -o-object-fit: cover;
         object-fit: cover;
      opacity: 0.5; } }
  @media screen and (min-width: 90em) {
    .hero--seven__object-fit {
      -o-object-fit: cover;
         object-fit: cover;
      opacity: 1;
      z-index: -1; } }

@media print {
  * {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  *,
  *::before,
  *::after {
    background: #fff !important;
    color: #000 !important;
    /* Black prints faster */
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important; }
  @page {
    size: 7.5in 10.5in; }
  a,
  a:visited {
    text-decoration: none !important;
    border-bottom: none !important; }
  abbr[title]::after {
    content: none; }
  /*
    * Don't show links that are fragment identifiers,
    * or use the `javascript:` pseudo protocol
    */
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: ""; }
  pre {
    white-space: pre-wrap !important; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  /*
    * Printing Tables:
    * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
    */
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h1,
  h2,
  h3,
  h4,
  h5 {
    letter-spacing: normal;
    page-break-after: avoid; }
  /* font sizing */
  p,
  li,
  td {
    font-size: 18px !important; }
  h1 {
    font-size: 1.625rem !important; }
  h2 {
    font-size: 1.375rem !important; }
  h3 {
    font-size: 1.125rem !important; }
  h4,
  h5,
  h6 {
    font-size: 0.875rem !important; }
  .main-body .more-info {
    margin-bottom: 0;
    padding-bottom: 0; }
  .footer {
    overflow: inherit;
    margin-top: 3rem; }
  .footer-logos {
    margin-top: -3.75rem; }
  html, body, div, span, applet, object, iframe, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    font-size: 16px !important; }
  /* adjust positioning of content in relation to logo */
  .main-body {
    margin-top: 2.5rem; }
  /* add links to handout list page */
  .show-list-links-for-print a[href]::after {
    content: "\a(" attr(href) ")";
    white-space: break-spaces; }
  /* home page styles */
  .hero-block-print {
    margin-top: 3.125rem; }
    .hero-block-print .cfk-button {
      border: 0;
      display: inline-block;
      color: #fff;
      padding: 1rem 0;
      font-size: 18px;
      font-family: "NeogroteskEssAlt-Regular";
      margin: 1rem 0;
      -webkit-transition: all .3s ease-in-out;
      transition: all .3s ease-in-out; }
    .hero-block-print .hero__summary p,
    .hero-block-print .hero--two__content p,
    .hero-block-print .hero--three__summary p,
    .hero-block-print .hero--five__summary p {
      text-align: left; }
    .hero-block-print .hero--three__heading {
      color: #0a0a0a;
      background-color: transparent; }
    .hero-block-print .hero__heading {
      margin-bottom: 20px; }
    .hero-block-print .section-link {
      display: none; }
  .hero--two {
    margin: 0;
    padding: 0; }
  .full1 * {
    padding: 0;
    margin: 0; }
  .hero__heading,
  .hero--five__heading {
    margin-bottom: 20px; }
  *,
  *::before,
  *::after {
    background: transparent !important;
    color: #000 !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-size: 14px; }
  .has-border--light-blue, .has-border--peach, .main-body h1 {
    border-bottom: none;
    margin-bottom: 15px; }
  p a.hero__button {
    display: none; }
  /* English home page */
  #content > div > div.grid-container.full.hearts > div > div > section > div > div > div.grid-x.grid-margin-x > div:nth-child(4) > p {
    display: none; }
  #content > div > div:nth-child(1) > section > div > div > div > div > p.text-center {
    display: none; }
  #content > div > div.grid-container.full.hearts > div > div > section > div > div > div:nth-child(1) > div > h2 {
    margin-top: 20px; }
  #content > div > div.grid-container.full.hearts > div > div > section > div > div > div:nth-child(1) > div > h2 {
    font-weight: bold;
    margin-bottom: 10px; }
  #content > div > div:nth-child(3) > section > div > div > div > h2 {
    font-weight: bold;
    font-family: Rationell-ExtraBold, sans-serif;
    margin-bottom: 20px; }
  #content > div > div:nth-child(3) > section > div > div > div > div > p.text-center {
    display: none; }
  #content > div > div:nth-child(4) > section > div > div > div > div {
    margin-top: -15px; }
  #content > div > div:nth-child(4) > section > div > div > div > div > p.text-center {
    display: none; }
  #content > div > div:nth-child(4) > section > div > div > div > div > p:nth-child(1) {
    margin-bottom: 20px; }
  #content > div > div:nth-child(4) > section > div > div > div > div {
    page-break-inside: avoid;
    margin-bottom: 20px; }
  #content > div > div:nth-child(4) > section > div > div > div > h2 {
    page-break-inside: avoid; }
  body > footer > div > div > nav.footer-logos {
    page-break-inside: avoid; }
  /* french home page */
  #content > div > div:nth-child(4) > section > div > div > div > h2 {
    font-weight: bold;
    font-family: Rationell-ExtraBold, sans-serif;
    margin-bottom: 35px;
    margin-top: 20px; }
  .footer {
    margin-top: 0; }
  .footer-logos {
    margin-top: 0; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jZWxsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS1pY29uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi1tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX2tleWZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc2xpZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19mYWRlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9lZmZlY3RzL19oaW5nZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fem9vbS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NwaW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX2FuaW1hdGlvbi5zY3NzIiwiaGVscGVyL19taXhpbnMuc2NzcyIsImhlbHBlci9fdXRpbGl0eS5zY3NzIiwiZ2xvYmFsL190eXBvZ3JhcGh5LnNjc3MiLCJnbG9iYWwvX3ZhcmlhYmxlLW92ZXJyaWRlcy5zY3NzIiwiZ2xvYmFsL19tb3JlLWluZm8uc2NzcyIsImdsb2JhbC9fZ2xvYmFsLnNjc3MiLCJnbG9iYWwvX2hlYWRlci5zY3NzIiwiZ2xvYmFsL19mb290ZXIuc2NzcyIsImdsb2JhbC9faG9tZS5zY3NzIiwiZ2xvYmFsL190d28tY29sdW1ucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9wcm90b3R5cGUvX3JvdW5kZWQuc2NzcyIsImdsb2JhbC9fb2JqZWN0LWZpdC5zY3NzIiwiZ2xvYmFsL19wcmludC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7Ozs7RURNRTtBRStLTTtFQ3hJTjtJQUNFLFdBQVc7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OztBQUl0QjtFQUNFLHlCQUF5QixFQUFBOztBQUczQjtFQUNFLHdCQUF3QixFQUFBOztBTFQ1Qjs7RVFqSkUsY0FBYztFQUNkLDhCQUFzQjtVQUF0QixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLGlCQUxzSjtFQU10SixnQkNIdUQ7RURJdkQsZUZ3WCtCO0VFdFgvQix5QkZkbUI7RUVlbkIsZ0JGRmU7RUVHZix5QkZiYTtFRWNiLHlERmZhO1VFZWIsaURGZmE7RUVpQmIsb0JGd1d5QjtFRXZXekIsZUNadUQ7RURhdkQsbUJGVjJCO0VFVzNCLGdCRi9CcUI7RUVnQ3JCLGNGckJhO0VFd0JYLDJFRjhXOEQ7RUU5VzlELG1FRjhXOEQ7RUU5VzlELDJERjhXOEQ7RUU5VzlELG9GRjhXOEQ7RUV6VjlELHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBQUE7RVI0SGxCOztJUTVJRSxhQUFhO0lBQ2IseUJGL0JlO0lFZ0NmLHlCRjlCVztJRStCWCxtQ0ZsQ2lCO1lFa0NqQiwyQkZsQ2lCO0lFcUNmLDJFRm1XNEQ7SUVuVzVELG1FRm1XNEQ7SUVuVzVELDJERm1XNEQ7SUVuVzVELG9GRm1XNEQsRUFBQTs7QUZ2UWhFO0VJN0VFLGVBQWUsRUFBQTtFQURqQjtJQUlJLFlBQVksRUFBQTs7QUFJaEI7OztFQUtJLHlCRmpFYztFRWtFZCxtQkZzVTZCLEVBQUE7O0FOek1uQzs7RVF0SEksd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0I7RUFDaEIsZ0JGNURhLEVBQUE7O0FFZ0VmO0VBQ0UsOEJBQXNCO1VBQXRCLHNCQUFzQixFQUFBOztBQWlCeEI7RUFDRSxjRmhHaUIsRUFBQTs7QUUrRm5CO0VBQ0UsY0ZoR2lCLEVBQUE7O0FFK0ZuQjtFQUNFLGNGaEdpQixFQUFBOztBRStGbkI7RUFDRSxjRmhHaUIsRUFBQTs7QUUrRm5CO0VBQ0UsY0ZoR2lCLEVBQUE7O0FOeU1yQjs7O0VVN1FJLGdCRDRFcUQsRUFBQTs7QVRzTXpEOztFVTVRSSxxQkFBcUI7RUFDckIsd0JBQXdCO0VBRXhCLG1CQUFrRDtF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QUE7O0FXd0pyQjtFQUlJLG9CUjNONkM7RVF1TzdDLGdCWHpLVztFV2lMWCxhQUFhO0VBT2IscUJYdkxpQixFQUFBOztBV3dKckI7RUFJSSxtQlIzTjZDO0VRdU83QyxnQlh6S1c7RVdpTFgsYUFBYTtFQU9iLHFCWHZMaUIsRUFBQTs7QVd3SnJCO0VBSUksb0JSM042QztFUXVPN0MsZ0JYektXO0VXaUxYLGFBQWE7RUFPYixxQlh2TGlCLEVBQUE7O0FXd0pyQjtFQUlJLGVSM042QztFUXVPN0MsZ0JYektXO0VXaUxYLGFBQWE7RUFPYixxQlh2TGlCLEVBQUE7O0FKOEJyQjtFZTBIQTtJQUlJLGVSM042QyxFQUFBO0VRdU5qRDtJQUlJLGlCUjNONkMsRUFBQTtFUXVOakQ7SUFJSSxvQlIzTjZDLEVBQUE7RVF1TmpEO0lBSUksb0JSM042QyxFQUFBO0VRdU5qRDtJQUlJLGtCUjNONkMsRUFBQTtFUXVOakQ7SUFJSSxlUjNONkMsRUFBQSxFUXdQaEQ7O0FieFJQO0VhK1JFLG9CQUFvQjtFQUNwQixjWC9RYztFV2dSZCxxQlh0S3lCO0VXd0t6QixlQUFlLEVBQUE7RUFMakI7SUFTSSxjWDdLMkQsRUFBQTtFV29LL0Q7SUFnQkksU0FBUyxFQUFBOztBYmpVYjtFYXVVRSxXQUFXO0VBRVgsaUJYeFNpQjtFV3lTakIsU0FBUztFQUNULG9CWHpMeUI7RVcyTHpCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0NYcFNpQjtFV3FTakIsY0FBYyxFQUFBOztBQUloQjs7O0VBR0UsbUJYOU0wQjtFVytNMUIsNEJYbE15QjtFV21NekIsZ0JYak5zQixFQUFBOztBV3FOeEI7RUFDRSxrQkFBa0IsRUFBQTs7QUFJcEI7RUFDRSxvQlg1TXNCO0VXNk10QixxQlgvTWtCLEVBQUE7O0FXbU5wQjtFQUNFLG9CWGxOc0IsRUFBQTs7QVdzTnhCO0VBRUksb0JYdk4yQjtFV3dOM0IsZ0JBQWdCLEVBQUE7O0FBS3BCO0VBQ0UsbUJYN055QixFQUFBO0VXNE4zQjtJQUlJLHFCWDlOOEI7SVcrTjlCLGlCWG5VbUIsRUFBQTs7QVd3VXZCO0VB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QnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixVQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFdDbkJ5RCxFQUFBLEVKbkR0RDs7QW5CdUZDO0VtQjlHRjtJR2tESixtQkFBTTtJQUFOLHFCQUFNO1FBQU4saUJBQU07WUFBTixhQUFNO0lBMkNKLFdBbEZZLEVBQUE7RUhOWjtJRzZDRixtQkFBTTtJQUFOLHNCQUFNO1FBQU4sa0JBQU07WUFBTixjQUFNLEVBQUE7RUh2Q0Y7SUdrRkYsV0FsRlksRUFBQTtFSFNWO0lHeUVGLGVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsVUNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixVQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFdDbkJ5RCxFQUFBLEVKbkR0RDs7QW5CdUZDO0VtQjlHRjtJR2tESixtQkFBTTtJQUFOLHFCQUFNO1FBQU4saUJBQU07WUFBTixhQUFNO0lBMkNKLFdBbEZZLEVBQUE7RUhOWjtJRzZDRixtQkFBTTtJQUFOLHNCQUFNO1FBQU4sa0JBQU07WUFBTixjQUFNLEVBQUE7RUh2Q0Y7SUdrRkYsV0FsRlksRUFBQTtFSFNWO0lHeUVGLGVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsVUNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixVQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFdDbkJ5RCxFQUFBLEVKbkR0RDs7QW5CdUZDO0VtQjlHRjtJR2tESixtQkFBTTtJQUFOLHFCQUFNO1FBQU4saUJBQU07WUFBTixhQUFNO0lBMkNKLFdBbEZZLEVBQUE7RUhOWjtJRzZDRixtQkFBTTtJQUFOLHNCQUFNO1FBQU4sa0JBQU07WUFBTixjQUFNLEVBQUE7RUh2Q0Y7SUdrRkYsV0FsRlksRUFBQTtFSFNWO0lHeUVGLGVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsVUNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixVQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFdDbkJ5RCxFQUFBLEVKbkR0RDs7QUFLTDtFQUNFLFdBQVcsRUFBQTs7QUFJYjtFQUNFLFlBQVksRUFBQTs7QUE4QmQ7RUN2R00sc0JBQTZEO0VBQTdELHVCQUE2RCxFQUFBO0VwQnFKN0Q7SW1COUNOO01DdkdNLHVCQUE2RDtNQUE3RCx3QkFBNkQsRUFBQSxFRHNJbEU7RUEvQkQ7SUc2QkUsMkJBdEQ4RjtJRnJFNUYscUJBQTZEO0lBQTdELHNCQUE2RCxFQUFBO0VwQjRJM0Q7SW1COUNOO01HNkJFLDRCQXREOEY7TUZyRTVGLHNCQUE2RDtNQUE3RCx1QkFBNkQsRUFBQSxFRDJHMUQ7RUFyQ1A7SUdxREUsV0FsRlksRUFBQTtFSGlDZDtJR2lERSxXQWxGWSxFQUFBO0VIeUNaO0lHeUNBLCtCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0V0QnVFMUY7SW1CdEVOO01HcURFLFdBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsV0FsRlksRUFBQTtJSHlDWjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSENoRztNR3FERSxXQWxGWSxFQUFBO0lIaUNkO01HaURFLFdBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUEsRUhlN0Y7RW5Cd0RHO0ltQnRFTjtNR3FERSxXQWxGWSxFQUFBO0lIaUNkO01HaURFLFdBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUEsRUhlN0Y7RW5Cd0RHO0ltQnRFTjtNR3FERSxXQWxGWSxFQUFBO0lIaUNkO01HaURFLFdBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUEsRUhlN0Y7RW5Cd0RHO0ltQnRFTjtNR3FERSxXQWxGWSxFQUFBO0lIaUNkO01HaURFLFdBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUEsRUhlN0Y7O0FBOENIO0VDM0lNLHVCQUE2RDtFQUE3RCxzQkFBNkQsRUFBQTtFcEJxSjdEO0ltQlZOO01DM0lNLHdCQUE2RDtNQUE3RCx1QkFBNkQsRUFBQSxFRGdKaEU7O0FBSUQ7RUNwSkksdUJBQTZEO0VBQTdELHNCQUE2RCxFQUFBO0VwQnFKN0Q7SW1CREo7TUNwSkksd0JBQTZEO01BQTdELHVCQUE2RCxFQUFBLEVEc0poRTs7QUFYSDtFQzNJTSx1QkFBNkQ7RUFBN0Qsc0JBQTZELEVBQUE7RXBCcUo3RDtJbUJWTjtNQzNJTSx3QkFBNkQ7TUFBN0QsdUJBQTZELEVBQUEsRUQySmhFOztBSzNKSDtFRm9JRSxXQ25CeUQsRUFBQTs7QUNqSDNEO0VGb0lFLFVDbkJ5RCxFQUFBOztBQ2pIM0Q7RUZvSUUsZ0JDbkJ5RCxFQUFBOztBQ2pIM0Q7RUZvSUUsVUNuQnlELEVBQUE7O0FDakgzRDtFRm9JRSxVQ25CeUQsRUFBQTs7QUNqSDNEO0VGb0lFLGdCQ25CeUQsRUFBQTs7QUNqSDNEO0VGb0lFLGdCQ25CeUQsRUFBQTs7QUNqSDNEO0VGb0lFLFlDbkJ5RCxFQUFBOztBdkJvQ3JEO0V3QnJKTjtJRm9JRSxXQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsVUNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLGdCQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsVUNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFVDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxnQkNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLGdCQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsWUNuQnlELEVBQUEsRUMvRzFEOztBeEJtSks7RXdCckpOO0lGb0lFLFdDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxVQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsZ0JDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxVQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsVUNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLGdCQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsZ0JDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxZQ25CeUQsRUFBQSxFQy9HMUQ7O0F4Qm1KSztFd0JySk47SUZvSUUsV0NuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFVDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxnQkNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFVDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxVQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsZ0JDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxnQkNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFlDbkJ5RCxFQUFBLEVDL0cxRDs7QXhCbUpLO0V3QnJKTjtJRm9JRSxXQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsVUNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLGdCQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsVUNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFVDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxnQkNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLGdCQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsWUNuQnlELEVBQUEsRUMvRzFEOztBQUZEO0VGb0lFLDJCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDRCQXREOEYsRUFBQTs7QXRCdUUxRjtFd0JySk47SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwyQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGlDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwyQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGlDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsaUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw2QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxpQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDJCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxpQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGlDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNkJBdEQ4RixFQUFBLEVFNUUvRjs7QXhCbUpLO0V3QnJKTjtJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDJCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsaUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwyQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDJCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsaUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxpQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDZCQXREOEYsRUFBQSxFRTVFL0Y7O0F4Qm1KSztFd0JySk47SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwyQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGlDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwyQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGlDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsaUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw2QkF0RDhGLEVBQUEsRUU1RS9GOztBeEJtSks7RXdCckpOO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxpQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDJCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxpQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGlDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNkJBdEQ4RixFQUFBLEVFNUUvRjs7QUxxTUc7RU05TUUsZUFBMEI7RUFBMUIsY0FBMEIsRUFBQTtFQUc1QjtJQUVJLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7RUFzQnhCO0lIZ0hSLGVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFdDbkJ5RCxFQUFBO0V2Qm9DckQ7SXlCaklJO01IZ0hSLGVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsVUNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixVQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDtFekIrSEw7SXlCaklJO01IZ0hSLGVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsVUNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixVQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDtFekIrSEw7SXlCaklJO01IZ0hSLGVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsVUNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixVQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDtFekIrSEw7SXlCaklJO01IZ0hSLGVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsVUNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixVQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDs7QU51TFA7RU03S0UsZUFBMEI7RUFBMUIsY0FBMEIsRUFBQTtFQUc1QjtJQUVJLGdCQUE0QjtJQUE1QixlQUE0QixFQUFBOztBekJnSDlCO0VtQmtERjtJTTlNRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZUFBMEI7TUFBMUIsY0FBMEIsRUFBQSxFQUU3Qjs7QXpCcUpDO0V5QjFJSTtJSHlIUixlQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixXQ25CeUQsRUFBQSxFRXBHaEQ7O0F6QndJTDtFeUJqSUk7SUhnSFIsZUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsV0NuQnlELEVBQUEsRUUzRmhEOztBekIrSEw7RXlCaklJO0lIZ0hSLGVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDs7QXpCK0hMO0V5QmpJSTtJSGdIUixlQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixXQ25CeUQsRUFBQSxFRTNGaEQ7O0F6QitITDtFeUJqSUk7SUhnSFIsZUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsV0NuQnlELEVBQUEsRUUzRmhEOztBekIrSEw7RW1Cd0RGO0lNN0tFLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxnQkFBNEI7TUFBNUIsZUFBNEIsRUFBQSxFQUUvQjs7QXpCOEdDO0VtQmtERjtJTTlNRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZUFBMEI7TUFBMUIsY0FBMEIsRUFBQSxFQUU3Qjs7QXpCcUpDO0V5QjFJSTtJSHlIUixlQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixXQ25CeUQsRUFBQSxFRXBHaEQ7O0F6QndJTDtFeUIxSUk7SUh5SFIsZUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsV0NuQnlELEVBQUEsRUVwR2hEOztBekJ3SUw7RXlCaklJO0lIZ0hSLGVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDs7QXpCK0hMO0V5QmpJSTtJSGdIUixlQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixXQ25CeUQsRUFBQSxFRTNGaEQ7O0F6QitITDtFeUJqSUk7SUhnSFIsZUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsV0NuQnlELEVBQUEsRUUzRmhEOztBekIrSEw7RW1Cd0RGO0lNN0tFLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxnQkFBNEI7TUFBNUIsZUFBNEIsRUFBQSxFQUUvQjs7QXpCOEdDO0VtQmtERjtJTTlNRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZUFBMEI7TUFBMUIsY0FBMEIsRUFBQSxFQUU3Qjs7QXpCcUpDO0V5QjFJSTtJSHlIUixlQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixXQ25CeUQsRUFBQSxFRXBHaEQ7O0F6QndJTDtFeUIxSUk7SUh5SFIsZUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsV0NuQnlELEVBQUEsRUVwR2hEOztBekJ3SUw7RXlCMUlJO0lIeUhSLGVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFdDbkJ5RCxFQUFBLEVFcEdoRDs7QXpCd0lMO0V5QmpJSTtJSGdIUixlQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixXQ25CeUQsRUFBQSxFRTNGaEQ7O0F6QitITDtFeUJqSUk7SUhnSFIsZUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsV0NuQnlELEVBQUEsRUUzRmhEOztBekIrSEw7RW1Cd0RGO0lNN0tFLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxnQkFBNEI7TUFBNUIsZUFBNEIsRUFBQSxFQUUvQjs7QXpCOEdDO0VtQmtERjtJTTlNRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZUFBMEI7TUFBMUIsY0FBMEIsRUFBQSxFQUU3Qjs7QXpCcUpDO0V5QjFJSTtJSHlIUixlQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixXQ25CeUQsRUFBQSxFRXBHaEQ7O0F6QndJTDtFeUIxSUk7SUh5SFIsZUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsV0NuQnlELEVBQUEsRUVwR2hEOztBekJ3SUw7RXlCMUlJO0lIeUhSLGVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFdDbkJ5RCxFQUFBLEVFcEdoRDs7QXpCd0lMO0V5QjFJSTtJSHlIUixlQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixXQ25CeUQsRUFBQSxFRXBHaEQ7O0F6QndJTDtFeUJqSUk7SUhnSFIsZUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsV0NuQnlELEVBQUEsRUUzRmhEOztBekIrSEw7RW1Cd0RGO0lNN0tFLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxnQkFBNEI7TUFBNUIsZUFBNEIsRUFBQSxFQUUvQjs7QU5vTEQ7RU92TUYsZUFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLGdDQUE2QixFQUFBOztBUHVNM0I7RU92TUYscUJBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRixzQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLHNCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsdUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixnQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLGlDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsc0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRix1Q0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLHNCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsdUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixnQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLGlDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsc0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRix1Q0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLHNCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsdUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixnQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLGlDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsc0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRix1Q0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLHNCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsdUNBQTZCLEVBQUE7O0ExQmlJekI7RW1Cc0VGO0lPdk1GLGVBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGlDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixxQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGtDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGtDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGtDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQSxFUDZNMUI7O0FuQjVFQztFbUJzRUY7SU92TUYsZUFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsaUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHFCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix1Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHdDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsa0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHdDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsa0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHdDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsa0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHdDQUE2QixFQUFBLEVQNk0xQjs7QW5CNUVDO0VtQnNFRjtJT3ZNRixlQUE2QixFQUFBO0VQMk0zQjtJTzNNRixpQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYscUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixrQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHdDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixrQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHdDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixrQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHdDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUEsRVA2TTFCOztBbkI1RUM7RW1Cc0VGO0lPdk1GLGVBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGlDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixxQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGtDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGtDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGtDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsd0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQSxFUDZNMUI7O0FBekpTO0VFdEVkLG9CQUFhO0VBQWIscUJBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYiw0QkFINkI7RUFHN0IsNkJBSDZCO0VBRzdCLGdDQUg2QjtNQUc3Qiw0QkFINkI7VUFHN0Isd0JBSDZCLEVBQUE7RUZpUDdCO0lHMUlBLFlBQW1CO0lBQ25CLGdCQUEyQixFQUFBO0VIeUkzQjtJRzdHRSxZQWxGWSxFQUFBO0VIK0xkO0lHN0dFLFlBbEZZLEVBQUE7RUgrTGQ7SUEyQk0sd0JBQWdCO1FBQWhCLDZCQUFnQjtZQUFoQixnQkFBZ0IsRUFBQTtFbkJ2SGhCO0ltQjRGTjtNQTJCTSx3QkFBZ0I7VUFBaEIsNkJBQWdCO2NBQWhCLGdCQUFnQixFQUFBLEVBQ2pCO0VuQnhIQztJbUI0Rk47TUEyQk0sd0JBQWdCO1VBQWhCLDZCQUFnQjtjQUFoQixnQkFBZ0IsRUFBQSxFQUNqQjtFbkJ4SEM7SW1CNEZOO01BMkJNLHdCQUFnQjtVQUFoQiw2QkFBZ0I7Y0FBaEIsZ0JBQWdCLEVBQUEsRUFDakI7RW5CeEhDO0ltQjRGTjtNQTJCTSx3QkFBZ0I7VUFBaEIsNkJBQWdCO2NBQWhCLGdCQUFnQixFQUFBLEVBQ2pCO0VBNUJMO0lHeEpBLG1CQUFNO0lBQU4sc0JBQU07UUFBTixrQkFBTTtZQUFOLGNBQU0sRUFBQTtFSHdKTjtJRzdHRSxnQkNuQnlELEVBQUE7RUpnSTNEO0lHN0dFLGlCQ25CeUQsRUFBQTtFSmdJM0Q7SUc3R0UsV0NuQnlELEVBQUE7RUpnSTNEO0lHN0dFLGlCQ25CeUQsRUFBQTtFSmdJM0Q7SUc3R0UsaUJDbkJ5RCxFQUFBO0VKZ0kzRDtJRzdHRSxXQ25CeUQsRUFBQTtFSmdJM0Q7SUc3R0UsaUJDbkJ5RCxFQUFBO0VKZ0kzRDtJRzdHRSxpQkNuQnlELEVBQUE7RUpnSTNEO0lHN0dFLFdDbkJ5RCxFQUFBO0VKZ0kzRDtJRzdHRSxpQkNuQnlELEVBQUE7RUpnSTNEO0lHN0dFLGlCQ25CeUQsRUFBQTtFSmdJM0Q7SUc3R0UsWUNuQnlELEVBQUE7RXZCb0NyRDtJbUI0Rk47TUd4SkEsbUJBQU07TUFBTixxQkFBTTtVQUFOLGlCQUFNO2NBQU4sYUFBTTtNQTJDSixZQWxGWSxFQUFBO0lIK0xkO01HeEpBLG1CQUFNO01BQU4sc0JBQU07VUFBTixrQkFBTTtjQUFOLGNBQU0sRUFBQTtJSHdKTjtNRzdHRSxZQWxGWSxFQUFBO0lIK0xkO01HN0dFLGdCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxXQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFdDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsV0NuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxZQ25CeUQsRUFBQSxFSnlMcEQ7RW5CckpEO0ltQjRGTjtNR3hKQSxtQkFBTTtNQUFOLHFCQUFNO1VBQU4saUJBQU07Y0FBTixhQUFNO01BMkNKLFlBbEZZLEVBQUE7SUgrTGQ7TUd4SkEsbUJBQU07TUFBTixzQkFBTTtVQUFOLGtCQUFNO2NBQU4sY0FBTSxFQUFBO0lId0pOO01HN0dFLFlBbEZZLEVBQUE7SUgrTGQ7TUc3R0UsZ0JDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFdDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsV0NuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxXQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFlDbkJ5RCxFQUFBLEVKeUxwRDtFbkJySkQ7SW1CNEZOO01HeEpBLG1CQUFNO01BQU4scUJBQU07VUFBTixpQkFBTTtjQUFOLGFBQU07TUEyQ0osWUFsRlksRUFBQTtJSCtMZDtNR3hKQSxtQkFBTTtNQUFOLHNCQUFNO1VBQU4sa0JBQU07Y0FBTixjQUFNLEVBQUE7SUh3Sk47TUc3R0UsWUFsRlksRUFBQTtJSCtMZDtNRzdHRSxnQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsV0NuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxXQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFdDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsWUNuQnlELEVBQUEsRUp5THBEO0VuQnJKRDtJbUI0Rk47TUd4SkEsbUJBQU07TUFBTixxQkFBTTtVQUFOLGlCQUFNO2NBQU4sYUFBTTtNQTJDSixZQWxGWSxFQUFBO0lIK0xkO01HeEpBLG1CQUFNO01BQU4sc0JBQU07VUFBTixrQkFBTTtjQUFOLGNBQU0sRUFBQTtJSHdKTjtNRzdHRSxZQWxGWSxFQUFBO0lIK0xkO01HN0dFLGdCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxXQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFdDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsV0NuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxZQ25CeUQsRUFBQSxFSnlMcEQ7O0FBT0w7RUNqVEkscUJBQTZEO0VBQTdELHdCQUE2RCxFQUFBO0VwQnFKN0Q7SW1CNEpKO01DalRJLHNCQUE2RDtNQUE3RCx5QkFBNkQsRUFBQSxFRHFUOUQ7O0FBSkg7RUNqVEkscUJBQTZEO0VBQTdELHdCQUE2RCxFQUFBO0VwQnFKN0Q7SW1CNEpKO01DalRJLHNCQUE2RDtNQUE3RCx5QkFBNkQsRUFBQSxFRDBUOUQ7O0FBbk5MO0VDdkdNLHFCQUE2RDtFQUE3RCx3QkFBNkQsRUFBQTtFcEJxSjdEO0ltQjlDTjtNQ3ZHTSxzQkFBNkQ7TUFBN0QseUJBQTZELEVBQUEsRURzSWxFO0VBL0JEO0lHNkJFLDRCQXREOEY7SUZyRTVGLG9CQUE2RDtJQUE3RCx1QkFBNkQsRUFBQTtFcEI0STNEO0ltQjlDTjtNRzZCRSw2QkF0RDhGO01GckU1RixxQkFBNkQ7TUFBN0Qsd0JBQTZELEVBQUEsRUQyRzFEO0VBckNQO0lHcURFLFlBbEZZLEVBQUE7RUhpQ2Q7SUdpREUsWUFsRlksRUFBQTtFSHlDWjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDRCQXREOEYsRUFBQTtFdEJ1RTFGO0ltQnRFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBLEVIZTdGO0VuQndERztJbUJ0RU47TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBLEVIZTdGO0VuQndERztJbUJ0RU47TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5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QnVFMUY7SW1CdEVOO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSENoRztNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUEsRUhlN0Y7RW5Cd0RHO0ltQnRFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUEsRUhlN0Y7RW5Cd0RHO0ltQnRFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUEsRUhlN0Y7RW5Cd0RHO0ltQnRFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUEsRUhlN0Y7O0FBa1REO0VRNVlJLDZCQUFtQyxFQUFBO0UzQmtKbkM7SW1CMFBKO01RNVlJLDhCQUFtQyxFQUFBLEVSOFl0QztFbkI1UEc7SW1CMFBKO01RNVlJLDhCQUFtQyxFQUFBLEVSOFl0QztFbkI1UEc7SW1CMFBKO01RNVlJLDhCQUFtQyxFQUFBLEVSOFl0QztFbkI1UEc7SW1CMFBKO01RNVlJLDhCQUFtQyxFQUFBLEVSOFl0Qzs7QW5CNVBHO0VtQjhQRjtJUWhaRSw4QkFBbUMsRUFBQSxFUmtacEM7O0FuQmhRQztFbUI4UEY7SVFoWkUsOEJBQW1DLEVBQUEsRVJrWnBDOztBbkJoUUM7RW1COFBGO0lRaFpFLDhCQUFtQyxFQUFBLEVSa1pwQzs7QW5CaFFDO0VtQjhQRjtJUWhaRSw4QkFBbUMsRUFBQSxFUmtacEM7O0FTekdMO0VBMU9BLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsa0J4QjBNa0M7RXdCaE1oQyxtQnhCK0x1QjtFd0I1THpCLDZCeEJvTW1DO0V3Qm5NbkMsZ0J4QnJCZTtFd0JzQmYseUV4QjhNdUU7RXdCOU12RSxpRXhCOE11RTtFd0I3TXZFLG9CeEJ1TDBCO0V3QnRMMUIsaUJ4QnFNZTtFd0JuTWYsd0JBQXdCO0VBQ3hCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsZUFBZSxFQUFBO0U5Qm9sR2Y7SU9wZ0dFLFVBQVUsRUFBQTtFdUJrSVo7SUFNTSxpQnhCMUJNLEVBQUE7RXdCb0JaO0lBTU0sa0J4QnpCUSxFQUFBO0V3Qm1CZDtJQU1NLGtCeEJ2QlEsRUFBQTtFd0JpQmQ7SUEzTUUsY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0lBQ2YsY0FBYyxFQUFBO0VBaUVoQjtJQUlFLHlCeEJoSWM7SXdCaUlkLGN4QnZIVyxFQUFBO0V3QjBIYjtJQUNFLHlCeEJtR3VFO0l3QmxHdkUsY3hCNUhXLEVBQUE7RXdCa0hiO0lBSUUseUJ4QmhJYztJd0JpSWQsY3hCdkhXLEVBQUE7RXdCMEhiO0lBQ0UseUJBYm9GO0lBY3BGLGN4QjVIVyxFQUFBO0V3QmtIYjtJQUlFLHlCeEIvSGdCO0l3QmdJaEIsY3hCdkhXLEVBQUE7RXdCMEhi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bkRrQjtFQW9EbEIseUJBeENnQjtFQXdDaEIsMkJBeENnQjtNQXdDaEIsc0JBeENnQjtVQXdDaEIsbUJBeENnQjtFRHdGZCw2QkFBcUI7TUFBckIsMEJBQXFCO1VBQXJCLHFCQUFxQixFQUFBOztBQU1uQjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QTlDd0VWO0U4Q3ZFRjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUEsRUFHWDs7QTlDcUVDO0U4Q3ZFRjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUEsRUFHWDs7QTlDcUVDO0U4Q3ZFRjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUEsRUFHWDs7QTlDcUVD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QmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixVRmhDa0M7RUlFbEMsb0NBQTRCO0VBQTVCLDRCQUE0QixFQUFBOztBTFU1QjtFR29CQSxVRmhDcUMsRUFBQTs7QURBckM7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLFVGL0JrQztFSUNsQyxvQ0FBNEI7RUFBNUIsNEJBQTRCLEVBQUE7O0FMVTVCO0VHb0JBLFVGL0JxQyxFQUFBOztBRERyQztFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIsc0RHckNtQztVSHFDbkMsOENHckNtQztFSHFDbkMsNkJGNUJtRDtNRTRCbkQseUJGNUJtRDtVRTRCbkQscUJGNUJtRDtFTUlqRCx1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkIsRUFBQTs7QVBHN0I7RUdvQkEsbURHVDRDO1VIUzVDLDJDR1Q0QztFQ0oxQyxVQUEyQixFQUFBOztBUG5CN0I7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLHNER3BDcUM7VUhvQ3JDLDhDR3BDcUM7RUhvQ3JDLCtCRjNCcUQ7TUUyQnJELDJCRjNCcUQ7VUUyQnJELHVCRjNCcUQ7RU1HbkQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQTJCLEVBQUE7O0FQRzdCO0VHb0JBLG1ER1Q0QztVSFM1QywyQ0dUNEM7RUNKMUMsVUFBMkIsRUFBQTs7QVBuQjdCO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixxREduQ2lDO1VIbUNqQyw2Q0duQ2lDO0VIbUNqQyxnQ0YxQnNEO01FMEJ0RCw0QkYxQnNEO1VFMEJ0RCx3QkYxQnNEO0VNRXBELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQixFQUFBOztBUEc3QjtFR29CQSxtREdUNEM7VUhTNUMsMkNHVDRDO0VDSjFDLFVBQTJCLEVBQUE7O0FQbkI3QjtFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIscURHbEMrQjtVSGtDL0IsNkNHbEMrQjtFSGtDL0IsOEJGekJvRDtNRXlCcEQsMEJGekJvRDtVRXlCcEQsc0JGekJvRDtFTUNsRCx1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkIsRUFBQTs7QVBHN0I7RUdvQkEsbURHVDRDO1VIUzVDLDJDR1Q0QztFQ0oxQyxVQUEyQixFQUFBOztBUG5CN0I7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLHNER3JDbUM7VUhxQ25DLDhDR3JDbUM7RUhxQ25DLGdDR0VlO01IRmYsNEJHRWU7VUhGZix3QkdFZTtFQzFCYix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkIsRUFBQTs7QVBHN0I7RUdvQkEsbURHVDRDO1VIUzVDLDJDR1Q0QztFQ0oxQyxVQUEyQixFQUFBOztBUG5CN0I7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLHNER3BDcUM7VUhvQ3JDLDhDR3BDcUM7RUhvQ3JDLGdDR0VlO01IRmYsNEJHRWU7VUhGZix3QkdFZTtFQzFCYix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkIsRUFBQTs7QVBHN0I7RUdvQkEsbURHVDRDO1VIUzVDLDJDR1Q0QztFQ0oxQyxVQUEyQixFQUFBOztBUG5CN0I7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLG1ER1A4QztVSE85QywyQ0dQOEM7RUhPOUMsNkJGdEJtRDtNRXNCbkQseUJGdEJtRDtVRXNCbkQscUJGdEJtRDtFTUZqRCx1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBOEIsRUFBQTs7QVBHaEM7RUdvQkEscURHL0I4QjtVSCtCOUIsNkNHL0I4QjtFQ2tCNUIsVUFBOEIsRUFBQTs7QVBuQmhDO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdQOEM7VUhPOUMsMkNHUDhDO0VITzlDLCtCRnJCcUQ7TUVxQnJELDJCRnJCcUQ7VUVxQnJELHVCRnJCcUQ7RU1IbkQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCLEVBQUE7O0FQR2hDO0VHb0JBLHFERzlCZ0M7VUg4QmhDLDZDRzlCZ0M7RUNpQjlCLFVBQThCLEVBQUE7O0FQbkJoQztFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIsbURHUDhDO1VITzlDLDJDR1A4QztFSE85QyxnQ0ZwQnNEO01Fb0J0RCw0QkZwQnNEO1VFb0J0RCx3QkZwQnNEO0VNSnBELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUE4QixFQUFBOztBUEdoQztFR29CQSxzREc3QnNDO1VINkJ0Qyw4Q0c3QnNDO0VDZ0JwQyxVQUE4QixFQUFBOztBUG5CaEM7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLG1ER1A4QztVSE85QywyQ0dQOEM7RUhPOUMsOEJGbkJvRDtNRW1CcEQsMEJGbkJvRDtVRW1CcEQsc0JGbkJvRDtFTUxsRCx1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBOEIsRUFBQTs7QVBHaEM7RUdvQkEsc0RHNUJvQztVSDRCcEMsOENHNUJvQztFQ2VsQyxVQUE4QixFQUFBOztBUG5CaEM7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLG1ER1A4QztVSE85QywyQ0dQOEM7RUhPOUMsZ0NHRWU7TUhGZiw0QkdFZTtVSEZmLHdCR0VlO0VDMUJiLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUE4QixFQUFBOztBUEdoQztFR29CQSxxREcvQjhCO1VIK0I5Qiw2Q0cvQjhCO0VDa0I1QixVQUE4QixFQUFBOztBUG5CaEM7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLG1ER1A4QztVSE85QywyQ0dQOEM7RUhPOUMsZ0NHRWU7TUhGZiw0QkdFZTtVSEZmLHdCR0VlO0VDMUJiLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUE4QixFQUFBOztBUEdoQztFR29CQSxxREc5QmdDO1VIOEJoQyw2Q0c5QmdDO0VDaUI5QixVQUE4QixFQUFBOztBUG5CaEM7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLDZCQUZ5QjtNQUV6Qix5QkFGeUI7VUFFekIscUJBRnlCO0VLekJ2Qix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkIsRUFBQTs7QVJNN0I7RUdvQkEsMkJBRnlCO01BRXpCLHVCQUZ5QjtVQUV6QixtQkFGeUI7RUtkdkIsVUFBMkIsRUFBQTs7QVJoQjdCO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYiw2QkFGeUI7TUFFekIseUJBRnlCO1VBRXpCLHFCQUZ5QjtFS3pCdkIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VB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OztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQU92QztFQUNFLHlCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQU90QztFQUNFLHdCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDhCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDZCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDhCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDJCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDhCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDZCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDhCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDJCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDhCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDZCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDhCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLDJCQUFtQyxFQUFBOztBQURyQztFQUNFLGdDQUFtQyxFQUFBOztBQURyQztFQUNFLCtCQUFtQyxFQUFBOztBQU9yQztFQUNFLDJCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQVd4QztFQUNFLDJCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQU94QztFQUNFLDBCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQU92QztFQUNFLHlCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQU90QztFQUNFLDRCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQVd6QztFQUNFLDBCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGdDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLDhCQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGlDQUFzQyxFQUFBOztBQUR4QztFQUNFLG1DQUFzQyxFQUFBOztBQUR4QztFQUNFLGtDQUFzQyxFQUFBOztBQU94QztFQUNFLHlCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLCtCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLDZCQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGdDQUFxQyxFQUFBOztBQUR2QztFQUNFLGtDQUFxQyxFQUFBOztBQUR2QztFQUNFLGlDQUFxQyxFQUFBOztBQU92QztFQUNFLHdCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDhCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLDRCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLCtCQUFvQyxFQUFBOztBQUR0QztFQUNFLGlDQUFvQyxFQUFBOztBQUR0QztFQUNFLGdDQUFvQyxFQUFBOztBQU90QztFQUNFLDJCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGlDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLCtCQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLGtDQUF1QyxFQUFBOztBQUR6QztFQUNFLG9DQUF1QyxFQUFBOztBQUR6QztFQUNFLG1DQUF1QyxFQUFBOztBQVF2QztFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG9CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksbUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxvQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLGlCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksb0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxtQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG9CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksaUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxvQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG1CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksb0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxpQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG9CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksbUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxvQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLGlCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksb0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxtQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG9CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksaUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxvQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG1CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksb0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxpQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG9CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksbUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxvQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLGlCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksb0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxtQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG9CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksaUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxvQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG1CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksb0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHFCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxpQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLHNCdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0kscUJ0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxzQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFiTDtFQUNJLG9CdERoRW1ELEVBQUE7O0FQNkZqRDtFNkQ5Qk47SUFNUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QTdEdUJDO0U2RDlCTjtJQVlRLG1CQUFtQixFQUFBLEVBQ3RCOztBQWJMO0VBQ0ksc0J0RGhFbUQsRUFBQTs7QVA2RmpEO0U2RDlCTjtJQU1RLG1CQUFtQixFQUFBLEVBQ3RCOztBN0R1QkM7RTZEOUJOO0lBWVEsbUJBQW1CLEVBQUEsRUFDdEI7O0FBYkw7RUFDSSxxQnREaEVtRCxFQUFBOztBUDZGakQ7RTZEOUJOO0lBTVEsbUJBQW1CLEVBQUEsRUFDdEI7O0E3RHVCQztFNkQ5Qk47SUFZUSxtQkFBbUIsRUFBQSxFQUN0Qjs7QUFPUDtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLG9CQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3QixFQUFBOztBQUQxQjtFQUNFLHFCQUF3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RUFBQTtFckVuRHZCOzs7SXFFMkRJLGtDQUFrQztJQUNsQyxzQkFBc0I7SUFDdEIsbUNBQW1DO0lBQ25DLDJCQUEyQjtJQUMzQiw0QkFBNEI7SUFDNUIsZUFBZSxFQUFBO0VBR25CO0lBRUksbUJBQW1CO0lBQ25CLG1CQUFtQixFQUFBO0VBR3ZCO0lBQ0UsYUFBYSxFQUFBO0VBR2Ysc0JBQUE7RUFFQTtJQUNFLGFBQWEsRUFBQTtFQUdmO0lBQ0UsYUFBYSxFQUFBO0VBR2Y7SUFDRSxnQkFBZ0IsRUFBQTtFQURsQjtJQUtFLGlCQUFpQjtJQUNqQixtQkFBbUIsRUFBQTtFQUdyQjtJQUNFLGlCQUFpQjtJQUNqQiw0Q0FBNEM7SUFDNUMsbUJBQW1CLEVBQUE7RUFHckI7SUFDRSxhQUFhLEVBQUE7RUFHZjtJQUNFLGlCQUFpQixFQUFBO0VBR25CO0lBQ0UsYUFBYSxFQUFBO0VBR2Y7SUFDRSxtQkFBbUIsRUFBQTtFQVRyQjtJQWFFLHdCQUF3QjtJQUN4QixtQkFBbUIsRUFBQTtFQUdyQjtJQUNFLHdCQUF3QixFQUFBO0VBRzFCO0lBQ0Usd0JBQXdCLEVBQUE7RUFHMUIscUJBQUE7RUFSQTtJQVdFLGlCQUFpQjtJQUNqQiw0Q0FBNEM7SUFDNUMsbUJBQW1CO0lBQ25CLGdCQUFnQixFQUFBO0VMOVJwQjtJS2tTSSxhQUFhLEVBQUE7RUw5R2pCO0lLa0hJLGFBQWEsRUFBQSxFQUNkIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuNi4zXG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAucmV2ZWFsLCAucmV2ZWFsLnRpbnksIC5yZXZlYWwuc21hbGwsIC5yZXZlYWwubGFyZ2Uge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IH1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7IH1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtOyB9XG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwOyB9XG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IH1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBmb250OiBpbmhlcml0OyB9XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTMwZW0mdGFibGV0LXBvcnRyYWl0PTQ4ZW0mdGFibGV0LWxhbmRzY2FwZT02MmVtJmxhcmdlPTc1ZW0meGxhcmdlPTkwZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMTAsIDEwLCAxMCwgMC4xKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2FjYWNhOyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgbWluLXdpZHRoOiAwOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTtcbiAgICBwYWRkaW5nOiAwIDAuMTg3NXJlbTsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG4gIHNlbGVjdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIHNlbGVjdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICBzZWxlY3Q6bm90KFttdWx0aXBsZV0pIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZWNlYTsgfVxuICAuaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjNGIzNzsgfVxuICAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDNyZW07IH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07IH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjkzNzVyZW07IH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07IH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMxNzc5YmE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTQ2OGEwOyB9XG4gIGEgaW1nIHtcbiAgICBib3JkZXI6IDA7IH1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiAxNDcwcHg7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM4YThhOGE7IH1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwYTBhMGE7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM4YThhOGE7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5jaXRlLWJsb2NrLCBjaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjOGE4YThhO1xuICBmb250LXNpemU6IDAuODEyNXJlbTsgfVxuICAuY2l0ZS1ibG9jazpiZWZvcmUsIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKAlCBcIjsgfVxuXG4uY29kZS1pbmxpbmUsIGNvZGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07IH1cblxuLmNvZGUtYmxvY2sge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtcG9ydHJhaXQtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAudGFibGV0LWxhbmRzY2FwZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudGFibGV0LWxhbmRzY2FwZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBjb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICBhW2hyZWZePScjJ106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtOyB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7IH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDE0NzBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZ1bGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmdyaWQteCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cblxuLmNlbGwge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWluLWhlaWdodDogMHB4O1xuICBtaW4td2lkdGg6IDBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlbGwuYXV0byB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuY2VsbC5zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LXNocmluaywgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtZnVsbCwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtMSwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtMiwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtMywgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtNCwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtNSwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtNiwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtNywgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtOCwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtOSwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtMTAsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTExLCAuZ3JpZC14ID4gLnRhYmxldC1wb3J0cmFpdC0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLXNocmluaywgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLWZ1bGwsIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS0xLCAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtMiwgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTMsIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS00LCAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtNSwgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTYsIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS03LCAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtOCwgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTksIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS0xMCwgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTExLCAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC1wb3J0cmFpdC1zaHJpbmssIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTEsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTIsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTMsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTQsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTUsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTYsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTcsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTgsIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTksIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTEwLCAuZ3JpZC14ID4gLnRhYmxldC1wb3J0cmFpdC0xMSwgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC1wb3J0cmFpdC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC1wb3J0cmFpdC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LXBvcnRyYWl0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtcG9ydHJhaXQtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC1wb3J0cmFpdC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC1wb3J0cmFpdC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC1wb3J0cmFpdC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS1zaHJpbmssIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS0xLCAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtMiwgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTMsIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS00LCAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtNSwgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTYsIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS03LCAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtOCwgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTksIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS0xMCwgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTExLCAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtbGFuZHNjYXBlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LWxhbmRzY2FwZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC1sYW5kc2NhcGUtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXgge1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtcG9ydHJhaXQtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1wb3J0cmFpdC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1sYW5kc2NhcGUtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1sYW5kc2NhcGUtc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1sYW5kc2NhcGUtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1sYW5kc2NhcGUtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1sYW5kc2NhcGUtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1sYW5kc2NhcGUtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuXG4uZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogMTIuNSU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhYmxldC1wb3J0cmFpdC11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC50YWJsZXQtbGFuZHNjYXBlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDEuMjVyZW0pOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LXBvcnRyYWl0LXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC50YWJsZXQtcG9ydHJhaXQtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LXBvcnRyYWl0LXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnRhYmxldC1wb3J0cmFpdC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC50YWJsZXQtcG9ydHJhaXQtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LXBvcnRyYWl0LXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnRhYmxldC1wb3J0cmFpdC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC50YWJsZXQtcG9ydHJhaXQtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LWxhbmRzY2FwZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LWxhbmRzY2FwZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC50YWJsZXQtbGFuZHNjYXBlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnRhYmxldC1sYW5kc2NhcGUtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LWxhbmRzY2FwZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC50YWJsZXQtbGFuZHNjYXBlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnRhYmxldC1sYW5kc2NhcGUtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LWxhbmRzY2FwZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtcG9ydHJhaXQtcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnRhYmxldC1wb3J0cmFpdC1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAudGFibGV0LWxhbmRzY2FwZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAudGFibGV0LWxhbmRzY2FwZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1wb3J0cmFpdC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LXBvcnRyYWl0LTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtcG9ydHJhaXQtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LWxhbmRzY2FwZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC1sYW5kc2NhcGUtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtbGFuZHNjYXBlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LXBvcnRyYWl0LW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1wb3J0cmFpdC1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1wb3J0cmFpdC1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LXBvcnRyYWl0LW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLnRhYmxldC1sYW5kc2NhcGUtb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1sYW5kc2NhcGUtb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1sYW5kc2NhcGUtb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtbGFuZHNjYXBlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWxhbmRzY2FwZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuLmdyaWQteSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAuZ3JpZC15ID4gLmNlbGwge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBub25lOyB9XG4gIC5ncmlkLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXkgPiAuc21hbGwtZnVsbCwgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC15ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS0xMCwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmdyaWQteSA+IC50YWJsZXQtcG9ydHJhaXQtc2hyaW5rLCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC1mdWxsLCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC0xLCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC0yLCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC0zLCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC00LCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC01LCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC02LCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC03LCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC04LCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC05LCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC0xMCwgLmdyaWQteSA+IC50YWJsZXQtcG9ydHJhaXQtMTEsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLXNocmluaywgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLWZ1bGwsIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS0xLCAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtMiwgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTMsIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS00LCAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtNSwgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTYsIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS03LCAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtOCwgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTksIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS0xMCwgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTExLCAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS1mdWxsLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogMjUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogNTAlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogNzUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS0xMCwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC1zaHJpbmssIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTEsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTIsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTMsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTQsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTUsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTYsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTcsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTgsIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTksIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTEwLCAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC0xMSwgLmdyaWQteSA+IC50YWJsZXQtcG9ydHJhaXQtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtcG9ydHJhaXQtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtcG9ydHJhaXQtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtcG9ydHJhaXQtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtcG9ydHJhaXQtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1wb3J0cmFpdC0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LXBvcnRyYWl0LTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtcG9ydHJhaXQtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtc2hyaW5rLCAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtMSwgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTIsIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS0zLCAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtNCwgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTUsIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS02LCAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtNywgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTgsIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS05LCAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtMTAsIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS0xMSwgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtbGFuZHNjYXBlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1sYW5kc2NhcGUtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LWxhbmRzY2FwZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICBtYXJnaW4tdG9wOiAtMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LXBvcnRyYWl0LTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LXBvcnRyYWl0LTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LXBvcnRyYWl0LTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LWxhbmRzY2FwZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LWxhbmRzY2FwZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LWxhbmRzY2FwZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LWxhbmRzY2FwZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LWxhbmRzY2FwZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG5cbi5ncmlkLWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDB2dzsgfVxuXG4uY2VsbCAuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jZWxsLWJsb2NrIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG5cbi5jZWxsLWJsb2NrLXkge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG5cbi5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLmNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhYmxldC1wb3J0cmFpdC1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnRhYmxldC1wb3J0cmFpdC1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAudGFibGV0LXBvcnRyYWl0LWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAudGFibGV0LXBvcnRyYWl0LWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC50YWJsZXQtcG9ydHJhaXQtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAudGFibGV0LXBvcnRyYWl0LWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAudGFibGV0LWxhbmRzY2FwZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnRhYmxldC1sYW5kc2NhcGUtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC50YWJsZXQtbGFuZHNjYXBlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbi5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgaGVpZ2h0OiAxMDB2aDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ncmlkLXkudGFibGV0LXBvcnRyYWl0LWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5ncmlkLXkudGFibGV0LWxhbmRzY2FwZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuY2VsbCAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkudGFibGV0LXBvcnRyYWl0LWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmNlbGwgLmdyaWQteS50YWJsZXQtbGFuZHNjYXBlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LXBvcnRyYWl0LTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LXBvcnRyYWl0LTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LXBvcnRyYWl0LTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LXBvcnRyYWl0LTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtcG9ydHJhaXQtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1wb3J0cmFpdC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LXBvcnRyYWl0LTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LWxhbmRzY2FwZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LWxhbmRzY2FwZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LWxhbmRzY2FwZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtbGFuZHNjYXBlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1sYW5kc2NhcGUtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gIGhlaWdodDogY2FsYygxMDB2aCArIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkudGFibGV0LXBvcnRyYWl0LWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkudGFibGV0LWxhbmRzY2FwZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idXR0b24udGlueSB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24ubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbiwgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ2NzllO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzEyNjE5NTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLnNlY29uZGFyeSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5zdWNjZXNzLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24ud2FybmluZywgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwYzNkNWQ7XG4gICAgY29sb3I6ICMwYzNkNWQ7IH1cbiAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICBjb2xvcjogIzE3NzliYTsgfVxuICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwYzNkNWQ7XG4gICAgY29sb3I6ICMwYzNkNWQ7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gICAgY29sb3I6ICMzYjNiM2I7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcywgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgLmJ1dHRvbi5ob2xsb3cud2FybmluZywgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogIzE3NzliYTsgfVxuICAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgICBjb2xvcjogIzBjM2Q1ZDsgfVxuICAuYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjMTc3OWJhOyB9XG4gIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgICBjb2xvcjogIzBjM2Q1ZDsgfVxuICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBjb2xvcjogIzNiM2IzYjsgfVxuICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAuYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAuYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZlZmVmZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5wcmltYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnNlY29uZGFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM3Njc2NzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc3VjY2Vzczo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIud2FybmluZzo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLmFsZXJ0OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICB0b3A6IC0wLjFlbTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG5hLmJ1dHRvbjpob3ZlciwgYS5idXR0b246Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtZ3JvdzogMTsgfVxuICAuYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmJ1dHRvbi1ncm91cDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmJ1dHRvbi1ncm91cC50aW55IC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAuc21hbGwgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAubGFyZ2UgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI2MTk1O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24sIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICAgIGNvbG9yOiAjMTc3OWJhOyB9XG4gIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgICBjb2xvcjogIzBjM2Q1ZDsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICBjb2xvcjogIzE3NzliYTsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgICBjb2xvcjogIzBjM2Q1ZDsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgICBjb2xvcjogIzNiM2IzYjsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjMGMzZDVkOyB9XG4gIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgIGNvbG9yOiAjMGMzZDVkOyB9XG4gIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgIGNvbG9yOiAjM2IzYjNiOyB9XG4gIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gIC5idXR0b24tZ3JvdXAubm8tZ2FwcyAuYnV0dG9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjA2MjVyZW07IH1cbiAgICAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgLmJ1dHRvbiArIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgICAgZmxleDogMCAwIDEwMCU7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24ge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI5Ljk5ODc1ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgY29sb3I6ICM4YThhOGE7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmNsb3NlLWJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuY2xvc2UtYnV0dG9uOmhvdmVyLCAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2xvc2UtYnV0dG9uLnNtYWxsIHtcbiAgICByaWdodDogMC42NnJlbTtcbiAgICB0b3A6IDAuMzNlbTtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5jbG9zZS1idXR0b24ubWVkaXVtLCAuY2xvc2UtYnV0dG9uIHtcbiAgICByaWdodDogMXJlbTtcbiAgICB0b3A6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmxhYmVsLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmxhYmVsLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubGFiZWwuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAubGFiZWwud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAubGFiZWwuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTg5ODk4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7IH1cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjY2JjYmNiO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAjOTg5ODk4O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIHRoZWFkIHRyLFxuICB0Zm9vdCB0ciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgdGhlYWQgdGgsXG4gIHRoZWFkIHRkLFxuICB0Zm9vdCB0aCxcbiAgdGZvb3QgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIHRib2R5IHRoLFxuICB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyB9XG4gIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTg5ODk4OyB9XG4gIHRhYmxlLnVuc3RyaXBlZCB0Ym9keSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuICAgIHRhYmxlLnVuc3RyaXBlZCB0Ym9keSB0ciB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5ODk4OTg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2YzZjNjsgfVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MzkzOTM7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5OyB9XG5cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MzkzOTM7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCAwLjc1cmVtO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgY29sb3I6ICNjYWNhY2E7IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjMTc3OWJhOyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICNjYWNhY2E7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuY2FsbG91dC5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDdlY2ZhO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYWxsb3V0LnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FsbG91dC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFmYWVhO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYWxsb3V0Lndhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYzZDk7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQuYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQuc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgLmNhbGxvdXQubGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG5cbi5jYXJkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1ncm93OiAxO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FyZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLWRpdmlkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDEgYXV0bztcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjsgfVxuICAuY2FyZC1kaXZpZGVyID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC5jYXJkLXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1pbWFnZSB7XG4gIG1pbi1oZWlnaHQ6IDFweDsgfVxuXG4uZHJvcGRvd24tcGFuZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAzMDBweDtcbiAgcGFkZGluZzogMXJlbTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDFyZW07IH1cbiAgLmRyb3Bkb3duLXBhbmUuaXMtb3BlbmluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmRyb3Bkb3duLXBhbmUuaXMtb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uZHJvcGRvd24tcGFuZS50aW55IHtcbiAgd2lkdGg6IDEwMHB4OyB9XG5cbi5kcm9wZG93bi1wYW5lLnNtYWxsIHtcbiAgd2lkdGg6IDIwMHB4OyB9XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4OyB9XG5cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnBhZ2luYXRpb246OmJlZm9yZSwgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMDYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYWdpbmF0aW9uIGxpOmxhc3QtY2hpbGQsIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5wYWdpbmF0aW9uIGE6aG92ZXIsXG4gICAgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7IH1cbiAgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogI2NhY2FjYTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb250ZW50OiAnXFwyMDI2JztcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogXCLCq1wiOyB9XG5cbi5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29udGVudDogXCLCu1wiOyB9XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaWEtb2JqZWN0IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyOS45OTg3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyOS45OTg3NWVtKSB7XG4gICAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ubWFpbi1zZWN0aW9uIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4gIC5yZXNwb25zaXZlLWVtYmVkIG9iamVjdCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4gIC5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuICAuZmxleC12aWRlbyBpZnJhbWUsXG4gIC5mbGV4LXZpZGVvIG9iamVjdCxcbiAgLmZsZXgtdmlkZW8gZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4sXG4gIC5mbGV4LXZpZGVvLndpZGVzY3JlZW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAubWVudSBhLFxuICAubWVudSAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLm1lbnUgaW5wdXQsXG4gIC5tZW51IHNlbGVjdCxcbiAgLm1lbnUgYSxcbiAgLm1lbnUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51IGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lbnUsIC5tZW51Lmhvcml6b250YWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZW51LnZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZW51LmV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5tZW51LnNpbXBsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5tZW51LnNpbXBsZSBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gICAgLm1lbnUuc2ltcGxlIGEge1xuICAgICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLm1lbnUubWVkaXVtLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS5tZWRpdW0tZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51Lm1lZGl1bS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubWVudS50YWJsZXQtcG9ydHJhaXQtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUudGFibGV0LXBvcnRyYWl0LXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51LnRhYmxldC1wb3J0cmFpdC1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUudGFibGV0LXBvcnRyYWl0LXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5tZW51LnRhYmxldC1sYW5kc2NhcGUtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUudGFibGV0LWxhbmRzY2FwZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS50YWJsZXQtbGFuZHNjYXBlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS50YWJsZXQtbGFuZHNjYXBlLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tZW51LmxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51LmxhcmdlLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51LmxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS5sYXJnZS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIC5tZW51Lm5lc3RlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5tZW51Lmljb25zIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lbnUuaWNvbi10b3AgYSwgLm1lbnUuaWNvbi1yaWdodCBhLCAubWVudS5pY29uLWJvdHRvbSBhLCAubWVudS5pY29uLWxlZnQgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLWxlZnQgbGkgYSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tbGVmdCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXJpZ2h0IGxpIGEge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXRvcCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5tZW51LmFsaWduLWxlZnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudS5hbGlnbi1yaWdodCBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgLm1lbnUuYWxpZ24tcmlnaHQgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVudS5hbGlnbi1jZW50ZXIgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubWVudS5hbGlnbi1jZW50ZXIgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51IC5tZW51LXRleHQge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tZW51LWljb246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICNmZWZlZmUsIDAgMTRweCAwICNmZWZlZmU7XG4gICAgY29udGVudDogJyc7IH1cbiAgLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjY2FjYWNhLCAwIDE0cHggMCAjY2FjYWNhOyB9XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMGEwYTBhLCAwIDE0cHggMCAjMGEwYTBhO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjOGE4YThhLCAwIDE0cHggMCAjOGE4YThhOyB9XG5cbi5hY2NvcmRpb24tbWVudSBsaSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5hY2NvcmRpb24tbWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgcmlnaHQ6IDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87IH1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgfVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4OyB9XG5cbi5zdWJtZW51LXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5zdWJtZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bzsgfVxuXG4uc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgfVxuXG4uc3VibWVudS10b2dnbGUtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtM3B4OyB9XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24ubWVudSBhIHtcbiAgb3V0bGluZTogMDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzE3NzliYTsgfVxuXG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZHJvcGRvd24ubWVudS50YWJsZXQtcG9ydHJhaXQtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LXBvcnRyYWl0LWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtcG9ydHJhaXQtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtcG9ydHJhaXQtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtcG9ydHJhaXQtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC1wb3J0cmFpdC12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LXBvcnRyYWl0LXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtcG9ydHJhaXQtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtcG9ydHJhaXQtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LXBvcnRyYWl0LXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAuZHJvcGRvd24ubWVudS50YWJsZXQtbGFuZHNjYXBlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC1sYW5kc2NhcGUtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC1sYW5kc2NhcGUtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtbGFuZHNjYXBlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LWxhbmRzY2FwZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LWxhbmRzY2FwZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LWxhbmRzY2FwZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LWxhbmRzY2FwZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC1sYW5kc2NhcGUtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LWxhbmRzY2FwZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhOyB9IH1cblxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgfVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDsgfVxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTZweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG4gIC5kcm9wZG93biAuaXMtZHJvcGRvd24tc3VibWVudSBhIHtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuLnpmLWhhcy1zY3JvbGwge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgbWluLWhlaWdodDogMDsgfSB9XG4gIC5yZXZlYWwgLmNvbHVtbiB7XG4gICAgbWluLXdpZHRoOiAwOyB9XG4gIC5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB3aWR0aDogNjAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDE0NzBweDsgfSB9XG4gIC5yZXZlYWwuY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiAxNDcwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLnJldmVhbC5zbWFsbCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiAxNDcwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLnJldmVhbC5sYXJnZSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiAxNDcwcHg7IH0gfVxuICAucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI5Ljk5ODc1ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfSB9XG4gIC5yZXZlYWwud2l0aG91dC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4uY2xlYXJmaXg6OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYWxpZ24tc3BhY2VkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhYmxldC1wb3J0cmFpdC1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAudGFibGV0LXBvcnRyYWl0LW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAudGFibGV0LXBvcnRyYWl0LW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgtY2hpbGQtYXV0byB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuXG4uZmxleC1kaXItcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtcG9ydHJhaXQtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC50YWJsZXQtcG9ydHJhaXQtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAudGFibGV0LXBvcnRyYWl0LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAudGFibGV0LXBvcnRyYWl0LWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAudGFibGV0LXBvcnRyYWl0LWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnRhYmxldC1wb3J0cmFpdC1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAudGFibGV0LWxhbmRzY2FwZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLnRhYmxldC1sYW5kc2NhcGUtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC50YWJsZXQtbGFuZHNjYXBlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAudGFibGV0LWxhbmRzY2FwZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyOS45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAwZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNob3ctZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI5Ljk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oaWRlLWZvci10YWJsZXQtcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXRhYmxldC1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtYXgtd2lkdGg6IDYxLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXRhYmxldC1wb3J0cmFpdC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5zaG93LWZvci10YWJsZXQtcG9ydHJhaXQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAuaGlkZS1mb3ItdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjEuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkgYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXRhYmxldC1sYW5kc2NhcGUtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjEuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItdGFibGV0LWxhbmRzY2FwZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWF4LXdpZHRoOiA4OS45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmZhc3Qge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50OyB9XG5cbi5saW5lYXIge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDsgfVxuXG4uZWFzZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uc2hvcnQtZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50OyB9XG5cbi5sb25nLWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2UtNzsgfVxuXG5Aa2V5ZnJhbWVzIHNoYWtlLTcge1xuICAwJSwgMTAlLCAyMCUsIDMwJSwgNDAlLCA1MCUsIDYwJSwgNzAlLCA4MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDclKTsgfVxuICA1JSwgMTUlLCAyNSUsIDM1JSwgNDUlLCA1NSUsIDY1JSwgNzUlLCA4NSUsIDk1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03JSk7IH0gfVxuXG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLnNwaW4tY2N3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY2N3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfSB9XG5cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7IH1cblxuQGtleWZyYW1lcyB3aWdnbGUtN2RlZyB7XG4gIDQwJSwgNTAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDdkZWcpOyB9XG4gIDM1JSwgNDUlLCA1NSUsIDY1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTdkZWcpOyB9XG4gIDAlLCAzMCUsIDcwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4uc2hha2UsXG4uc3Bpbi1jdyxcbi5zcGluLWNjdyxcbi53aWdnbGUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zOyB9XG5cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbi5zbG93IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50OyB9XG5cbi5saW5lYXIge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDsgfVxuXG4uZWFzZSB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDsgfVxuXG4uZWFzZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50OyB9XG5cbi5sb25nLWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50OyB9XG5cbi8qXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vXG4vLyBNaXhpbnNcbi8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiovXG4vKlxuQ3VzdG9tIG1peGluc1xuKi9cbi8qXG5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+XG5NaXhpbnNcbn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5cbiovXG4vKlxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vL1xuLy8gVXRpbGl0eSBzdHlsZXMgdGhhdCBtYXkgY29tZSBpbiB1c2VmdWxcbi8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiovXG4vKiAgVHlwZSBoZWxwZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy8vICovXG4uZnM1IHtcbiAgZm9udC1zaXplOiA1cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnM2IHtcbiAgZm9udC1zaXplOiA2cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczcge1xuICBmb250LXNpemU6IDdweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczgge1xuICBmb250LXNpemU6IDhweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczkge1xuICBmb250LXNpemU6IDlweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczEwIHtcbiAgZm9udC1zaXplOiAxMHB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMxMSB7XG4gIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczEyIHtcbiAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMC43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczEzIHtcbiAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMTQge1xuICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczE1IHtcbiAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMTYge1xuICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMTcge1xuICBmb250LXNpemU6IDE3cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMxOCB7XG4gIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMTkge1xuICBmb250LXNpemU6IDE5cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMyMCB7XG4gIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMyMSB7XG4gIGZvbnQtc2l6ZTogMjFweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczIyIHtcbiAgZm9udC1zaXplOiAyMnB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMyMyB7XG4gIGZvbnQtc2l6ZTogMjNweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczI0IHtcbiAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMjUge1xuICBmb250LXNpemU6IDI1cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMyNiB7XG4gIGZvbnQtc2l6ZTogMjZweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMjcge1xuICBmb250LXNpemU6IDI3cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMyOCB7XG4gIGZvbnQtc2l6ZTogMjhweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMyOSB7XG4gIGZvbnQtc2l6ZTogMjlweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczMwIHtcbiAgZm9udC1zaXplOiAzMHB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMzMSB7XG4gIGZvbnQtc2l6ZTogMzFweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczMyIHtcbiAgZm9udC1zaXplOiAzMnB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczMzIHtcbiAgZm9udC1zaXplOiAzM3B4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMi4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMzQge1xuICBmb250LXNpemU6IDM0cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczM1IHtcbiAgZm9udC1zaXplOiAzNXB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMi4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMzYge1xuICBmb250LXNpemU6IDM2cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMzcge1xuICBmb250LXNpemU6IDM3cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnMzOCB7XG4gIGZvbnQtc2l6ZTogMzhweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDIuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzMzkge1xuICBmb250LXNpemU6IDM5cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnM0MCB7XG4gIGZvbnQtc2l6ZTogNDBweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDIuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczQxIHtcbiAgZm9udC1zaXplOiA0MXB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMi41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzNDIge1xuICBmb250LXNpemU6IDQycHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczQzIHtcbiAgZm9udC1zaXplOiA0M3B4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMi42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzNDQge1xuICBmb250LXNpemU6IDQ0cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzNDUge1xuICBmb250LXNpemU6IDQ1cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnM0NiB7XG4gIGZvbnQtc2l6ZTogNDZweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDIuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmZzNDcge1xuICBmb250LXNpemU6IDQ3cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uZnM0OCB7XG4gIGZvbnQtc2l6ZTogNDhweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4uZnM0OSB7XG4gIGZvbnQtc2l6ZTogNDlweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDMuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5mczUwIHtcbiAgZm9udC1zaXplOiA1MHB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMy4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uZncxMDAge1xuICBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7IH1cblxuLmZ3MjAwIHtcbiAgZm9udC13ZWlnaHQ6IDIwMCAhaW1wb3J0YW50OyB9XG5cbi5mdzMwMCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDsgfVxuXG4uZnc0MDAge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7IH1cblxuLmZ3NTAwIHtcbiAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50OyB9XG5cbi5mdzYwMCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDsgfVxuXG4uZnc3MDAge1xuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7IH1cblxuLmZ3ODAwIHtcbiAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50OyB9XG5cbi5mdzkwMCB7XG4gIGZvbnQtd2VpZ2h0OiA5MDAgIWltcG9ydGFudDsgfVxuXG4ucmVtb3ZlLXBhZGRpbmcge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLnJlbW92ZS1tYXJnaW4ge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4ubXItMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5tci0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMiB7XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMyB7XG4gIG1hcmdpbi1yaWdodDogMC4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTQge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItNSB7XG4gIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTYge1xuICBtYXJnaW4tcmlnaHQ6IDAuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTcge1xuICBtYXJnaW4tcmlnaHQ6IDAuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci04IHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItOSB7XG4gIG1hcmdpbi1yaWdodDogMC41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTEwIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0xMSB7XG4gIG1hcmdpbi1yaWdodDogMC42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTEyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTEzIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMTQge1xuICBtYXJnaW4tcmlnaHQ6IDAuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTE1IHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMTYge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMTcge1xuICBtYXJnaW4tcmlnaHQ6IDEuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0xOCB7XG4gIG1hcmdpbi1yaWdodDogMS4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMTkge1xuICBtYXJnaW4tcmlnaHQ6IDEuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0yMCB7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0yMSB7XG4gIG1hcmdpbi1yaWdodDogMS4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTIyIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0yMyB7XG4gIG1hcmdpbi1yaWdodDogMS40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTI0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMjUge1xuICBtYXJnaW4tcmlnaHQ6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0yNiB7XG4gIG1hcmdpbi1yaWdodDogMS42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMjcge1xuICBtYXJnaW4tcmlnaHQ6IDEuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0yOCB7XG4gIG1hcmdpbi1yaWdodDogMS43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0yOSB7XG4gIG1hcmdpbi1yaWdodDogMS44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTMwIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0zMSB7XG4gIG1hcmdpbi1yaWdodDogMS45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTMyIHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTMzIHtcbiAgbWFyZ2luLXJpZ2h0OiAyLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMzQge1xuICBtYXJnaW4tcmlnaHQ6IDIuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTM1IHtcbiAgbWFyZ2luLXJpZ2h0OiAyLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMzYge1xuICBtYXJnaW4tcmlnaHQ6IDIuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMzcge1xuICBtYXJnaW4tcmlnaHQ6IDIuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0zOCB7XG4gIG1hcmdpbi1yaWdodDogMi4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMzkge1xuICBtYXJnaW4tcmlnaHQ6IDIuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci00MCB7XG4gIG1hcmdpbi1yaWdodDogMi41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTQxIHtcbiAgbWFyZ2luLXJpZ2h0OiAyLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItNDIge1xuICBtYXJnaW4tcmlnaHQ6IDIuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTQzIHtcbiAgbWFyZ2luLXJpZ2h0OiAyLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItNDQge1xuICBtYXJnaW4tcmlnaHQ6IDIuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItNDUge1xuICBtYXJnaW4tcmlnaHQ6IDIuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci00NiB7XG4gIG1hcmdpbi1yaWdodDogMi44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItNDcge1xuICBtYXJnaW4tcmlnaHQ6IDIuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci00OCB7XG4gIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tci00OSB7XG4gIG1hcmdpbi1yaWdodDogMy4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTUwIHtcbiAgbWFyZ2luLXJpZ2h0OiAzLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubWwtMSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC00IHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC03IHtcbiAgbWFyZ2luLWxlZnQ6IDAuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC04IHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC05IHtcbiAgbWFyZ2luLWxlZnQ6IDAuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMTIge1xuICBtYXJnaW4tbGVmdDogMC43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0xMyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMTQge1xuICBtYXJnaW4tbGVmdDogMC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMTUge1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTE2IHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMTcge1xuICBtYXJnaW4tbGVmdDogMS4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTE4IHtcbiAgbWFyZ2luLWxlZnQ6IDEuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTE5IHtcbiAgbWFyZ2luLWxlZnQ6IDEuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0yMCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTIxIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0yMiB7XG4gIG1hcmdpbi1sZWZ0OiAxLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0yMyB7XG4gIG1hcmdpbi1sZWZ0OiAxLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMjQge1xuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTI1IHtcbiAgbWFyZ2luLWxlZnQ6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0yNiB7XG4gIG1hcmdpbi1sZWZ0OiAxLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0yNyB7XG4gIG1hcmdpbi1sZWZ0OiAxLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMjgge1xuICBtYXJnaW4tbGVmdDogMS43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0yOSB7XG4gIG1hcmdpbi1sZWZ0OiAxLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMzAge1xuICBtYXJnaW4tbGVmdDogMS44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMzEge1xuICBtYXJnaW4tbGVmdDogMS45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTMyIHtcbiAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMzMge1xuICBtYXJnaW4tbGVmdDogMi4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTM0IHtcbiAgbWFyZ2luLWxlZnQ6IDIuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTM1IHtcbiAgbWFyZ2luLWxlZnQ6IDIuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0zNiB7XG4gIG1hcmdpbi1sZWZ0OiAyLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTM3IHtcbiAgbWFyZ2luLWxlZnQ6IDIuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0zOCB7XG4gIG1hcmdpbi1sZWZ0OiAyLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0zOSB7XG4gIG1hcmdpbi1sZWZ0OiAyLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNDAge1xuICBtYXJnaW4tbGVmdDogMi41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTQxIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC00MiB7XG4gIG1hcmdpbi1sZWZ0OiAyLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC00MyB7XG4gIG1hcmdpbi1sZWZ0OiAyLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNDQge1xuICBtYXJnaW4tbGVmdDogMi43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC00NSB7XG4gIG1hcmdpbi1sZWZ0OiAyLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNDYge1xuICBtYXJnaW4tbGVmdDogMi44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNDcge1xuICBtYXJnaW4tbGVmdDogMi45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTQ4IHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNDkge1xuICBtYXJnaW4tbGVmdDogMy4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTUwIHtcbiAgbWFyZ2luLWxlZnQ6IDMuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLm10LTEge1xuICBtYXJnaW4tdG9wOiAwLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMiB7XG4gIG1hcmdpbi10b3A6IDAuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTMge1xuICBtYXJnaW4tdG9wOiAwLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtNCB7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtNSB7XG4gIG1hcmdpbi10b3A6IDAuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC02IHtcbiAgbWFyZ2luLXRvcDogMC4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtNyB7XG4gIG1hcmdpbi10b3A6IDAuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC04IHtcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTkge1xuICBtYXJnaW4tdG9wOiAwLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMTAge1xuICBtYXJnaW4tdG9wOiAwLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0xMSB7XG4gIG1hcmdpbi10b3A6IDAuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0xMiB7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMTMge1xuICBtYXJnaW4tdG9wOiAwLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMTQge1xuICBtYXJnaW4tdG9wOiAwLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0xNSB7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0xNiB7XG4gIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMTcge1xuICBtYXJnaW4tdG9wOiAxLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMTgge1xuICBtYXJnaW4tdG9wOiAxLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0xOSB7XG4gIG1hcmdpbi10b3A6IDEuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0yMCB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMjEge1xuICBtYXJnaW4tdG9wOiAxLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMjIge1xuICBtYXJnaW4tdG9wOiAxLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0yMyB7XG4gIG1hcmdpbi10b3A6IDEuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0yNCB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0yNSB7XG4gIG1hcmdpbi10b3A6IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0yNiB7XG4gIG1hcmdpbi10b3A6IDEuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTI3IHtcbiAgbWFyZ2luLXRvcDogMS42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTI4IHtcbiAgbWFyZ2luLXRvcDogMS43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0yOSB7XG4gIG1hcmdpbi10b3A6IDEuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0zMCB7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTMxIHtcbiAgbWFyZ2luLXRvcDogMS45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTMyIHtcbiAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0zMyB7XG4gIG1hcmdpbi10b3A6IDIuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0zNCB7XG4gIG1hcmdpbi10b3A6IDIuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTM1IHtcbiAgbWFyZ2luLXRvcDogMi4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTM2IHtcbiAgbWFyZ2luLXRvcDogMi4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0zNyB7XG4gIG1hcmdpbi10b3A6IDIuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0zOCB7XG4gIG1hcmdpbi10b3A6IDIuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTM5IHtcbiAgbWFyZ2luLXRvcDogMi40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTQwIHtcbiAgbWFyZ2luLXRvcDogMi41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTQxIHtcbiAgbWFyZ2luLXRvcDogMi41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTQyIHtcbiAgbWFyZ2luLXRvcDogMi42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtNDMge1xuICBtYXJnaW4tdG9wOiAyLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtNDQge1xuICBtYXJnaW4tdG9wOiAyLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTQ1IHtcbiAgbWFyZ2luLXRvcDogMi44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTQ2IHtcbiAgbWFyZ2luLXRvcDogMi44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtNDcge1xuICBtYXJnaW4tdG9wOiAyLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtNDgge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTQ5IHtcbiAgbWFyZ2luLXRvcDogMy4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTUwIHtcbiAgbWFyZ2luLXRvcDogMy4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ubWItMSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0yIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMyB7XG4gIG1hcmdpbi1ib3R0b206IDAuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi00IHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi01IHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTYge1xuICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi03IHtcbiAgbWFyZ2luLWJvdHRvbTogMC40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTgge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItOSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0xMCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTExIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTEyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0xMyB7XG4gIG1hcmdpbi1ib3R0b206IDAuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0xNCB7XG4gIG1hcmdpbi1ib3R0b206IDAuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTE1IHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTE2IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0xNyB7XG4gIG1hcmdpbi1ib3R0b206IDEuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0xOCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTE5IHtcbiAgbWFyZ2luLWJvdHRvbTogMS4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTIwIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0yMSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0yMiB7XG4gIG1hcmdpbi1ib3R0b206IDEuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTIzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTI0IHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTI1IHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTI2IHtcbiAgbWFyZ2luLWJvdHRvbTogMS42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMjcge1xuICBtYXJnaW4tYm90dG9tOiAxLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMjgge1xuICBtYXJnaW4tYm90dG9tOiAxLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTI5IHtcbiAgbWFyZ2luLWJvdHRvbTogMS44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTMwIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMzEge1xuICBtYXJnaW4tYm90dG9tOiAxLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMzIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTMzIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTM0IHtcbiAgbWFyZ2luLWJvdHRvbTogMi4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMzUge1xuICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMzYge1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTM3IHtcbiAgbWFyZ2luLWJvdHRvbTogMi4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTM4IHtcbiAgbWFyZ2luLWJvdHRvbTogMi4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMzkge1xuICBtYXJnaW4tYm90dG9tOiAyLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNDAge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNDEge1xuICBtYXJnaW4tYm90dG9tOiAyLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNDIge1xuICBtYXJnaW4tYm90dG9tOiAyLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi00MyB7XG4gIG1hcmdpbi1ib3R0b206IDIuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi00NCB7XG4gIG1hcmdpbi1ib3R0b206IDIuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNDUge1xuICBtYXJnaW4tYm90dG9tOiAyLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNDYge1xuICBtYXJnaW4tYm90dG9tOiAyLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi00NyB7XG4gIG1hcmdpbi1ib3R0b206IDIuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi00OCB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNDkge1xuICBtYXJnaW4tYm90dG9tOiAzLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNTAge1xuICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wci0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5wci0xIHtcbiAgcGFkZGluZy1yaWdodDogMC4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wci0zIHtcbiAgcGFkZGluZy1yaWdodDogMC4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTUge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItNiB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTcge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItOCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wci05IHtcbiAgcGFkZGluZy1yaWdodDogMC41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTEwIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMTEge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMTIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTEzIHtcbiAgcGFkZGluZy1yaWdodDogMC44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTE0IHtcbiAgcGFkZGluZy1yaWdodDogMC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMTUge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMTYge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTE3IHtcbiAgcGFkZGluZy1yaWdodDogMS4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTE4IHtcbiAgcGFkZGluZy1yaWdodDogMS4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMTkge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMjAge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTIxIHtcbiAgcGFkZGluZy1yaWdodDogMS4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTIyIHtcbiAgcGFkZGluZy1yaWdodDogMS4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMjMge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMjQge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMjUge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMjYge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wci0yNyB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wci0yOCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMjkge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMzAge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnBsLTEge1xuICBwYWRkaW5nLWxlZnQ6IDAuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0yIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0zIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtNCB7XG4gIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC01IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtNiB7XG4gIHBhZGRpbmctbGVmdDogMC4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtNyB7XG4gIHBhZGRpbmctbGVmdDogMC40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTgge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC05IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMTAge1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTExIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMTIge1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMTMge1xuICBwYWRkaW5nLWxlZnQ6IDAuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0xNCB7XG4gIHBhZGRpbmctbGVmdDogMC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMTUge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0xNiB7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0xNyB7XG4gIHBhZGRpbmctbGVmdDogMS4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTE4IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0xOSB7XG4gIHBhZGRpbmctbGVmdDogMS4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTIwIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTIxIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMjIge1xuICBwYWRkaW5nLWxlZnQ6IDEuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTIzIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMjQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0yNSB7XG4gIHBhZGRpbmctbGVmdDogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTI2IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0yNyB7XG4gIHBhZGRpbmctbGVmdDogMS42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTI4IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTI5IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMzAge1xuICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTAge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbi5wdC0xIHtcbiAgcGFkZGluZy10b3A6IDAuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0yIHtcbiAgcGFkZGluZy10b3A6IDAuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTMge1xuICBwYWRkaW5nLXRvcDogMC4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTQge1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC01IHtcbiAgcGFkZGluZy10b3A6IDAuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC02IHtcbiAgcGFkZGluZy10b3A6IDAuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTcge1xuICBwYWRkaW5nLXRvcDogMC40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTgge1xuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTkge1xuICBwYWRkaW5nLXRvcDogMC41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTEwIHtcbiAgcGFkZGluZy10b3A6IDAuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTExIHtcbiAgcGFkZGluZy10b3A6IDAuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0xMiB7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTEzIHtcbiAgcGFkZGluZy10b3A6IDAuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0xNCB7XG4gIHBhZGRpbmctdG9wOiAwLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0xNSB7XG4gIHBhZGRpbmctdG9wOiAwLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHQtMTYge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0xNyB7XG4gIHBhZGRpbmctdG9wOiAxLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHQtMTgge1xuICBwYWRkaW5nLXRvcDogMS4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHQtMTkge1xuICBwYWRkaW5nLXRvcDogMS4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTIwIHtcbiAgcGFkZGluZy10b3A6IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHQtMjEge1xuICBwYWRkaW5nLXRvcDogMS4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTIyIHtcbiAgcGFkZGluZy10b3A6IDEuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTIzIHtcbiAgcGFkZGluZy10b3A6IDEuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0yNCB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHQtMjUge1xuICBwYWRkaW5nLXRvcDogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTI2IHtcbiAgcGFkZGluZy10b3A6IDEuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTI3IHtcbiAgcGFkZGluZy10b3A6IDEuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0yOCB7XG4gIHBhZGRpbmctdG9wOiAxLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTI5IHtcbiAgcGFkZGluZy10b3A6IDEuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0zMCB7XG4gIHBhZGRpbmctdG9wOiAxLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ucGItMSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMiB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0zIHtcbiAgcGFkZGluZy1ib3R0b206IDAuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi00IHtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItNSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItNiB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi03IHtcbiAgcGFkZGluZy1ib3R0b206IDAuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi04IHtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi05IHtcbiAgcGFkZGluZy1ib3R0b206IDAuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0xMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0xMSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMTIge1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0xMyB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMTQge1xuICBwYWRkaW5nLWJvdHRvbTogMC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMTUge1xuICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTE2IHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMTcge1xuICBwYWRkaW5nLWJvdHRvbTogMS4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTE4IHtcbiAgcGFkZGluZy1ib3R0b206IDEuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTE5IHtcbiAgcGFkZGluZy1ib3R0b206IDEuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0yMCB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTIxIHtcbiAgcGFkZGluZy1ib3R0b206IDEuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0yMiB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0yMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMjQge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTI1IHtcbiAgcGFkZGluZy1ib3R0b206IDEuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0yNiB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0yNyB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMjgge1xuICBwYWRkaW5nLWJvdHRvbTogMS43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0yOSB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMzAge1xuICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTIge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTQge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTUge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNiB7XG4gIG1hcmdpbi1yaWdodDogLTAuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTcge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtOCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC05IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEwIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTEge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTIge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTE0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTUge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTYge1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTE3IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTE4IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTkge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMjAge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTIxIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTIyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMjMge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMjQge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMjUge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMjYge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0yNyB7XG4gIG1hcmdpbi1yaWdodDogLTEuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0yOCB7XG4gIG1hcmdpbi1yaWdodDogLTEuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMjkge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMzAge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0zMSB7XG4gIG1hcmdpbi1yaWdodDogLTEuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0zMiB7XG4gIG1hcmdpbi1yaWdodDogLTJyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMzMge1xuICBtYXJnaW4tcmlnaHQ6IC0yLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMzQge1xuICBtYXJnaW4tcmlnaHQ6IC0yLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0zNSB7XG4gIG1hcmdpbi1yaWdodDogLTIuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0zNiB7XG4gIG1hcmdpbi1yaWdodDogLTIuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMzcge1xuICBtYXJnaW4tcmlnaHQ6IC0yLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMzgge1xuICBtYXJnaW4tcmlnaHQ6IC0yLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0zOSB7XG4gIG1hcmdpbi1yaWdodDogLTIuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC00MCB7XG4gIG1hcmdpbi1yaWdodDogLTIuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC00MSB7XG4gIG1hcmdpbi1yaWdodDogLTIuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC00MiB7XG4gIG1hcmdpbi1yaWdodDogLTIuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTQzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMi42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTQ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMi43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC00NSB7XG4gIG1hcmdpbi1yaWdodDogLTIuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC00NiB7XG4gIG1hcmdpbi1yaWdodDogLTIuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTQ3IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMi45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTQ4IHtcbiAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC00OSB7XG4gIG1hcmdpbi1yaWdodDogLTMuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC01MCB7XG4gIG1hcmdpbi1yaWdodDogLTMuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTUxIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMy4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTUyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMy4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC01MyB7XG4gIG1hcmdpbi1yaWdodDogLTMuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC01NCB7XG4gIG1hcmdpbi1yaWdodDogLTMuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTU1IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMy40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTU2IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMy41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTU3IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMy41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTU4IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMy42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNTkge1xuICBtYXJnaW4tcmlnaHQ6IC0zLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNjAge1xuICBtYXJnaW4tcmlnaHQ6IC0zLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTYxIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMy44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTYyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMy44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNjMge1xuICBtYXJnaW4tcmlnaHQ6IC0zLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNjQge1xuICBtYXJnaW4tcmlnaHQ6IC00cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTY1IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNC4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTY2IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNC4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNjcge1xuICBtYXJnaW4tcmlnaHQ6IC00LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNjgge1xuICBtYXJnaW4tcmlnaHQ6IC00LjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTY5IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNC4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTcwIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNC4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNzEge1xuICBtYXJnaW4tcmlnaHQ6IC00LjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNzIge1xuICBtYXJnaW4tcmlnaHQ6IC00LjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNzMge1xuICBtYXJnaW4tcmlnaHQ6IC00LjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNzQge1xuICBtYXJnaW4tcmlnaHQ6IC00LjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC03NSB7XG4gIG1hcmdpbi1yaWdodDogLTQuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC03NiB7XG4gIG1hcmdpbi1yaWdodDogLTQuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNzcge1xuICBtYXJnaW4tcmlnaHQ6IC00LjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtNzgge1xuICBtYXJnaW4tcmlnaHQ6IC00Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC03OSB7XG4gIG1hcmdpbi1yaWdodDogLTQuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC04MCB7XG4gIG1hcmdpbi1yaWdodDogLTVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtODEge1xuICBtYXJnaW4tcmlnaHQ6IC01LjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtODIge1xuICBtYXJnaW4tcmlnaHQ6IC01LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC04MyB7XG4gIG1hcmdpbi1yaWdodDogLTUuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC04NCB7XG4gIG1hcmdpbi1yaWdodDogLTUuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtODUge1xuICBtYXJnaW4tcmlnaHQ6IC01LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtODYge1xuICBtYXJnaW4tcmlnaHQ6IC01LjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC04NyB7XG4gIG1hcmdpbi1yaWdodDogLTUuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC04OCB7XG4gIG1hcmdpbi1yaWdodDogLTUuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC04OSB7XG4gIG1hcmdpbi1yaWdodDogLTUuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC05MCB7XG4gIG1hcmdpbi1yaWdodDogLTUuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTkxIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNS42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTkyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNS43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC05MyB7XG4gIG1hcmdpbi1yaWdodDogLTUuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC05NCB7XG4gIG1hcmdpbi1yaWdodDogLTUuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTk1IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNS45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTk2IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC05NyB7XG4gIG1hcmdpbi1yaWdodDogLTYuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC05OCB7XG4gIG1hcmdpbi1yaWdodDogLTYuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTk5IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNi4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEwMCB7XG4gIG1hcmdpbi1yaWdodDogLTYuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTAxIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNi4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEwMiB7XG4gIG1hcmdpbi1yaWdodDogLTYuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEwMyB7XG4gIG1hcmdpbi1yaWdodDogLTYuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMDQge1xuICBtYXJnaW4tcmlnaHQ6IC02LjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTA1IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNi41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEwNiB7XG4gIG1hcmdpbi1yaWdodDogLTYuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEwNyB7XG4gIG1hcmdpbi1yaWdodDogLTYuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMDgge1xuICBtYXJnaW4tcmlnaHQ6IC02Ljc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEwOSB7XG4gIG1hcmdpbi1yaWdodDogLTYuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMTAge1xuICBtYXJnaW4tcmlnaHQ6IC02Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMTEge1xuICBtYXJnaW4tcmlnaHQ6IC02LjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTEyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtN3JlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMTMge1xuICBtYXJnaW4tcmlnaHQ6IC03LjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTE0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNy4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTE1IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNy4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTExNiB7XG4gIG1hcmdpbi1yaWdodDogLTcuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTE3IHtcbiAgbWFyZ2luLXJpZ2h0OiAtNy4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTExOCB7XG4gIG1hcmdpbi1yaWdodDogLTcuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTExOSB7XG4gIG1hcmdpbi1yaWdodDogLTcuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMjAge1xuICBtYXJnaW4tcmlnaHQ6IC03LjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTIxIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNy41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEyMiB7XG4gIG1hcmdpbi1yaWdodDogLTcuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEyMyB7XG4gIG1hcmdpbi1yaWdodDogLTcuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMjQge1xuICBtYXJnaW4tcmlnaHQ6IC03Ljc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEyNSB7XG4gIG1hcmdpbi1yaWdodDogLTcuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMjYge1xuICBtYXJnaW4tcmlnaHQ6IC03Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMjcge1xuICBtYXJnaW4tcmlnaHQ6IC03LjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTI4IHtcbiAgbWFyZ2luLXJpZ2h0OiAtOHJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMjkge1xuICBtYXJnaW4tcmlnaHQ6IC04LjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTMwIHtcbiAgbWFyZ2luLXJpZ2h0OiAtOC4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTMxIHtcbiAgbWFyZ2luLXJpZ2h0OiAtOC4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEzMiB7XG4gIG1hcmdpbi1yaWdodDogLTguMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTMzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtOC4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEzNCB7XG4gIG1hcmdpbi1yaWdodDogLTguMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEzNSB7XG4gIG1hcmdpbi1yaWdodDogLTguNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xMzYge1xuICBtYXJnaW4tcmlnaHQ6IC04LjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTM3IHtcbiAgbWFyZ2luLXJpZ2h0OiAtOC41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEzOCB7XG4gIG1hcmdpbi1yaWdodDogLTguNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTEzOSB7XG4gIG1hcmdpbi1yaWdodDogLTguNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xNDAge1xuICBtYXJnaW4tcmlnaHQ6IC04Ljc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTE0MSB7XG4gIG1hcmdpbi1yaWdodDogLTguODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xNDIge1xuICBtYXJnaW4tcmlnaHQ6IC04Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xNDMge1xuICBtYXJnaW4tcmlnaHQ6IC04LjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTQ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtOXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1yaWdodC0xNDUge1xuICBtYXJnaW4tcmlnaHQ6IC05LjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTQ2IHtcbiAgbWFyZ2luLXJpZ2h0OiAtOS4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTQ3IHtcbiAgbWFyZ2luLXJpZ2h0OiAtOS4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTE0OCB7XG4gIG1hcmdpbi1yaWdodDogLTkuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtcmlnaHQtMTQ5IHtcbiAgbWFyZ2luLXJpZ2h0OiAtOS4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXJpZ2h0LTE1MCB7XG4gIG1hcmdpbi1yaWdodDogLTkuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMSB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0zIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC00IHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNSB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNiB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC03IHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC04IHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC05IHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiAtMC42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTIge1xuICBtYXJnaW4tbGVmdDogLTAuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTQge1xuICBtYXJnaW4tbGVmdDogLTAuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTUge1xuICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTE2IHtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTcge1xuICBtYXJnaW4tbGVmdDogLTEuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTE4IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTE5IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0yMCB7XG4gIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTIxIHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0yMiB7XG4gIG1hcmdpbi1sZWZ0OiAtMS4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0yMyB7XG4gIG1hcmdpbi1sZWZ0OiAtMS40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMjQge1xuICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTI1IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0yNiB7XG4gIG1hcmdpbi1sZWZ0OiAtMS42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0yNyB7XG4gIG1hcmdpbi1sZWZ0OiAtMS42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMjgge1xuICBtYXJnaW4tbGVmdDogLTEuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0yOSB7XG4gIG1hcmdpbi1sZWZ0OiAtMS44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMzAge1xuICBtYXJnaW4tbGVmdDogLTEuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMzEge1xuICBtYXJnaW4tbGVmdDogLTEuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTMyIHtcbiAgbWFyZ2luLWxlZnQ6IC0ycmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMzMge1xuICBtYXJnaW4tbGVmdDogLTIuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTM0IHtcbiAgbWFyZ2luLWxlZnQ6IC0yLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTM1IHtcbiAgbWFyZ2luLWxlZnQ6IC0yLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0zNiB7XG4gIG1hcmdpbi1sZWZ0OiAtMi4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTM3IHtcbiAgbWFyZ2luLWxlZnQ6IC0yLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0zOCB7XG4gIG1hcmdpbi1sZWZ0OiAtMi4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0zOSB7XG4gIG1hcmdpbi1sZWZ0OiAtMi40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNDAge1xuICBtYXJnaW4tbGVmdDogLTIuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTQxIHtcbiAgbWFyZ2luLWxlZnQ6IC0yLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC00MiB7XG4gIG1hcmdpbi1sZWZ0OiAtMi42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC00MyB7XG4gIG1hcmdpbi1sZWZ0OiAtMi42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNDQge1xuICBtYXJnaW4tbGVmdDogLTIuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC00NSB7XG4gIG1hcmdpbi1sZWZ0OiAtMi44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNDYge1xuICBtYXJnaW4tbGVmdDogLTIuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNDcge1xuICBtYXJnaW4tbGVmdDogLTIuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTQ4IHtcbiAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNDkge1xuICBtYXJnaW4tbGVmdDogLTMuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTUwIHtcbiAgbWFyZ2luLWxlZnQ6IC0zLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTUxIHtcbiAgbWFyZ2luLWxlZnQ6IC0zLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC01MiB7XG4gIG1hcmdpbi1sZWZ0OiAtMy4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTUzIHtcbiAgbWFyZ2luLWxlZnQ6IC0zLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC01NCB7XG4gIG1hcmdpbi1sZWZ0OiAtMy4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC01NSB7XG4gIG1hcmdpbi1sZWZ0OiAtMy40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNTYge1xuICBtYXJnaW4tbGVmdDogLTMuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTU3IHtcbiAgbWFyZ2luLWxlZnQ6IC0zLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC01OCB7XG4gIG1hcmdpbi1sZWZ0OiAtMy42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC01OSB7XG4gIG1hcmdpbi1sZWZ0OiAtMy42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNjAge1xuICBtYXJnaW4tbGVmdDogLTMuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC02MSB7XG4gIG1hcmdpbi1sZWZ0OiAtMy44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNjIge1xuICBtYXJnaW4tbGVmdDogLTMuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNjMge1xuICBtYXJnaW4tbGVmdDogLTMuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTY0IHtcbiAgbWFyZ2luLWxlZnQ6IC00cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNjUge1xuICBtYXJnaW4tbGVmdDogLTQuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTY2IHtcbiAgbWFyZ2luLWxlZnQ6IC00LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTY3IHtcbiAgbWFyZ2luLWxlZnQ6IC00LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC02OCB7XG4gIG1hcmdpbi1sZWZ0OiAtNC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTY5IHtcbiAgbWFyZ2luLWxlZnQ6IC00LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC03MCB7XG4gIG1hcmdpbi1sZWZ0OiAtNC4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC03MSB7XG4gIG1hcmdpbi1sZWZ0OiAtNC40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNzIge1xuICBtYXJnaW4tbGVmdDogLTQuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTczIHtcbiAgbWFyZ2luLWxlZnQ6IC00LjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC03NCB7XG4gIG1hcmdpbi1sZWZ0OiAtNC42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC03NSB7XG4gIG1hcmdpbi1sZWZ0OiAtNC42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNzYge1xuICBtYXJnaW4tbGVmdDogLTQuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC03NyB7XG4gIG1hcmdpbi1sZWZ0OiAtNC44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNzgge1xuICBtYXJnaW4tbGVmdDogLTQuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtNzkge1xuICBtYXJnaW4tbGVmdDogLTQuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTgwIHtcbiAgbWFyZ2luLWxlZnQ6IC01cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtODEge1xuICBtYXJnaW4tbGVmdDogLTUuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTgyIHtcbiAgbWFyZ2luLWxlZnQ6IC01LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTgzIHtcbiAgbWFyZ2luLWxlZnQ6IC01LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC04NCB7XG4gIG1hcmdpbi1sZWZ0OiAtNS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTg1IHtcbiAgbWFyZ2luLWxlZnQ6IC01LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC04NiB7XG4gIG1hcmdpbi1sZWZ0OiAtNS4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC04NyB7XG4gIG1hcmdpbi1sZWZ0OiAtNS40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtODgge1xuICBtYXJnaW4tbGVmdDogLTUuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTg5IHtcbiAgbWFyZ2luLWxlZnQ6IC01LjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC05MCB7XG4gIG1hcmdpbi1sZWZ0OiAtNS42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC05MSB7XG4gIG1hcmdpbi1sZWZ0OiAtNS42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtOTIge1xuICBtYXJnaW4tbGVmdDogLTUuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC05MyB7XG4gIG1hcmdpbi1sZWZ0OiAtNS44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtOTQge1xuICBtYXJnaW4tbGVmdDogLTUuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtOTUge1xuICBtYXJnaW4tbGVmdDogLTUuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTk2IHtcbiAgbWFyZ2luLWxlZnQ6IC02cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtOTcge1xuICBtYXJnaW4tbGVmdDogLTYuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTk4IHtcbiAgbWFyZ2luLWxlZnQ6IC02LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTk5IHtcbiAgbWFyZ2luLWxlZnQ6IC02LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMDAge1xuICBtYXJnaW4tbGVmdDogLTYuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMDEge1xuICBtYXJnaW4tbGVmdDogLTYuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEwMiB7XG4gIG1hcmdpbi1sZWZ0OiAtNi4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMDMge1xuICBtYXJnaW4tbGVmdDogLTYuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEwNCB7XG4gIG1hcmdpbi1sZWZ0OiAtNi41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTA1IHtcbiAgbWFyZ2luLWxlZnQ6IC02LjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMDYge1xuICBtYXJnaW4tbGVmdDogLTYuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTA3IHtcbiAgbWFyZ2luLWxlZnQ6IC02LjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMDgge1xuICBtYXJnaW4tbGVmdDogLTYuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMDkge1xuICBtYXJnaW4tbGVmdDogLTYuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTExMCB7XG4gIG1hcmdpbi1sZWZ0OiAtNi44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMTEge1xuICBtYXJnaW4tbGVmdDogLTYuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTExMiB7XG4gIG1hcmdpbi1sZWZ0OiAtN3JlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTExMyB7XG4gIG1hcmdpbi1sZWZ0OiAtNy4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTE0IHtcbiAgbWFyZ2luLWxlZnQ6IC03LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTExNSB7XG4gIG1hcmdpbi1sZWZ0OiAtNy4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTE2IHtcbiAgbWFyZ2luLWxlZnQ6IC03LjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTE3IHtcbiAgbWFyZ2luLWxlZnQ6IC03LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMTgge1xuICBtYXJnaW4tbGVmdDogLTcuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTE5IHtcbiAgbWFyZ2luLWxlZnQ6IC03LjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMjAge1xuICBtYXJnaW4tbGVmdDogLTcuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEyMSB7XG4gIG1hcmdpbi1sZWZ0OiAtNy41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTIyIHtcbiAgbWFyZ2luLWxlZnQ6IC03LjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEyMyB7XG4gIG1hcmdpbi1sZWZ0OiAtNy42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTI0IHtcbiAgbWFyZ2luLWxlZnQ6IC03Ljc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTI1IHtcbiAgbWFyZ2luLWxlZnQ6IC03LjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMjYge1xuICBtYXJnaW4tbGVmdDogLTcuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTI3IHtcbiAgbWFyZ2luLWxlZnQ6IC03LjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMjgge1xuICBtYXJnaW4tbGVmdDogLThyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMjkge1xuICBtYXJnaW4tbGVmdDogLTguMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEzMCB7XG4gIG1hcmdpbi1sZWZ0OiAtOC4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMzEge1xuICBtYXJnaW4tbGVmdDogLTguMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEzMiB7XG4gIG1hcmdpbi1sZWZ0OiAtOC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEzMyB7XG4gIG1hcmdpbi1sZWZ0OiAtOC4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTM0IHtcbiAgbWFyZ2luLWxlZnQ6IC04LjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEzNSB7XG4gIG1hcmdpbi1sZWZ0OiAtOC40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTM2IHtcbiAgbWFyZ2luLWxlZnQ6IC04LjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMzcge1xuICBtYXJnaW4tbGVmdDogLTguNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTEzOCB7XG4gIG1hcmdpbi1sZWZ0OiAtOC42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xMzkge1xuICBtYXJnaW4tbGVmdDogLTguNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTE0MCB7XG4gIG1hcmdpbi1sZWZ0OiAtOC43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTE0MSB7XG4gIG1hcmdpbi1sZWZ0OiAtOC44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTQyIHtcbiAgbWFyZ2luLWxlZnQ6IC04Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTE0MyB7XG4gIG1hcmdpbi1sZWZ0OiAtOC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTQ0IHtcbiAgbWFyZ2luLWxlZnQ6IC05cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTQ1IHtcbiAgbWFyZ2luLWxlZnQ6IC05LjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xNDYge1xuICBtYXJnaW4tbGVmdDogLTkuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWxlZnQtMTQ3IHtcbiAgbWFyZ2luLWxlZnQ6IC05LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xNDgge1xuICBtYXJnaW4tbGVmdDogLTkuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtbGVmdC0xNDkge1xuICBtYXJnaW4tbGVmdDogLTkuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1sZWZ0LTE1MCB7XG4gIG1hcmdpbi1sZWZ0OiAtOS4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMSB7XG4gIG1hcmdpbi10b3A6IC0wLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMiB7XG4gIG1hcmdpbi10b3A6IC0wLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0zIHtcbiAgbWFyZ2luLXRvcDogLTAuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC00IHtcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNSB7XG4gIG1hcmdpbi10b3A6IC0wLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNiB7XG4gIG1hcmdpbi10b3A6IC0wLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC03IHtcbiAgbWFyZ2luLXRvcDogLTAuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC04IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC05IHtcbiAgbWFyZ2luLXRvcDogLTAuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMCB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMSB7XG4gIG1hcmdpbi10b3A6IC0wLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTIge1xuICBtYXJnaW4tdG9wOiAtMC43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMyB7XG4gIG1hcmdpbi10b3A6IC0wLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTQge1xuICBtYXJnaW4tdG9wOiAtMC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTUge1xuICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTE2IHtcbiAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTcge1xuICBtYXJnaW4tdG9wOiAtMS4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTE4IHtcbiAgbWFyZ2luLXRvcDogLTEuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTE5IHtcbiAgbWFyZ2luLXRvcDogLTEuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0yMCB7XG4gIG1hcmdpbi10b3A6IC0xLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTIxIHtcbiAgbWFyZ2luLXRvcDogLTEuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0yMiB7XG4gIG1hcmdpbi10b3A6IC0xLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0yMyB7XG4gIG1hcmdpbi10b3A6IC0xLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMjQge1xuICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTI1IHtcbiAgbWFyZ2luLXRvcDogLTEuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0yNiB7XG4gIG1hcmdpbi10b3A6IC0xLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0yNyB7XG4gIG1hcmdpbi10b3A6IC0xLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMjgge1xuICBtYXJnaW4tdG9wOiAtMS43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0yOSB7XG4gIG1hcmdpbi10b3A6IC0xLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMzAge1xuICBtYXJnaW4tdG9wOiAtMS44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMzEge1xuICBtYXJnaW4tdG9wOiAtMS45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTMyIHtcbiAgbWFyZ2luLXRvcDogLTJyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMzMge1xuICBtYXJnaW4tdG9wOiAtMi4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTM0IHtcbiAgbWFyZ2luLXRvcDogLTIuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTM1IHtcbiAgbWFyZ2luLXRvcDogLTIuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0zNiB7XG4gIG1hcmdpbi10b3A6IC0yLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTM3IHtcbiAgbWFyZ2luLXRvcDogLTIuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0zOCB7XG4gIG1hcmdpbi10b3A6IC0yLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0zOSB7XG4gIG1hcmdpbi10b3A6IC0yLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNDAge1xuICBtYXJnaW4tdG9wOiAtMi41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTQxIHtcbiAgbWFyZ2luLXRvcDogLTIuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC00MiB7XG4gIG1hcmdpbi10b3A6IC0yLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC00MyB7XG4gIG1hcmdpbi10b3A6IC0yLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNDQge1xuICBtYXJnaW4tdG9wOiAtMi43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC00NSB7XG4gIG1hcmdpbi10b3A6IC0yLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNDYge1xuICBtYXJnaW4tdG9wOiAtMi44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNDcge1xuICBtYXJnaW4tdG9wOiAtMi45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTQ4IHtcbiAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNDkge1xuICBtYXJnaW4tdG9wOiAtMy4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTUwIHtcbiAgbWFyZ2luLXRvcDogLTMuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTUxIHtcbiAgbWFyZ2luLXRvcDogLTMuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC01MiB7XG4gIG1hcmdpbi10b3A6IC0zLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTUzIHtcbiAgbWFyZ2luLXRvcDogLTMuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC01NCB7XG4gIG1hcmdpbi10b3A6IC0zLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC01NSB7XG4gIG1hcmdpbi10b3A6IC0zLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNTYge1xuICBtYXJnaW4tdG9wOiAtMy41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTU3IHtcbiAgbWFyZ2luLXRvcDogLTMuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC01OCB7XG4gIG1hcmdpbi10b3A6IC0zLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC01OSB7XG4gIG1hcmdpbi10b3A6IC0zLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNjAge1xuICBtYXJnaW4tdG9wOiAtMy43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC02MSB7XG4gIG1hcmdpbi10b3A6IC0zLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNjIge1xuICBtYXJnaW4tdG9wOiAtMy44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNjMge1xuICBtYXJnaW4tdG9wOiAtMy45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTY0IHtcbiAgbWFyZ2luLXRvcDogLTRyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNjUge1xuICBtYXJnaW4tdG9wOiAtNC4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTY2IHtcbiAgbWFyZ2luLXRvcDogLTQuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTY3IHtcbiAgbWFyZ2luLXRvcDogLTQuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC02OCB7XG4gIG1hcmdpbi10b3A6IC00LjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTY5IHtcbiAgbWFyZ2luLXRvcDogLTQuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC03MCB7XG4gIG1hcmdpbi10b3A6IC00LjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC03MSB7XG4gIG1hcmdpbi10b3A6IC00LjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNzIge1xuICBtYXJnaW4tdG9wOiAtNC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTczIHtcbiAgbWFyZ2luLXRvcDogLTQuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC03NCB7XG4gIG1hcmdpbi10b3A6IC00LjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC03NSB7XG4gIG1hcmdpbi10b3A6IC00LjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNzYge1xuICBtYXJnaW4tdG9wOiAtNC43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC03NyB7XG4gIG1hcmdpbi10b3A6IC00LjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNzgge1xuICBtYXJnaW4tdG9wOiAtNC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtNzkge1xuICBtYXJnaW4tdG9wOiAtNC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTgwIHtcbiAgbWFyZ2luLXRvcDogLTVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtODEge1xuICBtYXJnaW4tdG9wOiAtNS4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTgyIHtcbiAgbWFyZ2luLXRvcDogLTUuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTgzIHtcbiAgbWFyZ2luLXRvcDogLTUuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC04NCB7XG4gIG1hcmdpbi10b3A6IC01LjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTg1IHtcbiAgbWFyZ2luLXRvcDogLTUuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC04NiB7XG4gIG1hcmdpbi10b3A6IC01LjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC04NyB7XG4gIG1hcmdpbi10b3A6IC01LjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtODgge1xuICBtYXJnaW4tdG9wOiAtNS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTg5IHtcbiAgbWFyZ2luLXRvcDogLTUuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC05MCB7XG4gIG1hcmdpbi10b3A6IC01LjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC05MSB7XG4gIG1hcmdpbi10b3A6IC01LjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtOTIge1xuICBtYXJnaW4tdG9wOiAtNS43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC05MyB7XG4gIG1hcmdpbi10b3A6IC01LjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtOTQge1xuICBtYXJnaW4tdG9wOiAtNS44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtOTUge1xuICBtYXJnaW4tdG9wOiAtNS45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTk2IHtcbiAgbWFyZ2luLXRvcDogLTZyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtOTcge1xuICBtYXJnaW4tdG9wOiAtNi4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTk4IHtcbiAgbWFyZ2luLXRvcDogLTYuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTk5IHtcbiAgbWFyZ2luLXRvcDogLTYuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMDAge1xuICBtYXJnaW4tdG9wOiAtNi4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMDEge1xuICBtYXJnaW4tdG9wOiAtNi4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEwMiB7XG4gIG1hcmdpbi10b3A6IC02LjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMDMge1xuICBtYXJnaW4tdG9wOiAtNi40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEwNCB7XG4gIG1hcmdpbi10b3A6IC02LjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTA1IHtcbiAgbWFyZ2luLXRvcDogLTYuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMDYge1xuICBtYXJnaW4tdG9wOiAtNi42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTA3IHtcbiAgbWFyZ2luLXRvcDogLTYuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMDgge1xuICBtYXJnaW4tdG9wOiAtNi43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMDkge1xuICBtYXJnaW4tdG9wOiAtNi44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTExMCB7XG4gIG1hcmdpbi10b3A6IC02Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMTEge1xuICBtYXJnaW4tdG9wOiAtNi45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTExMiB7XG4gIG1hcmdpbi10b3A6IC03cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTExMyB7XG4gIG1hcmdpbi10b3A6IC03LjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTE0IHtcbiAgbWFyZ2luLXRvcDogLTcuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTExNSB7XG4gIG1hcmdpbi10b3A6IC03LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTE2IHtcbiAgbWFyZ2luLXRvcDogLTcuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTE3IHtcbiAgbWFyZ2luLXRvcDogLTcuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMTgge1xuICBtYXJnaW4tdG9wOiAtNy4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTE5IHtcbiAgbWFyZ2luLXRvcDogLTcuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMjAge1xuICBtYXJnaW4tdG9wOiAtNy41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEyMSB7XG4gIG1hcmdpbi10b3A6IC03LjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTIyIHtcbiAgbWFyZ2luLXRvcDogLTcuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEyMyB7XG4gIG1hcmdpbi10b3A6IC03LjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTI0IHtcbiAgbWFyZ2luLXRvcDogLTcuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTI1IHtcbiAgbWFyZ2luLXRvcDogLTcuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMjYge1xuICBtYXJnaW4tdG9wOiAtNy44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTI3IHtcbiAgbWFyZ2luLXRvcDogLTcuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMjgge1xuICBtYXJnaW4tdG9wOiAtOHJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMjkge1xuICBtYXJnaW4tdG9wOiAtOC4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEzMCB7XG4gIG1hcmdpbi10b3A6IC04LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMzEge1xuICBtYXJnaW4tdG9wOiAtOC4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEzMiB7XG4gIG1hcmdpbi10b3A6IC04LjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEzMyB7XG4gIG1hcmdpbi10b3A6IC04LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTM0IHtcbiAgbWFyZ2luLXRvcDogLTguMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEzNSB7XG4gIG1hcmdpbi10b3A6IC04LjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTM2IHtcbiAgbWFyZ2luLXRvcDogLTguNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMzcge1xuICBtYXJnaW4tdG9wOiAtOC41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTEzOCB7XG4gIG1hcmdpbi10b3A6IC04LjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xMzkge1xuICBtYXJnaW4tdG9wOiAtOC42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTE0MCB7XG4gIG1hcmdpbi10b3A6IC04Ljc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTE0MSB7XG4gIG1hcmdpbi10b3A6IC04LjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTQyIHtcbiAgbWFyZ2luLXRvcDogLTguODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTE0MyB7XG4gIG1hcmdpbi10b3A6IC04LjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTQ0IHtcbiAgbWFyZ2luLXRvcDogLTlyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTQ1IHtcbiAgbWFyZ2luLXRvcDogLTkuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xNDYge1xuICBtYXJnaW4tdG9wOiAtOS4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtMTQ3IHtcbiAgbWFyZ2luLXRvcDogLTkuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xNDgge1xuICBtYXJnaW4tdG9wOiAtOS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC11cC0xNDkge1xuICBtYXJnaW4tdG9wOiAtOS4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LXVwLTE1MCB7XG4gIG1hcmdpbi10b3A6IC05LjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTAge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMSB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0yIHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMyB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi00IHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi01IHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTYge1xuICBtYXJnaW4tYm90dG9tOiAtMC4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi03IHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTgge1xuICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tOSB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMCB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTExIHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEyIHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMyB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xNCB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTE1IHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTE2IHtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xNyB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xOCB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTE5IHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTIwIHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0yMSB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0yMiB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTIzIHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTI0IHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTI1IHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTI2IHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMjcge1xuICBtYXJnaW4tYm90dG9tOiAtMS42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMjgge1xuICBtYXJnaW4tYm90dG9tOiAtMS43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTI5IHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTMwIHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMzEge1xuICBtYXJnaW4tYm90dG9tOiAtMS45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMzIge1xuICBtYXJnaW4tYm90dG9tOiAtMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTMzIHtcbiAgbWFyZ2luLWJvdHRvbTogLTIuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTM0IHtcbiAgbWFyZ2luLWJvdHRvbTogLTIuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMzUge1xuICBtYXJnaW4tYm90dG9tOiAtMi4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMzYge1xuICBtYXJnaW4tYm90dG9tOiAtMi4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTM3IHtcbiAgbWFyZ2luLWJvdHRvbTogLTIuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTM4IHtcbiAgbWFyZ2luLWJvdHRvbTogLTIuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMzkge1xuICBtYXJnaW4tYm90dG9tOiAtMi40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNDAge1xuICBtYXJnaW4tYm90dG9tOiAtMi41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNDEge1xuICBtYXJnaW4tYm90dG9tOiAtMi41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNDIge1xuICBtYXJnaW4tYm90dG9tOiAtMi42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi00MyB7XG4gIG1hcmdpbi1ib3R0b206IC0yLjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi00NCB7XG4gIG1hcmdpbi1ib3R0b206IC0yLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNDUge1xuICBtYXJnaW4tYm90dG9tOiAtMi44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNDYge1xuICBtYXJnaW4tYm90dG9tOiAtMi44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi00NyB7XG4gIG1hcmdpbi1ib3R0b206IC0yLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi00OCB7XG4gIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNDkge1xuICBtYXJnaW4tYm90dG9tOiAtMy4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNTAge1xuICBtYXJnaW4tYm90dG9tOiAtMy4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi01MSB7XG4gIG1hcmdpbi1ib3R0b206IC0zLjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi01MiB7XG4gIG1hcmdpbi1ib3R0b206IC0zLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNTMge1xuICBtYXJnaW4tYm90dG9tOiAtMy4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNTQge1xuICBtYXJnaW4tYm90dG9tOiAtMy4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi01NSB7XG4gIG1hcmdpbi1ib3R0b206IC0zLjQzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi01NiB7XG4gIG1hcmdpbi1ib3R0b206IC0zLjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi01NyB7XG4gIG1hcmdpbi1ib3R0b206IC0zLjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi01OCB7XG4gIG1hcmdpbi1ib3R0b206IC0zLjYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTU5IHtcbiAgbWFyZ2luLWJvdHRvbTogLTMuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTYwIHtcbiAgbWFyZ2luLWJvdHRvbTogLTMuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi02MSB7XG4gIG1hcmdpbi1ib3R0b206IC0zLjgxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi02MiB7XG4gIG1hcmdpbi1ib3R0b206IC0zLjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTYzIHtcbiAgbWFyZ2luLWJvdHRvbTogLTMuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTY0IHtcbiAgbWFyZ2luLWJvdHRvbTogLTRyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi02NSB7XG4gIG1hcmdpbi1ib3R0b206IC00LjA2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi02NiB7XG4gIG1hcmdpbi1ib3R0b206IC00LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTY3IHtcbiAgbWFyZ2luLWJvdHRvbTogLTQuMTg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTY4IHtcbiAgbWFyZ2luLWJvdHRvbTogLTQuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi02OSB7XG4gIG1hcmdpbi1ib3R0b206IC00LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi03MCB7XG4gIG1hcmdpbi1ib3R0b206IC00LjM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTcxIHtcbiAgbWFyZ2luLWJvdHRvbTogLTQuNDM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTcyIHtcbiAgbWFyZ2luLWJvdHRvbTogLTQuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTczIHtcbiAgbWFyZ2luLWJvdHRvbTogLTQuNTYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTc0IHtcbiAgbWFyZ2luLWJvdHRvbTogLTQuNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNzUge1xuICBtYXJnaW4tYm90dG9tOiAtNC42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNzYge1xuICBtYXJnaW4tYm90dG9tOiAtNC43NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTc3IHtcbiAgbWFyZ2luLWJvdHRvbTogLTQuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTc4IHtcbiAgbWFyZ2luLWJvdHRvbTogLTQuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tNzkge1xuICBtYXJnaW4tYm90dG9tOiAtNC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tODAge1xuICBtYXJnaW4tYm90dG9tOiAtNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTgxIHtcbiAgbWFyZ2luLWJvdHRvbTogLTUuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTgyIHtcbiAgbWFyZ2luLWJvdHRvbTogLTUuMTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tODMge1xuICBtYXJnaW4tYm90dG9tOiAtNS4xODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tODQge1xuICBtYXJnaW4tYm90dG9tOiAtNS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTg1IHtcbiAgbWFyZ2luLWJvdHRvbTogLTUuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTg2IHtcbiAgbWFyZ2luLWJvdHRvbTogLTUuMzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tODcge1xuICBtYXJnaW4tYm90dG9tOiAtNS40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tODgge1xuICBtYXJnaW4tYm90dG9tOiAtNS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tODkge1xuICBtYXJnaW4tYm90dG9tOiAtNS41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tOTAge1xuICBtYXJnaW4tYm90dG9tOiAtNS42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi05MSB7XG4gIG1hcmdpbi1ib3R0b206IC01LjY4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi05MiB7XG4gIG1hcmdpbi1ib3R0b206IC01Ljc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tOTMge1xuICBtYXJnaW4tYm90dG9tOiAtNS44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tOTQge1xuICBtYXJnaW4tYm90dG9tOiAtNS44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi05NSB7XG4gIG1hcmdpbi1ib3R0b206IC01LjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi05NiB7XG4gIG1hcmdpbi1ib3R0b206IC02cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tOTcge1xuICBtYXJnaW4tYm90dG9tOiAtNi4wNjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tOTgge1xuICBtYXJnaW4tYm90dG9tOiAtNi4xMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi05OSB7XG4gIG1hcmdpbi1ib3R0b206IC02LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMDAge1xuICBtYXJnaW4tYm90dG9tOiAtNi4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEwMSB7XG4gIG1hcmdpbi1ib3R0b206IC02LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMDIge1xuICBtYXJnaW4tYm90dG9tOiAtNi4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMDMge1xuICBtYXJnaW4tYm90dG9tOiAtNi40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTA0IHtcbiAgbWFyZ2luLWJvdHRvbTogLTYuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEwNSB7XG4gIG1hcmdpbi1ib3R0b206IC02LjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMDYge1xuICBtYXJnaW4tYm90dG9tOiAtNi42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMDcge1xuICBtYXJnaW4tYm90dG9tOiAtNi42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTA4IHtcbiAgbWFyZ2luLWJvdHRvbTogLTYuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMDkge1xuICBtYXJnaW4tYm90dG9tOiAtNi44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTEwIHtcbiAgbWFyZ2luLWJvdHRvbTogLTYuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTExIHtcbiAgbWFyZ2luLWJvdHRvbTogLTYuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTExMiB7XG4gIG1hcmdpbi1ib3R0b206IC03cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTEzIHtcbiAgbWFyZ2luLWJvdHRvbTogLTcuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTExNCB7XG4gIG1hcmdpbi1ib3R0b206IC03LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTExNSB7XG4gIG1hcmdpbi1ib3R0b206IC03LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMTYge1xuICBtYXJnaW4tYm90dG9tOiAtNy4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTExNyB7XG4gIG1hcmdpbi1ib3R0b206IC03LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMTgge1xuICBtYXJnaW4tYm90dG9tOiAtNy4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMTkge1xuICBtYXJnaW4tYm90dG9tOiAtNy40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTIwIHtcbiAgbWFyZ2luLWJvdHRvbTogLTcuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEyMSB7XG4gIG1hcmdpbi1ib3R0b206IC03LjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMjIge1xuICBtYXJnaW4tYm90dG9tOiAtNy42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMjMge1xuICBtYXJnaW4tYm90dG9tOiAtNy42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTI0IHtcbiAgbWFyZ2luLWJvdHRvbTogLTcuNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMjUge1xuICBtYXJnaW4tYm90dG9tOiAtNy44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTI2IHtcbiAgbWFyZ2luLWJvdHRvbTogLTcuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTI3IHtcbiAgbWFyZ2luLWJvdHRvbTogLTcuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEyOCB7XG4gIG1hcmdpbi1ib3R0b206IC04cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTI5IHtcbiAgbWFyZ2luLWJvdHRvbTogLTguMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEzMCB7XG4gIG1hcmdpbi1ib3R0b206IC04LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEzMSB7XG4gIG1hcmdpbi1ib3R0b206IC04LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMzIge1xuICBtYXJnaW4tYm90dG9tOiAtOC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEzMyB7XG4gIG1hcmdpbi1ib3R0b206IC04LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMzQge1xuICBtYXJnaW4tYm90dG9tOiAtOC4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMzUge1xuICBtYXJnaW4tYm90dG9tOiAtOC40Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTM2IHtcbiAgbWFyZ2luLWJvdHRvbTogLTguNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTEzNyB7XG4gIG1hcmdpbi1ib3R0b206IC04LjU2MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMzgge1xuICBtYXJnaW4tYm90dG9tOiAtOC42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xMzkge1xuICBtYXJnaW4tYm90dG9tOiAtOC42ODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTQwIHtcbiAgbWFyZ2luLWJvdHRvbTogLTguNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xNDEge1xuICBtYXJnaW4tYm90dG9tOiAtOC44MTI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTQyIHtcbiAgbWFyZ2luLWJvdHRvbTogLTguODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTQzIHtcbiAgbWFyZ2luLWJvdHRvbTogLTguOTM3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTE0NCB7XG4gIG1hcmdpbi1ib3R0b206IC05cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNoaWZ0LWRvd24tMTQ1IHtcbiAgbWFyZ2luLWJvdHRvbTogLTkuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTE0NiB7XG4gIG1hcmdpbi1ib3R0b206IC05LjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTE0NyB7XG4gIG1hcmdpbi1ib3R0b206IC05LjE4NzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xNDgge1xuICBtYXJnaW4tYm90dG9tOiAtOS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaGlmdC1kb3duLTE0OSB7XG4gIG1hcmdpbi1ib3R0b206IC05LjMxMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtZG93bi0xNTAge1xuICBtYXJnaW4tYm90dG9tOiAtOS4zNzVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2hpZnQtdXAtcGhvbmUtMSB7XG4gIG1hcmdpbi10b3A6IC0wLjA2MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMiB7XG4gIG1hcmdpbi10b3A6IC0wLjEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0zIHtcbiAgbWFyZ2luLXRvcDogLTAuMTg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0zIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS00IHtcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNSB7XG4gIG1hcmdpbi10b3A6IC0wLjMxMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNiB7XG4gIG1hcmdpbi10b3A6IC0wLjM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS03IHtcbiAgbWFyZ2luLXRvcDogLTAuNDM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS03IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS04IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS04IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS05IHtcbiAgbWFyZ2luLXRvcDogLTAuNTYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS05IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMCB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTExIHtcbiAgbWFyZ2luLXRvcDogLTAuNjg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEyIHtcbiAgbWFyZ2luLXRvcDogLTAuNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTIge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMyB7XG4gIG1hcmdpbi10b3A6IC0wLjgxMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTMge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xNCB7XG4gIG1hcmdpbi10b3A6IC0wLjg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTE1IHtcbiAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTE2IHtcbiAgbWFyZ2luLXRvcDogLTFyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xNyB7XG4gIG1hcmdpbi10b3A6IC0xLjA2MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xOCB7XG4gIG1hcmdpbi10b3A6IC0xLjEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xOCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTE5IHtcbiAgbWFyZ2luLXRvcDogLTEuMTg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xOSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTIwIHtcbiAgbWFyZ2luLXRvcDogLTEuMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMjAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yMCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0yMSB7XG4gIG1hcmdpbi10b3A6IC0xLjMxMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMjEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yMSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0yMiB7XG4gIG1hcmdpbi10b3A6IC0xLjM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yMiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTIyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTIzIHtcbiAgbWFyZ2luLXRvcDogLTEuNDM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yMyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTIzIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTI0IHtcbiAgbWFyZ2luLXRvcDogLTEuNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yNCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTI0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTI1IHtcbiAgbWFyZ2luLXRvcDogLTEuNTYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yNSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTI1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTI2IHtcbiAgbWFyZ2luLXRvcDogLTEuNjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTI2IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMjYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMjcge1xuICBtYXJnaW4tdG9wOiAtMS42ODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTI3IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMjcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMjgge1xuICBtYXJnaW4tdG9wOiAtMS43NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yOCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTI4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTI5IHtcbiAgbWFyZ2luLXRvcDogLTEuODEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0yOSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTI5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTMwIHtcbiAgbWFyZ2luLXRvcDogLTEuODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTMwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMzAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMzEge1xuICBtYXJnaW4tdG9wOiAtMS45Mzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTMxIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMzEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMzIge1xuICBtYXJnaW4tdG9wOiAtMnJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0zMiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTMyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTMzIHtcbiAgbWFyZ2luLXRvcDogLTIuMDYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0zMyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTMzIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTM0IHtcbiAgbWFyZ2luLXRvcDogLTIuMTI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTM0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMzQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMzUge1xuICBtYXJnaW4tdG9wOiAtMi4xODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTM1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMzUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMzYge1xuICBtYXJnaW4tdG9wOiAtMi4yNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0zNiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTM2IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTM3IHtcbiAgbWFyZ2luLXRvcDogLTIuMzEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0zNyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTM3IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTM4IHtcbiAgbWFyZ2luLXRvcDogLTIuMzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTM4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMzgge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMzkge1xuICBtYXJnaW4tdG9wOiAtMi40Mzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTM5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMzkge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNDAge1xuICBtYXJnaW4tdG9wOiAtMi41cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTQwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNDEge1xuICBtYXJnaW4tdG9wOiAtMi41NjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTQxIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNDIge1xuICBtYXJnaW4tdG9wOiAtMi42MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDIge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS00MiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS00MyB7XG4gIG1hcmdpbi10b3A6IC0yLjY4NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDMge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS00MyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS00NCB7XG4gIG1hcmdpbi10b3A6IC0yLjc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTQ0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNDUge1xuICBtYXJnaW4tdG9wOiAtMi44MTI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTQ1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNDYge1xuICBtYXJnaW4tdG9wOiAtMi44NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS00NiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS00NyB7XG4gIG1hcmdpbi10b3A6IC0yLjkzNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS00NyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS00OCB7XG4gIG1hcmdpbi10b3A6IC0zcmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTQ4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDgge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNDkge1xuICBtYXJnaW4tdG9wOiAtMy4wNjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTQ5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNDkge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNTAge1xuICBtYXJnaW4tdG9wOiAtMy4xMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNTAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS01MCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS01MSB7XG4gIG1hcmdpbi10b3A6IC0zLjE4NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNTEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS01MSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS01MiB7XG4gIG1hcmdpbi10b3A6IC0zLjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTUyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNTIge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNTMge1xuICBtYXJnaW4tdG9wOiAtMy4zMTI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTUzIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNTMge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNTQge1xuICBtYXJnaW4tdG9wOiAtMy4zNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNTQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS01NCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS01NSB7XG4gIG1hcmdpbi10b3A6IC0zLjQzNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNTUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS01NSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS01NiB7XG4gIG1hcmdpbi10b3A6IC0zLjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNTYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS01NiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS01NyB7XG4gIG1hcmdpbi10b3A6IC0zLjU2MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNTcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS01NyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS01OCB7XG4gIG1hcmdpbi10b3A6IC0zLjYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS01OCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTU4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTU5IHtcbiAgbWFyZ2luLXRvcDogLTMuNjg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS01OSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTU5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTYwIHtcbiAgbWFyZ2luLXRvcDogLTMuNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNjAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02MCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS02MSB7XG4gIG1hcmdpbi10b3A6IC0zLjgxMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNjEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02MSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS02MiB7XG4gIG1hcmdpbi10b3A6IC0zLjg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02MiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTYyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTYzIHtcbiAgbWFyZ2luLXRvcDogLTMuOTM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02MyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTYzIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTY0IHtcbiAgbWFyZ2luLXRvcDogLTRyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNjQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02NCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS02NSB7XG4gIG1hcmdpbi10b3A6IC00LjA2MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNjUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02NSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS02NiB7XG4gIG1hcmdpbi10b3A6IC00LjEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02NiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTY2IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTY3IHtcbiAgbWFyZ2luLXRvcDogLTQuMTg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02NyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTY3IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTY4IHtcbiAgbWFyZ2luLXRvcDogLTQuMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNjgge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02OCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS02OSB7XG4gIG1hcmdpbi10b3A6IC00LjMxMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNjkge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS02OSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS03MCB7XG4gIG1hcmdpbi10b3A6IC00LjM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS03MCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTcwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTcxIHtcbiAgbWFyZ2luLXRvcDogLTQuNDM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS03MSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTcxIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTcyIHtcbiAgbWFyZ2luLXRvcDogLTQuNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS03MiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTcyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTczIHtcbiAgbWFyZ2luLXRvcDogLTQuNTYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS03MyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTczIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTc0IHtcbiAgbWFyZ2luLXRvcDogLTQuNjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTc0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNzQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNzUge1xuICBtYXJnaW4tdG9wOiAtNC42ODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTc1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNzUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNzYge1xuICBtYXJnaW4tdG9wOiAtNC43NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS03NiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTc2IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTc3IHtcbiAgbWFyZ2luLXRvcDogLTQuODEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS03NyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTc3IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTc4IHtcbiAgbWFyZ2luLXRvcDogLTQuODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTc4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNzgge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtNzkge1xuICBtYXJnaW4tdG9wOiAtNC45Mzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTc5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtNzkge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtODAge1xuICBtYXJnaW4tdG9wOiAtNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS04MCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTgwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTgxIHtcbiAgbWFyZ2luLXRvcDogLTUuMDYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS04MSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTgxIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTgyIHtcbiAgbWFyZ2luLXRvcDogLTUuMTI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTgyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtODIge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtODMge1xuICBtYXJnaW4tdG9wOiAtNS4xODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTgzIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtODMge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtODQge1xuICBtYXJnaW4tdG9wOiAtNS4yNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS04NCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTg0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTg1IHtcbiAgbWFyZ2luLXRvcDogLTUuMzEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS04NSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTg1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTg2IHtcbiAgbWFyZ2luLXRvcDogLTUuMzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTg2IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtODYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtODcge1xuICBtYXJnaW4tdG9wOiAtNS40Mzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTg3IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtODcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtODgge1xuICBtYXJnaW4tdG9wOiAtNS41cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTg4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtODgge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtODkge1xuICBtYXJnaW4tdG9wOiAtNS41NjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTg5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtODkge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtOTAge1xuICBtYXJnaW4tdG9wOiAtNS42MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS05MCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS05MSB7XG4gIG1hcmdpbi10b3A6IC01LjY4NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS05MSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS05MiB7XG4gIG1hcmdpbi10b3A6IC01Ljc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTkyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTIge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtOTMge1xuICBtYXJnaW4tdG9wOiAtNS44MTI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTkzIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTMge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtOTQge1xuICBtYXJnaW4tdG9wOiAtNS44NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS05NCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS05NSB7XG4gIG1hcmdpbi10b3A6IC01LjkzNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS05NSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS05NiB7XG4gIG1hcmdpbi10b3A6IC02cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTk2IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtOTcge1xuICBtYXJnaW4tdG9wOiAtNi4wNjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTk3IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtOTgge1xuICBtYXJnaW4tdG9wOiAtNi4xMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTgge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS05OCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS05OSB7XG4gIG1hcmdpbi10b3A6IC02LjE4NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtOTkge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS05OSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMDAge1xuICBtYXJnaW4tdG9wOiAtNi4yNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMDAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMDAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTAxIHtcbiAgbWFyZ2luLXRvcDogLTYuMzEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMDEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMDEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTAyIHtcbiAgbWFyZ2luLXRvcDogLTYuMzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwMiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwMiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMDMge1xuICBtYXJnaW4tdG9wOiAtNi40Mzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwMyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwMyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMDQge1xuICBtYXJnaW4tdG9wOiAtNi41cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwNCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwNCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMDUge1xuICBtYXJnaW4tdG9wOiAtNi41NjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwNSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwNSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMDYge1xuICBtYXJnaW4tdG9wOiAtNi42MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTA2IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTA2IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEwNyB7XG4gIG1hcmdpbi10b3A6IC02LjY4NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTA3IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTA3IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEwOCB7XG4gIG1hcmdpbi10b3A6IC02Ljc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwOCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwOCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMDkge1xuICBtYXJnaW4tdG9wOiAtNi44MTI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwOSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEwOSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMTAge1xuICBtYXJnaW4tdG9wOiAtNi44NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTEwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTEwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTExMSB7XG4gIG1hcmdpbi10b3A6IC02LjkzNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTExIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTExIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTExMiB7XG4gIG1hcmdpbi10b3A6IC03cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExMiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExMiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMTMge1xuICBtYXJnaW4tdG9wOiAtNy4wNjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExMyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExMyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMTQge1xuICBtYXJnaW4tdG9wOiAtNy4xMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTE0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTE0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTExNSB7XG4gIG1hcmdpbi10b3A6IC03LjE4NzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTE1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTE1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTExNiB7XG4gIG1hcmdpbi10b3A6IC03LjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExNiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExNiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMTcge1xuICBtYXJnaW4tdG9wOiAtNy4zMTI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExNyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTExNyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMTgge1xuICBtYXJnaW4tdG9wOiAtNy4zNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTE4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTE4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTExOSB7XG4gIG1hcmdpbi10b3A6IC03LjQzNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTE5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTE5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEyMCB7XG4gIG1hcmdpbi10b3A6IC03LjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTIwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTIwIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEyMSB7XG4gIG1hcmdpbi10b3A6IC03LjU2MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTIxIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTIxIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEyMiB7XG4gIG1hcmdpbi10b3A6IC03LjYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMjIge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMjIge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTIzIHtcbiAgbWFyZ2luLXRvcDogLTcuNjg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMjMge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMjMge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTI0IHtcbiAgbWFyZ2luLXRvcDogLTcuNzVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTI0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTI0IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEyNSB7XG4gIG1hcmdpbi10b3A6IC03LjgxMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTI1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTI1IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEyNiB7XG4gIG1hcmdpbi10b3A6IC03Ljg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMjYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMjYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTI3IHtcbiAgbWFyZ2luLXRvcDogLTcuOTM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMjcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMjcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTI4IHtcbiAgbWFyZ2luLXRvcDogLThyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTI4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTI4IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEyOSB7XG4gIG1hcmdpbi10b3A6IC04LjA2MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTI5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTI5IHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEzMCB7XG4gIG1hcmdpbi10b3A6IC04LjEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTMxIHtcbiAgbWFyZ2luLXRvcDogLTguMTg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTMyIHtcbiAgbWFyZ2luLXRvcDogLTguMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTMyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTMyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEzMyB7XG4gIG1hcmdpbi10b3A6IC04LjMxMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTMzIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hpZnQtdXAtcGhvbmUtMTMzIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0OyB9IH1cblxuLnNoaWZ0LXVwLXBob25lLTEzNCB7XG4gIG1hcmdpbi10b3A6IC04LjM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTM1IHtcbiAgbWFyZ2luLXRvcDogLTguNDM3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTM2IHtcbiAgbWFyZ2luLXRvcDogLTguNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzYge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTM3IHtcbiAgbWFyZ2luLXRvcDogLTguNTYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xMzcge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTM4IHtcbiAgbWFyZ2luLXRvcDogLTguNjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEzOCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEzOCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xMzkge1xuICBtYXJnaW4tdG9wOiAtOC42ODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEzOSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTEzOSB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xNDAge1xuICBtYXJnaW4tdG9wOiAtOC43NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDAge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTQxIHtcbiAgbWFyZ2luLXRvcDogLTguODEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDEge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTQyIHtcbiAgbWFyZ2luLXRvcDogLTguODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0MiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0MiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xNDMge1xuICBtYXJnaW4tdG9wOiAtOC45Mzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0MyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0MyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xNDQge1xuICBtYXJnaW4tdG9wOiAtOXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDQge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTQ1IHtcbiAgbWFyZ2luLXRvcDogLTkuMDYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDUge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTQ2IHtcbiAgbWFyZ2luLXRvcDogLTkuMTI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0NiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0NiB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xNDcge1xuICBtYXJnaW4tdG9wOiAtOS4xODc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0NyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE0NyB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi5zaGlmdC11cC1waG9uZS0xNDgge1xuICBtYXJnaW4tdG9wOiAtOS4yNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDgge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDgge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTQ5IHtcbiAgbWFyZ2luLXRvcDogLTkuMzEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDkge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaGlmdC11cC1waG9uZS0xNDkge1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7IH0gfVxuXG4uc2hpZnQtdXAtcGhvbmUtMTUwIHtcbiAgbWFyZ2luLXRvcDogLTkuMzc1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE1MCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNoaWZ0LXVwLXBob25lLTE1MCB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDsgfSB9XG5cbi53aWR0aC0wIHtcbiAgd2lkdGg6IDAlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTEge1xuICB3aWR0aDogMSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMiB7XG4gIHdpZHRoOiAyJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0zIHtcbiAgd2lkdGg6IDMlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTQge1xuICB3aWR0aDogNCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNSB7XG4gIHdpZHRoOiA1JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC02IHtcbiAgd2lkdGg6IDYlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTcge1xuICB3aWR0aDogNyUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtOCB7XG4gIHdpZHRoOiA4JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC05IHtcbiAgd2lkdGg6IDklICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTEwIHtcbiAgd2lkdGg6IDEwJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0xMSB7XG4gIHdpZHRoOiAxMSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMTIge1xuICB3aWR0aDogMTIlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTEzIHtcbiAgd2lkdGg6IDEzJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0xNCB7XG4gIHdpZHRoOiAxNCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMTUge1xuICB3aWR0aDogMTUlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTE2IHtcbiAgd2lkdGg6IDE2JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0xNyB7XG4gIHdpZHRoOiAxNyUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMTgge1xuICB3aWR0aDogMTglICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTE5IHtcbiAgd2lkdGg6IDE5JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0yMCB7XG4gIHdpZHRoOiAyMCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMjEge1xuICB3aWR0aDogMjElICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTIyIHtcbiAgd2lkdGg6IDIyJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0yMyB7XG4gIHdpZHRoOiAyMyUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMjQge1xuICB3aWR0aDogMjQlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTI1IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0yNiB7XG4gIHdpZHRoOiAyNiUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMjcge1xuICB3aWR0aDogMjclICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTI4IHtcbiAgd2lkdGg6IDI4JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0yOSB7XG4gIHdpZHRoOiAyOSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMzAge1xuICB3aWR0aDogMzAlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTMxIHtcbiAgd2lkdGg6IDMxJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0zMiB7XG4gIHdpZHRoOiAzMiUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMzMge1xuICB3aWR0aDogMzMlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTM0IHtcbiAgd2lkdGg6IDM0JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0zNSB7XG4gIHdpZHRoOiAzNSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMzYge1xuICB3aWR0aDogMzYlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTM3IHtcbiAgd2lkdGg6IDM3JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC0zOCB7XG4gIHdpZHRoOiAzOCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtMzkge1xuICB3aWR0aDogMzklICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTQwIHtcbiAgd2lkdGg6IDQwJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC00MSB7XG4gIHdpZHRoOiA0MSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNDIge1xuICB3aWR0aDogNDIlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTQzIHtcbiAgd2lkdGg6IDQzJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC00NCB7XG4gIHdpZHRoOiA0NCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNDUge1xuICB3aWR0aDogNDUlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTQ2IHtcbiAgd2lkdGg6IDQ2JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC00NyB7XG4gIHdpZHRoOiA0NyUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNDgge1xuICB3aWR0aDogNDglICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTQ5IHtcbiAgd2lkdGg6IDQ5JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC01MCB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNTEge1xuICB3aWR0aDogNTElICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTUyIHtcbiAgd2lkdGg6IDUyJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC01MyB7XG4gIHdpZHRoOiA1MyUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNTQge1xuICB3aWR0aDogNTQlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTU1IHtcbiAgd2lkdGg6IDU1JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC01NiB7XG4gIHdpZHRoOiA1NiUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNTcge1xuICB3aWR0aDogNTclICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTU4IHtcbiAgd2lkdGg6IDU4JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC01OSB7XG4gIHdpZHRoOiA1OSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNjAge1xuICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTYxIHtcbiAgd2lkdGg6IDYxJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC02MiB7XG4gIHdpZHRoOiA2MiUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNjMge1xuICB3aWR0aDogNjMlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTY0IHtcbiAgd2lkdGg6IDY0JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC02NSB7XG4gIHdpZHRoOiA2NSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNjYge1xuICB3aWR0aDogNjYlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTY3IHtcbiAgd2lkdGg6IDY3JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC02OCB7XG4gIHdpZHRoOiA2OCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNjkge1xuICB3aWR0aDogNjklICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTcwIHtcbiAgd2lkdGg6IDcwJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC03MSB7XG4gIHdpZHRoOiA3MSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNzIge1xuICB3aWR0aDogNzIlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTczIHtcbiAgd2lkdGg6IDczJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC03NCB7XG4gIHdpZHRoOiA3NCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNzUge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTc2IHtcbiAgd2lkdGg6IDc2JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC03NyB7XG4gIHdpZHRoOiA3NyUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNzgge1xuICB3aWR0aDogNzglICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTc5IHtcbiAgd2lkdGg6IDc5JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC04MCB7XG4gIHdpZHRoOiA4MCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtODEge1xuICB3aWR0aDogODElICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTgyIHtcbiAgd2lkdGg6IDgyJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC04MyB7XG4gIHdpZHRoOiA4MyUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtODQge1xuICB3aWR0aDogODQlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTg1IHtcbiAgd2lkdGg6IDg1JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC04NiB7XG4gIHdpZHRoOiA4NiUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtODcge1xuICB3aWR0aDogODclICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTg4IHtcbiAgd2lkdGg6IDg4JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC04OSB7XG4gIHdpZHRoOiA4OSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtOTAge1xuICB3aWR0aDogOTAlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTkxIHtcbiAgd2lkdGg6IDkxJSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC05MiB7XG4gIHdpZHRoOiA5MiUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtOTMge1xuICB3aWR0aDogOTMlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTk0IHtcbiAgd2lkdGg6IDk0JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC05NSB7XG4gIHdpZHRoOiA5NSUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtOTYge1xuICB3aWR0aDogOTYlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTk3IHtcbiAgd2lkdGg6IDk3JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC05OCB7XG4gIHdpZHRoOiA5OCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtOTkge1xuICB3aWR0aDogOTklICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTEwMCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLmF1dG8tY2VudGVyIHtcbiAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLmJyZC10b3Age1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHg7IH1cblxuLmJyZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHg7IH1cblxuLmxobC0wIHtcbiAgbGluZS1oZWlnaHQ6IDFlbTsgfVxuXG4ubGhsLTEge1xuICBsaW5lLWhlaWdodDogMS4xZW07IH1cblxuLmxobC0yIHtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtOyB9XG5cbi5saGwtMyB7XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTsgfVxuXG4ubGhsLTQge1xuICBsaW5lLWhlaWdodDogMS40ZW07IH1cblxuLmxobC01IHtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG5cbi5saGwtNiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjZlbTsgfVxuXG4ubGhsLTcge1xuICBsaW5lLWhlaWdodDogMS43ZW07IH1cblxuLmxobC04IHtcbiAgbGluZS1oZWlnaHQ6IDEuOGVtOyB9XG5cbi5saGwtOSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjllbTsgfVxuXG4ubGhsLTEwIHtcbiAgbGluZS1oZWlnaHQ6IDJlbTsgfVxuXG5lbSxcbi5pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4udXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4ubG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuXG4uY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLnNtYWxsY2FwcyB7XG4gIGZvbnQtdmFyaWFudDogc21hbGwtY2FwczsgfVxuXG4ubm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG5cbi5ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDsgfVxuXG4uYm9sZGVyIHtcbiAgZm9udC13ZWlnaHQ6IDkwMCAhaW1wb3J0YW50OyB9XG5cbi51bmRlcmxpbmUsXG4udW5kZXJsaW5lLWxpbmtzIGEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ubm8taW5kZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG5pbWcubm8tcmVzaXplIHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuaW1nLm5vLWJvcmRlciB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmltZy5oYXMtYm9yZGVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMC4zMTI1cmVtO1xuICAtbW96LWJveC1zaGFkb3c6IDAgMCAwLjMxMjVyZW07XG4gIGJveC1zaGFkb3c6IDAgMCAwLjMxMjVyZW07XG4gIHBhZGRpbmc6IDAuM2VtICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICFpbXBvcnRhbnQ7IH1cblxuLnJvdW5kZWQge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbSAhaW1wb3J0YW50O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7IH1cblxuLmNvbW1pdHRlZS10b3BtYXJnaW4tc3BhY2VyIHtcbiAgbWFyZ2luLXRvcDogNDBweDsgfVxuICBAbWVkaWEgcHJpbnQge1xuICAgIC5jb21taXR0ZWUtdG9wbWFyZ2luLXNwYWNlciB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBOZW9ncm90ZXNrRXNzQWx0LVJlZ3VsYXI7XG4gIHNyYzogdXJsKFwiL2Fzc2V0cy9mb250cy9uZW9ncm90ZXNrZXNzYWx0LXJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBOZW9ncm90ZXNrRXNzQWx0LUxpZ2h0O1xuICBzcmM6IHVybChcIi9hc3NldHMvZm9udHMvbmVvZ3JvdGVza2Vzc2FsdC1saWdodC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE5lb2dyb3Rlc2tFc3NBbHQtTGlnaHRJdDtcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL25lb2dyb3Rlc2tlc3NhbHQtbGlnaHRpdC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhdGlvbmVsbC1FeHRyYUJvbGQ7XG4gIHNyYzogdXJsKFwiL2Fzc2V0cy9mb250cy9SYXRpb25lbGwtRXh0cmFCb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmF0aW9uZWxsLWJvb2s7XG4gIHNyYzogdXJsKFwiL2Fzc2V0cy9mb250cy9SYXRpb25lbGwtQm9vay53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTsgfVxuXG5wLFxuc3BhbixcbmxpIHtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtZmFtaWx5OiBOZW9ncm90ZXNrRXNzQWx0LUxpZ2h0LCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7IH1cblxuYSB7XG4gIGNvbG9yOiAjRTYyNTE2O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7IH1cbiAgYTpob3ZlciB7XG4gICAgY29sb3I6ICMwMDgwQTY7IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgY29sb3I6ICNFRDUxNDU7XG4gIGZvbnQtZmFtaWx5OiBSYXRpb25lbGwtRXh0cmFCb2xkLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBmb250LXNpemU6IDIuM3JlbTsgfSB9XG4gIGgxIGEsXG4gIGgyIGEsXG4gIGgzIGEsXG4gIGg0IGEsXG4gIGg1IGEsXG4gIGg2IGEge1xuICAgIGNvbG9yOiAjRUQ1MTQ1OyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTsgfSB9XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjhyZW07IH1cblxuLmhlYWRpbmctLXRoaW4sIC5tYWluLWJvZHkgaDIsIC5tYWluLWJvZHkgaDMsIC5tYWluLWJvZHkgaDQge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogXCJSYXRpb25lbGwtYm9va1wiO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgY29sb3I6IGJsYWNrO1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhlYWRpbmctLXRoaW4sIC5tYWluLWJvZHkgaDIsIC5tYWluLWJvZHkgaDMsIC5tYWluLWJvZHkgaDQge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfSB9XG5cbi5oZWFkaW5nLS1ibHVlIHtcbiAgY29sb3I6ICMwMDgwQTY7IH1cblxuLmhlYWRpbmctLXJlZCB7XG4gIGNvbG9yOiAjRUQ1MTQ1OyB9XG5cbi5oZWFkaW5nLS15ZWxsb3cge1xuICBjb2xvcjogI0ZERkNEQzsgfVxuXG4uaGFzLWJvcmRlci0tcGVhY2gsIC5tYWluLWJvZHkgaDEge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0ZFRDlCNzsgfVxuXG4uaGFzLWJvcmRlci0tbGlnaHQtYmx1ZSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDBBRkI5OyB9XG5cbi5oYXMtYm9yZGVyLS1yZWQge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0VENTE0NTsgfVxuXG4uc2VjdGlvbi1saW5rIHtcbiAgZm9udC1mYW1pbHk6IE5lb2dyb3Rlc2tFc3NBbHQtTGlnaHRJdCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOyB9XG4gIC5zZWN0aW9uLWxpbms6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIOKGklwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMDtcbiAgICB3aWR0aDogMDsgfVxuICAuc2VjdGlvbi1saW5rOmhvdmVyIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgLnNlY3Rpb24tbGluazpob3ZlcjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiDihpJcIjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJweDsgfVxuICAuc2VjdGlvbi1saW5rLS1ibHVlIHtcbiAgICBjb2xvcjogIzAwODBBNjsgfVxuICAgIC5zZWN0aW9uLWxpbmstLWJsdWU6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDgwQTY7IH1cbiAgLnNlY3Rpb24tbGluay0td2hpdGUge1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLnNlY3Rpb24tbGluay0td2hpdGU6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLnNlY3Rpb24tbGluay0tcGVhY2gge1xuICAgIGNvbG9yOiAjRkVEOUI3OyB9XG4gICAgLnNlY3Rpb24tbGluay0tcGVhY2g6aG92ZXIge1xuICAgICAgY29sb3I6ICNGRUQ5Qjc7IH1cbiAgLnNlY3Rpb24tbGluay0tcmVkIHtcbiAgICBjb2xvcjogI0U2MjUxNjsgfVxuICAgIC5zZWN0aW9uLWxpbmstLXJlZDpob3ZlciB7XG4gICAgICBjb2xvcjogI0U2MjUxNjsgfVxuXG4uY2ZrLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAzMDAlO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHJlbSAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxcmVtIDIuN3JlbTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LWZhbWlseTogXCJOZW9ncm90ZXNrRXNzQWx0LVJlZ3VsYXJcIjtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jZmstYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMi43cmVtO1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgLmNmay1idXR0b24tLWdyYWRpZW50IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICMwMDgwQTYgMTAlLCAjMDBBRkI5IDEwMCUsICMwMDgwQTYgMTAwJSk7IH1cbiAgICAuY2ZrLWJ1dHRvbi0tZ3JhZGllbnQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMDAlIDMwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmNmay1idXR0b24tLW91dGxpbmUtcGVhY2gge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRUQ5Qjc7XG4gICAgY29sb3I6ICNGRUQ5Qjc7XG4gICAgcGFkZGluZzogMC45cmVtIDIuNnJlbTsgfVxuICAgIC5jZmstYnV0dG9uLS1vdXRsaW5lLXBlYWNoOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMzAwJSAzMDAlO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDgwQTY7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7IH1cbiAgLmNmay1idXR0b24tLW91dGxpbmUtcmVkIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjRUQ1MTQ1O1xuICAgIGNvbG9yOiAjRTYyNTE2O1xuICAgIHBhZGRpbmc6IDAuOXJlbSAyLjZyZW07IH1cbiAgICAuY2ZrLWJ1dHRvbi0tb3V0bGluZS1yZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMDAlIDMwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTQsIDIxNywgMTgzLCAwLjcpO1xuICAgICAgY29sb3I6ICNFNjI1MTY7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjRTYyNTE2OyB9XG4gIC5jZmstYnV0dG9uLS1vdXRsaW5lLWJsdWUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICMwMDgwQTY7XG4gICAgY29sb3I6ICMwMDgwQTY7XG4gICAgcGFkZGluZzogMC45cmVtIDIuNnJlbTsgfVxuICAgIC5jZmstYnV0dG9uLS1vdXRsaW5lLWJsdWU6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMDAlIDMwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTQsIDIxNywgMTgzLCAwLjcpO1xuICAgICAgY29sb3I6ICNFNjI1MTY7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjRUQ1MTQ1OyB9XG5cbi5tYWluLWJvZHkgYSB7XG4gIGNvbG9yOiAjMDA4MEE2O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7IH1cbiAgLm1haW4tYm9keSBhOmhvdmVyIHtcbiAgICBjb2xvcjogI0U2MjUxNjsgfVxuXG4ubWFpbi1ib2R5IGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4zcmVtO1xuICBmb250LXNpemU6IDJyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tYWluLWJvZHkgaDEge1xuICAgICAgZm9udC1zaXplOiAyLjNyZW07IH0gfVxuXG4ubWFpbi1ib2R5IGgyIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiAjMDA4MEE2O1xuICBwYWRkaW5nOiAwIDAgMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1haW4tYm9keSBoMiB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuXG4ubWFpbi1ib2R5IGgzIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGNvbG9yOiAjMDA4MEE2O1xuICBwYWRkaW5nOiAwIDAgMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1haW4tYm9keSBoMyB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG5cbi5tYWluLWJvZHkgaDQge1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgY29sb3I6ICMwMDgwQTY7XG4gIHBhZGRpbmc6IDAgMCAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWFpbi1ib2R5IGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cblxuLm1haW4tYm9keSAubW9yZS1pbmZvLFxuLm1haW4tYm9keSAucmV2aWV3ZWQtYnkge1xuICBiYWNrZ3JvdW5kOiAjZmRmY2RjO1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIHBhZGRpbmc6IDEuNXJlbSAxcmVtO1xuICBtYXJnaW46IDJyZW0gMDtcbiAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAubWFpbi1ib2R5IC5tb3JlLWluZm8sXG4gICAgLm1haW4tYm9keSAucmV2aWV3ZWQtYnkge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgLm1haW4tYm9keSAubW9yZS1pbmZvIC5oYXMtYm9yZGVyLS1wZWFjaCwgLm1haW4tYm9keSAubW9yZS1pbmZvIGgxLFxuICAgICAgLm1haW4tYm9keSAucmV2aWV3ZWQtYnkgLmhhcy1ib3JkZXItLXBlYWNoLFxuICAgICAgLm1haW4tYm9keSAucmV2aWV3ZWQtYnkgaDEge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tYWluLWJvZHkgLm1vcmUtaW5mbyxcbiAgICAubWFpbi1ib2R5IC5yZXZpZXdlZC1ieSB7XG4gICAgICBtYXJnaW46IDIuNXJlbSBhdXRvIDFyZW0gYXV0bztcbiAgICAgIHBhZGRpbmc6IDIuM3JlbSAycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAubWFpbi1ib2R5IC5tb3JlLWluZm8gaDMsXG4gICAgLm1haW4tYm9keSAucmV2aWV3ZWQtYnkgaDMge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yNXB4OyB9IH1cbiAgLm1haW4tYm9keSAubW9yZS1pbmZvX19oZWFkaW5nLFxuICAubWFpbi1ib2R5IC5yZXZpZXdlZC1ieV9faGVhZGluZyB7XG4gICAgY29sb3I6ICNFNjI1MTY7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9XG4gIC5tYWluLWJvZHkgLm1vcmUtaW5mb19fbGlzdCxcbiAgLm1haW4tYm9keSAucmV2aWV3ZWQtYnlfX2xpc3Qge1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFpbi1ib2R5IC5tb3JlLWluZm9fX2xpc3QsXG4gICAgICAubWFpbi1ib2R5IC5yZXZpZXdlZC1ieV9fbGlzdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAubWFpbi1ib2R5IC5tb3JlLWluZm9fX2xpc3QsXG4gICAgICAubWFpbi1ib2R5IC5yZXZpZXdlZC1ieV9fbGlzdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAubWFpbi1ib2R5IC5tb3JlLWluZm9fX2l0ZW0sXG4gIC5tYWluLWJvZHkgLnJldmlld2VkLWJ5X19pdGVtIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICBmb250LWZhbWlseTogXCJOZW9ncm90ZXNrRXNzQWx0LUxpZ2h0XCI7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbjogMC4xMjVyZW0gMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5tYWluLWJvZHkgLm1vcmUtaW5mb19faXRlbSxcbiAgICAgIC5tYWluLWJvZHkgLnJldmlld2VkLWJ5X19pdGVtIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgLm1haW4tYm9keSAubW9yZS1pbmZvX19pdGVtIGFbaHJlZl06OmFmdGVyLFxuICAgICAgLm1haW4tYm9keSAucmV2aWV3ZWQtYnlfX2l0ZW0gYVtocmVmXTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcYShcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyB9IH1cbiAgLm1haW4tYm9keSAubW9yZS1pbmZvX19saW5rLFxuICAubWFpbi1ib2R5IC5yZXZpZXdlZC1ieV9fbGluayB7XG4gICAgY29sb3I6ICMwMDc4OWM7IH1cbiAgICAubWFpbi1ib2R5IC5tb3JlLWluZm9fX2xpbms6aG92ZXIsXG4gICAgLm1haW4tYm9keSAucmV2aWV3ZWQtYnlfX2xpbms6aG92ZXIge1xuICAgICAgY29sb3I6ICNFNjI1MTY7IH1cblxuLm1haW4tYm9keSAubGFzdC11cGRhdGVkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAubWFpbi1ib2R5IC5sYXN0LXVwZGF0ZWRfX3NwYW4ge1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBwYWRkaW5nOiAwIDFyZW07IH1cbiAgLm1haW4tYm9keSAubGFzdC11cGRhdGVkOmJlZm9yZSB7XG4gICAgcmlnaHQ6IDAlOyB9XG4gIC5tYWluLWJvZHkgLmxhc3QtdXBkYXRlZDpiZWZvcmUsIC5tYWluLWJvZHkgLmxhc3QtdXBkYXRlZDphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNGRUQ5Qjc7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjhlbTtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tYWluLWJvZHkgLmxhc3QtdXBkYXRlZDphZnRlciB7XG4gICAgbGVmdDogMCU7IH1cblxuLm1haW4tYm9keSAucmV2aWV3ZWQtYnlfX2xpc3Qge1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1haW4tYm9keSAucmV2aWV3ZWQtYnlfX2xpc3Qge1xuICAgICAgbWFyZ2luLWxlZnQ6IDMuNXJlbTsgfSB9XG5cbi5oYXMtdHJhbnNpdGlvbiwgLmNmay1idXR0b24tLW91dGxpbmUtcGVhY2gsIC5jZmstYnV0dG9uLS1vdXRsaW5lLXJlZCwgLmNmay1idXR0b24tLW91dGxpbmUtYmx1ZSwgLm1haW4tYm9keSAubW9yZS1pbmZvX19saW5rLFxuLm1haW4tYm9keSAucmV2aWV3ZWQtYnlfX2xpbmssIC5mcm9udC1hbmQtY2VudHJlLCAuYWN0aXZlLWtpZHMsIC53ZWxsLWJlaW5ncyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlOyB9XG5cbi5pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogN3B4OyB9XG5cbi5zaG93LWZvci14bGFyZ2Uge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc2hvdy1mb3IteGxhcmdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmZlYXR1cmVkLXZpZGVvX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCAjRUQ1MTQ1LCAjMDA4MEE2KTtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAyLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDsgfVxuXG4uZmVhdHVyZWQtdmlkZW9fX2ltYWdlIHtcbiAgbWl4LWJsZW5kLW1vZGU6IHNjcmVlbjsgfVxuXG4udmlkZW8td3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucGxheS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7XG4gIHotaW5kZXg6IDA7IH1cblxuLmZlYXR1cmVkLXZpZGVvOmhvdmVyIC5wbGF5LWJ1dHRvbiB7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5mZWF0dXJlZC12aWRlbzpob3ZlciAuZmVhdHVyZWQtdmlkZW9fX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgI0VENTE0NSwgIzAwODBBNik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0OyB9XG5cbi8qIGJyZWFkY3J1bWJzICovXG4uYnJlYWRjcnVtYnMgbGkge1xuICBmb250LXNpemU6IDFyZW07IH1cblxuLnRyYW5zcGFyZW50LWxvZ28ge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0ICFpbXBvcnRhbnQ7IH1cblxuLnNpZGVuYXYtbG9nbyB7XG4gIHdpZHRoOiA3MCU7IH1cblxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAuaGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmxvZ28ge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtaW4td2lkdGg6IDkwcHg7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgdG9wOiAwO1xuICBib3JkZXItcmFkaXVzOiAwIDNyZW0gMCAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAubG9nbyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDYuNXJlbSAwIDA7XG4gICAgICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgICAgIHBhZGRpbmc6IDNyZW0gMnJlbSAycmVtO1xuICAgICAgd2lkdGg6IDE2MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5sb2dvIHtcbiAgICAgIHdpZHRoOiAyMzBweDsgfSB9XG4gIEBtZWRpYSBwcmludCB7XG4gICAgLmxvZ28ge1xuICAgICAgd2lkdGg6IDE3NXB4OyB9IH1cbiAgLmxvZ29fX2ZyYSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWluLXdpZHRoOiA5MHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCAzcmVtIDAgMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5sb2dvX19mcmEge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDYuNXJlbSAwIDA7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDJyZW0gMnJlbTtcbiAgICAgICAgd2lkdGg6IDE2MHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubG9nb19fZnJhIHtcbiAgICAgICAgd2lkdGg6IDMyNXB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgLmxvZ29fX2ZyYSB7XG4gICAgICAgIHdpZHRoOiAyMjVweDsgfSB9XG5cbi5jcHMtbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwcHg7XG4gIG1hcmdpbjogMXJlbSBhdXRvIDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jcHMtbG9nbyB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICB3aWR0aDogMTIwcHg7IH0gfVxuXG4uc2Vjb25kYXJ5LW1lbnUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlY29uZGFyeS1tZW51X19saW5rIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuc2Vjb25kYXJ5LW1lbnVfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuc2Vjb25kYXJ5LW1lbnVfX2xpbms6aG92ZXIge1xuICAgICAgY29sb3I6ICNGREZDREM7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4udG9wLW1lbnUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIvYXNzZXRzL2ltZy9zZWNvbmRhcnktbWVudS1iZy5wbmdcIikgcmVwZWF0LXggY2VudGVyIHRvcDtcbiAgcGFkZGluZzogMS41cmVtIDAgMS41cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudG9wLW1lbnUge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5tZW51IC5pY29uIHtcbiAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgcGFkZGluZzogN3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgaGVpZ2h0OiA0MnB4OyB9XG4gIC5tZW51IC5pY29uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkVEOUI3OyB9XG5cbi5tZW51LS1pY29ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tZW51LS1pY29ucyB7XG4gICAgICB0b3A6IDI0cHg7IH0gfVxuXG4ubWVudSAuZmlsdGVyLWJ5LWNhdGVnb3J5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1yaWdodDogMnJlbTsgfVxuICAubWVudSAuZmlsdGVyLWJ5LWNhdGVnb3J5X19saW5rIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgcGFkZGluZzogMDsgfVxuXG4ubW9iaWxlLWljb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1pdGVtczogY2VudGVyOyB9XG4gIC5tb2JpbGUtaWNvbnNfX2xpbmsuaWNvbiB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTQsIDIxNywgMTgzLCAwLjUpO1xuICAgIG1hcmdpbjogMCAwLjVyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cblxuLm1vYmlsZS1zZWNvbmRhcnkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0ZFRDlCNztcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NCwgMjE3LCAxODMsIDAuMik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIHdpZHRoOiA5MCU7IH1cbiAgLm1vYmlsZS1zZWNvbmRhcnlfX2xpbmsge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDA7IH1cblxuLnRpdGxlLWJhciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi10b3A6IC0xOXB4OyB9XG5cbi5tZW51LS1wcmltYXJ5IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmVmOTtcbiAgYm94LXNoYWRvdzogMHB4IDEwcHggMTAwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMXJlbSAwO1xuICBtYXJnaW46IDFyZW07XG4gIG1hcmdpbi10b3A6IC0xMDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1lbnUtLXByaW1hcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAubWVudS0tcHJpbWFyeV9faXRlbSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWVudS0tcHJpbWFyeV9faXRlbSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0ZFRDlCNztcbiAgICAgICAgd2lkdGg6IDIwMHB4OyB9IH1cbiAgICAubWVudS0tcHJpbWFyeV9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXI6IDA7IH1cbiAgICAubWVudS0tcHJpbWFyeV9faXRlbS0tc21hbGwge1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgLm1lbnUtLXByaW1hcnlfX2xpbmsge1xuICAgIGNvbG9yOiAjMDA4MEE2O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiBOZW9ncm90ZXNrRXNzQWx0LVJlZ3VsYXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjIgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAubWVudS0tcHJpbWFyeV9fbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogIzAwODBBNiAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLm1lbnUtLXByaW1hcnlfX2xpbmsge1xuICAgICAgICBtYXJnaW46IDAuNXJlbSAwO1xuICAgICAgICBwYWRkaW5nOiA1cHggMXJlbSAhaW1wb3J0YW50OyB9IH1cbiAgLm1lbnUtLXByaW1hcnlfX3NwYW4ge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5tZW51LS1wcmltYXJ5X19zcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ubWVudS5hbGlnbi1jZW50ZXIgbGkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZHJvcGRvd24tY29udGVudCB7XG4gIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmRyb3Bkb3duLWNvbnRlbnQge1xuICAgICAgYm94LXNoYWRvdzogMHB4IDE2cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBtYXJnaW46IDVweCA4cHggMDsgfSB9XG5cbi8qIGNhbiBjaGFuZ2Ugc3VibWVudSBpdGVtcyB0byBiZSBjZW50ZXJlZCBieSBhZGp1c3RpbmcgdGV4dC1hbGlnbiBjb2RlIGJlbG93ICovXG4uZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gIGNvbG9yOiAjMDA4MEE2O1xuICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBtYXgtd2lkdGg6IDI1MHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmRyb3Bkb3duIC5pcy1kcm9wZG93bi1zdWJtZW51IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNFNjI1MTY7XG4gICAgY29sb3I6IHdoaXRlOyB9XG5cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyLFxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZWFyY2gge1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zZWFyY2gge1xuICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgLnNlYXJjaCAuaW5wdXQtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnNlYXJjaCAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbSAwIDAgMTAwcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgd2lkdGg6IDEzMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnNlYXJjaCAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIC5zZWFyY2hfX2J1dHRvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuc2VhcmNoIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMCAxMDByZW0gMTAwcmVtIDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAudGFnbGluZS1jb250YWluZXIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50IHtcbiAgLnRhZ2xpbmUtY29udGFpbmVyIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjYyNXJlbSk7IH0gfVxuXG4udGFnbGluZSB7XG4gIG1hcmdpbjogMnJlbSAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQge1xuICAgIC50YWdsaW5lIHtcbiAgICAgIG1hcmdpbjogLTAuNXJlbSAwIDFyZW0gMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudGFnbGluZSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1hcmdpbjogMnJlbSAwOyB9IH1cbiAgLnRhZ2xpbmVfX3BhcmVudHMsIC50YWdsaW5lX19wYWVkaWF0cmljaWFucyB7XG4gICAgY29sb3I6ICMwMDgwQTY7XG4gICAgZm9udC1mYW1pbHk6IFwiTmVvZ3JvdGVza0Vzc0FsdC1SZWd1bGFyXCI7XG4gICAgZm9udC1mYW1pbHk6IFJhdGlvbmVsbC1FeHRyYUJvbGQ7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLnRhZ2xpbmVfX3BhcmVudHMsIC50YWdsaW5lX19wYWVkaWF0cmljaWFucyB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgICAgICBmb250LXNpemU6IDMxcHg7IH0gfVxuICAudGFnbGluZV9fbGluZS0xLCAudGFnbGluZV9fbGluZS0yIHtcbiAgICBjb2xvcjogI0U2MjUxNjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogXCJSYXRpb25lbGwtYm9va1wiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAudGFnbGluZV9fbGluZS0xLCAudGFnbGluZV9fbGluZS0yIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAudGFnbGluZV9fbGluZS0xLCAudGFnbGluZV9fbGluZS0yIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xLjVweDtcbiAgICAgICAgZm9udC1zaXplOiAzMXB4OyB9IH1cblxuLmZvb3RlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMTI4LCAxNjYsIDAuMikgMCUsICNmZGZjZGMgMTAwJSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDNyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mb290ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmc6IDVyZW0gMDsgfSB9XG5cbi5mcm9udC1hbmQtY2VudHJlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZDogIzAwODBBNiB1cmwoXCIvYXNzZXRzL2ltZy9iYWJ5LmpwZ1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICBwYWRkaW5nOiAycmVtIDEuNXJlbSAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZnJvbnQtYW5kLWNlbnRyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDNyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZyb250LWFuZC1jZW50cmUge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgcGFkZGluZzogM3JlbTsgfVxuICAgICAgLmZyb250LWFuZC1jZW50cmU6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwNSU7IH0gfVxuICAuZnJvbnQtYW5kLWNlbnRyZV9fY29weSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmZyb250LWFuZC1jZW50cmVfX2hlYWRpbmcsXG4gIC5mcm9udC1hbmQtY2VudHJlX19oZWFkaW5nIGEge1xuICAgIGNvbG9yOiAjRkRGQ0RDO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZnJvbnQtYW5kLWNlbnRyZV9faGVhZGluZyxcbiAgICAgIC5mcm9udC1hbmQtY2VudHJlX19oZWFkaW5nIGEge1xuICAgICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuXG4uYWN0aXZlLWtpZHMge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIHBhZGRpbmc6IDJyZW0gMS41cmVtIDByZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hY3RpdmUta2lkcyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmFjdGl2ZS1raWRzOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA2MHB4IDI1cHggLTUwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYWN0aXZlLWtpZHMge1xuICAgICAgbWFyZ2luOiAwIDA7XG4gICAgICBwYWRkaW5nOiAycmVtOyB9IH1cbiAgLmFjdGl2ZS1raWRzX19sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAycmVtOyB9XG4gIC5hY3RpdmUta2lkc19fY29weSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ud2VsbC1iZWluZ3Mge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAycmVtIDA7XG4gIHBhZGRpbmc6IDJyZW0gMS41cmVtIDByZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC53ZWxsLWJlaW5ncyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCAwO1xuICAgICAgcGFkZGluZzogMnJlbTsgfVxuICAgICAgLndlbGwtYmVpbmdzOmhvdmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA2MHB4IDI1cHggLTUwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgfSB9XG4gIC53ZWxsLWJlaW5nc19fbG9nbyB7XG4gICAgYmFja2dyb3VuZDogIzAwNDY3RjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAycmVtO1xuICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgLndlbGwtYmVpbmdzX19jb3B5IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5ob21lcGFnZSAuYWN0aXZlLWtpZHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhvbWVwYWdlIC5hY3RpdmUta2lkcyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5mb290ZXItbWVudSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDAsIDE3NSwgMTg1LCAwLjMpO1xuICBib3JkZXItdG9wOiAycHggc29saWQgcmdiYSgwLCAxNzUsIDE4NSwgMC4zKTtcbiAgbWFyZ2luOiA0cmVtIGF1dG8gMnJlbTtcbiAgcGFkZGluZzogMS41cmVtIDA7XG4gIHdpZHRoOiA4MCU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mb290ZXItbWVudSB7XG4gICAgICBtYXJnaW46IDVyZW0gYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmZvb3Rlci1tZW51X19saXN0IHtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAuZm9vdGVyLW1lbnVfX2l0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZm9vdGVyLW1lbnVfX2l0ZW0ge1xuICAgICAgICBtYXJnaW46IDAgM3JlbTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIC5mb290ZXItbWVudV9fbGluayB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjRTYyNTE2O1xuICAgIGZvbnQtZmFtaWx5OiBcIk5lb2dyb3Rlc2tFc3NBbHQtUmVndWxhclwiO1xuICAgIHBhZGRpbmc6IDFyZW0gMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mb290ZXItbWVudV9fbGluayB7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfSB9XG4gICAgLmZvb3Rlci1tZW51X19saW5rOmhvdmVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDA4MEE2OyB9XG5cbi5mb290ZXItbG9nb3Mge1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICAuZm9vdGVyLWxvZ29zX19pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAxcmVtIDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZm9vdGVyLWxvZ29zX19pdGVtIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgLmZvb3Rlci1sb2dvc19fdGV4dCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuOHJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mb290ZXItbG9nb3NfX3RleHQge1xuICAgICAgICBmb250LXNpemU6IDAuOXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgIC5mb290ZXItbG9nb3NfX3RleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9IH1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi5zdHJpcGUge1xuICBib3JkZXItcmFkaXVzOiAwIDAgN3B4IDdweDtcbiAgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLmhlcm8ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAyMDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhlcm8ge1xuICAgICAgbWluLWhlaWdodDogNzE2cHg7IH0gfVxuICAuaGVyby0tb25lIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTUwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuaGVyby0tb25lIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuaGVyby0tb25lIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4MCU7IH0gfVxuICAgIC5oZXJvLS1vbmVfX3N0cmlwZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRkRGQ0RDO1xuICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDUwcHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmhlcm8tLW9uZV9fc3RyaXBlIHtcbiAgICAgICAgICBoZWlnaHQ6IDcycHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5oZXJvLS1vbmVfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuaGVyby0tb25lX19jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjJlbSkge1xuICAgICAgLmhlcm8tLW9uZV9fY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA0MCU7IH0gfVxuICAgIC5oZXJvLS1vbmVfX2hlYWRpbmcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuaGVyb19fY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmhlcm9fX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDg1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cmVtOyB9IH1cbiAgLmhlcm8tLXR3byB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgIGJveC1zaGFkb3c6IDFyZW0gMXJlbSAxMHJlbSByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgbWFyZ2luOiAtMnJlbSAwLjVyZW07XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIHotaW5kZXg6IDEwOyB9XG4gICAgLmhlcm8tLXR3byBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiA3cHggIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5oZXJvLS10d28ge1xuICAgICAgICBtYXJnaW46IC01cmVtIDAuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmhlcm8tLXR3byB7XG4gICAgICAgIG1hcmdpbjogLTNyZW0gNHJlbSAtM3JlbTtcbiAgICAgICAgcGFkZGluZzogNHJlbSA0cmVtIDEuNXJlbSA0cmVtOyB9IH1cbiAgICAuaGVyby0tdHdvX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmhlcm8tLXR3b19faGVhZGluZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5oZXJvLS10d29fX2NvcHkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH0gfVxuICAuaGVybyAudmlkZW8td3JhcCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAuaGVybyAudmlkZW8td3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuaGVybyAudmlkZW8td3JhcCBpbWcsXG4gIC5oZXJvIC52aWRlby13cmFwIC5wbGF5LWJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5oZXJvIC52aWRlby13cmFwIGlmcmFtZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogaGVpZ2h0OiAzNzVweDtcbiAgICAgICAgd2lkdGg6IDU2MXB4OyAqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxODVweDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuaGVybyAudmlkZW8td3JhcCBpZnJhbWUge1xuICAgICAgICBtaW4taGVpZ2h0OiA0NDNweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmhlcm8gLnZpZGVvLXdyYXAgaWZyYW1lIHtcbiAgICAgICAgbWluLWhlaWdodDogMzc1cHg7IH0gfVxuICAuaGVybyAuZmVhdHVyZWQtdmlkZW8ge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5oZXJvIC5mZWF0dXJlZC12aWRlbyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIC5oZXJvIC5mZWF0dXJlZC12aWRlb19faW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmhlcm8tLXRocmVlIHtcbiAgICBib3JkZXItcmFkaXVzOiA3cHggN3B4IDAgMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDdweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5oZXJvLS10aHJlZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5oZXJvLS10aHJlZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDsgfSB9XG4gICAgLmhlcm8tLXRocmVlX19jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMwMDgwYTYgNTYuNzElLCAjMDBhZmI5IDExMi4yNSUpO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICBwYWRkaW5nOiAycmVtIDJyZW0gMXJlbTtcbiAgICAgIG1hcmdpbjogMHJlbSAwLjVyZW0gMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuaGVyby0tdGhyZWVfX2NvbnRlbnQge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMTI4LCAxNjYsIDAuOSkgNTYuNzElLCByZ2JhKDAsIDE3NSwgMTg1LCAwLjkpIDExMi4yNSUpO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cmVtO1xuICAgICAgICAgIG9wYWNpdHk6IGluaXRpYWw7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5oZXJvLS10aHJlZV9fY29udGVudCB7XG4gICAgICAgICAgd2lkdGg6IDY1JTsgfSB9XG4gICAgLmhlcm8tLXRocmVlX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmhlcm8tLXRocmVlX19oZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuICAgICAgLmhlcm8tLXRocmVlX19oZWFkaW5nIGEge1xuICAgICAgICBjb2xvcjogI0ZERkNEQzsgfVxuICAgICAgICAuaGVyby0tdGhyZWVfX2hlYWRpbmcgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNGRUQ5Qjc7IH1cbiAgICAuaGVyby0tdGhyZWVfX3N0cmlwZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA4MEE2O1xuICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDcycHg7IH1cbiAgICAuaGVyby0tdGhyZWVfX3N1bW1hcnkge1xuICAgICAgLyogaGVhcnQgc2hhcGVkIGJ1bGxldHMgZm9yIGhlcm8gKi8gfVxuICAgICAgLmhlcm8tLXRocmVlX19zdW1tYXJ5IHAsXG4gICAgICAuaGVyby0tdGhyZWVfX3N1bW1hcnkgbGkge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmhlcm8tLXRocmVlX19zdW1tYXJ5IHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgICAgICAuaGVyby0tdGhyZWVfX3N1bW1hcnkgdWwgbGkge1xuICAgICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuICAgICAgICAgIC5oZXJvLS10aHJlZV9fc3VtbWFyeSB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDAuOHJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxLjI1ZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWcvaGVhcnQtYnVsbGV0LnN2Zyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjI1ZW07IH1cbiAgLmhlcm8tLWZvdXIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmZmYgMCwgIzAwODBhNiA0MCUsICMwMDgwYTYzMCA3MCUsICNmZmYpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmZmYgMCwgcmdiYSgwLCAxMjgsIDE2NiwgMC41KSAxMCUsIHJnYmEoMCwgMTc1LCAxODUsIDAuMykgNjAlLCAjZmZmKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB0b3A7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBtYXJnaW46IDAgLTEwcHg7XG4gICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5oZXJvLS1mb3VyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmhlcm8tLWZvdXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA3cHggIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZmZmIDMwJSwgI2ZmZjAgNTAlKSwgbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZmZmIDI1LjA3JSwgI2ZmZjAgMCUpLCBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNmZmYsICMwMDgwQTYpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG4gICAgICAgIHBhZGRpbmc6IDEwcmVtIDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5oZXJvLS1mb3VyIHtcbiAgICAgICAgcGFkZGluZzogMTVyZW0gMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4OyB9IH1cbiAgICAuaGVyby0tZm91cl9fY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHdoaXRlIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmhlcm8tLWZvdXJfX2NvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDByZW0gM3JlbSAwcmVtIDZyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDRyZW07IH0gfVxuICAgIC5oZXJvLS1mb3VyX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5oZXJvLS1mb3VyX19oZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuICAgICAgLmhlcm8tLWZvdXJfX2hlYWRpbmcuaGVhZGluZy0tdGhpbiwgLm1haW4tYm9keSBoMi5oZXJvLS1mb3VyX19oZWFkaW5nLCAubWFpbi1ib2R5IGgzLmhlcm8tLWZvdXJfX2hlYWRpbmcsIC5tYWluLWJvZHkgaDQuaGVyby0tZm91cl9faGVhZGluZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAgIC5oZXJvLS1mb3VyX19oZWFkaW5nLmhlYWRpbmctLXRoaW4sIC5tYWluLWJvZHkgaDIuaGVyby0tZm91cl9faGVhZGluZywgLm1haW4tYm9keSBoMy5oZXJvLS1mb3VyX19oZWFkaW5nLCAubWFpbi1ib2R5IGg0Lmhlcm8tLWZvdXJfX2hlYWRpbmcge1xuICAgICAgICAgICAgbWFyZ2luOiAzcmVtIDAgMXJlbTsgfSB9XG4gICAgLmhlcm8tLWZvdXJfX3N0cmlwZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA4MEE2O1xuICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDcycHg7IH1cbiAgLmhlcm8tLWZpdmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjUzLCAyNTIsIDIyMCwgMC43NSk7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDdweCA3cHggIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA3cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA0cmVtIDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuaGVyby0tZml2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgICAgICAgcGFkZGluZzogN3JlbSAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5oZXJvLS1maXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICBwYWRkaW5nOiAxMHJlbSAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7IH0gfVxuICAgIC5oZXJvLS1maXZlX19jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmhlcm8tLWZpdmVfX2NvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDByZW0gM3JlbSAwcmVtIDExcmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXJlbTsgfSB9XG4gICAgLmhlcm8tLWZpdmVfX2hlYWRpbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuaGVyby0tZml2ZV9fc3RyaXBlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNFRDUxNDU7XG4gICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNzJweDsgfVxuICAuaGVyby0tc2l4IHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNGRkZGRkYgOS4wNiUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNTAlKSwgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0ZGRkZGRiA1NS4wNyUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNjMuMDMlKSwgbGluZWFyLWdyYWRpZW50KDBkZWcsICNGRUQ5QjcsICNGRUQ5QjcpO1xuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuaGVyby0tc2l4IHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjRkZGRkZGIDkuMDYlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDUwJSksIGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNGRkZGRkYgMjUuMDclLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDYzLjAzJSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCAjRkVEOUI3LCAjRkVEOUI3KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHJlbTsgfSB9XG4gICAgLmhlcm8tLXNpeF9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5oZXJvLS1zaXhfX2NvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDAgNXJlbTsgfSB9XG4gICAgLmhlcm8tLXNpeF9faGVhZGluZyB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAgIC5oZXJvLS1zaXhfX2hlYWRpbmcgYSB7XG4gICAgICAgIGNvbG9yOiAjMDA4MEE2OyB9XG4gICAgICAgIC5oZXJvLS1zaXhfX2hlYWRpbmcgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNFRDUxNDU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmhlcm8tLXNpeF9faGVhZGluZyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gICAgLmhlcm8tLXNpeF9fc3RyaXBlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMEFGQjk7XG4gICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNzJweDsgfVxuICAuaGVyby0tc2V2ZW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAycmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmhlcm8tLXNldmVuIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTsgfSB9XG4gICAgLmhlcm8tLXNldmVuX19jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuaGVyby0tc2V2ZW5fX2NvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwcmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogODVweDsgfSB9XG4gICAgLmhlcm8tLXNldmVuIHAsXG4gICAgLmhlcm8tLXNldmVuIGxpIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7IH1cbiAgICAuaGVyby0tc2V2ZW5fX2hlYWRpbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmhlcm8tLXNldmVuX19oZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDIuM3JlbTsgfSB9XG4gICAgICAuaGVyby0tc2V2ZW5fX2hlYWRpbmcgYSB7XG4gICAgICAgIGNvbG9yOiAjMDA4MEE2OyB9XG4gICAgICAgIC5oZXJvLS1zZXZlbl9faGVhZGluZyBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI0VENTE0NTsgfVxuICAgICAgLmhlcm8tLXNldmVuX19oZWFkaW5nLmhlYWRpbmctLXRoaW4sIC5tYWluLWJvZHkgaDIuaGVyby0tc2V2ZW5fX2hlYWRpbmcsIC5tYWluLWJvZHkgaDMuaGVyby0tc2V2ZW5fX2hlYWRpbmcsIC5tYWluLWJvZHkgaDQuaGVyby0tc2V2ZW5fX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgICAuaGVyby0tc2V2ZW5fX2hlYWRpbmcuaGVhZGluZy0tdGhpbiwgLm1haW4tYm9keSBoMi5oZXJvLS1zZXZlbl9faGVhZGluZywgLm1haW4tYm9keSBoMy5oZXJvLS1zZXZlbl9faGVhZGluZywgLm1haW4tYm9keSBoNC5oZXJvLS1zZXZlbl9faGVhZGluZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBtYXJnaW46IDNyZW0gMCAxcmVtOyB9IH1cbiAgICAuaGVyby0tc2V2ZW5fX2FzaWRlIHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMwMDgwQTYgNTYuNzElLCAjMDBBRkI5IDExMi4yNSUpO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICBwYWRkaW5nOiAycmVtIDEuNXJlbSAxcmVtO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWluLWhlaWdodDogNzUwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMDA4MEE2IDIwLjkxJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDRweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSkpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5oZXJvLS1zZXZlbl9fYXNpZGUge1xuICAgICAgICAgIG9wYWNpdHk6IGluaXRpYWw7XG4gICAgICAgICAgcGFkZGluZzogMnJlbSAycmVtIDFyZW07IH0gfVxuICAgIC5oZXJvLS1zZXZlbiAuYXNpZGVfX2hlYWRpbmcge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDdweDsgfVxuICAgIC5oZXJvLS1zZXZlbl9fbGlzdCBsaSB7XG4gICAgICBjb2xvcjogd2hpdGU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZXJvX19zdW1tYXJ5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQge1xuICAgIC5oZXJvIGltZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmhlYXJ0cyB7XG4gIGJhY2tncm91bmQ6IHdoaXRlIHVybChcIi9hc3NldHMvaW1nL0JpZyBIZWFydHMucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87IH1cblxuLmNvbG9yLWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmNvbG9yLWJhciB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5jb2xvci1iYXItLW9uZSB7XG4gICAgYmFja2dyb3VuZDogI0VENTE0NTtcbiAgICBsZWZ0OiAwcHg7IH1cbiAgLmNvbG9yLWJhci0tdHdvIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkVEOUI3O1xuICAgIGxlZnQ6IDIwcHg7IH1cbiAgLmNvbG9yLWJhci0tdGhyZWUge1xuICAgIGJhY2tncm91bmQ6ICNGREZDREM7XG4gICAgbGVmdDogNDBweDsgfVxuICAuY29sb3ItYmFyLS1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA4MEE2OyB9XG4gIC5jb2xvci1iYXItLWxpZ2h0LWJsdWUge1xuICAgIGJhY2tncm91bmQ6ICMwMEFGQjk7IH1cbiAgLmNvbG9yLWJhci0tcGVhY2gge1xuICAgIGJhY2tncm91bmQ6ICNGRUQ5Qjc7IH1cbiAgLmNvbG9yLWJhci0teWVsbG93IHtcbiAgICBiYWNrZ3JvdW5kOiAjRkRGQ0RDOyB9XG5cbi8qIHJldmVhbCBwb3AgdXAgc3R5bGVzICovXG4uY2hpbGRyZW5zLWhlYWx0aCB7XG4gIGJvcmRlci1yYWRpdXM6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMjVweCA0MHB4IDIwcHggNDBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogOTUlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IGF1dG87IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5jaGlsZHJlbnMtaGVhbHRoIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNoaWxkcmVucy1oZWFsdGgge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuY2hpbGRyZW5zLWhlYWx0aCB7XG4gICAgICB3aWR0aDogNjAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4taGVpZ2h0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jaGlsZHJlbnMtaGVhbHRoIHtcbiAgICAgIHdpZHRoOiA4MDBweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH0gfVxuXG4ubmV3LXNpdGUge1xuICBwYWRkaW5nOiA0cHg7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDk1JTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAubmV3LXNpdGUge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubmV3LXNpdGUge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmV3LXNpdGUge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubmV3LXNpdGUge1xuICAgICAgd2lkdGg6IDgwMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogYXV0bzsgfSB9XG5cbio6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5jb250ZW50IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiL2Fzc2V0cy9pbWcvQmlnIEhlYXJ0cy5wbmdcIikgcmVwZWF0LXggMCAwOyB9XG4gIC5jb250ZW50IGltZyB7XG4gICAgYm94LXNoYWRvdzogMXJlbSAxcmVtIDEwcmVtIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7IH1cblxuLnNpZGViYXItbmF2IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuc2lkZWJhci1uYXZfX3BhbmVsIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgYm94LXNoYWRvdzogMXJlbSAxcmVtIDEwcmVtIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBwYWRkaW5nOiAycmVtIDJyZW0gMXJlbSAycmVtO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5zaWRlYmFyLW5hdl9fcGFuZWxfX2xpc3Qge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgLnNpZGViYXItbmF2X19wYW5lbF9fbGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMDsgfVxuXG4uY29udGVudCB7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmNvbnRlbnQge1xuICAgICAgbWFyZ2luOiAwIDAgMi41cmVtIDA7IH0gfVxuXG4ubWFpbi1ib2R5IHtcbiAgcGFkZGluZzogMXJlbSAwO1xuICAvKiB0YWJsZXMgKi8gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1haW4tYm9keSB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgLm1haW4tYm9keSBpbWcge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgbWFyZ2luOiAxcmVtIDA7IH1cbiAgLm1haW4tYm9keSBhIHtcbiAgICBjb2xvcjogI0U2MjUxNjsgfVxuICAgIC5tYWluLWJvZHkgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzAwODBBNjsgfVxuICAubWFpbi1ib2R5IHVsLFxuICAubWFpbi1ib2R5IHVsID4gdWwsXG4gIC5tYWluLWJvZHkgb2wsXG4gIC5tYWluLWJvZHkgb2wgPiBvbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAubWFpbi1ib2R5IHVsLFxuICAgICAgLm1haW4tYm9keSB1bCA+IHVsLFxuICAgICAgLm1haW4tYm9keSBvbCxcbiAgICAgIC5tYWluLWJvZHkgb2wgPiBvbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzLjI1cmVtOyB9IH1cbiAgLm1haW4tYm9keSBsaSB7XG4gICAgbWFyZ2luOiAxMnB4IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI5Ljk5ODc1ZW0pIHtcbiAgICAubWFpbi1ib2R5IC5hY3RpdmVraWRzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvOyB9IH1cbiAgLm1haW4tYm9keSAuYWN0aXZla2lkcyB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VENTE0NSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNFRDUxNDU7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tYWluLWJvZHkgdGFibGUge1xuICAgIG1hcmdpbjogMzBweCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgLyogdGhlYWQgc3R5bGVzICovXG4gICAgLyogdGJvZHkgc3R5bGVzICovIH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTk4NzVlbSkge1xuICAgICAgLm1haW4tYm9keSB0YWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsgfSB9XG4gICAgLm1haW4tYm9keSB0YWJsZSB0aGVhZCB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9XG4gICAgLm1haW4tYm9keSB0YWJsZSB0aGVhZCB0ZCxcbiAgICAubWFpbi1ib2R5IHRhYmxlIHRoZWFkIHRoIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVkZWRlO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAgIC5tYWluLWJvZHkgdGFibGUgdGhlYWQgdGQgdWwsXG4gICAgICAubWFpbi1ib2R5IHRhYmxlIHRoZWFkIHRoIHVsIHtcbiAgICAgICAgbWFyZ2luOiAtMTNweCAwIC0xM3B4IDI1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgLm1haW4tYm9keSB0YWJsZSB0aGVhZCB0ZCB1bCBsaSxcbiAgICAgICAgLm1haW4tYm9keSB0YWJsZSB0aGVhZCB0aCB1bCBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgICAgLm1haW4tYm9keSB0YWJsZSB0aGVhZCB0ZCBwLFxuICAgICAgLm1haW4tYm9keSB0YWJsZSB0aGVhZCB0aCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgIC5tYWluLWJvZHkgdGFibGUgdGJvZHkgdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsgfVxuICAgIC5tYWluLWJvZHkgdGFibGUgdGJvZHkgdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5tYWluLWJvZHkgdGFibGUgdGJvZHkgdGQsXG4gICAgLm1haW4tYm9keSB0YWJsZSB0Ym9keSB0aCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZGVkZTtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICAubWFpbi1ib2R5IHRhYmxlIHRib2R5IHRkIHVsLFxuICAgICAgLm1haW4tYm9keSB0YWJsZSB0Ym9keSB0aCB1bCB7XG4gICAgICAgIG1hcmdpbjogLTEzcHggMCAtMTNweCAyNXB4O1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgIC5tYWluLWJvZHkgdGFibGUgdGJvZHkgdGQgdWwgbGksXG4gICAgICAgIC5tYWluLWJvZHkgdGFibGUgdGJvZHkgdGggdWwgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAgIC5tYWluLWJvZHkgdGFibGUgdGJvZHkgdGQgcCxcbiAgICAgIC5tYWluLWJvZHkgdGFibGUgdGJvZHkgdGggcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLm1haW4tYm9keSB0YWJsZSB0Ym9keSB0ZCBoMixcbiAgICAgIC5tYWluLWJvZHkgdGFibGUgdGJvZHkgdGggaDIge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG5cbi8qIGZlYXR1cmVkIGltYWdlcyBmb3IgaGFuZG91dHMgKi9cbmltZy5oYW5kb3V0LWZlYXR1cmVkLWltYWdlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMS44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuLyogYWN0aXZlIGtpZHMgKi9cbi5hY3RpdmUta2lkcy1ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIG1hcmdpbi1sZWZ0OiAwLjE1NjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMTU2MjVyZW07IH1cbiAgLmFjdGl2ZS1raWRzLWJsb2NrID4gLmJsb2NrLWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAwLjYyNXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmFjdGl2ZS1raWRzLWJsb2NrID4gLmJsb2NrLWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMC42MjVyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xuICAgICAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4zMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hY3RpdmUta2lkcy1ibG9jayA+IC5ibG9jay1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDAuNjI1cmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTsgfSB9XG5cbi5hY3RpdmUta2lkcy1jYXJkIGltZyB7XG4gIG1heC1oZWlnaHQ6IDQxM3B4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hY3RpdmUta2lkcy1jYXJkIGltZyB7XG4gICAgICBtYXgtaGVpZ2h0OiAyNjRweDsgfSB9XG5cbi8qIGFjdGl2ZSBraWRzIHRodW1ibmFpbCB2aWRlbyAqL1xudWwudmlkZW8tdGh1bWJuYWlscyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7IH1cbiAgdWwudmlkZW8tdGh1bWJuYWlscyBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IDE2MHB4OyB9XG4gICAgdWwudmlkZW8tdGh1bWJuYWlscyBsaSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuLmNmay1yZXZlYWwge1xuICBwYWRkaW5nOiA1cHggMjBweDtcbiAgd2lkdGg6IDM1JSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG4gIC5jZmstcmV2ZWFsIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5jZmstcmV2ZWFsID4gYnV0dG9uID4gc3BhbiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qIGhpZ2hsaWdodHMgZm9yIGhhbmRvdXRzICovXG4uaGlnaGxpZ2h0cy1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuaGlnaGxpZ2h0cy1jb250YWluZXIge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIG1hcmdpbjogMCAwIDEuMjVyZW0gMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaGlnaGxpZ2h0cy1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDMwJTsgfSB9XG4gIC5oaWdobGlnaHRzLWNvbnRhaW5lciBkaXYuaGVhZGVyIHtcbiAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTBweDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRDUxNDU7IH1cbiAgICAuaGlnaGxpZ2h0cy1jb250YWluZXIgZGl2LmhlYWRlciBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogMC42MjVyZW07XG4gICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAuaGlnaGxpZ2h0cy1jb250YWluZXIgZGl2LmhlYWRlciBoMiBzdmcge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMC4zMTI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtN3B4OyB9XG4gIC5oaWdobGlnaHRzLWNvbnRhaW5lciBkaXYuaGlnaGxpZ2h0cyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjRUQ1MTQ1O1xuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwcHg7XG4gICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEwcHg7IH1cbiAgICAuaGlnaGxpZ2h0cy1jb250YWluZXIgZGl2LmhpZ2hsaWdodHMgdWwge1xuICAgICAgbWFyZ2luOiAwIDAgMCAxLjU2MjVyZW07XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuaGlnaGxpZ2h0cy1jb250YWluZXIgZGl2LmhpZ2hsaWdodHMgdWwgbGkge1xuICAgICAgICBtYXJnaW46IDAuMzc1cmVtIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnBhZ2luYXRpb24tc3R5bGUgYSB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjOWU2Zjg7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5wYWdpbmF0aW9uLXN0eWxlIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjOWU2Zjg7IH1cblxuLnBhZ2luYXRpb24tc3R5bGUgbGkge1xuICBtYXJnaW46IDAgMC4zMTI1cmVtOyB9XG5cbi5wYWdpbmF0aW9uLXN0eWxlIC5jdXJyZW50IHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuICAucGFnaW5hdGlvbi1zdHlsZSAuY3VycmVudCBhIHtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjk5YWU1OyB9XG4gICAgLnBhZ2luYXRpb24tc3R5bGUgLmN1cnJlbnQgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTRjY2YyO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLm9iamVjdC1maXQge1xuICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiA3cHg7IH1cblxuLmhlcm8tLW9uZV9fb2JqZWN0LWZpdCB7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZXJvLS1vbmVfX29iamVjdC1maXQge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBoZWlnaHQ6IDgwJTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICByaWdodDogMDsgfSB9XG5cbi5oZXJvLS10aHJlZV9fb2JqZWN0LWZpdCB7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAtMnJlbTtcbiAgei1pbmRleDogLTE7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZXJvLS10aHJlZV9fb2JqZWN0LWZpdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5oZXJvLS1mb3VyX19vYmplY3QtZml0IHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIG9iamVjdC1wb3NpdGlvbjogcmlnaHQgdG9wO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAxO1xuICBtaXgtYmxlbmQtbW9kZTogc2NyZWVuOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaGVyby0tZm91cl9fb2JqZWN0LWZpdCB7XG4gICAgICBtaXgtYmxlbmQtbW9kZTogc2NyZWVuO1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4uaGVyby0tZml2ZV9fb2JqZWN0LWZpdCB7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIG9wYWNpdHk6IDAuNTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhlcm8tLWZpdmVfX29iamVjdC1maXQge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uaGVyby0tc2l4X19vYmplY3QtZml0IHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiA1MCU7XG4gIG9iamVjdC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgcmlnaHQ6IDA7XG4gIG1peC1ibGVuZC1tb2RlOiBzY3JlZW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZXJvLS1zaXhfX29iamVjdC1maXQge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBoZWlnaHQ6IDgwJTtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgIHdpZHRoOiA3MCU7IH0gfVxuXG4uaGVyby0tc2V2ZW5fX29iamVjdC1maXQge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAtMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhlcm8tLXNldmVuX19vYmplY3QtZml0IHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgb3BhY2l0eTogMC41OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5oZXJvLS1zZXZlbl9fb2JqZWN0LWZpdCB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB6LWluZGV4OiAtMTsgfSB9XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgLyogQmxhY2sgcHJpbnRzIGZhc3RlciAqL1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBzaXplOiA3LjVpbiAxMC41aW47IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lOyB9XG4gIC8qXG4gICAgKiBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgICogb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgICovXG4gIGFbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjsgfVxuICBwcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50OyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgLypcbiAgICAqIFByaW50aW5nIFRhYmxlczpcbiAgICAqIGh0dHBzOi8vd2ViLmFyY2hpdmUub3JnL3dlYi8yMDE4MDgxNTE1MDkzNC9odHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAqL1xuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAvKiBmb250IHNpemluZyAqL1xuICBwLFxuICBsaSxcbiAgdGQge1xuICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50OyB9XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW0gIWltcG9ydGFudDsgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbSAhaW1wb3J0YW50OyB9XG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW0gIWltcG9ydGFudDsgfVxuICAubWFpbi1ib2R5IC5tb3JlLWluZm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLmZvb3RlciB7XG4gICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgbWFyZ2luLXRvcDogM3JlbTsgfVxuICAuZm9vdGVyLWxvZ29zIHtcbiAgICBtYXJnaW4tdG9wOiAtMy43NXJlbTsgfVxuICBodG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsIHAsIGJsb2NrcXVvdGUsIHByZSwgYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLCBkZWwsIGRmbiwgZW0sIGZvbnQsIGlucywga2JkLCBxLCBzLCBzYW1wLCBzbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCwgdGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQge1xuICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9XG4gIC8qIGFkanVzdCBwb3NpdGlvbmluZyBvZiBjb250ZW50IGluIHJlbGF0aW9uIHRvIGxvZ28gKi9cbiAgLm1haW4tYm9keSB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtOyB9XG4gIC8qIGFkZCBsaW5rcyB0byBoYW5kb3V0IGxpc3QgcGFnZSAqL1xuICAuc2hvdy1saXN0LWxpbmtzLWZvci1wcmludCBhW2hyZWZdOjphZnRlciB7XG4gICAgY29udGVudDogXCJcXGEoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyB9XG4gIC8qIGhvbWUgcGFnZSBzdHlsZXMgKi9cbiAgLmhlcm8tYmxvY2stcHJpbnQge1xuICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9XG4gICAgLmhlcm8tYmxvY2stcHJpbnQgLmNmay1idXR0b24ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBmb250LWZhbWlseTogXCJOZW9ncm90ZXNrRXNzQWx0LVJlZ3VsYXJcIjtcbiAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDsgfVxuICAgIC5oZXJvLWJsb2NrLXByaW50IC5oZXJvX19zdW1tYXJ5IHAsXG4gICAgLmhlcm8tYmxvY2stcHJpbnQgLmhlcm8tLXR3b19fY29udGVudCBwLFxuICAgIC5oZXJvLWJsb2NrLXByaW50IC5oZXJvLS10aHJlZV9fc3VtbWFyeSBwLFxuICAgIC5oZXJvLWJsb2NrLXByaW50IC5oZXJvLS1maXZlX19zdW1tYXJ5IHAge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5oZXJvLWJsb2NrLXByaW50IC5oZXJvLS10aHJlZV9faGVhZGluZyB7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmhlcm8tYmxvY2stcHJpbnQgLmhlcm9fX2hlYWRpbmcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC5oZXJvLWJsb2NrLXByaW50IC5zZWN0aW9uLWxpbmsge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuaGVyby0tdHdvIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAuZnVsbDEgKiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmhlcm9fX2hlYWRpbmcsXG4gIC5oZXJvLS1maXZlX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgLmhhcy1ib3JkZXItLWxpZ2h0LWJsdWUsIC5oYXMtYm9yZGVyLS1wZWFjaCwgLm1haW4tYm9keSBoMSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIHAgYS5oZXJvX19idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLyogRW5nbGlzaCBob21lIHBhZ2UgKi9cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXYuZ3JpZC1jb250YWluZXIuZnVsbC5oZWFydHMgPiBkaXYgPiBkaXYgPiBzZWN0aW9uID4gZGl2ID4gZGl2ID4gZGl2LmdyaWQteC5ncmlkLW1hcmdpbi14ID4gZGl2Om50aC1jaGlsZCg0KSA+IHAge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDEpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGRpdiA+IHAudGV4dC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXYuZ3JpZC1jb250YWluZXIuZnVsbC5oZWFydHMgPiBkaXYgPiBkaXYgPiBzZWN0aW9uID4gZGl2ID4gZGl2ID4gZGl2Om50aC1jaGlsZCgxKSA+IGRpdiA+IGgyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICNjb250ZW50ID4gZGl2ID4gZGl2LmdyaWQtY29udGFpbmVyLmZ1bGwuaGVhcnRzID4gZGl2ID4gZGl2ID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdjpudGgtY2hpbGQoMSkgPiBkaXYgPiBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAjY29udGVudCA+IGRpdiA+IGRpdjpudGgtY2hpbGQoMykgPiBzZWN0aW9uID4gZGl2ID4gZGl2ID4gZGl2ID4gaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtZmFtaWx5OiBSYXRpb25lbGwtRXh0cmFCb2xkLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDMpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGRpdiA+IHAudGV4dC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDQpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGRpdiB7XG4gICAgbWFyZ2luLXRvcDogLTE1cHg7IH1cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDQpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGRpdiA+IHAudGV4dC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDQpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGRpdiA+IHA6bnRoLWNoaWxkKDEpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICNjb250ZW50ID4gZGl2ID4gZGl2Om50aC1jaGlsZCg0KSA+IHNlY3Rpb24gPiBkaXYgPiBkaXYgPiBkaXYgPiBkaXYge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICNjb250ZW50ID4gZGl2ID4gZGl2Om50aC1jaGlsZCg0KSA+IHNlY3Rpb24gPiBkaXYgPiBkaXYgPiBkaXYgPiBoMiB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGJvZHkgPiBmb290ZXIgPiBkaXYgPiBkaXYgPiBuYXYuZm9vdGVyLWxvZ29zIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgLyogZnJlbmNoIGhvbWUgcGFnZSAqL1xuICAjY29udGVudCA+IGRpdiA+IGRpdjpudGgtY2hpbGQoNCkgPiBzZWN0aW9uID4gZGl2ID4gZGl2ID4gZGl2ID4gaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtZmFtaWx5OiBSYXRpb25lbGwtRXh0cmFCb2xkLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAuZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5mb290ZXItbG9nb3Mge1xuICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjYuM1xuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gLS0tIERlcGVuZGVuY2llcyAtLS1cbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlLFxuICAkeHktZ3JpZDogJHh5LWdyaWRcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGlmICR4eS1ncmlkIHtcbiAgICAkeHktZ3JpZDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLy8gR2xvYmFsIHN0eWxlc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcblxuICAvLyBHcmlkc1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIC8vIEJhc2ljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuXG4gIC8vIENvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIC8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5cbiAgLy8gTGF5b3V0IGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbiAgLy8gSGVscGVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpZiAkZmxleCB7IEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzOyB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaWYgJHByb3RvdHlwZSB7IEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7IH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBIaURQSSBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcyBmb3IgcmVzb2x1dGlvbnMuXG4vLy8gVmFsdWVzIG11c3QgcmVwcmVzZW50IHRoZSBkZXZpY2UgcGl4ZWxzIC8gd2ViIHBpeGVscyByYXRpb24gYW5kIGJlIHVuaXRsZXNzIG9yIGluIERQUFguXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgaGlkcGktMTogMSxcbiAgaGlkcGktMS01OiAxLjUsXG4gIGhpZHBpLTI6IDIsXG4gIHJldGluYTogMixcbiAgaGlkcGktMzogM1xuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBXZWIgc3RhbmRhcmQgUGl4ZWxzIHBlciBpbmNoLiAoMWRkcHggLyAkc3RkLXdlYi1kcGkpID0gMWRwaVxuICAvLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy12YWx1ZXMtMy8jYWJzb2x1dGUtbGVuZ3Roc1xuICAkc3RkLXdlYi1kcGk6IDk2O1xuXG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgb2YgdGhlIGZvbGxvd2luZyBicmVha3BvaW50XG4gICRicC1uZXh0OiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1pbjogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1pbi13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IG51bGw7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBJZiBuYW1lZCwgbmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuICAkbmFtZTogbnVsbDtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBIaURQSSBicmVha3BvaW50XG4gICRoaWRwaTogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG5cbiAgLy8gSWYgYSBicmVha3BvaW50IG5hbWUgaXMgZ2l2ZW4sIGdldCBpdHMgdmFsdWUgZnJvbSB0aGUgJGJyZWFrcG9pbnRzLyRicmVha3BvaW50cy1oaWRwaSBtYXAuXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cy1oaWRwaSwgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cy1oaWRwaSwgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dC1udW1iZXIoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApO1xuICAgICAgJGhpZHBpOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyIGAkYnJlYWtwb2ludHNgIG9yIGAkYnJlYWtwb2ludHMtaGlkcGlgIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICBAaWYgbm90ICRuYW1lIGFuZCAkZGlyID09ICdvbmx5JyB7XG4gICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIE9ubHkgJ29ubHknIGFuZCAndXAnIGhhdmUgYSBtaW4gbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICd1cCcge1xuICAgICRicC1taW46IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gIH1cbiAgLy8gT25seSAnb25seScgYW5kICdkb3duJyBoYXZlIGEgbWF4IGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgdmFsdWUsIHVzZSBpdCBhcyBtYXggbGltaXQuXG4gICAgQGlmIG5vdCAkbmFtZSB7XG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBuYW1lZCwgdGhlIG1heCBsaW1pdCBpcyB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnQgLSAxcHguXG4gICAgQGVsc2UgaWYgJGJwLW5leHQge1xuICAgICAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAgICAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgJGJwLW5leHQgLSAoMS8kc3RkLXdlYi1kcGkpLCAtemYtYnAtdG8tZW0oJGJwLW5leHQpIC0gMC4wMDEyNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJhdGUgdGhlIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIG1pbiBhbmQgbWF4IGxpbWl0cy5cbiAgQGlmICRoaWRwaSB7XG4gICAgLy8gR2VuZXJhdGUgdmFsdWVzIGluIERQSSBpbnN0ZWFkIG9mIERQUFggZm9yIGFuIElFOS0xMS9PcGVyYSBtaW5pIGNvbXBhdGliaWxpdHkuXG4gICAgLy8gU2VlIGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgICAkYnAtbWluLWRwaTogaWYoJGJwLW1pbiwgJGJwLW1pbiAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1taW4pO1xuICAgICRicC1tYXgtZHBpOiBpZigkYnAtbWF4LCAkYnAtbWF4ICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1heCk7XG4gICAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgsICctd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8nLCAnLXdlYmtpdC1tYXgtZGV2aWNlLXBpeGVsLXJhdGlvJyksXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLWRwaSwgJGJwLW1heC1kcGksICdtaW4tcmVzb2x1dGlvbicsICdtYXgtcmVzb2x1dGlvbicpLFxuICAgICAgJywgJyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCk7XG4gIH1cbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBhbmQgYCRicmVha3BvaW50cy1oaWRwaWAgbWFwcywgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIElmIG11bHRpcGxlIHZhbHVlcyBhcmUgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBnZW5lcmF0ZSBhIG1lZGlhIHF1ZXJ5IGZvciBlYWNoIG9mIHRoZW0gYXMgZGVzY3JpYmVkIGFib3ZlLlxuLy8vIFNpbmNlIHRoZSBjb250ZW50IGlzIGR1cGxpY2F0ZWQgZm9yIGVhY2ggYnJlYWtwb2ludCwgdGhpcyBtaXhpbiBzaG91bGQgb25seSBiZSB1c2VkIHdpdGggcHJvcGVydGllcyB0aGF0XG4vLy8gY2hhbmdlIGFjcm9zcyBicmVha3BvaW50cy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZXMuLi4gLSBCcmVha3BvaW50IG5hbWUgb3IgcHgvcmVtL2VtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZXMuLi4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHZhbHVlcykge1xuICAgICR2YWx1ZTogbnRoKCR2YWx1ZXMsICRpKTtcbiAgICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsIG50aCgkdmFsdWUsIDEpKTtcbiAgICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcbiAgICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAgICRkaXI6IGlmKGxlbmd0aCgkdmFsdWUpID4gMSwgbnRoKCR2YWx1ZSwgMiksIHVwKTtcblxuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAgIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAgIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICAgIC8vIGdlbmVyYXRlIHByaW50IGlmIHRoZSBicmVha3BvaW50IGFmZmVjdHMgdGhlIHByaW50LWJyZWFrcG9pbnQgKG9yIHNtYWxsZXIpLlxuICAgICAgLy8gVGhpcyBtZWFucyB0aGUgY3VycmVudCBjb25kaXRpb24gb25seSBuZWVkcyB0byBiZSBleHRlbmRlZCBzbyAnZG93bicgYWx3YXlzIGdlbmVyYXRlcyBwcmludC5cbiAgICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgKCRicCA8PSAkcGJwIG9yICRkaXIgPT0gZG93bikge1xuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBDb252ZXJ0cyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBudW1iZXIgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAkbnVtYmVyIC0gTnVtYmVyIHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgbnVtYmVyIGZvbGxvd2luZyBgJG51bWJlcmAsIGlmIGAkbnVtYmVyYCB3YXMgZm91bmQuIElmIGAkbnVtYmVyYCB3YXMgbm90IGZvdW5kLCBvciBgJG51bWJlcmAgd2FzIHRoZSBiaWdnZXN0IG51bWJlciBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQtbnVtYmVyKCRtYXAsICRudW1iZXIpIHtcblxuICAkbmV4dF9udW1iZXI6IG51bGw7XG5cbiAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgIEBpZiB0eXBlLW9mKCR2KSA9PSAnbnVtYmVyJyBhbmQgJHYgPiAkbnVtYmVyIGFuZCAoJG5leHRfbnVtYmVyID09IG51bGwgb3IgJHYgPCAkbmV4dF9udW1iZXIpIHtcbiAgICAgICRuZXh0X251bWJlcjogJHY7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV4dF9udW1iZXI7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuLy8vIFJldHVybiB0aGUgYmVzdCBicmVha3BvaW50IHRvIHVzZSBhY2NvcmRpbmcgdG8gdGhlIGNhbGxpbmcgY29udGV4dC4gSXQgcmV0dXJucyBpbiBvcmRlcjpcbi8vLyAxLiB0aGUgZ2l2ZW4gYCR2YWx1ZWAgYXJndW1lbnQgaWYgaXQgaXMgbm90IG51bGwuXG4vLy8gMi4gdGhlIGdsb2JhbCBicmVha3BvaW50IGNvbnRleHQgYCQtemYtc2l6ZWAgaWYgaXQgaXMgbm90IG51bGwgKGxpa2UgaWYgY2FsbGVkIGluc2lkZSB0aGVuIGBicmVha3BvaW50KClgIG1peGluKVxuLy8vIDMuIHRoZSBnaXZlbiBgJGRlZmF1bHRgIGFyZ3VtZW50LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgaW4gcHJpb3JpdHkgaWYgbm9uLW51bGwuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGVmYXVsdCBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBieSBkZWZhdWx0IGlmIG5vIG90aGVyIHZhbHVlIGNhbiBiZSB1c2VkLlxuLy8vXG4vLy8gQHJldHVybiB7S2V5d29yZH0gVGhlIHJlc29sdmVkIGJyZWFrcG9pbnQuXG5AZnVuY3Rpb24gLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkdmFsdWU6IG51bGwsICRkZWZhdWx0OiBudWxsKSB7XG4gIEBpZiAoJHZhbHVlICE9IG51bGwpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuICBAZWxzZSBpZiAodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgIEByZXR1cm4gJC16Zi1zaXplO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICRkZWZhdWx0O1xuICB9XG59XG5cbi8vLyBSZXR1cm4gbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gdGhlIGdpdmVuIG1pbiBhbmQvb3IgbWF4IGxpbWl0cy5cbi8vLyBJZiBhIGxpbWl0IGlzIGVxdWFsIHRvIGBudWxsYCBvciBgMGAsIGl0IGlzIGlnbm9yZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1pbiBbMF0gLSBNaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggWzBdIC0gTWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWluLW5hbWUgWydtaW4td2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRlbGltaXRlciBbJ21heC13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gTWVkaWEgUXVlcnkgc3RyaW5nLlxuQGZ1bmN0aW9uIC16Zi1icC1qb2luKFxuICAkbWluOiAwLFxuICAkbWF4OiAwLFxuICAkbWluLW5hbWU6ICdtaW4td2lkdGgnLFxuICAkbWF4LW5hbWU6ICdtYXgtd2lkdGgnXG4pIHtcbiAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICBpZigkbWluIGFuZCAkbWluID4gMCwgJygjeyRtaW4tbmFtZX06ICN7JG1pbn0pJywgbnVsbCksXG4gICAgaWYoJG1heCBhbmQgJG1heCA+IDAsICcoI3skbWF4LW5hbWV9OiAjeyRtYXh9KScsIG51bGwpLFxuICAgICcgYW5kICcpO1xufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuXG4vLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbi8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbi8vIFRoaXMgc2hvdWxkIGJlIGluIHRoZSBzYW1lIGJyZWFrcG9pbnQgdGhlbiBgQG1peGluIHJldmVhbC1tb2RhbC13aWR0aGBcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICVyZXZlYWwtY2VudGVyZWQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlIHRoYXQgY29udGFpbnMgdGhlIGZsZXgganVzdGlmeWluZyBvcHRpb25zXG4kLXpmLWZsZXgtanVzdGlmeTogLXpmLWZsZXgtanVzdGlmeSgkZ2xvYmFsLXRleHQtZGlyZWN0aW9uKTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDYXJkXG4vLyAgMTUuIENsb3NlIEJ1dHRvblxuLy8gIDE2LiBEcmlsbGRvd25cbi8vICAxNy4gRHJvcGRvd25cbi8vICAxOC4gRHJvcGRvd24gTWVudVxuLy8gIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gIDIwLiBGb3Jtc1xuLy8gIDIxLiBMYWJlbFxuLy8gIDIyLiBNZWRpYSBPYmplY3Rcbi8vICAyMy4gTWVudVxuLy8gIDI0LiBNZXRlclxuLy8gIDI1LiBPZmYtY2FudmFzXG4vLyAgMjYuIE9yYml0XG4vLyAgMjcuIFBhZ2luYXRpb25cbi8vICAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAgMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAgMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vICAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAgMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vICA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAgNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAgNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vICA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAgNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vICA0Ny4gUmV2ZWFsXG4vLyAgNDguIFNsaWRlclxuLy8gIDQ5LiBTd2l0Y2hcbi8vICA1MC4gVGFibGVcbi8vICA1MS4gVGFic1xuLy8gIDUyLiBUaHVtYm5haWxcbi8vICA1My4gVGl0bGUgQmFyXG4vLyAgNTQuIFRvb2x0aXBcbi8vICA1NS4gVG9wIEJhclxuLy8gIDU2LiBYeSBHcmlkXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIDEuIEdsb2JhbFxuLy8gLS0tLS0tLS0tXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCk7XG4vLyBCTFc6XG4kZ2xvYmFsLXdpZHRoOiAxNDcwcHg7XG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbik7XG4kbGlnaHQtZ3JheTogI2U2ZTZlNjtcbiRtZWRpdW0tZ3JheTogI2NhY2FjYTtcbiRkYXJrLWdyYXk6ICM4YThhOGE7XG4kYmxhY2s6ICMwYTBhMGE7XG4kd2hpdGU6ICNmZWZlZmU7XG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2s7XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcbiRwcmludC1ocmVmczogZmFsc2U7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA0ODBweCxcbiAgdGFibGV0LXBvcnRyYWl0OiA3NjhweCxcbiAgdGFibGV0LWxhbmRzY2FwZTogOTkycHgsXG4gIGxhcmdlOiAxMjAwcHgsXG4gIHhsYXJnZTogMTQ0MHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pO1xuXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgaGlkcGktMTogMSxcbiAgaGlkcGktMS01OiAxLjUsXG4gIGhpZHBpLTI6IDIsXG4gIHJldGluYTogMixcbiAgaGlkcGktMzogM1xuKTtcbiRwcmludC1icmVha3BvaW50OiBzbWFsbDtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gdGFibGV0LXBvcnRyYWl0IHRhYmxldC1sYW5kc2NhcGUgbGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kZW5hYmxlLWNvZGUtaW5saW5lOiB0cnVlO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGVuYWJsZS1jaXRlLWJsb2NrOiB0cnVlO1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcblxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcbiRjb2RlLWJsb2NrLXBhZGRpbmc6IDFyZW07XG4kY29kZS1ibG9jay1tYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbi8vIDYuIEFiaWRlXG4vLyAtLS0tLS0tLVxuXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xuJGFiaWRlLWxhYmVsczogdHJ1ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyA3LiBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ6ICdcXDAwMkInO1xuJGFjY29yZGlvbi1taW51cy1jb250ZW50OiAnXFwyMDEzJztcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kYnV0dG9uLWZvbnQtd2VpZ2h0OiBudWxsO1xuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtO1xuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJ1dHRvbi1maWxsOiBzb2xpZDtcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGU7XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGJ1dHRvbi1ib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4O1xuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKTtcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZTtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXNpemVzOiAoXG4gIHNtYWxsOiAwLjVyZW0sXG4gIGRlZmF1bHQ6IDFyZW0sXG4gIGxhcmdlOiAzcmVtLFxuKTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcblxuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG5cbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kY2FyZC1zaGFkb3c6IG5vbmU7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xuJGNsb3NlYnV0dG9uLXotaW5kZXg6IDEwO1xuJGNsb3NlYnV0dG9uLWRlZmF1bHQtc2l6ZTogbWVkaXVtO1xuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbik7XG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XG5cbi8vIDE2LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDE3LiBEcm9wZG93blxuLy8gLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pO1xuXG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbTtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogbnVsbDtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50O1xuXG4vLyAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDY7XG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlO1xuXG4vLyAyMC4gRm9ybXNcbi8vIC0tLS0tLS0tLVxuXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpO1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTGFiZWxcbi8vIC0tLS0tLS0tLVxuXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIyLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIzLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmU6ICRibGFjaztcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjYuIE9yYml0XG4vLyAtLS0tLS0tLS1cblxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNy4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG4kcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91czogJ1xcMDBBQic7XG4kcGFnaW5hdGlvbi1hcnJvdy1uZXh0OiAnXFwwMEJCJztcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKFxuICBkb3duLFxuICB1cCxcbiAgcmlnaHQsXG4gIGxlZnRcbik7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKFxuICBpbmxpbmUsXG4gIGlubGluZS1ibG9jayxcbiAgYmxvY2ssXG4gIHRhYmxlLFxuICB0YWJsZS1jZWxsXG4pO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoXG4gIGRpc2MsXG4gIGNpcmNsZSxcbiAgc3F1YXJlXG4pO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcbiAgdmlzaWJsZSxcbiAgaGlkZGVuLFxuICBzY3JvbGxcbik7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXG4gIHN0YXRpYyxcbiAgcmVsYXRpdmUsXG4gIGFic29sdXRlLFxuICBmaXhlZFxuKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsMCwwLC4xNiksXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XG5cbi8vIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNpemluZzogKFxuICB3aWR0aCxcbiAgaGVpZ2h0XG4pO1xuJHByb3RvdHlwZS1zaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbik7XG5cbi8vIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XG5cbi8vIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRlY29yYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcbiAgb3ZlcmxpbmUsXG4gIHVuZGVybGluZSxcbiAgbGluZS10aHJvdWdoLFxuKTtcblxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtdHJhbnNmb3JtYXRpb246IChcbiAgbG93ZXJjYXNlLFxuICB1cHBlcmNhc2UsXG4gIGNhcGl0YWxpemVcbik7XG5cbi8vIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS11dGlsaXRpZXMtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuLy8gNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XG5cbi8vIDQ4LiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA0OS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4kc3dpdGNoLW9wYWNpdHktZGlzYWJsZWQ6IC41O1xuJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuXG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA0MCU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpO1xuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZTtcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDUxLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gNTIuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogNHB4IHNvbGlkICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDUzLiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyA1NC4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cblxuJGhhcy10aXAtY3Vyc29yOiBoZWxwO1xuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDU1LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTYuIFh5IEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiAzMHB4XG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogMXB4ICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogMXB4ICN7JGltcG9ydGFudH07XG4gIHBhZGRpbmc6IDAgI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiByZWN0KDAsMCwwLDApICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgI3skaW1wb3J0YW50fTtcbiAgYm9yZGVyOiAwICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IHN0YXRpYyAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IHZpc2libGUgI3skaW1wb3J0YW50fTtcbiAgY2xpcDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoXG4gICRzbWFsbDogdHJ1ZSxcbiAgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbihhdXRvLCAtemYtYm9vbCgkc21hbGwpLCAtemYtYm9vbCgkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMpKSB7XG4gICAgQGNvbnRlbnRcbiAgfTtcbn1cblxuLy8vIEl0ZXJhdGVzIHdpdGggYEBjb250ZW50YCB0aHJvdWdoIHRoZSBnaXZlbiBsaXN0IG9mIGJyZWFrcG9pbnRzIGAkYnJlYWtwb2ludHNgLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TGlzdH0gJGJyZWFrcG9pbnRzIFthdXRvXSAtIEJyZWFrcG9pbnRzIHRvIGl0ZXJhdGVzIG9uLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufE51bGx9ICR6ZXJvLWJyZWFrcG9pbnQgW251bGxdIC0gV2hldGhlciB0aGUgemVyby1icmVha3BvaW50IChvZnRlbiBgc21hbGxgKSBtdXN0IGJlIGluY2x1ZGVkLiBJZiBgdHJ1ZWAsIGl0IHdpbGwgYWx3YXlzIGJlIGFkZGVkIHRvIHRoZSBsaXN0IGlmIG5vdCBhbHJlYWR5IHRoZXJlLiBJZiBgZmFsc2VgLCBpdCB3aWxsIGFsd2F5cyBiZSByZW1vdmVkLiBEb2VzIG5vdGhpbmcgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58S2V5d29yZH0gJG1lZGlhLXF1ZXJpZXMgW3RydWVdIC0gV2hldGhlciBtZWRpYS1xdWVyaWVzIG11c3QgYmUgZ2VuZXJhdGVkLiBJZiBgZm9yLWxpc3RzYCwgb25seSBnZW5lcmF0ZSBtZWRpYS1xdWVyaWVzIHdoZW4gYCRicmVha3BvaW50c2AgaXMgYSBsaXN0LlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oXG4gICRicmVha3BvaW50czogYXV0byxcbiAgJHplcm8tYnJlYWtwb2ludDogbnVsbCxcbiAgJG1lZGlhLXF1ZXJpZXM6IHRydWVcbikge1xuICAkLWxpc3Q6ICgpO1xuICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogdHJ1ZTtcblxuICAvLyBSZXRyaWV2ZSB0aGUgbGlzdCBvZiBicmVha3BvaW50KHMpIHRvIGl0ZXJhdGUgb24uXG4gIEBpZiAkYnJlYWtwb2ludHMgPT0gYXV0byB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnbGlzdCcge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnRzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnc3RyaW5nJyB7XG4gICAgJC1saXN0OiAoJGJyZWFrcG9pbnRzKTtcbiAgICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogZmFsc2U7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcIiRicmVha3BvaW50c1wiIGluIFwiLXpmLWVhY2gtYnJlYWtwb2ludC1pbigpXCIuIEdvdCBcIiN7JGJyZWFrcG9pbnRzfVwiICgje3R5cGUtb2YoJGJyZWFrcG9pbnRzKX0pLiBFeHBlY3RlZCBhIGJyZWFrcG9pbnQgbmFtZSwgYSBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIFwiYXV0b1wiJztcbiAgfVxuXG4gIC8vIEFkZCBvciByZW1vdmUgdGhlIHplcm8gYnJlYWtwb2ludCBhY2NvcmRpbmcgdG8gYCR6ZXJvLWJyZWFrcG9pbnRgXG4gIEBpZiAkemVyby1icmVha3BvaW50ID09IHRydWUge1xuICAgICQtbGlzdDogam9pbigoJC16Zi16ZXJvLWJyZWFrcG9pbnQpLCBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCkpO1xuICB9XG4gIEBlbHNlIGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gZmFsc2Uge1xuICAgICQtbGlzdDogc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gSXRlcmF0ZSBvbiBicmVha3BvaW50KHMpXG4gIEBlYWNoICRicCBpbiAkLWxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJGJwICFnbG9iYWw7XG5cbiAgICBAaWYgKCRtZWRpYS1xdWVyaWVzID09IHRydWVcbiAgICAgIG9yICgkbWVkaWEtcXVlcmllcyA9PSAnZm9yLWxpc3RzJyBhbmQgJC1icmVha3BvaW50cy1pcy1hLWxpc3QpKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkYnAtdmFsdWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICAgIEBpZiAkYnAtdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRuYW1lOiAkYnAtdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiAkaW5wdXQtbGluZS1oZWlnaHQpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG5cbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICY6bm90KFttdWx0aXBsZV0pIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPi08aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgZm9yIGhlYWRpbmdzIGF0IHZhcmlvdXMgc2NyZWVuIHNpemVzLiBFYWNoIGtleSBpcyBhIGJyZWFrcG9pbnQsIGFuZCBlYWNoIHZhbHVlIGlzIGEgbWFwIG9mIGhlYWRpbmcgc3R5bGVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAkaGVhZGVyLXN0eWxlcyBtYXAgaXMgYnVpbHQgZnJvbSAkaGVhZGVyLXNpemVzIGluIG9yZGVyIHRvIGVuc3VyZSBkb3dud2FyZCBjb21wYXRpYmlsaXR5XG4vLyB3aGVuICRoZWFkZXItc2l6ZXMgaXMgZGVwcmVjaWF0ZWQsICRoZWFkZXItc3R5bGVzIG5lZWRzIHRvIGdldCAhZGVmYXVsdCB2YWx1ZXMgbGlrZSBzZXR0aW5ncy5zY3NzXG5AZnVuY3Rpb24gYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcykge1xuICBAd2FybiAnTm90ZSwgdGhhdCAkaGVhZGVyLXNpemVzIGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggJGhlYWRlci1zdHlsZXMuICRoZWFkZXItc2l6ZXMgc3RpbGwgd29ya3MsIGJ1dCBpdCBpcyBnb2luZyB0byBiZSBkZXByZWNpYXRlZC4nO1xuICAkaGVhZGVyLXN0eWxlczogKCk7XG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICAkaGVhZGVyLW1hcDogKCk7XG4gICAgQGVhY2ggJGhlYWRlciwgJGZvbnQtc2l6ZSBpbiAkaGVhZGVycyB7XG4gICAgICAkaGVhZGVyLW1hcDogbWFwLW1lcmdlKCRoZWFkZXItbWFwLCAoJGhlYWRlcjogKCdmb250LXNpemUnOiAkZm9udC1zaXplKSkpO1xuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFVzZSB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y29kZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudCBhcyBkZWZhdWx0IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWU7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCxcbiAgaDUsIC5oNSxcbiAgaDYsIC5oNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9LCAuI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIElubGluZSBDaXRhdGlvbnNcbiAgQGlmICgkZW5hYmxlLWNpdGUtYmxvY2sgPT0gdHJ1ZSkge1xuICAgIGNpdGUge1xuICAgICAgLy8gRXh0ZW5kaW5nIGEgY2xhc3MgaXMgbm90IHJlY29tbWVuZGVkLlxuICAgICAgLy8gVE9ETzogQnJlYWsgdGhlIHR5cG9ncmFwaHktYmFzZS90eXBvZ3JhcGh5LWhlbHBlcnMgc2VwYXJhdGlvblxuICAgICAgQGV4dGVuZCAuY2l0ZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb2RlXG4gIEBpZiAoJGVuYWJsZS1jb2RlLWlubGluZSA9PSB0cnVlKSB7XG4gICAgY29kZSB7XG4gICAgICBAZXh0ZW5kIC5jb2RlLWlubGluZTtcbiAgICB9XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1pbmxpbmVgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1ibG9jay1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIHVuZGVyIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGNpdGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjaXRlLWNvbG9yO1xuICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZCBiYXNpYyBzdHlsZXMgZm9yIGEgY29kZSBoZWxwZXIuXG4vLy8gU2VlIGBjb2RlLWlubGluZWAgYW5kIGBjb2RlLWJsb2NrYCBtaXhpbnMuXG5AbWl4aW4gY29kZS1zdHlsZSB7XG4gIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBpbmxpbmUuXG4vLy8gVXNlZCB0byBnZW5lcmF0ZSBgLmNvZGUtaW5saW5lYFxuQG1peGluIGNvZGUtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xufVxuXG4vLy8gTWFrZSBjb2RlIGhlbHBlciBmcm9tIHRoZSBgY29kZS1zdHlsZWAgbWl4aW4gYSBibG9jay5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1ibG9ja2BcbkBtaXhpbiBjb2RlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuXG4gIHBhZGRpbmc6ICRjb2RlLWJsb2NrLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b207XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5jaXRlLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjaXRlLWJsb2NrO1xuICB9XG5cbiAgLmNvZGUtaW5saW5lIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtaW5saW5lO1xuICB9XG5cbiAgLmNvZGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNvZGUtc3R5bGU7XG4gICAgQGluY2x1ZGUgY29kZS1ibG9jaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheXMgbmV4dCB0byBhbGwgbGlua3MgdGhlaXIgXCJocmVmXCIgd2hlbiBwcmludGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgLy8gRW5zdXJlIGEgXCJibGFjay1vbi13aGl0ZVwiIHByaW50IGJ5IHJlbW92aW5nIGJhY2tncm91bmRzLFxuICAgICAgLy8gdXNpbmcgYmxhY2sgdGV4dCBldmVyeXdoZXJlIGFuZCBmb3JjaW5nIHRoZSBicm93c2VyIHRvIGVjb25vbWl6ZSBpbmsuXG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgICAgY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgICAgfVxuICAgICAgLy8gT3RoZXJ3aXNlLCBwcmV2ZW50IGFueSBlY29ub215IGJ5IHRoZSBicm93c2VyLlxuICAgICAgQGVsc2Uge1xuICAgICAgICBjb2xvci1hZGp1c3Q6IGV4YWN0O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbChmdWxsLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuXG4gICAgJi5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICB9XG5cbiAgICAmLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgfVxuICAuZ3JpZC14IHtcbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIlxuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoJHZlcnRpY2FsOiAkdmVydGljYWwsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoJHZlcnRpY2FsOiAkdmVydGljYWwsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgYWxsIHByaW9yIGJyZWFrcG9pbnRzLlxuICAgICAgLy8gQXMgdGhlaXIgZ3V0dGVyIGlzIGRlZmluZWQgd2l0aCB0aGVpciB3aWR0aC9oZWlnaHQsIGV2ZW4gYnJlYWtwb2ludCB3aXRob3V0IGEgbmV3IG1hcmdpbiBtdXN0IGJlXG4gICAgICAvLyBnZW5lcmF0ZWQgdG8gbm90IGhhdmluZyB0aGVpciB3aWR0aC9oZWlnaHQgb3ZlcnJpZGVkIGJ5IHJlLWFkanVzdGVkIHNtYWxsZXIgYnJlYWtwb2ludHMuXG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJC16Zi1zaXplLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFBhZGRpbmcgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktcGFkZGluZy1ncmlkLWNsYXNzZXMge1xuICAuZ3JpZC1wYWRkaW5nLXgge1xuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgZ3JpZHMgd2l0aGluIGBncmlkLWNvbnRhaW5lci9ncmlkLWNvbnRhaW5lci5mbHVpZGBcbiAgICAvLyBUaGlzIGFsbG93cyBtYXJnaW4gYW5kIHBhZGRpbmcgZ3JpZHMgdG8gbGluZSB1cCB3aXRoIGVhY2hvdGhlclxuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gJiB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCbG9jayBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogcGFkZGluZywgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBtYXJnaW4sICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBtYXJnaW4sICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sbGFwc2UgY2xhc3Nlc1xuQG1peGluIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgICAgLiN7JGJwfS1tYXJnaW4tY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogbWFyZ2luLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgICAgLiN7JGJwfS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT2Zmc2V0IGNsYXNzZXNcbkBtaXhpbiB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLW1hcmdpbi14ID4gLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFZlcnRpY2FsIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcyhcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlXG4pIHtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQteSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZCh2ZXJ0aWNhbCwgZmFsc2UpO1xuXG5cbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtcmVzZXQoKTtcbiAgICB9XG5cbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0bywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgd2lkdGggbW9kaWZpZXJzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogdG9wIGJvdHRvbSk7XG4gICAgICB9XG5cbiAgICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICAgID4gLmNlbGwge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGd1dHRlci1wb3NpdGlvbjogdG9wIGJvdHRvbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgfVxuXG59XG5cbkBtaXhpbiB4eS1mcmFtZS1ncmlkLWNsYXNzZXMoJHZlcnRpY2FsLWdyaWQ6IHRydWUsICRtYXJnaW4tZ3JpZDogdHJ1ZSkge1xuICAvLyBGcmFtZWQgZ3JpZCBzdHlsZXNcbiAgLmdyaWQtZnJhbWUge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gIH1cblxuICAuY2VsbCAuZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gIH1cblxuICAuY2VsbC1ibG9jayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICB9XG5cbiAgLmNlbGwtYmxvY2steSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jayh0cnVlKTtcbiAgfVxuXG5cbiAgLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICB9XG5cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG5cbiAgICAuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgICB9XG5cbiAgICAuY2VsbCAuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLXkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jayh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJHZlcnRpY2FsLWdyaWQge1xuICAgIC5ncmlkLXkge1xuICAgICAgJi5ncmlkLWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgICAgJi4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICAgIC5jZWxsIHtcbiAgICAgIC5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgICAgLmdyaWQteS4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJGluY2x1ZGUtYmFzZTogZmFsc2UpO1xuICAgIH1cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAuZ3JpZC1tYXJnaW4teS4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRmluYWwgY2xhc3Nlc1xuQG1peGluIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzKFxuICAkYmFzZS1ncmlkOiB0cnVlLFxuICAkbWFyZ2luLWdyaWQ6IHRydWUsXG4gICRwYWRkaW5nLWdyaWQ6IHRydWUsXG4gICRibG9jay1ncmlkOiB0cnVlLFxuICAkY29sbGFwc2U6IHRydWUsXG4gICRvZmZzZXQ6IHRydWUsXG4gICR2ZXJ0aWNhbC1ncmlkOiB0cnVlLFxuICAkZnJhbWUtZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICBAaWYoJGJhc2UtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJhc2UtZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBNYXJnaW4gZ3JpZFxuICBAaWYoJG1hcmdpbi1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gUGFkZGluZyBncmlkXG4gIEBpZigkcGFkZGluZy1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktcGFkZGluZy1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWRcbiAgQGlmKCRibG9jay1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBDb2xsYXBzZSBndXR0ZXJzXG4gIEBpZigkY29sbGFwc2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIE9mZnNldCBndXR0ZXJzXG4gIEBpZigkb2Zmc2V0KSB7XG4gICAgQGluY2x1ZGUgeHktb2Zmc2V0LWNlbGwtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gVmVydGljYWwgZ3JpZFxuICBAaWYoJHZlcnRpY2FsLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIEBpZiAoJGZyYW1lLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1mcmFtZS1ncmlkLWNsYXNzZXMoJHZlcnRpY2FsLWdyaWQsICRtYXJnaW4tZ3JpZClcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdudW1iZXInKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcnMpIC8gMjtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgZmxleCB2YWx1ZSBmb3IgYSBjZWxsIGJhc2UuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBUaGUgY2VsbCBmbGV4IHByb3BlcnR5IHZhbHVlLlxuQGZ1bmN0aW9uIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIEByZXR1cm4gMSAxIDBweDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2dyb3cnKSB7XG4gICAgQHJldHVybiAxIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3Nocmluaycgb3IgJHNpemUgPT0gJ2Z1bGwnIG9yIHpmLWlzLWZyYWN0aW9uKCRzaXplLCAkYWxsb3ctbm8tZGVub21pbmF0b3I6IHRydWUpKSB7XG4gICAgQHJldHVybiAwIDAgYXV0bztcbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbi8vLyBDYWxjdWxhdGUgdGhlIHNpemUgb2YgYSBjZWxsIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgcmV0dXJucyB0aGUgcmVzcG9uc2l2ZSBndXR0ZXJzIG1hcCBgJGd1dHRlcnNgLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfE1hcH0gVGhlIGNlbGwgZ3V0dGVyIHNpemUgb3IgdGhlIHJlc3BvbnNpdmUgZ3V0dGVycyBtYXAuXG5AZnVuY3Rpb24geHktY2VsbC1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgLy8gRm9yIGBhdXRvYCwgcmV0dXJucyB0aGUgcmVzcG9uc2l2ZSBtYXAgYCRndXR0ZXJzYC5cbiAgQGlmICgkYnJlYWtwb2ludCA9PSAnYXV0bycpIHtcbiAgICBAcmV0dXJuICRndXR0ZXJzO1xuICB9XG5cbiAgLy8gVXNlIHRoZSBjb250ZXh0dWFsIGJyZWFrcG9pbnQgYnkgZGVmYXVsdC5cbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpO1xuXG4gIEBpZiAoJGJyZWFrcG9pbnQpIHtcbiAgICBAcmV0dXJuIC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtemVyby1icmVha3BvaW50KSBvciAwO1xuICB9XG59XG5cbi8vLyBSZXR1cm5zIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzNgLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gU2l6ZSBvZiB0aGUgY2VsbCAoaW4gcGVyY2VudCkuXG5AZnVuY3Rpb24geHktY2VsbC1zaXplKFxuICAkc2l6ZTogJGdyaWQtY29sdW1uc1xuKSB7XG4gIEByZXR1cm4gZnJhY3Rpb24tdG8tcGVyY2VudGFnZSgkc2l6ZSwgJGRlbm9taW5hdG9yOiAkZ3JpZC1jb2x1bW5zKTtcbn1cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyB2YWx1ZSBmb3IgYSBjZWxsIHNpemUuXG4vLy9cbi8vLyBHdXR0ZXJzLXJlbGF0ZWQgYXJndW1lbnRzIGFyZSByZXF1aXJlZCBmb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycyAoYnkgZGVmYXVsdCkgYXMgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYW55IGZyYWN0aW9uIGxpa2UgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIHJldHVybnMgYSBtYXAgb2Ygc2l6ZXMgYWRhcHRlZCB0byByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfE1hcH0gVGhlIGNlbGwgc2l6aW5nIHByb3BlcnR5IHZhbHVlLCBvciBhIHJlc3BvbnNpdmUgbWFwIG9mIHRoZW0uXG5AZnVuY3Rpb24geHktY2VsbC1zaXplLWNzcyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgJG1hcmdpbi1ndXR0ZXI6IDA7XG5cbiAgQGlmICgkc2l6ZSA9PSAnYXV0bycgb3IgJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICBAcmV0dXJuIGF1dG87XG4gIH1cblxuICAvLyBGb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycywgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgJG1hcmdpbi1ndXR0ZXI6IHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAgIEBpZiAoJG1hcmdpbi1ndXR0ZXIgPT0gbnVsbCkge1xuICAgICAgQGVycm9yICd4eS1jZWxsLXNpemU6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiJztcbiAgICB9XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgdGhlIGNlbGwgc2l6ZSAobnVtYmVyKVxuICAkc2l6ZS1yYXc6IGlmKCRzaXplID09ICdmdWxsJywgMTAwJSwgeHktY2VsbC1zaXplKCRzaXplKSk7XG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBjZWxsIENTUyBzaXplIGluY2x1ZGluZyBndXR0ZXJzIChzdHJpbmcpXG4gIC8vIElmIHRoZSBjZWxsIGhhcyByZXNwb25zaXZlIG1hcmdpbiBndXR0ZXJzLCByZXR1cm4gYSByZXNwb25zaXZlIG1hcCBvZiBzaXplcy5cbiAgQGlmIHR5cGUtb2YoJG1hcmdpbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM6ICgpO1xuXG4gICAgQGVhY2ggJGJwLCAkbWcgaW4gJG1hcmdpbi1ndXR0ZXIge1xuICAgICAgJHNpemUtY3NzOiBpZigkbWcgPT0gMCwgJHNpemUtcmF3LCBjYWxjKCN7JHNpemUtcmF3fSAtICN7cmVtLWNhbGMoJG1nKX0pKTtcbiAgICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogbWFwLW1lcmdlKCRyZXNwb25zaXZlLWNzcy1zaXplcywgKCRicDogJHNpemUtY3NzKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gYSBzaW5nbGUgQ1NTIHNpemUuXG4gIEBlbHNlIHtcbiAgICAkY3NzLXNpemU6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICBAcmV0dXJuICRjc3Mtc2l6ZTtcbiAgfVxufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbkBtaXhpbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgJGJhc2U6IHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgZmxleDogI3skYmFzZX07XG5cbiAgLy8gU2V0IGJhc2Ugc3R5bGVzIGZvciBcImZ1bGxcIiBvbmx5XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgbWluLXdpZHRoOiAwcHg7XG4gIH1cbn1cblxuLy8vIFJlc2V0cyBhIGNlbGxzIHdpZHRoIChvciBoZWlnaHQgaWYgdmVydGljYWwgaXMgdHJ1ZSkgYXMgd2VsbCBhcyBzdHJpcHMgaXRzIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1yZXNldCgkdmVydGljYWw6IHRydWUpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICBtYXgtI3skZGlyZWN0aW9ufTogbm9uZTtcbn1cblxuLy8vIFNldHMgc2l6aW5nIHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gR3V0dGVycy1yZWxhdGVkIGFyZ3VtZW50cyBhcmUgcmVxdWlyZWQgZm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMgKGJ5IGRlZmF1bHQpIGFzIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgc2l6ZXMgYWRhcHRlZCBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHNpemVzOiB4eS1jZWxsLXNpemUtY3NzKCRzaXplLCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkYnJlYWtwb2ludCk7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcblxuICBAaWYgKHR5cGUtb2YoJHNpemVzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRzaXplcykge1xuICAgICAgI3skZGlyZWN0aW9ufTogJC16Zi1icC12YWx1ZTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICN7JGRpcmVjdGlvbn06ICRzaXplcztcbiAgfVxufVxuXG4vLy8gU2V0cyBndXR0ZXJzIHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW251bGxdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLiBCeSBkZWZhdWx0IGByaWdodCBsZWZ0YCBmb3IgaG9yaXpvbnRhbCBjZWxscyBhbmQgYHRvcCBib3R0b21gIGZvciB2ZXJ0aWNhbCBjZWxscy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gRGlyZWN0aW9uIG9mIHRoZSBndXR0ZXJzIHRvIG91dHB1dC4gU2VlIGAkZ3V0dGVyLXBvc2l0aW9uYC5cbkBtaXhpbiB4eS1jZWxsLWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgLy8gR2V0IHRoZSBkZWZhdWx0IGd1dHRlciBwb3NpdGlvbiBhY2NvcmRpbmcgdG8gY2VsbCBkaXJlY3Rpb25cbiAgQGlmKCRndXR0ZXItcG9zaXRpb24gPT0gbnVsbCkge1xuICAgICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcbiAgfVxuXG4gIC8vIEdldCB0aGUgZ3V0dGVyIHdpZHRoIGZvciB0aGlzIGJyZWFrcG9pbnRcbiAgJGd1dHRlci13aWR0aDogeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIEBpZiAoJGd1dHRlci13aWR0aCA9PSBudWxsKSB7XG4gICAgQGVycm9yICd4eS1jZWxsLWd1dHRlcnM6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiJztcbiAgfVxuXG4gIEBpZiAoJGd1dHRlci10eXBlIGFuZCAkZ3V0dGVyLXR5cGUgIT0gbm9uZSkge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlci13aWR0aCwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGNlbGwgZm9yIHlvdXIgZ3JpZC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRvdXRwdXQgWyhiYXNlIHNpemUgZ3V0dGVycyldIC0gQ2VsbCBwYXJ0cyB0byBvdXRwdXQuIFlvdSB3aWxsIG5lZWQgdG8gZ2VuZXJhdGUgb3RoZXJzIHBhcnRzIG9mIHRoZSBjZWxsIHNlcGVyYXRlbHksIGl0IG1heSBub3Qgd29yayBwcm9wZXJseSBvdGhlcndpc2UuXG5AbWl4aW4geHktY2VsbChcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiBudWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG91dHB1dDogKGJhc2Ugc2l6ZSBndXR0ZXJzKVxuKSB7XG4gIC8vIERlZmF1bHQgZm9yICRndXR0ZXItb3V0cHV0XG4gIEBpZiAoJGd1dHRlci1vdXRwdXQgIT0gbnVsbCkge1xuICAgIEB3YXJuICd4eS1jZWxsOiAkZ3V0dGVyLW91dHB1dCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMCc7XG4gICAgQGlmICgkZ3V0dGVyLW91dHB1dCA9PSBmYWxzZSkge1xuICAgICAgJG91dHB1dDogc2wtcmVtb3ZlKCRvdXRwdXQsIGd1dHRlcnMpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgYmFzZSkpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoJHNpemUpO1xuICB9XG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgc2l6ZSkpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJHNpemUsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgZ3V0dGVycykpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCBzaXplZCBncmlkLiBVc2VkIHRvIGdlbmVyYXRlIG91ciBncmlkIGNsYXNzZXMuXG4vLy9cbi8vLyBgeHktY2VsbC1zdGF0aWMoKWAgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLlxuLy8vIFVzZSBgeHktY2VsbCgpYCBpbnN0ZWFkIHdpdGggYCRvdXRwdXQ6IChzaXplIGd1dHRlcnMpYCB0byBub3QgZ2VuZXJhdGUgdGhlIGNlbGwgYmFzZS5cbi8vLyBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTBcbi8vL1xuLy8vIEBkZXByZWNhdGVkIHY2LjYuMFxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnMuIEFsd2F5cyBgdHJ1ZWAgZm9yIG1hcmdpbiBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zdGF0aWMoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgQHdhcm4gJ3h5LWNlbGwtc3RhdGljKCkgbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLiBVc2UgXCJ4eS1jZWxsKClcIiBpbnN0ZWFkLiBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTAnO1xuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcblxuICAkLWd1dHRlci1vdXRwdXQ6IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgdHJ1ZSwgJGd1dHRlci1vdXRwdXQpO1xuICAkLWd1dHRlci1tYXJnaW46IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgJGd1dHRlciwgMCk7XG5cbiAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJC1ndXR0ZXItbWFyZ2luLCAkdmVydGljYWwpO1xuICBAaWYgKCQtZ3V0dGVyLW91dHB1dCkge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gRmluZHMgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIG9mIHR3byBpbnRlZ2Vycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYSAtIEZpcnN0IG51bWJlciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYiAtIFNlY29uZCBudW1iZXIgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvci5cbkBmdW5jdGlvbiBnY2QoJGEsICRiKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9HcmVhdGVzdF9jb21tb25fZGl2aXNvciNKYXZhU2NyaXB0XG4gIEBpZiAoJGIgIT0gMCkge1xuICAgIEByZXR1cm4gZ2NkKCRiLCAkYSAlICRiKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBhYnMoJGEpO1xuICB9XG59XG5cbi8vLyBIYW5kbGVzIGRlY2ltYWwgZXhwb25lbnRzIGJ5IHRyeWluZyB0byBjb252ZXJ0IHRoZW0gaW50byBhIGZyYWN0aW9uIGFuZCB0aGVuIHVzZSBhIG50aC1yb290LWFsZ29yaXRobSBmb3IgcGFydHMgb2YgdGhlIGNhbGN1bGF0aW9uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgYmFzZSBudW1iZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRleHBvbmVudCAtIFRoZSBleHBvbmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBwcm9kdWN0IG9mIHRoZSBleHBvbmVudGlhdGlvbi5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHBvbmVudCwgJHByZWM6IDE2KSB7XG4gIEBpZiAoZmxvb3IoJGV4cG9uZW50KSAhPSAkZXhwb25lbnQpIHtcbiAgICAkcHJlYzIgOiBwb3coMTAsICRwcmVjKTtcbiAgICAkZXhwb25lbnQ6IHJvdW5kKCRleHBvbmVudCAqICRwcmVjMik7XG4gICAgJGRlbm9taW5hdG9yOiBnY2QoJGV4cG9uZW50LCAkcHJlYzIpO1xuICAgIEByZXR1cm4gbnRoLXJvb3QocG93KCRiYXNlLCAkZXhwb25lbnQgLyAkZGVub21pbmF0b3IpLCAkcHJlYzIgLyAkZGVub21pbmF0b3IsICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIG50aC1yb290KCRudW0sICRuOiAyLCAkcHJlYzogMTIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL050aF9yb290I0phdmFTY3JpcHRcbiAgJHg6IDE7XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkcHJlYyB7XG4gICAgJHg6IDEgLyAkbiAqICgoJG4gLSAxKSAqICR4ICsgKCRudW0gLyBwb3coJHgsICRuIC0gMSkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHg7XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBoZWlnaHQgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSB3aWR0aCBmb3IgYSBnaXZlbiByYXRpby5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIGZvciB0aGUgaGVpZ2h0IHJlbGF0aXZlIHRvIHRoZSB3aWR0aCBvZiBhIHJlc3BvbnNpdmUgY29udGFpbmVyLlxuQGZ1bmN0aW9uIHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKSB7XG4gICR3OiBudGgoJHJhdGlvLCAxKTtcbiAgJGg6IG50aCgkcmF0aW8sIDMpO1xuICBAcmV0dXJuICRoIC8gJHcgKiAxMDAlO1xufVxuXG4vLy8gUGFyc2UgdGhlIGdpdmVuIGAkZnJhY3Rpb25gIHRvIG51bWVyYXRvcnMgYW5kIGRlbnVtZXJhdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Kn0gJGZyYWN0aW9uIC0gVmFsdWUgcmVwcmVzZW50aW5nIGEgZnJhY3Rpb24gdG8gcGFyc2UuIEl0IGNhbiBiZSBmb3JtYXR0ZWQgYXMgYDUwJWAsIGAxIG9mIDJgLCBgMS8yYCBvciBgNTBgIChubyBkZW5vbWluYXRvciB3b3VsZCBiZSByZXR1cm5lZCkuXG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBMaXN0IG9mIHBhcnNlZCB2YWx1ZXMgd2l0aCBudW1lcmF0b3IgYXQgZmlyc3QgcG9zaXRpb24gYW5kIGRlbnVtZXJhdG9yIGFzIHNlY29uZC4gVGhlc2UgdmFsdWVzIG1heSBiZSBudWxsLlxuQGZ1bmN0aW9uIHpmLXBhcnNlLWZyYWN0aW9uKCRmcmFjdGlvbikge1xuXG4gIEBpZiB0eXBlLW9mKCRmcmFjdGlvbikgPT0gJ251bWJlcicge1xuICAgIC8vIFwiNTAlXCJcbiAgICBAaWYgdW5pdCgkZnJhY3Rpb24pID09ICclJyB7XG4gICAgICBAcmV0dXJuIChzdHJpcC11bml0KCRmcmFjdGlvbiksIDEwMCk7XG4gICAgfVxuICAgIEBlbHNlIGlmICh1bml0KCRmcmFjdGlvbikgPT0gJycpIHtcbiAgICAgIC8vIFwiMC41XCJcbiAgICAgIEBpZiAkZnJhY3Rpb24gPCAxIHtcbiAgICAgICAgQHJldHVybiAoJGZyYWN0aW9uICogMTAwLCAxMDApO1xuICAgICAgfVxuICAgICAgLy8gXCI1MFwiXG4gICAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gKCRmcmFjdGlvbiwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgdHlwZS1vZigkZnJhY3Rpb24pID09ICdsaXN0JyB7XG4gICAgLy8gXCI1MCBvZiAxMDBcIiwgXCI1MC8xMDBcIi4uLlxuICAgIEBpZiBsZW5ndGgoJGZyYWN0aW9uKSA9PSAzXG4gICAgICBhbmQgdHlwZS1vZihudGgoJGZyYWN0aW9uLCAxKSA9PSAnbnVtYmVyJylcbiAgICAgIGFuZCB0eXBlLW9mKG50aCgkZnJhY3Rpb24sIDMpID09ICdudW1iZXInKSB7XG4gICAgICBAcmV0dXJuIChudGgoJGZyYWN0aW9uLCAxKSwgbnRoKCRmcmFjdGlvbiwgMykpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gKG51bGwsIG51bGwpO1xufVxuXG4vLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBgJHZhbHVlYCByZXByZXNlbnRzIGEgZnJhY3Rpb24uIFN1cHBvcnRzIGZvcm1hdHMgbGlrZSBgNTAlYCwgYDEgb2YgMmAsIGAxIHBlciAyYCBvciBgMS8yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlIC0gVmFsdWUgdG8gdGVzdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhbGxvdy1uby1kZW5vbWluYXRvciBbZmFsc2VdIC0gSWYgYHRydWVgLCBzaW1wbGUgbnVtYmVycyB3aXRob3V0IGRlbm9taW5hdG9ycyBsaWtlIGA1MGAgYXJlIHN1cHBvcnRlZC5cbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2xlYW59IGB0cnVlYCBpZiBgJHZhbHVlYCByZXByZXNlbnRzIGEgZnJhY3Rpb24sIGBmYWxzZWAgb3RoZXJ3aXNlLlxuQGZ1bmN0aW9uIHpmLWlzLWZyYWN0aW9uKCR2YWx1ZSwgJGFsbG93LW5vLWRlbm9taW5hdG9yOiBmYWxzZSkge1xuICAkcGFyc2VkOiB6Zi1wYXJzZS1mcmFjdGlvbigkdmFsdWUpO1xuICBAcmV0dXJuIG5vdChudGgoJHBhcnNlZCwgMSkgPT0gbnVsbFxuICAgIG9yIChudGgoJHBhcnNlZCwgMikgPT0gbnVsbCBhbmQgJGFsbG93LW5vLWRlbm9taW5hdG9yID09IGZhbHNlKSk7XG59XG5cbi8vLyBDYWxjdWxhdGUgYSBwZXJjZW50YWdlIGZyb20gYSBnaXZlbiBmcmFjdGlvbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRmcmFjdGlvbiAtIFZhbHVlIHJlcHJlc2VudGluZyBhIGZyYWN0aW9uIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIHBlcmNlbnRhZ2UsIGZvcm1hdHRlZCBhcyBgNTBgIChyZWxhdGl2ZSB0byBgJGRlbm9taW5hdG9yYCksIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZGVub21pbmF0b3IgLSBEZWZhdWx0IHZhbHVlIHRvIHVzZSBhcyBkZW5vbWluYXRvciB3aGVuIGAkZnJhY3Rpb25gIHJlcHJlc2VudHMgYW4gYWJzb2x1dGUgdmFsdWUuXG5AZnVuY3Rpb24gZnJhY3Rpb24tdG8tcGVyY2VudGFnZShcbiAgJGZyYWN0aW9uLFxuICAkZGVub21pbmF0b3I6IG51bGxcbikge1xuICAkcGFyc2VkOiB6Zi1wYXJzZS1mcmFjdGlvbigkZnJhY3Rpb24pO1xuICAkcGFyc2VkLW5vbWluYXRvcjogbnRoKCRwYXJzZWQsIDEpO1xuICAkcGFyc2VkLWRlbm9taW5hdG9yOiBudGgoJHBhcnNlZCwgMik7XG5cbiAgQGlmICRwYXJzZWQtbm9taW5hdG9yID09IG51bGwge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcImZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoKVwiLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cbiAgQGlmICRwYXJzZWQtZGVub21pbmF0b3IgPT0gbnVsbCB7XG4gICAgQGlmIHR5cGUtb2YoJGRlbm9taW5hdG9yKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkcGFyc2VkLWRlbm9taW5hdG9yOiAkZGVub21pbmF0b3I7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciAnRXJyb3Igd2l0aCBcImZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoKVwiLiBBIGRlZmF1bHQgXCIkZGVub21pbmF0b3JcIiBpcyByZXF1aXJlZCB0byBzdXBwb3J0IGFic29sdXRlIHZhbHVlcyc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBwZXJjZW50YWdlKCRwYXJzZWQtbm9taW5hdG9yIC8gJHBhcnNlZC1kZW5vbWluYXRvcik7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgY29ycmVjdGx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwsICRvdXRwdXQpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgdG8gb2Zmc2V0IGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfSBUaGUgY2VsbCBvZmZzZXQgcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkc2l6ZTogeHktY2VsbC1zaXplKCRuKTtcblxuICAkb2Zmc2V0OiAkc2l6ZTtcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSAvIDIpO1xuICAgICRvZmZzZXQ6IGlmKCRndXR0ZXIgPT0gMCwgJHNpemUsIGNhbGMoI3skc2l6ZX0gKyAjeyRndXR0ZXJ9KSk7XG4gIH1cbiAgQHJldHVybiAkb2Zmc2V0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuIElmIGEgbGlzdCBpcyBnaXZlbiwgbWVkaWEtcXVlcmllcyB3aWxsIGJlIGdlbmVyYXRlZC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICRuLFxuICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAkYnJlYWtwb2ludDogbnVsbCxcbiAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRkZWZhdWx0OiAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCwgJ3RvcCcsICRnbG9iYWwtbGVmdCk7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbigkYnJlYWtwb2ludCwgJG1lZGlhLXF1ZXJpZXM6ICdmb3ItbGlzdHMnKSB7XG4gICAgJG9mZnNldDogeHktY2VsbC1vZmZzZXQoJG4sICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUpO1xuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRvZmZzZXR9O1xuICB9XG59XG4iLCIvLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgIGhlaWdodDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgd2lkdGg6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTW9kaWZpZXMgYSBjZWxsIHRvIGdpdmUgaXQgXCJibG9ja1wiIGJlaGF2aW9yIChvdmVyZmxvdyBhdXRvLCBpbmVydGlhbCBzY3JvbGxpbmcpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrKFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHByb3BlcnR5OiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgJ292ZXJmbG93LXknLCAnb3ZlcmZsb3cteCcpO1xuXG4gIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBJZ25vcmVkIGlmIG51bGwgKGRlZmF1bHQpXG4vLy8gQHR5cGUgRm9udC1XZWlnaHRcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgYnV0dG9ucywgdHJhbnNwYXJlbnQgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBmb250LXdlaWdodDogJGJ1dHRvbi1mb250LXdlaWdodDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgb3IgY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGluIGBidXR0b24tZmlsbC1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmaWxsIFskYnV0dG9uLWZpbGxdIC0gVHlwZSBvZiBmaWxsaW5nIGJldHdlZW4gYGhvbGxvd2AgYW5kIGBjbGVhcmAuIGBzb2xpZGAgaGFzIG5vIGVmZmVjdHMuXG5AbWl4aW4gYnV0dG9uLWZpbGwoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXI7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZXMgb2YgYSBzb2xpZC9ob2xsb3cvY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGlucyBgYnV0dG9uLXN0eWxlYCwgYGJ1dHRvbi1ob2xsb3ctc3R5bGVgIGFuZCBgYnV0dG9uLWNsZWFyLXN0eWxlYCBmb3IgZWZmZWN0cyBvZiB2aXN1YWwgc3R5bGluZyBwYXJhbWV0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gLVxuQG1peGluIGJ1dHRvbi1maWxsLXN0eWxlKFxuICAkZmlsbDogJGJ1dHRvbi1maWxsLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGZpbGwgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBjbGVhciB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWNsZWFyLXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgYW5kIGJvcmRlciBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJvcmRlci13aWR0aCBbJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXSAtIEJvcmRlciB3aWR0aCBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG5AbWl4aW4gYnV0dG9uLWNsZWFyIHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgY2xlYXIgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkaG92ZXItbGlnaHRuZXNzIFskYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3NdIC0gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyLlxuQG1peGluIGJ1dHRvbi1jbGVhci1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCBhbmQgcmVzZXRpbmcgdGhlIGN1cnNvci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9wYWNpdHkgWyRidXR0b24tb3BhY2l0eS1kaXNhYmxlZF0gLSBPcGFjaXR5IG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXG4pIHtcbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRzdHlsZSk7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRzdHlsZSwgJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbigkc3R5bGU6IG5vbmUpO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICBAaWYgJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkIHtcbiAgICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IG9ubHkpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LW9ubHktZXhwYW5kZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IGRvd24pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZG93bi1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSkge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29saWQsIGhvbGxvdyAmIGNsZWFyIHN0eWxlc1xuICAgIEBlYWNoICRmaWxsaW5nIGluIChzb2xpZCBob2xsb3cgY2xlYXIpIHtcbiAgICAgICRzZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnLiN7JGZpbGxpbmd9Jyk7XG5cbiAgICAgICYjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbCgkZmlsbGluZyk7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nKTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZywgJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3csICYuY2xlYXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvbi1ncm91cFxuLy8vL1xuXG4vLy8gTWFyZ2luIGZvciBidXR0b24gZ3JvdXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYnV0dG9ucyB0aGF0IGNhbiBiZSBpbiBhbiBldmVuLXdpZHRoIGJ1dHRvbiBncm91cC4gKE9ubHkgbmVlZGVkIHdoZW4gJGdsb2JhbC1mbGV4Ym94OiBmYWxzZTspXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERldGVybWluZXMgaWYgJGJ1dHRvbi1yYWRpdXMgaXMgYXBwbGllZCB0byBlYWNoIGJ1dHRvbiBvciB0aGUgYnV0dG9uIGdyb3VwIGFzIGEgd2hvbGUuIFVzZSAkZ2xvYmFsLXJhZGl1cyBpbiBfc2V0dGluZ3Muc2NzcyB0byBjaGFuZ2UgcmFkaXVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZCBzdHlsZXMgZm9yIGEgYnV0dG9uIGdyb3VwIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGNoaWxkLXNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNpbmcgWyRidXR0b25ncm91cC1zcGFjaW5nXSAtIFNwYWNpbmcgYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cChcbiAgJGNoaWxkLXNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZ1xuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtbWFyZ2luO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBEaXNhYmxlIGNsZWFyZml4XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1ha2UgYnV0dG9ucyBib25kZWQgd2l0aG91dCBnYXAgYmV0d2VlbiB0aGVtLiBCb3JkZXJzIGJldHdlZW4gYnV0dG9ucyBhcmUgbWVyZ2VkXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLW5vLWdhcHMoXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiByZW0tY2FsYygtJGJvcmRlci13aWR0aCk7XG5cbiAgICArICN7JHNlbGVjdG9yfSB7XG4gICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgLy8gRGlzYWJsZSBjbGVhcmZpeFxuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBPbmUgY2hpbGRcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVHdvIG9yIG1vcmUgY2hpbGRyZWVuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZSgxIC8gJGkpfSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nICogLSRidXR0b25ncm91cC1leHBhbmQtbWF4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuLXN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC11bnN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwIHtcbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIEdyb3VwXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNvbGlkLCBob2xsb3cgJiBjbGVhciBzdHlsZXNcbiAgICBAZWFjaCAkZmlsbGluZyBpbiAoc29saWQgaG9sbG93IGNsZWFyKSB7XG4gICAgICAkYmFzZS1zZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnLiN7JGZpbGxpbmd9Jyk7XG5cbiAgICAgICYjeyRiYXNlLXNlbGVjdG9yfSB7XG4gICAgICAgIC8vIERvIG5vdCBnZW5lcmF0ZSBidXR0b24gYmFzZSBzdHlsZXMgZm9yIHRoZSBkZWZhdWx0IGZpbGxpbmdcbiAgICAgICAgQGlmKCRidXR0b24tZmlsbCAhPSAkZmlsbGluZykge1xuICAgICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbCgkZmlsbGluZyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICRpbmRpdmlkdWFsLXNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9LiN7JG5hbWV9Jyk7XG5cbiAgICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSwgI3skaW5kaXZpZHVhbC1zZWxlY3Rvcn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcsICRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmLm5vLWdhcHMge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLW5vLWdhcHM7XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLFxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwsXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0YWNrO1xuXG4gICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNsb3NlLWJ1dHRvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLiBUaGUgZmlyc3QgdmFsdWUgc2hvdWxkIGJlIGByaWdodGAgb3IgYGxlZnRgLCBhbmQgdGhlIHNlY29uZCB2YWx1ZSBzaG91bGQgYmUgYHRvcGAgb3IgYGJvdHRvbWAuXG4vLy8gQHR5cGUgTGlzdFxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3AgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHotaW5kZXggZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLXotaW5kZXg6IDEwICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIHNpemUgdG8gdXNlIGFzIGRlZmF1bHRcbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1zaXplXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWxcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWxcbiRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemU6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gU2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLiBVc2VkIHRvIGdlbmVyYXRlIHNpemluZyBtb2RpZmllcnMuXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGluZS1oZWlnaHQgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gSXQgYWZmZWN0cyB0aGUgc3BhY2luZyBvZiB0aGUgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24gd2hlbiBiZWluZyBob3ZlcmVkIG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjayAhZGVmYXVsdDtcblxuXG4vLy8gR2V0IHRoZSBzaXplIGFuZCBwb3NpdGlvbiBmb3IgYSBjbG9zZSBidXR0b24uIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIG51bWJlciwgdGhlIG51bWJlciBpcyByZXR1cm5lZC4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgY29uZmlnIG1hcCBhbmQgdGhlIG1hcCBoYXMgdGhlIGtleSBgJHNpemVgLCB0aGUgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICR2YWx1ZSAtIEEgbnVtYmVyIG9yIG1hcCB0aGF0IHJlcHJlc2VudHMgdGhlIHNpemUgb3IgcG9zaXRpb24gdmFsdWUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gVGhlIHNpemUgb2YgdGhlIGNsb3NlIGJ1dHRvbiB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBnaXZlbiBudW1iZXIgb3IgdGhlIHZhbHVlIGZvdW5kIGluIHRoZSBtYXAuXG5AZnVuY3Rpb24gLXpmLWdldC1zaXplLXZhbCgkdmFsdWUsICRzaXplKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAvLyBJZiBpdCBpcywganVzdCByZXR1cm4gdGhlIG51bWJlclxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHNpemUgbmFtZSBleGlzdHMgaW4gdGhlIHZhbHVlIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkdmFsdWUsICRzaXplKSB7XG4gICAgLy8gSWYgaXQgZG9lcywgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkdmFsdWUsICRzaXplKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gb2YgYSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbbWVkaXVtXSAtIFRoZSBzaXplIHRvIHVzZS4gU2V0IHRvIGBzbWFsbGAgdG8gY3JlYXRlIGEgc21hbGwgY2xvc2UgYnV0dG9uLiBUaGUgJ21lZGl1bScgdmFsdWVzIGRlZmluZWQgaW4gYCRjbG9zZWJ1dHRvbi0qYCB2YXJpYWJsZXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHNpemUgYW5kIHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uXG5AbWl4aW4gY2xvc2UtYnV0dG9uLXNpemUoJHNpemUpIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgI3skeH06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsLCAkc2l6ZSk7XG4gICN7JHl9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWwsICRzaXplKTtcbiAgZm9udC1zaXplOiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1zaXplLCAkc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0LCAkc2l6ZSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjbG9zZSBidXR0b24sIHVzaW5nIHRoZSBzdHlsZXMgaW4gdGhlIHNldHRpbmdzIHZhcmlhYmxlcy5cbkBtaXhpbiBjbG9zZS1idXR0b24ge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJGNsb3NlYnV0dG9uLXotaW5kZXg7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcblxuICAgIC8vIEdlbmVyYXRlIGEgcGxhY2Vob2xkZXIgYW5kIGEgY2xhc3MgZm9yIGVhY2ggc2l6ZVxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkY2xvc2VidXR0b24tc2l6ZSB7XG4gICAgICBAYXQtcm9vdCB7XG4gICAgICAgICV6Zi1jbG9zZS1idXR0b24tLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZSgkbmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBleHRlbmQgJXpmLWNsb3NlLWJ1dHRvbi0tI3skbmFtZX07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVXNlIGJ5IGRlZmF1bHQgdGhlIHBsYWNlaG9sZGVyIG9mIHRoZSBkZWZhdWx0IHNpemVcbiAgICBAZXh0ZW5kICV6Zi1jbG9zZS1idXR0b24tLSN7JGNsb3NlYnV0dG9uLWRlZmF1bHQtc2l6ZX07XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3QgW2ZhbHNlXSAtIE5lZWRlZCBpZiB5b3Ugb25seSB3YW50IHRvIGFwcGx5IHRoaXMgdG8gYSBzcGVjaWZpYyB0YWJsZS5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWRjcnVtYnNcbi8vLy9cblxuLy8vIE1hcmdpbiBhcm91bmQgYSBicmVhZGNydW1icyBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgYWN0aXZlIGJyZWFkY3J1bWIgbGluay5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gT3BhY2l0eSBvZiBkaXNhYmxlZCBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJyZWFkY3J1bWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIG1ha2VzIGJyZWFkY3J1bWIgbGlua3MgdXBwZXJjYXNlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBhIHNlcGVyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBJZiBpdCBleGlzdHMgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2ggaXMgdXNlZCB0byBidWlsZCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3IuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCkge1xuICAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6ICRicmVhZGNydW1icy1pdGVtLXNsYXNoO1xufVxuXG4vLy8gVXNlZCBjaGFyYWN0ZXIgZm9yIHRoZSBicmVhZGNydW1iIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBDb250ZW50XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nICFkZWZhdWx0O1xuXG4vLy8gVXNlZCBjaGFyYWN0ZXIgZm9yIHRoZSBicmVhZGNydW1iIHNlcGFyYXRvciBpbiBydGwgbW9kZS5cbi8vLyBAdHlwZSBDb250ZW50XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJyAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvciBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3I7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBicmVhZGNydW1icyBjb250YWluZXIsIGFsb25nIHdpdGggdGhlIHN0eWxlcyBmb3IgdGhlIGA8bGk+YCBhbmQgYDxhPmAgZWxlbWVudHMgaW5zaWRlIG9mIGl0LlxuQG1peGluIGJyZWFkY3J1bWJzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRicmVhZGNydW1icy1tYXJnaW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLy8gSXRlbSB3cmFwcGVyXG4gIGxpIHtcbiAgICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3Ige1xuICAgICAgLy8gTmVlZCB0byBlc2NhcGUgdGhlIGJhY2tzbGFzaFxuICAgICAgJHNlcGFyYXRvcjogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAnbHRyJywgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0sICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bCk7XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luOiAwICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIGNvbnRlbnQ6ICRzZXBhcmF0b3I7XG4gICAgICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnJlYWRjcnVtYnMge1xuICAuYnJlYWRjcnVtYnMge1xuICAgIEBpbmNsdWRlIGJyZWFkY3J1bWJzLWNvbnRhaW5lcjtcblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhbGxvdXRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmYWRlIHZhbHVlIGZvciBjYWxsb3V0IGJhY2tncm91bmRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZSBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBDYWxsb3V0IHBhZGRpbmdzLlxuLy8vIEB0eXBlIE1hcFxuJGNhbGxvdXQtc2l6ZXM6IChcbiAgc21hbGw6IDAuNXJlbSxcbiAgZGVmYXVsdDogMXJlbSxcbiAgbGFyZ2U6IDNyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMsIGlmIHRoZSBjYWxsb3V0IGhhcyBhIGRhcmsgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQW1vdW50IHRvIHRpbnQgbGlua3MgdXNlZCB3aXRoaW4gY29sb3JlZCBwYW5lbHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlLlxuLy8vIEB0eXBlIE51bWJlciB8IEJvb2xlYW5cbiRjYWxsb3V0LWxpbmstdGludDogMzAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGEgY2FsbG91dCwgaW5jbHVkaW5nIHBhZGRpbmcgYW5kIG1hcmdpbi5cbkBtaXhpbiBjYWxsb3V0LWJhc2UoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkY2FsbG91dC1tYXJnaW47XG4gIHBhZGRpbmc6IG1hcC1nZXQoJGNhbGxvdXQtc2l6ZXMsIGRlZmF1bHQpO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gbWFwLXJlbW92ZSgkY2FsbG91dC1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgkcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FyZFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhcmRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNhcmQgc2hhZG93LlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbi5cbi8vLyBAdHlwZSBudW1iZXJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGZvbnQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gLSBCb3R0b20gbWFyZ2luIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGJvcmRlciAtIEJvcmRlciBhcm91bmQgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmFkaXVzIC0gYm9yZGVyIHJhZGl1cyBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGFkb3cgLSBib3ggc2hhZG93IG9mIHRoZSBjYXJkLlxuQG1peGluIGNhcmQtY29udGFpbmVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkY2FyZC1mb250LWNvbG9yLFxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW4tYm90dG9tLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBzZWN0aW9uLlxuQG1peGluIGNhcmQtc2VjdGlvbihcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYXJkIHtcbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xuICB9XG5cbiAgLmNhcmQtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xuICB9XG5cbiAgLmNhcmQtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgY2FyZC1zZWN0aW9uO1xuICB9XG5cbiAgLy8gRm9yIElFIDExIC0gRmxleGJ1Z1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzL2lzc3Vlcy83NVxuICAuY2FyZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd25cbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBkcm9wZG93biBwYW5lcy4gRWFjaCBzaXplIGlzIGEgQ1NTIGNsYXNzIHlvdSBjYW4gYXBwbHkuXG4vLy8gQHR5cGUgTWFwXG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEFwcGxpZXMgc3R5bGVzIGZvciBhIGJhc2ljIGRyb3Bkb3duLlxuQG1peGluIGRyb3Bkb3duLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGRyb3Bkb3duLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuXG5cbiAgLy8gQWxsb3cgYW4gaW50ZXJtaXR0ZW50IHN0YXRlIHRvIGRvIHBvc2l0aW9uaW5nIGJlZm9yZSBtYWtpbmcgdmlzaWJsZS5cbiAgJi5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYuaXMtb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIHBhZ2luYXRpb24gb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgbWFyZ2luIHRvIHNlcGFyYXRlIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzXG4vLy8gYW5kIG9wdGlvbmFsbHkgY3VycmVudCBwYWdlIG51bWJlci5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIG9uIG1vYmlsZSBldmVuIGlmIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgZmFsc2VgLlxuLy8vIFRoaXMgcGFyYW1ldGVyIHdpbGwgb25seSBvdmVycmlkZSB0aGUgdmlzaWJpbGl0eSBzZXR0aW5nIG9mIHRoZSBjdXJyZW50IGl0ZW0gZm9yIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO2AsXG4vLy8gaXQgd2lsbCBub3QgYWZmZWN0IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIHZpc2liaWxpdHkgd2hlbiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYHRydWVgLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhcnJvd3MgYXJlIGFkZGVkIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyBsaW5rcyBvZiBwYWdpbmF0aW9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwcmV2aW91cyBhcnJvdyB3aGVuIGAkcGFnaW5hdGlvbi1hcnJvd3NgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhZ2luYXRpb24tYXJyb3ctcHJldmlvdXM6ICdcXDAwQUInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG5leHQgYXJyb3cgd2hlbiBgJHBhZ2luYXRpb24tYXJyb3dzYCBpcyBgdHJ1ZWBcbi8vLyBAdHlwZSBTdHJpbmdcbiRwYWdpbmF0aW9uLWFycm93LW5leHQ6ICdcXDAwQkInICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIgKFxuICAkbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbSxcbiAgJGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplLFxuICAkc3BhY2luZzogJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nLFxuICAkcmFkaXVzOiAkcGFnaW5hdGlvbi1yYWRpdXMsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvcixcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcblxuICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmxhc3QtY2hpbGQsXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbSB7XG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgY3VycmVudCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCxcbiAgJGNvbG9yLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jdXJyZW50O1xuICBjb2xvcjogJGNvbG9yLWN1cnJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29sb3I6ICRjb2xvcjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGVsbGlwc2lzIGZvciB1c2UgaW4gYSBwYWdpbmF0aW9uIGxpc3QuXG5AbWl4aW4gcGFnaW5hdGlvbi1lbGxpcHNpcyAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3Jcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29udGVudDogJ1xcMjAyNic7XG4gIGNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXBhZ2luYXRpb24ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXI7XG5cbiAgICAuY3VycmVudCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudDtcbiAgICB9XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1lbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tYXJyb3dzIHtcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJHBhZ2luYXRpb24tYXJyb3ctcHJldmlvdXM7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbiAgICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAkcGFnaW5hdGlvbi1hcnJvdy1uZXh0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lZGlhLW9iamVjdFxuLy8vL1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIExlZnQgYW5kIHJpZ2h0IHBhZGRpbmcgb24gc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgaW1hZ2VzIHdpdGhpbiBhIG1lZGlhIG9iamVjdCwgd2hlbiB0aGUgb2JqZWN0IGlzIHN0YWNrZWQgdmVydGljYWxseS4gU2V0IHRvICdhdXRvJyB0byB1c2UgdGhlIGltYWdlJ3MgbmF0dXJhbCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbWVkaWEgb2JqZWN0IGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3QtY29udGFpbmVyIHtcbiAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCBibG9jayk7XG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0gJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICYubWlkZGxlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgJi5ib3R0b20ge1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHN0YWNrIHNlY3Rpb25zIG9mIGEgbWVkaWEgb2JqZWN0LiBBcHBseSB0aGlzIHRvIHRoZSBzZWN0aW9uIGVsZW1lbnRzLCBub3QgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAkbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZWRpYS1vYmplY3Qge1xuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3QtY29udGFpbmVyO1xuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJlc3BvbnNpdmUtZW1iZWRcbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gQXNwZWN0IHJhdGlvcyB1c2VkIHRvIGRldGVybWluZSBwYWRkaW5nLWJvdHRvbSBvZiByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lcnMuXG4vLy8gQHR5cGUgTWFwXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ3xMaXN0fSAkcmF0aW8gW2RlZmF1bHRdIC0gUmF0aW8gb2YgdGhlIGNvbnRhaW5lci4gQ2FuIGJlIGEga2V5IGZyb20gdGhlIGAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3NgIG1hcCBvciBhIGxpc3QgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuQG1peGluIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KSB7XG4gIEBpZiB0eXBlLW9mKCRyYXRpbykgPT0gJ3N0cmluZycge1xuICAgICRyYXRpbzogbWFwLWdldCgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsICRyYXRpbyk7XG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b207XG4gIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQge1xuICAucmVzcG9uc2l2ZS1lbWJlZCxcbiAgLmZsZXgtdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KTtcblxuICAgICRyYXRpb3M6IG1hcC1yZW1vdmUoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLGRlZmF1bHQpO1xuXG4gICAgQGVhY2ggJG5hbWUsICRyYXRpbyBpbiAkcmF0aW9zIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgdGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLi5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmUsICgkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZSwgJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlKSk7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuXG4gICAgLy8gRGVmYXVsdCBvcmllbnRhdGlvbjogaG9yaXpvbnRhbFxuICAgICYsICYuaG9yaXpvbnRhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBvcmllbnRhdGlvbiBtb2RpZmllclxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1pY29ucy1iYWNrLWNvbXBhdCB7XG4gICAgICAmLmljb24tdG9wLFxuICAgICAgJi5pY29uLXJpZ2h0LFxuICAgICAgJi5pY29uLWJvdHRvbSxcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJY29uIExlZnRcbiAgICAmLmljb24tbGVmdCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBSaWdodFxuICAgICYuaWNvbi1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24ocmlnaHQpO1xuICAgIH1cblxuICAgIC8vIEljb24gVG9wXG4gICAgJi5pY29uLXRvcCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24odG9wKTtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJvdHRvbVxuICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGJvdHRvbSk7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgfVxuICAgIFxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1zdGF0ZS1iYWNrLWNvbXBhdCB7XG4gICAgICAuYWN0aXZlID4gYSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGxlZnRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1sZWZ0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEFsaWduIHJpZ2h0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24ocmlnaHQpO1xuXG4gICAgICAubmVzdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJG5lc3RlZC1hbGlnbm1lbnQ6IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjZW50ZXJcbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLm1lbnUtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0IHtcbiAgICAubWVudS1jZW50ZXJlZCB7XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IEZPVUMgd2hlbiB1c2luZyB0aGUgUmVzcG9uc2l2ZSBNZW51IHBsdWdpblxuICAubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbWVudS1pY29uIHtcbiAgLm1lbnUtaWNvbiB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyKCRjb2xvcjogJHRpdGxlYmFyLWljb24tY29sb3IsICRjb2xvci1ob3ZlcjogJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXIpO1xuICB9XG5cbiAgLm1lbnUtaWNvbi5kYXJrIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXI7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uLW1lbnVcbi8vLy9cblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBhY2NvcmRpb24gbWVudXMgaGF2ZSB0aGUgZGVmYXVsdCBhcnJvdyBzdHlsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIGJvcmRlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBMaXN0XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgaGVpZ2h0LlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG59XG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudSB7XG5cbiAgLmFjY29yZGlvbi1tZW51IHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgIH1cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luLCByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGxpIHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gIH1cblxuICAvLyBTdWJtZW51IHRvZ2dsZVxuICAuc3VibWVudS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcblxuICAgIHdpZHRoOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyO1xuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIGFycm93IHRvIHRoZSB0b2dnbGVcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNnB4LCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG5cbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyBSb3RhdGUgdGhlIGFycm93IHdoZW4gbWVudSBpcyBvcGVuXG4gIC5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgfVxuXG4gIC5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duLW1lbnVcbi8vLy9cblxuLy8vIEVuYWJsZXMgYXJyb3dzIGZvciBpdGVtcyB3aXRoIGRyb3Bkb3duIG1lbnVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgcGFkZGluZyBmb3IgYWxpZ25pbmcgdGhlIGFycm93IGNvcnJlY3RseS5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyb3Bkb3ducy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3Igc3ViLW1lbnUgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciB3aWR0aCBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8gVXNlZCB0byBhZGp1c3QgdG9wIG1hcmdpbiBvZiBhIHN1Yi1tZW51IGlmIGEgYm9yZGVyIGlzIHVzZWQuXG4vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoOiBudGgoJGRyb3Bkb3dubWVudS1ib3JkZXIsIDEpO1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgPiBhOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMTRweDtcbiAgfVxuXG4gICYub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gIH1cblxuICAmLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgfVxufVxuXG5AbWl4aW4gZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICA+IGxpLm9wZW5zLWxlZnQgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkub3BlbnMtcmlnaHQgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nO1xuICAgICAgfVxuXG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICgkZHJvcGRvd25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbVxuICAgID4gbGkgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbSBhY3RpdmUgc3RhdGVcbiAgICA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmLm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZHJvcGRvd25tZW51LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDtcblxuICAgIC5kcm9wZG93biAmIGEge1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAodHlwZS1vZigkZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCkgPT0gJ251bWJlcicpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBbVE9ET10gQ3V0IGJhY2sgc3BlY2lmaWNpdHlcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbG9hdFxuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzIHtcbiAgLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLmNsZWFyZml4IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIEZsZXhib3ggVXRpbGl0aWVzXG4vLy8vXG4vL1xuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb3VudCBvZiBzb3VyY2Ugb3JkZXJpbmdgXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDYgIWRlZmF1bHQ7XG5cbi8vLyBRdWlja2x5IGRpc2FibGUvZW5hYmxlIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIFZhbmlsbGEgRmxleCBIZWxwZXJzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmbGV4LWhlbHBlcnMge1xuICAuZmxleC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgIC5mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tZmxleC1kaXItI3skZGlyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzIHtcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdXNpbmcganVzdGlmeS1jb250ZW50XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtanVzdGlmeSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IFNwZWNpZmljYWxseSBmb3IgVmVydGljYWwgTWVudVxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgJi5tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBhbGlnbm1lbnQgdXNpbmcgYWxpZ24taXRlbXMgYW5kIGFsaWduLXNlbGZcbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAvLyBDZW50cmFsIGFsaWdubWVudCBvZiBjb250ZW50XG4gIC5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiBtaWRkbGUpO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudCB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmFuaWxsYSBGbGV4Ym94IEhlbHBlcnNcbiAgQGluY2x1ZGUgZmxleC1oZWxwZXJzO1xufVxuIiwiQGZ1bmN0aW9uIC16Zi1mbGV4LWp1c3RpZnkoJHRleHQtZGlyZWN0aW9uKXtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gLjAwMTI1O1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEZvcm1hdCBmb3IgQ1NTIGNsYXNzZXMgY3JlYXRlZCB3aXRoIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gYXBwZW5kIFt0cnVlXSAtIERlZmluZXMgaWYgc2VsZWN0b3JzIGFyZSBjaGFpbmVkIHRvIHRoZSBzZWxlY3RvciAoYC5jbGFzcy5lbnRlcmApLCBvciBhcHBlbmRlZCBhcyBhIG5ldyBjbGFzcyAoYC5jbGFzcy1lbnRlcmApLlxuLy8vIEBwcm9wIHtTdHJpbmd9IHByZWZpeCBbJ211aS0nXSAtIFByZWZpeCB0byBhZGQgYmVmb3JlIHRoZSBzdGF0ZSBvZiBhIGNsYXNzLiBFbnRlciBhbiBlbXB0eSBzdHJpbmcgdG8gdXNlIG5vIHByZWZpeC5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWyctYWN0aXZlJ10gLSBTdWZmaXggdG8gYWRkIHRvIHRoZSBhY3RpdmUgc3RhdGUgY2xhc3MuXG4kbW90aW9uLXVpLWNsYXNzZXM6IChcbiAgY2hhaW46IHRydWUsXG4gIHByZWZpeDogJ211aS0nLFxuICBhY3RpdmU6ICctYWN0aXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0ZSBuYW1lcyB0byByZWZlcmVuY2Ugd2hlbiB3cml0aW5nIG1vdGlvbiBjbGFzc2VzLiBUbyB1c2UgbXVsdGlwbGUgY2xhc3MgbmFtZXMgZm9yIG9uZSBzdGF0ZSwgZW50ZXIgYSBsaXN0IG9mIHN0cmluZ3MgaW5zdGVhZCBvZiBvbmUgc3RyaW5nLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1zdGF0ZXM6IChcbiAgaW46ICdlbnRlcicsXG4gIG91dDogJ2xlYXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNwZWVkIHRoYXQgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnMgcGxheSBhdCwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBzcGVlZC5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3BlZWRzOiAoXG4gIGRlZmF1bHQ6IDUwMG1zLFxuICBzbG93OiA3NTBtcyxcbiAgZmFzdDogMjUwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkZWxheSB0byBhZGQgYmVmb3JlIG1vdGlvbiwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBkZWxheS5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZGVsYXlzOiAoXG4gIGRlZmF1bHQ6IDAsXG4gIHNob3J0OiAzMDBtcyxcbiAgbG9uZzogNzAwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBlYXNpbmcgZm9yIHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zLCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIGVhc2luZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZWFzaW5nczogKFxuICBkZWZhdWx0OiBsaW5lYXIsXG4gIGxpbmVhcjogbGluZWFyLFxuICBlYXNlOiBlYXNlLFxuICBlYXNlLWluOiBlYXNlLWluLFxuICBlYXNlLW91dDogZWFzZS1vdXQsXG4gIGVhc2UtaW4tb3V0OiBlYXNlLWluLW91dCxcbiAgYm91bmNlLWluOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSksXG4gIGJvdW5jZS1vdXQ6IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSksXG4gIGJvdW5jZS1pbi1vdXQ6IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBNaXNjZWxsYW5lb3VzIHNldHRpbmdzIHJlbGF0ZWQgdG8gTW90aW9uIFVJLlxuLy8vIEB0eXBlIE1hcFxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbZmFsc2VdIC0gRGVmaW5lcyBpZiBzbGlkZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIGhpbmdlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc2NhbGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBzcGluIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4kbW90aW9uLXVpLXNldHRpbmdzOiAoXG4gIHNsaWRlLWFuZC1mYWRlOiBmYWxzZSxcbiAgaGluZ2UtYW5kLWZhZGU6IHRydWUsXG4gIHNjYWxlLWFuZC1mYWRlOiB0cnVlLFxuICBzcGluLWFuZC1mYWRlOiB0cnVlLFxuICBwYXVzZS1xdWV1ZS1jbGFzczogJ2lzLXBhdXNlZCcsXG4gIGFjdGl2YXRlLXF1ZXVlLWNsYXNzOiAnaXMtYW5pbWF0aW5nJyxcbikgIWRlZmF1bHQ7XG4iLCIvLyBJbnRlcm5hbCBjb3VudGVyIGZvciBjcmVhdGluZyB1bmlxdWUga2V5ZnJhbWUgbmFtZXNcbiQtbXVpLWN1c3RvbTogMDtcblxuLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMuIFVzZSB0aGlzIGZ1bmN0aW9uIGluc3RlYWQgb2YgYG11aS1hbmltYXRpb25gIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIGtleWZyYW1lIGFuaW1hdGlvbiAqd2l0aG91dCogYXV0b21hdGljYWxseSBhc3NpZ25pbmcgaXQgdG8gdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUga2V5ZnJhbWUuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWtleWZyYW1lcygkbmFtZSwgJGVmZmVjdHMuLi4pIHtcbiAgJG9iajogLW11aS1wcm9jZXNzLWFyZ3MoJGVmZmVjdHMuLi4pO1xuICAkb2JqOiBtYXAtcmVtb3ZlKCRvYmosIG5hbWUpO1xuXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIC8vIE5vdyBpdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgQGVhY2ggJHBjdCwgJHByb3BzIGluICRvYmoge1xuICAgICAgI3stbXVpLWtleWZyYW1lLXBjdCgkcGN0KX0ge1xuICAgICAgICAvLyBMYXN0bHksIGl0ZXJhdGUgdGhyb3VnaCBlYWNoIENTUyBwcm9wZXJ0eSB3aXRoaW4gYSBwZXJjZW50YWdlIGFuZCBwcmludCBpdCBvdXRcbiAgICAgICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkcHJvcHMge1xuICAgICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzdHJpbmcgZm9yIGEgQ1NTIGtleWZyYW1lLCBieSBjb252ZXJ0aW5nIGEgbGlzdCBvZiBudW1iZXJzIHRvIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGlucHV0IC0gTGlzdCBvZiBudW1iZXJzIHRvIHVzZS5cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IEEgc2V0IG9mIGNvbW1hLXNlcGFyYXRlZCBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXBjdCgkaW5wdXQpIHtcbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbnVtYmVyJyB7XG4gICAgJG91dHB1dDogKCRpbnB1dCAqIDElKTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ2xpc3QnIHtcbiAgICBAZWFjaCAkaSBpbiAkaW5wdXQge1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICgkaSAqIDElKSwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gXCIjeyRvdXRwdXR9XCI7XG59XG5cbi8vLyBQcmludHMgdGhlIENTUyBwcm9wZXJ0aWVzIGZyb20gYSBzcGVjaWZpYyBrZXkgaW4gYSBrZXlmcmFtZXMgbWFwLiBVc2VkIHRvIGJvcnJvdyBDU1MgZnJvbSBrZXlmcmFtZSBmdW5jdGlvbnMgZm9yIHVzZSBpbiB0cmFuc2l0aW9ucy5cbi8vLyBAcGFyYW0ge01hcH0gJGtmIC0gS2V5ZnJhbWUgbWFwIHRvIGV4dHJhY3QgZnJvbS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGtleSAtIEtleSBpbiB0aGUgbWFwIHRvIHByaW50IHRoZSBDU1Mgb2YuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLW11aS1rZXlmcmFtZS1nZXQoJGtmLCAka2V5KSB7XG4gICRtYXA6IG1hcC1nZXQoJGtmLCAka2V5KTtcblxuICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRtYXAgb3IgKCkge1xuICAgIC8vIFNvbWUga2V5ZnJhbWUgbWFwcyBzdG9yZSB0cmFuc2Zvcm1zIGFzIHF1b3RlZCBzdHJpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkdmFsdWU6IHVucXVvdGUoJHZhbHVlKTtcbiAgICB9XG4gICAgI3skcHJvcH06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gUmVmb3JtYXRzIGEgbWFwIGNvbnRhaW5pbmcga2V5cyB3aXRoIGEgbGlzdCBvZiB2YWx1ZXMsIHNvIHRoYXQgZWFjaCBrZXkgaXMgYSBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc3BsaXQgdXAuXG4vLy8gQHJldHVybiB7TWFwfSBBIHJlZm9ybWF0dGVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIFNwbGl0IGtleXMgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgaW50byBpbmRpdmlkdWFsIGtleXNcbiAgQGVhY2ggJGtleSwgJGl0ZW0gaW4gJG1hcCB7XG4gICAgJGtleS10eXBlOiB0eXBlLW9mKCRrZXkpO1xuXG4gICAgQGlmICRrZXktdHlwZSA9PSAnbnVtYmVyJyB7XG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJGl0ZW0pKTtcbiAgICB9IEBlbHNlIGlmICRrZXktdHlwZSA9PSAnbGlzdCcge1xuICAgICAgQGVhY2ggJGsgaW4gJGtleSB7XG4gICAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgkazogJGl0ZW0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgYSBzZXJpZXMgb2Yga2V5ZnJhbWUgb2JqZWN0cyBpbnRvIG9uZS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiAtbXVpLWlzLWZ1bmN0aW9uKCRtYXApIHtcbiAgICAgICRtYXA6IC1tdWktc2FmZS1jYWxsKCRtYXApO1xuICAgIH1cblxuICAgICRtYXA6IC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCk7XG5cbiAgICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBpbiB0aGUgbWFwXG4gICAgLy8gJGtleSBpcyB0aGUga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIC8vICR2YWx1ZSBpcyBhIG1hcCBvZiBDU1MgcHJvcGVydGllc1xuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAgICRuZXctdmFsdWU6ICgpO1xuXG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJG5ldy1tYXAsICRrZXkpIHtcbiAgICAgICAgLy8gSWYgdGhlIG1hcCBhbHJlYWR5IGhhcyB0aGUga2V5ZnJhbWUgJSwgYXBwZW5kIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogLW11aS1tZXJnZS1wcm9wZXJ0aWVzKG1hcC1nZXQoJG5ldy1tYXAsICRrZXkpLCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIE90aGVyd2lzZSwgY3JlYXRlIGEgbmV3IG1hcCB3aXRoIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGaW5hbGx5LCBtZXJnZSB0aGUgbW9kaWZpZWQga2V5ZnJhbWUgdmFsdWUgaW50byB0aGUgb3V0cHV0IG1hcFxuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRuZXctdmFsdWUpKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWtlIGEgbmFtZSBmb3IgdGhlIGtleWZyYW1lc1xuICAkLW11aS1jdXN0b206ICQtbXVpLWN1c3RvbSArIDEgIWdsb2JhbDtcbiAgJG1hcC1uYW1lOiAobmFtZTogJ2N1c3RvbS0jeyQtbXVpLWN1c3RvbX0nKTtcbiAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgJG1hcC1uYW1lKTtcblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgdHdvIG1hcHMgb2YgQ1NTIHByb3BlcnRpZXMgaW50byBvbmUgbWFwLiBJZiBib3RoIG1hcHMgaGF2ZSBhIHRyYW5zZm9ybSBwcm9wZXJ0eSwgdGhlIHZhbHVlcyBmcm9tIGVhY2ggd2lsbCBiZSBjb21iaW5lZCBpbnRvIG9uZSBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge01hcH0gJG9uZSAtIEZpcnN0IG1hcCB0byBtZXJnZS5cbi8vLyBAcGFyYW0ge01hcH0gJHR3byAtIFNlY29uZCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLW1lcmdlLXByb3BlcnRpZXMoJG9uZSwgJHR3bykge1xuICBAaWYgbWFwLWhhcy1rZXkoJG9uZSwgdHJhbnNmb3JtKSBhbmQgbWFwLWhhcy1rZXkoJHR3bywgdHJhbnNmb3JtKSB7XG4gICAgJHRyYW5zZm9ybTogam9pbihtYXAtZ2V0KCRvbmUsIHRyYW5zZm9ybSksIG1hcC1nZXQoJHR3bywgdHJhbnNmb3JtKSk7XG4gICAgJG9uZTogbWFwLW1lcmdlKCRvbmUsICh0cmFuc2Zvcm06ICR0cmFuc2Zvcm0pKTtcbiAgICAkdHdvOiBtYXAtcmVtb3ZlKCR0d28sIHRyYW5zZm9ybSk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkb25lLCAkdHdvKTtcbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2xpZGluZyB0cmFuc2l0aW9uIGJ5IHRyYW5zbGF0aW5nIHRoZSBlbGVtZW50IGhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc2xpZGUgdG8uIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC4gQnkgZGVmYXVsdCBgbGVmdGAgYW5kIGByaWdodGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRhbW91bnQgWzEwMCVdIC0gTGVuZ3RoIG9mIHRoZSBzbGlkZSBhcyBhIHBlcmNlbnRhZ2UgdmFsdWUuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc2xpZGUgKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBudWxsLFxuICAkYW1vdW50OiAxMDAlLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzbGlkZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiAhPSBudWxsLCAkZGlyZWN0aW9uLCBpZigkc3RhdGUgPT0gaW4sIGxlZnQsIHJpZ2h0KSk7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gW251bGxdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBPcGFjaXR5IHRvIGVuZCBvbi4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmcm9tOiBpZigkZnJvbSAhPSBudWxsLCAkZnJvbSwgaWYoJHN0YXRlID09IGluLCAwLCAxKSk7XG4gICR0bzogaWYoJHRvICE9IG51bGwsICR0bywgaWYoJHN0YXRlID09IGluLCAxLCAwKSk7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSBlZmZlY3QgYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW251bGxdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC4gQnkgZGVmYXVsdCBgZnJvbS1iYWNrYCBhbmQgYGZyb20tZnJvbnRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuQGZ1bmN0aW9uIGhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBudWxsXG4pIHtcbiAgLy8gUm90YXRpb24gZGlyZWN0aW9ucyB3aGVuIGhpbmdpbmcgZnJvbSBiYWNrIHZzLiBmcm9udFxuICAkcm90YXRpb24tYW1vdW50OiA5MGRlZztcbiAgJHJvdGF0aW9ucy1iYWNrOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgKTtcbiAgJHJvdGF0aW9ucy1mcm9tOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgKTtcblxuICAvLyBSb3RhdGlvbiBvcmlnaW5cbiAgJHR1cm4tb3JpZ2luOiBpZigkdHVybi1vcmlnaW4gIT0gbnVsbCwgJHR1cm4tb3JpZ2luLCBpZigkc3RhdGUgPT0gaW4sIGZyb20tYmFjaywgZnJvbS1mcm9udCkpO1xuICAkcm90YXRpb246ICcnO1xuICBAaWYgJHR1cm4tb3JpZ2luID09IGZyb20tZnJvbnQge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWZyb20sICRmcm9tKTtcbiAgfSBAZWxzZSBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1iYWNrIHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1iYWNrLCAkZnJvbSk7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICckdHVybi1vcmlnaW4gbXVzdCBiZSBlaXRoZXIgXCJmcm9tLWJhY2tcIiBvciBcImZyb20tZnJvbnRcIic7XG4gIH1cblxuICAvLyBTdGFydCBhbmQgZW5kIHN0YXRlXG4gICRzdGFydDogJyc7XG4gICRlbmQ6ICcnO1xuICBAaWYgJHN0YXRlID09IGluIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICB9IEBlbHNlIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICB9XG5cbiAgLy8gVHVybiBheGlzXG4gICRvcmlnaW46ICcnO1xuICBAaWYgJGF4aXMgPT0gZWRnZSB7XG4gICAgJG9yaWdpbjogJGZyb207XG4gIH0gQGVsc2Uge1xuICAgICRvcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gICRrZXlmcmFtZXM6IChcbiAgICBuYW1lOiAtbXVpLXN0cmluZy1zYWZlKCdoaW5nZS0jeyRzdGF0ZX0tI3skZnJvbX0tI3skYXhpc30tI3skdHVybi1vcmlnaW59JyksXG4gICAgMDogKHRyYW5zZm9ybTogJHN0YXJ0LCB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luKSxcbiAgICAxMDA6ICh0cmFuc2Zvcm06ICRlbmQpLFxuICApO1xuXG4gIEByZXR1cm4gJGtleWZyYW1lcztcbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbbnVsbF0gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLiBCeSBkZWZhdWx0IGBmcm9tLWJhY2tgIGFuZCBgZnJvbS1mcm9udGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1oaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogbnVsbCxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICR0dXJuLW9yaWdpbjogaWYoJHR1cm4tb3JpZ2luICE9IG51bGwsICR0dXJuLW9yaWdpbiwgaWYoJHN0YXRlID09IGluLCBmcm9tLWJhY2ssIGZyb20tZnJvbnQpKTtcbiAgJGhpbmdlOiBoaW5nZSgkc3RhdGUsICRmcm9tLCAkYXhpcywgJHBlcnNwZWN0aXZlLCAkdHVybi1vcmlnaW4pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2NhbGluZyB0cmFuc2l0aW9uLiBBIHNjYWxlIG9mIGAxYCBtZWFucyB0aGUgZWxlbWVudCBpcyB0aGUgc2FtZSBzaXplLiBMYXJnZXIgbnVtYmVycyBtYWtlIHRoZSBlbGVtZW50IGJpZ2dlciwgd2hpbGUgbnVtYmVycyBsZXNzIHRoYW4gMSBtYWtlIHRoZSBlbGVtZW50IHNtYWxsZXIuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIFNpemUgdG8gc3RhcnQgYXQuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBTaXplIHRvIGVuZCBhdC4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBudWxsLFxuICAkdG86IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNjYWxlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkc2NhbGU6IHpvb20oJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzcGlubmluZyB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LiBUaGUgYHR1cm5gIHVuaXQgaXMgdXNlZCB0byBzcGVjaWZ5IGhvdyBmYXIgdG8gcm90YXRlLiBgMXR1cm5gIGlzIGVxdWFsIHRvIGEgMzYwLWRlZ3JlZSBzcGluLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLiBCeSBkZWZhdWx0IGBjd2AgYW5kIGBjY3dgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBjdywgY2N3KSk7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xufVxuIiwiLypcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy9cbi8vIE1peGluc1xuLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuKi9cblxuLypcbkN1c3RvbSBtaXhpbnNcbiovXG5cbi8vIHJvdW5kZWQgY29ybmVyc1xuXG5AbWl4aW4gcm91bmRlZCgkcmFkaXVzOiAwLjVlbSkge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXMgIWltcG9ydGFudDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAkcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbi8vIHdyYXAgdGV4dFxuXG5AbWl4aW4gd29yZC13cmFwKCkge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC1tcy13b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIC8vIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIC1tcy1oeXBoZW5zOiBhdXRvO1xuICAtbW96LWh5cGhlbnM6IGF1dG87XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbn1cblxuLy8gYWRkIGVsbGlwc2lzIHRvIHRydW5jYXRlIGxvbmcgbGluZSBvZiB0ZXh0XG5cbkBtaXhpbiBlbGxpcHNpcygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbkBtaXhpbiBib3gtc2hhZG93KCR0b3AsICRsZWZ0LCAkYmx1ciwgJGNvbG9yLCAkaW5zZXQ6IGZhbHNlKSB7XG4gIEBpZiAkaW5zZXQge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzppbnNldCAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICAtbW96LWJveC1zaGFkb3c6aW5zZXQgJHRvcCAkbGVmdCAkYmx1ciAkY29sb3I7XG4gICAgYm94LXNoYWRvdzppbnNldCAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgfSBAZWxzZSB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICAtbW96LWJveC1zaGFkb3c6ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICB9XG59XG5cbi8qXG5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+XG5NaXhpbnNcbn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5cbiovXG5cbkBtaXhpbiBkZWZhdWx0LXRyYW5zaXRpb24ge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLW91dDtcbn1cblxuQG1peGluIGRlZmF1bHQtYm94LXNoYWRvdygpIHtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDJweCAjODg4O1xufVxuXG5AbWl4aW4gZGVmYXVsdC10ZXh0LXNoYWRvdygkc2hhZG93LWNvbG9yKSB7XG4gICAgdGV4dC1zaGFkb3c6IDAgMXB4IDJweCBkYXJrZW4oJHNoYWRvdy1jb2xvciwgMTAlKTtcbn1cblxuQG1peGluIGJ0bigkYnRuLWNvbG9yKSB7XG4gICAgQGluY2x1ZGUgZGVmYXVsdC10cmFuc2l0aW9uKCk7XG4gICAgYmFja2dyb3VuZDogJGJ0bi1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1yYWRpdXM7IC8vYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGRhcmtlbigkYnRuLWNvbG9yLCA1JSk7XG4gICAgLy9ib3JkZXItdG9wOiAycHggc29saWQgJGJ0bi1jb2xvcjtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtc2hhZG93OiAwIDFweCAxcHggZGFya2VuKCRidG4tY29sb3IsIDUlKTtcbiAgICBtYXJnaW46IDVweCAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgZGVmYXVsdC10cmFuc2l0aW9uKCk7XG4gICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkYnRuLWNvbG9yLCA1JSk7IC8vYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGxpZ2h0ZW4oJGJ0bi1jb2xvciwgMiUpO1xuICAgICAgICAvL2JvcmRlci10b3A6IDJweCBzb2xpZCBsaWdodGVuKCRidG4tY29sb3IsIDclKTtcbiAgICB9XG59XG5cbkBtaXhpbiBzcGVjaWFsLWxpbmstc3R5bGUoJHNwZWNpYWwtbGluay1jb2xvcikge1xuICAgIGNvbG9yOiAkc3BlY2lhbC1saW5rLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc3BlY2lhbC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc3BlY2lhbC1saW5rLWNvbG9yO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxufVxuXG5AbWl4aW4gaW1nLWVmZmVjdCB7XG4gICAgYm9yZGVyOiAwcHggc29saWQgZ2V0X2NvbG9yKGdyYXkpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtcmFkaXVzO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG4iLCIvKlxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vL1xuLy8gVXRpbGl0eSBzdHlsZXMgdGhhdCBtYXkgY29tZSBpbiB1c2VmdWxcbi8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiovXG5cbi8vIGJhY2tncm91bmQgY29sb3JzXG5cbi8qICBUeXBlIGhlbHBlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvLy8gKi9cblxuLy8gZm9udCBzaXplXG5cbkBmb3IgJGkgZnJvbSA1IHRocm91Z2ggNTAge1xuLmZzI3skaX0ge1xuICBmb250LXNpemU6ICRpICsgcHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiByZW0tY2FsYygkaSkgIWltcG9ydGFudDtcbn1cbn1cblxuLy8gZm9udCB3ZWlnaHRcblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcbi5mdyN7JGkqMTAwfSB7XG4gIGZvbnQtd2VpZ2h0OiAkaSAqIDEwMCAhaW1wb3J0YW50O1xufVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIG1hcmdpbnNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyByZW1vdmUgYWxsIG1hcmdpbiBhbmQgcGFkZGluZyBmcm9tIGVsZW1lbnRcbi5yZW1vdmUtcGFkZGluZyB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnJlbW92ZS1tYXJnaW4ge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLy8gbWFyZ2luIHJpZ2h0XG5cbkBmb3IgJGkgZnJvbSAwIHRocm91Z2ggNTAge1xuLm1yLSN7JGl9IHtcbiAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygkaSkgIWltcG9ydGFudDtcbn1cbn1cblxuLy8gbWFyZ2luIGxlZnRcblxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCA1MCB7XG4ubWwtI3skaX0ge1xuICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoJGkpICFpbXBvcnRhbnQ7XG59XG59XG5cbi8vIG1hcmdpbiB1cFxuXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoIDUwIHtcbi5tdC0jeyRpfSB7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKCRpKSAhaW1wb3J0YW50O1xufVxufVxuXG4vLyBtYXJnaW4gZG93blxuXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoIDUwIHtcbi5tYi0jeyRpfSB7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRpKSAhaW1wb3J0YW50O1xufVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHBhZGRpbmdcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBwYWRkaW5nIHJpZ2h0XG5cbkBmb3IgJGkgZnJvbSAwIHRocm91Z2ggMzAge1xuLnByLSN7JGl9IHtcbiAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoJGkpICFpbXBvcnRhbnQ7XG59XG59XG5cbi8vIHBhZGRpbmcgbGVmdFxuXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoIDMwIHtcbi5wbC0jeyRpfSB7XG4gIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoJGkpICFpbXBvcnRhbnQ7XG59XG59XG5cbi8vIHBhZGRpbmcgdG9wXG5cbkBmb3IgJGkgZnJvbSAwIHRocm91Z2ggMzAge1xuLnB0LSN7JGl9IHtcbiAgcGFkZGluZy10b3A6IHJlbS1jYWxjKCRpKSAhaW1wb3J0YW50O1xufVxufVxuXG4vLyBwYWRkaW5nIGJvdHRvbVxuXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoIDMwIHtcbi5wYi0jeyRpfSB7XG4gIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygkaSkgIWltcG9ydGFudDtcbn1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBuZWdhdGl2ZSBtYXJnaW5zXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8gc2hpZnQgcmlnaHRcblxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxNTAge1xuLnNoaWZ0LXJpZ2h0LSN7JGl9IHtcbiAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtJGkpICFpbXBvcnRhbnQ7XG59XG59XG5cbi8vIHNoaWZ0IGxlZnRcblxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxNTAge1xuLnNoaWZ0LWxlZnQtI3skaX0ge1xuICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLSRpKSAhaW1wb3J0YW50O1xufVxufVxuXG4vLyBzaGlmdCB1cFxuXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoIDE1MCB7XG4uc2hpZnQtdXAtI3skaX0ge1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygtJGkpICFpbXBvcnRhbnQ7XG59XG59XG5cbi8vIHNoaWZ0IGRvd25cblxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxNTAge1xuLnNoaWZ0LWRvd24tI3skaX0ge1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygtJGkpICFpbXBvcnRhbnQ7XG59XG59XG5cbi8vIHNoaWZ0IHVwIC0gbW9iaWxlIG9ubHlcblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxNTAge1xuXG4gIC5zaGlmdC11cC1waG9uZS0jeyRpfSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtJGkpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC5zaGlmdC11cC1waG9uZS0jeyRpfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogaW5oZXJpdDtcbiAgICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC5zaGlmdC11cC1waG9uZS0jeyRpfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogaW5oZXJpdDtcbiAgICAgIH1cbiAgfVxufVxuXG4vLyB3aWR0aCBpbiBwZXJjZW50YWdlXG5cbkBmb3IgJGkgZnJvbSAwIHRocm91Z2ggMTAwIHtcbi53aWR0aC0jeyRpfSB7XG4gIHdpZHRoOiAjeyRpfSUgIWltcG9ydGFudDtcbn1cbn1cblxuLy8gQ2FuIGJlIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCB3aWR0aC14IHRvIGNlbnRyZSBhIGNvbnRhaW5lclxuXG4uYXV0by1jZW50ZXIge1xubWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8vIFRvcCBhbmQgYm90dG9tIGJvcmRlcnMuIFRoaXMgY2FuIGVhc2lseSBiZSBleHRlbmRlZCB0byBpbmNsdWRlIHZhcmlhYmxlIHdpZHRocy5cblxuQGVhY2ggJGhlYWRlciwgJGhlaWdodCBpbiAodG9wOiAxcHgsIGJvdHRvbTogMXB4KSB7XG4uYnJkLSN7JGhlYWRlcn0ge1xuICBib3JkZXItI3skaGVhZGVyfTogc29saWQgJGhlaWdodCBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG1lZGl1bS1ncmF5KTtcbn1cbn1cblxuLy8gbGluZSBoZWlnaHRcblxuQGVhY2ggJGhlYWRlciwgJGhlaWdodCBpbiAobGhsLTA6IDFlbSwgbGhsLTE6IDEuMWVtLCBsaGwtMjogMS4yZW0sIGxobC0zOiAxLjNlbSwgbGhsLTQ6IDEuNGVtLCBsaGwtNTogMS41ZW0sIGxobC02OiAxLjZlbSwgbGhsLTc6IDEuN2VtLCBsaGwtODogMS44ZW0sIGxobC05OiAxLjllbSwgbGhsLTEwOiAyZW0pIHtcbi4jeyRoZWFkZXJ9IHtcbiAgbGluZS1oZWlnaHQ6ICRoZWlnaHQ7XG59XG59XG5cbi8vIGNhcGl0YWxpemUsIGxvd2VyY2FzZSwgZW0gc21hbGxjYXBzLi4uXG5cbmVtLFxuLml0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50O1xufVxuXG4udXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG59XG5cbi5jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cblxuLnNtYWxsY2FwcyB7XG4gIGZvbnQtdmFyaWFudDogc21hbGwtY2Fwcztcbn1cblxuLm5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLmJvbGQge1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xufVxuXG4uYm9sZGVyIHtcbiAgZm9udC13ZWlnaHQ6IDkwMCAhaW1wb3J0YW50O1xufVxuXG4udW5kZXJsaW5lLFxuLnVuZGVybGluZS1saW5rcyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5uby1pbmRlbnQge1xubWFyZ2luLWxlZnQ6IDA7XG5wYWRkaW5nLWxlZnQ6IDA7XG59XG5cblxuLy8gcHJldmVudCBpbWFnZSByZXNpemluZ1xuXG5pbWcubm8tcmVzaXplIHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIHByZXZlbnQgYm9yZGVyIGFyb3VuZCBpbWFnZXNcblxuaW1nLm5vLWJvcmRlciB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyBhZGQgYm9yZGVyIGFyb3VuZCBpbWFnZXNcblxuaW1nLmhhcy1ib3JkZXIge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCwgcmVtLWNhbGMoMCksIHJlbS1jYWxjKDUpLCBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGRhcmstZ3JheSkpO1xuICAgIHBhZGRpbmc6IDAuM2VtICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3aGl0ZSkgIWltcG9ydGFudDtcbn1cblxuLy8gYWRkIHJvdW5kZWQgY29ybmVyc1xuXG4ucm91bmRlZCB7XG4gIEBpbmNsdWRlIHJvdW5kZWQocmVtLWNhbGMoNSkpO1xufVxuXG4vLyBHZW5lcmljIHplYnJhIHN0cmlwcGluZ1xuXG4ub2RkIHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBsaWdodC1ncmF5KTtcbn1cblxuLmV2ZW4ge1xuICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdoaXRlKTtcbn1cblxuLmlubGluZSB7XG5kaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5jb21taXR0ZWUtdG9wbWFyZ2luLXNwYWNlciB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbn1cbiIsIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBOZW9ncm90ZXNrRXNzQWx0LVJlZ3VsYXI7XG4gICAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL25lb2dyb3Rlc2tlc3NhbHQtcmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IE5lb2dyb3Rlc2tFc3NBbHQtTGlnaHQ7XG4gICAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL25lb2dyb3Rlc2tlc3NhbHQtbGlnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBOZW9ncm90ZXNrRXNzQWx0LUxpZ2h0SXQ7XG4gICAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL25lb2dyb3Rlc2tlc3NhbHQtbGlnaHRpdC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFJhdGlvbmVsbC1FeHRyYUJvbGQ7XG4gICAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL1JhdGlvbmVsbC1FeHRyYUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBSYXRpb25lbGwtYm9vaztcbiAgICBzcmM6IHVybChcIi9hc3NldHMvZm9udHMvUmF0aW9uZWxsLUJvb2sud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG59XG5cbnAsXG5zcGFuLFxubGkge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGZvbnQtZmFtaWx5OiBOZW9ncm90ZXNrRXNzQWx0LUxpZ2h0LCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbn1cblxuYSB7XG4gICAgY29sb3I6ICRjZmstcmVkLWZvci10ZXh0O1xuICAgIHRyYW5zaXRpb246IGFsbCAuNXMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGNmay1ibHVlO1xuICAgIH1cbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgICBjb2xvcjogJGNmay1yZWQ7XG4gICAgZm9udC1mYW1pbHk6IFJhdGlvbmVsbC1FeHRyYUJvbGQsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJGNmay1yZWQ7XG4gICAgfVxuXG59XG5cbmgyIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjNyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgfVxufVxuXG5cbmgzIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbn1cblxuLmhlYWRpbmcge1xuICAgICYtLXRoaW4ge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LWZhbWlseTogJGRpc3BsYXk7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ibHVlIHtcbiAgICAgICAgY29sb3I6ICRjZmstYmx1ZTtcbiAgICB9XG5cbiAgICAmLS1yZWQge1xuICAgICAgICBjb2xvcjogJGNmay1yZWQ7XG4gICAgfVxuXG4gICAgJi0teWVsbG93IHtcbiAgICAgICAgY29sb3I6ICRjZmsteWVsbG93O1xuICAgIH1cbn1cblxuLmhhcy1ib3JkZXIge1xuICAgICYtLXBlYWNoIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjZmstcGVhY2g7XG4gICAgfVxuXG4gICAgJi0tbGlnaHQtYmx1ZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY2ZrLWxpZ2h0LWJsdWU7XG4gICAgfVxuXG4gICAgJi0tcmVkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjZmstcmVkO1xuICAgIH1cbn1cblxuXG4uc2VjdGlvbi1saW5rIHtcbiAgICBmb250LWZhbWlseTogTmVvZ3JvdGVza0Vzc0FsdC1MaWdodEl0LCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgjZmZmLCAwKTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiDihpJcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIg4oaSXCI7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICYtLWJsdWUge1xuICAgICAgICBjb2xvcjogJGNmay1ibHVlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY2ZrLWJsdWU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYtLXdoaXRlIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuXG4gIH1cblxuICAgICYtLXBlYWNoIHtcbiAgICAgICAgY29sb3I6ICRjZmstcGVhY2g7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGNmay1wZWFjaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXJlZCB7XG4gICAgICAgIGNvbG9yOiAkY2ZrLXJlZC1mb3ItdGV4dDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY2ZrLXJlZC1mb3ItdGV4dDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNmay1idXR0b24ge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAzMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDByZW0gIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMXJlbSAyLjdyZW07XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keTtcbiAgICBtYXJnaW46IDFyZW0gMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDIuN3JlbTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuXG4gICAgfVxuXG4gICAgJi0tZ3JhZGllbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICMwMDgwQTYgMTAlLCAjMDBBRkI5IDEwMCUsICMwMDgwQTYgMTAwJSk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwMCUgMzAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDA7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLW91dGxpbmUtcGVhY2gge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNmay1wZWFjaDtcbiAgICAgICAgY29sb3I6ICRjZmstcGVhY2g7XG4gICAgICAgIHBhZGRpbmc6IDAuOXJlbSAyLjZyZW07XG4gICAgICAgIEBleHRlbmQgLmhhcy10cmFuc2l0aW9uO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMDAlIDMwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNmay1ibHVlO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLS1vdXRsaW5lLXJlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY2ZrLXJlZDtcbiAgICAgICAgY29sb3I6ICRjZmstcmVkLWZvci10ZXh0O1xuICAgICAgICBwYWRkaW5nOiAwLjlyZW0gMi42cmVtO1xuICAgICAgICBAZXh0ZW5kIC5oYXMtdHJhbnNpdGlvbjtcblxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMDAlIDMwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY2ZrLXBlYWNoLCAwLjcpO1xuICAgICAgICAgICAgY29sb3I6ICRjZmstcmVkLWZvci10ZXh0O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNmay1yZWQtZm9yLXRleHQ7XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLW91dGxpbmUtYmx1ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY2ZrLWJsdWU7XG4gICAgICAgIGNvbG9yOiAkY2ZrLWJsdWU7XG4gICAgICAgIHBhZGRpbmc6IDAuOXJlbSAyLjZyZW07XG4gICAgICAgIEBleHRlbmQgLmhhcy10cmFuc2l0aW9uO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMDAlIDMwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY2ZrLXBlYWNoLCAwLjcpO1xuICAgICAgICAgICAgY29sb3I6ICRjZmstcmVkLWZvci10ZXh0O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNmay1yZWQ7XG5cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4ubWFpbi1ib2R5IHtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJGNmay1ibHVlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGNmay1yZWQtZm9yLXRleHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIEBleHRlbmQgLmhhcy1ib3JkZXItLXBlYWNoO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjNyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuM3JlbTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBAZXh0ZW5kIC5oZWFkaW5nLS10aGluO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgY29sb3I6ICRjZmstYmx1ZTtcbiAgICAgICAgcGFkZGluZzogMCAwIDFyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIEBleHRlbmQgLmhlYWRpbmctLXRoaW47XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIGNvbG9yOiAkY2ZrLWJsdWU7XG4gICAgICBwYWRkaW5nOiAwIDAgMXJlbTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBAZXh0ZW5kIC5oZWFkaW5nLS10aGluO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBjb2xvcjogJGNmay1ibHVlO1xuICAgICAgcGFkZGluZzogMCAwIDFyZW07XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgfVxuXG59XG5cbn0iLCIkY2ZrLWJsdWU6ICMwMDgwQTY7XG4kY2ZrLXJlZDogI0VENTE0NTtcbiRjZmstcmVkLWZvci10ZXh0OiAjRTYyNTE2O1xuJGNmay1saWdodC1ibHVlOiAjMDBBRkI5O1xuJGNmay15ZWxsb3c6ICNGREZDREM7XG4kY2ZrLXBlYWNoOiAjRkVEOUI3O1xuXG5cbiRkaXNwbGF5OiBcIlJhdGlvbmVsbC1ib29rXCI7XG4kYm9keTogXCJOZW9ncm90ZXNrRXNzQWx0LVJlZ3VsYXJcIjtcbiRib2R5LWxpZ2h0OiBcIk5lb2dyb3Rlc2tFc3NBbHQtTGlnaHRcIjtcbiIsIi5tYWluLWJvZHkge1xuXG4gICAgLm1vcmUtaW5mbyxcbiAgICAucmV2aWV3ZWQtYnkge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRjZmsteWVsbG93LCAwJSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gICAgICAgIG1hcmdpbjogMnJlbSAwO1xuICAgICAgICBjbGVhcjogYm90aDtcblxuICAgICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgLmhhcy1ib3JkZXItLXBlYWNoIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAyLjVyZW0gYXV0byAxcmVtIGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAyLjNyZW0gMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgY29sb3I6ICRjZmstcmVkLWZvci10ZXh0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1saWdodDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMnB4IDApO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgcHJpbnQge1xuXG4gICAgICAgICAgICAgIGFbaHJlZl06OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcQShcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XG4gICAgICAgICAgICAgICAgLy8gY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICAvLyBmb250LXNpemU6IDI0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cblxuXG4gICAgICAgIH1cblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGNmay1ibHVlLCAyJSk7XG4gICAgICAgICAgICAvLyBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIEBleHRlbmQgLmhhcy10cmFuc2l0aW9uO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNmay1yZWQtZm9yLXRleHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGFzdC11cGRhdGVkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAmX19zcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcmlnaHQ6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRjZmstcGVhY2g7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDAuOGVtO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmV2aWV3ZWQtYnkge1xuICAgICAgJl9fbGlzdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgfVxuXG59XG5cbi5tYWluLWJvZHkge1xuICAubW9yZS1pbmZvIHtcbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgLy8gbWFyZ2luLWJvdHRvbTogLTM1cHg7XG4gICAgfVxuICB9XG59IiwiLmhhcy10cmFuc2l0aW9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIC41cyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2U7XG59XG5cbi5pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAvLyBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cblxufVxuXG5hIHtcbiAgaW1nIHtcbiAgICAvLyB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc2hvdy1mb3IteGxhcmdlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIFZpZGVvc1xuXG4uZmVhdHVyZWQtdmlkZW9fX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgtNDVkZWcsICNFRDUxNDUsICMwMDgwQTYpO1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDIuNXMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcbiAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDtcbn1cblxuLmZlYXR1cmVkLXZpZGVvX19pbWFnZSB7XG4gIG1peC1ibGVuZC1tb2RlOiBzY3JlZW47XG5cbn1cblxuLnZpZGVvLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wbGF5LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTtcbiAgei1pbmRleDogMDtcbn1cblxuLmZlYXR1cmVkLXZpZGVvIHtcbiAgJjpob3ZlciB7XG4gICAgLnBsYXktYnV0dG9uIHtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgIH1cbiAgICAuZmVhdHVyZWQtdmlkZW9fX2NvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNFRDUxNDUsICMwMDgwQTYpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8qIGJyZWFkY3J1bWJzICovXG5cbi5icmVhZGNydW1icyBsaSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG59XG5cbi50cmFuc3BhcmVudC1sb2dvIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiB1bnNldCAhaW1wb3J0YW50O1xufVxuXG4uc2lkZW5hdi1sb2dvIHtcbiAgd2lkdGg6IDcwJTtcbn1cblxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTowO1xufSIsIi5oZWFkZXIge1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG59XG5cbi5sb2dvIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtaW4td2lkdGg6IDkwcHg7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIHRvcDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDNyZW0gMCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCA2LjVyZW0gMCAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgICAgICAgcGFkZGluZzogM3JlbSAycmVtIDJyZW07XG4gICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAyMzBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgLy8gbWFyZ2luOiAzMHB4IDAgMCAyMjVweDtcbiAgICAgIHdpZHRoOiAxNzVweDtcbiAgICB9XG5cbiAgICAmX19mcmEge1xuXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBtaW4td2lkdGg6IDkwcHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDNyZW0gMCAwO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDYuNXJlbSAwIDA7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDJyZW0gMnJlbTtcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAzMjVweDtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLy8gbWFyZ2luOiAzMHB4IDAgMCAyMjVweDtcbiAgICAgICAgd2lkdGg6IDIyNXB4O1xuICAgICAgfVxuXG4gICAgfVxuXG5cbn1cbi5jcHMtbG9nb3tcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgbWFyZ2luOiAxcmVtIGF1dG8gMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgIH1cbn1cbi5zZWNvbmRhcnktbWVudSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJl9fbGlua3tcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiAkY2ZrLXllbGxvdztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udG9wLW1lbnUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnL2Fzc2V0cy9pbWcvc2Vjb25kYXJ5LW1lbnUtYmcucG5nJykgcmVwZWF0LXggY2VudGVyIHRvcCA7XG4gICAgLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzAwODBBNiAyMC45MSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSksIHVybCgnL2Fzc2V0cy9pbWcvc2Vjb25kYXJ5LW1lbnUtYmcucG5nJyk7XG4gICAgcGFkZGluZzogMS41cmVtIDAgMS41cmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLm1lbnUgLmljb24ge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgcGFkZGluZzogN3B4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2ZrLXBlYWNoO1xuICAgIH1cblxuICAgICYtLWZhY2Vib29rIHt9XG59XG5cbi5tZW51IHtcbiAgICAmLS1pY29ucyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHRvcDogMjRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmlsdGVyLWJ5LWNhdGVnb3J5e1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgICAgICAmX19saW5re1xuICAgICAgICAgICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuLm1vYmlsZS1pY29uc3tcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgICAmX19saW5rLmljb257XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNmay1wZWFjaCwgMC41KTtcbiAgICAgICAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG59XG4ubW9iaWxlLXNlY29uZGFyeXtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNmay1wZWFjaDtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkY2ZrLXBlYWNoLCAwLjIpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgJl9fbGlua3tcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuLy8gSGFtYnVyZ2VyIGljb25cbi50aXRsZS1iYXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAtMTlweDtcbn1cblxuLm1lbnUtLXByaW1hcnkge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY2ZrLXllbGxvdywgNiUpO1xuICAgIGJveC1zaGFkb3c6IDBweCAxMHB4IDEwMHB4IHJnYmEoIzAwMCwgMC40KTtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIG1hcmdpbjogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgJl9faXRlbSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNmay1wZWFjaDtcbiAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICAgICYtLXNtYWxse1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgY29sb3I6ICRjZmstYmx1ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBOZW9ncm90ZXNrRXNzQWx0LVJlZ3VsYXI7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRjZmstYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNmay1wZWFjaDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMC41cmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMXJlbSAhaW1wb3J0YW50O1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zcGFuIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW51LmFsaWduLWNlbnRlciBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kcm9wZG93bi1jb250ZW50IHtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDE2cHggMjVweCByZ2JhKCMwMDAsIDAuMSk7XG4gICAgICAgIG1hcmdpbjogNXB4IDhweCAwO1xuXG4gICAgfVxufVxuXG4vKiBjYW4gY2hhbmdlIHN1Ym1lbnUgaXRlbXMgdG8gYmUgY2VudGVyZWQgYnkgYWRqdXN0aW5nIHRleHQtYWxpZ24gY29kZSBiZWxvdyAqL1xuXG4uZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gICAgY29sb3I6ICRjZmstYmx1ZTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2ZrLXJlZC1mb3ItdGV4dDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBhcnJvdyB0aGF0IGluZGljYXRlcyBhIGRyb3Bkb3duIG1lbnUsIHNpbmNlIHRoZXkgYWxsIGhhdmUgb25lOlxuLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbD5saS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudD5hOjphZnRlcixcbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKT5hOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlYXJjaCB7XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5pbnB1dC1ncm91cHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDByZW0gMCAwIDEwMHJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICB3aWR0aDogMTMwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idXR0b24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMTAwcmVtIDEwMHJlbSAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxufVxuXG4udGFnbGluZS1jb250YWluZXIge1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDYpO1xuICB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDYpO1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KDYpO1xuICB9XG5cbn1cblxuLnRhZ2xpbmUge1xuXG4gICAgbWFyZ2luOiAycmVtIDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgbWFyZ2luOiAtMC41cmVtIDAgMXJlbSAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMnJlbSAwO1xuICAgIH1cblxuICAgICZfX3BhcmVudHMsXG4gICAgJl9fcGFlZGlhdHJpY2lhbnMge1xuICAgICAgICBjb2xvcjogJGNmay1ibHVlO1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBSYXRpb25lbGwtRXh0cmFCb2xkO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGluZS0xLFxuICAgICZfX2xpbmUtMiB7XG4gICAgICAgIGNvbG9yOiAkY2ZrLXJlZC1mb3ItdGV4dDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LWZhbWlseTogJGRpc3BsYXk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgLy8gbWFyZ2luLXJpZ2h0OiAxMHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTEuNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmZvb3RlciB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAxMjgsIDE2NiwgMC4yKSAwJSwgcmdiYSgyNTMsIDI1MiwgMjIwLCAxKSAxMDAlKTtcbiAgICAvLyBtaW4taGVpZ2h0OiAxMDAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IDVyZW0gMDtcbiAgICB9XG5cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgLy8gbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgfVxuXG59XG5cbi5mcm9udC1hbmQtY2VudHJlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQ6ICRjZmstYmx1ZSB1cmwoJy9hc3NldHMvaW1nL2JhYnkuanBnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICBwYWRkaW5nOiAycmVtIDEuNXJlbSAxcmVtO1xuICAgIEBleHRlbmQgLmhhcy10cmFuc2l0aW9uO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogM3JlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDUlO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmX19jb3B5IHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyxcbiAgICAmX19oZWFkaW5nIGEge1xuICAgICAgICBjb2xvcjogJGNmay15ZWxsb3c7XG5cbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWN0aXZlLWtpZHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMXJlbSAwO1xuICAgIHBhZGRpbmc6IDJyZW0gMS41cmVtIDByZW07XG4gICAgQGV4dGVuZCAuaGFzLXRyYW5zaXRpb247XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCA0cHggMzVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDYwcHggMjVweCAtNTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgfVxuXG4gICAgJl9fbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0byAycmVtO1xuICAgIH1cblxuICAgICZfX2NvcHkge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbn1cblxuLndlbGwtYmVpbmdzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDJyZW0gMDtcbiAgICBwYWRkaW5nOiAycmVtIDEuNXJlbSAwcmVtO1xuICAgIEBleHRlbmQgLmhhcy10cmFuc2l0aW9uO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwcHggNjBweCAyNXB4IC01MHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwNDY3RjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDJyZW07XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgfVxuXG4gICAgJl9fY29weSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxufVxuLmhvbWVwYWdle1xuICAgIC5hY3RpdmUta2lkc3tcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG4uZm9vdGVyLW1lbnUge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKCRjZmstbGlnaHQtYmx1ZSwgMC4zKTtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgcmdiYSgkY2ZrLWxpZ2h0LWJsdWUsIDAuMyk7XG4gICAgbWFyZ2luOiA0cmVtIGF1dG8gMnJlbTtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMDtcbiAgICB3aWR0aDogODAlO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogNXJlbSBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgLy8gd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgM3JlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAvLyBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkY2ZrLXJlZC1mb3ItdGV4dDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5O1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDAgO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjZmstYmx1ZTtcblxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdGVyLWxvZ29zIHtcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMXJlbSAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG5cbiAgICB9XG59IiwiYm9keSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5cbi5zdHJpcGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA3cHggN3B4O1xuICAgIGJvdHRvbTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5oZXJvIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICBtaW4taGVpZ2h0OiA3MTZweDtcbiAgICB9XG5cbiAgICAvLyBCYWxsb29uIEJveVxuICAgICYtLW9uZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNTBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogODAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3RyaXBlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGREZDREM7XG4gICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNzJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldC1wb3J0cmFpdCkge1xuICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldC1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVhZGluZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDg1cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZpZGVvIEdhbGxlcnlcbiAgICAmLS10d28ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgICAgICBib3gtc2hhZG93OiAxcmVtIDFyZW0gMTByZW0gcmdiYSgjMDAwLCAwLjIpO1xuICAgICAgICBtYXJnaW46IC0ycmVtIDAuNXJlbTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbjogLTVyZW0gMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgLy8gbWFyZ2luOiAtN3JlbSA0cmVtIC03cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAtM3JlbSA0cmVtIC0zcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogNHJlbSA0cmVtIDEuNXJlbSA0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb3B5IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC52aWRlby13cmFwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC52aWRlby13cmFwIGltZyxcbiAgICAudmlkZW8td3JhcCAucGxheS1idXR0b24ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgIC52aWRlby13cmFwIGlmcmFtZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgLyogaGVpZ2h0OiAzNzVweDtcbiAgICAgICAgd2lkdGg6IDU2MXB4OyAqL1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxODVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWluLWhlaWdodDogNDQzcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHJldGluYSkge1xuICAgICAgICAgIC8vIENTUyBmb3IgaGlnaC1yZXNvbHV0aW9uIGRpc3BsYXlzIG9ubHlcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAzNzVweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmZlYXR1cmVkLXZpZGVvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gWW9nYSBNb21cbiAgICAmLS10aHJlZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweCA3cHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgjMDA4MEE2LCAxKSA1Ni43MSUsIHJnYmEoIzAwQUZCOSwgMSkgMTEyLjI1JSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwcHggNHB4IDM1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMnJlbSAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwcmVtIDAuNXJlbSAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgjMDA4MEE2LCAwLjkpIDU2LjcxJSwgcmdiYSgjMDBBRkI5LCAwLjkpIDExMi4yNSUpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cmVtO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVhZGluZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNmay15ZWxsb3c7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjZmstcGVhY2g7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdHJpcGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNmay1ibHVlO1xuICAgICAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDcycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdW1tYXJ5IHtcblxuICAgICAgICAgIHAsXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyogaGVhcnQgc2hhcGVkIGJ1bGxldHMgZm9yIGhlcm8gKi9cblxuICAgICAgICAgIHVsIHtcblxuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG5cbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxLjI1ZW07XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWcvaGVhcnQtYnVsbGV0LnN2Zyk7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjI1ZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCZWQgRmFtaWx5XG4gICAgJi0tZm91ciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmZmYgMCwgIzAwODBhNiA0MCUsICMwMDgwYTYzMCA3MCUsICNmZmYpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjZmZmIDAsIHJnYmEoJGNmay1ibHVlLCAwLjUpIDEwJSwgcmdiYSgkY2ZrLWxpZ2h0LWJsdWUsIDAuMykgNjAlLCAjZmZmKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdG9wO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDdweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZmZmIDMwJSwgI2ZmZjAgNTAlKSwgbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZmZmIDI1LjA3JSwgI2ZmZjAgMCUpLCBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNmZmYsICMwMDgwQTYpO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMTVyZW0gMDtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblxuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMTAwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDByZW0gM3JlbSAwcmVtIDZyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmhlYWRpbmctLXRoaW4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogM3JlbSAwIDFyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3RyaXBlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjZmstYmx1ZTtcbiAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3VtbWFyeSBwLFxuICAgICAgICAmX19zdW1tYXJ5IGxpIHtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNob3VsZGVyIERhZFxuICAgICYtLWZpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjZmsteWVsbG93LCAwLjc1KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDdweCA3cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDRyZW0gMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgICAgICAgIHBhZGRpbmc6IDdyZW0gMDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHJlbSAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHJlbSAzcmVtIDByZW0gMTFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVhZGluZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3N0cmlwZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2ZrLXJlZDtcbiAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3VtbWFyeSBwLFxuICAgICAgICAmX19zdW1tYXJ5IGxpIHtcbiAgICAgICAgICAgIC8vIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V4dWFsIE9yaWVudGF0aW9uXG4gICAgJi0tc2l4IHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjRkZGRkZGIDkuMDYlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDUwJSksIGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNGRkZGRkYgNTUuMDclLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDYzLjAzJSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCAjRkVEOUI3LCAjRkVEOUI3KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjRkZGRkZGIDkuMDYlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDUwJSksIGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNGRkZGRkYgMjUuMDclLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDYzLjAzJSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCAjRkVEOUI3LCAjRkVEOUI3KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCA1cmVtO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjZmstYmx1ZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNmay1yZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3N0cmlwZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2ZrLWxpZ2h0LWJsdWU7XG4gICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNzJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3N1bW1hcnkgcCxcbiAgICAgICAgJl9fc3VtbWFyeSBsaSB7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSb3RvdmlydXNcbiAgICAmLS1zZXZlbiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMHJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDg1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAsXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjZmstYmx1ZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNmay1yZWQ7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaGVhZGluZy0tdGhpbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDNyZW0gMCAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FzaWRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMwMDgwQTYgNTYuNzElLCAjMDBBRkI5IDExMi4yNSUpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtIDEuNXJlbSAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNzUwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMDA4MEE2IDIwLjkxJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICAgICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDRweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSkpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtIDJyZW0gMXJlbTtcbiAgICAgICAgICAgICAgICAvLyBtYXJnaW46IDByZW0gMC41cmVtIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIC8vIG1hcmdpbi1yaWdodDogNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmFzaWRlX19oZWFkaW5nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmX19saXN0IGxpIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuXG5cbiAgICB9XG5cbiAgICAmX19zdW1tYXJ5IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbn1cblxuLmhlYXJ0cyB7XG4gICAgYmFja2dyb3VuZDogd2hpdGUgdXJsKCcvYXNzZXRzL2ltZy9CaWcgSGVhcnRzLnBuZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0bztcbn1cblxuLmNvbG9yLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLS1vbmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2ZrLXJlZDtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgIH1cblxuICAgICYtLXR3byB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjZmstcGVhY2g7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgfVxuXG4gICAgJi0tdGhyZWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2ZrLXllbGxvdztcbiAgICAgICAgbGVmdDogNDBweDtcbiAgICB9XG5cbiAgICAmLS1ibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNmay1ibHVlO1xuICAgIH1cblxuICAgICYtLWxpZ2h0LWJsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2ZrLWxpZ2h0LWJsdWU7XG4gICAgfVxuXG4gICAgJi0tcGVhY2gge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2ZrLXBlYWNoO1xuICAgIH1cblxuICAgICYtLXllbGxvdyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjZmsteWVsbG93O1xuICAgIH1cbn1cblxuLyogcmV2ZWFsIHBvcCB1cCBzdHlsZXMgKi9cblxuLmNoaWxkcmVucy1oZWFsdGgge1xuICBib3JkZXItcmFkaXVzOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDI1cHggNDBweCAyMHB4IDQwcHg7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDk1JTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiBhdXRvO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQtcG9ydHJhaXQpIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldC1sYW5kc2NhcGUpIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgd2lkdGg6IDgwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICB9XG5cbn1cblxuLm5ldy1zaXRlIHtcbiAgLy8gYm9yZGVyLXJhZGl1czogMS4yNXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA0cHg7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDk1JTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiBhdXRvO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQtcG9ydHJhaXQpIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldC1sYW5kc2NhcGUpIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgd2lkdGg6IDgwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICB9XG5cbn1cblxuKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59IiwiLmNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi9hc3NldHMvaW1nL0JpZyBIZWFydHMucG5nXCIpIHJlcGVhdC14IDAgMDtcblxuICAgIGltZyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDFyZW0gMXJlbSAxMHJlbSByZ2JhKCMwMDAsIDAuMik7XG5cbiAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgICAgICAvLyBwYWRkaW5nOiAxcmVtIDA7XG4gICAgfVxuXG59XG5cbi5zaWRlYmFyLW5hdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAmX19wYW5lbCB7XG5cbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgYm94LXNoYWRvdzogMXJlbSAxcmVtIDEwcmVtIHJnYmEoIzAwMCwgMC4yKTtcbiAgICAgICAgcGFkZGluZzogMnJlbSAycmVtIDFyZW0gMnJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHt9XG5cbiAgICAgICAgJl9fbGlzdCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHt9XG5cbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcblxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGVudCB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDAgMCAyLjVyZW0gMDtcbiAgICB9XG59XG5cbi5tYWluLWJvZHkge1xuXG4gICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGltZ3tcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgLy8gd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgIH1cblxuICAgIGF7XG4gICAgICAgIGNvbG9yOiAkY2ZrLXJlZC1mb3ItdGV4dDtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgY29sb3I6ICRjZmstYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIG1ha2UgbGlzdHMgbG9vayBtb3JlIGluZGVudGVkXG5cbiAgICB1bCxcbiAgICB1bCA+IHVsLFxuICAgIG9sLFxuICAgIG9sID4gb2wge1xuXG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMuMjVyZW07XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW46IDEycHggMDtcbiAgICB9XG5cbiAgICAvKiB0YWJsZXMgKi9cblxuICAgIC5hY3RpdmVraWRzIHtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUQ1MTQ1ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNFRDUxNDU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHRhYmxlIHtcblxuICAgICAgbWFyZ2luOiAzMHB4IDA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gICAgICB9XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblxuICAgICAgLyogdGhlYWQgc3R5bGVzICovXG5cbiAgICAgIHRoZWFkIHtcblxuICAgICAgICB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkLFxuICAgICAgICB0aCB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZGVkZTtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW46IC0xM3B4IDAgLTEzcHggMjVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogdGJvZHkgc3R5bGVzICovXG5cbiAgICAgIHRib2R5IHtcblxuICAgICAgICB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCxcbiAgICAgICAgdGgge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWRlZGU7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAtMTNweCAwIC0xM3B4IDI1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8qIGZlYXR1cmVkIGltYWdlcyBmb3IgaGFuZG91dHMgKi9cblxuaW1nLmhhbmRvdXQtZmVhdHVyZWQtaW1hZ2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygzMCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbn1cblxuXG4vKiBhY3RpdmUga2lkcyAqL1xuXG4uYWN0aXZlLWtpZHMtYmxvY2sge1xuICBAaW5jbHVkZSB4eS1ncmlkO1xuICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgxLCcuYmxvY2staXRlbScsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpLCAkZ3V0dGVyczogMTBweCwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRndXR0ZXItcG9zaXRpb246bGVmdCByaWdodCwgJHZlcnRpY2FsOiBmYWxzZSk7XG4gIEBpbmNsdWRlIHh5LWNlbGwtZ3V0dGVycyg1cHgpO1xuXG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgyLCcuYmxvY2staXRlbScsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpLCAkZ3V0dGVyczogMTBweCwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRndXR0ZXItcG9zaXRpb246bGVmdCByaWdodCB0b3AgYm90dG9tLCAkdmVydGljYWw6IGZhbHNlKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCg0LCcuYmxvY2staXRlbScsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpLCAkZ3V0dGVyczogMTBweCwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRndXR0ZXItcG9zaXRpb246bGVmdCByaWdodCwgJHZlcnRpY2FsOiBmYWxzZSk7XG4gIH1cblxufVxuXG4uYWN0aXZlLWtpZHMtY2FyZCB7XG4gIGltZyB7XG4gICAgbWF4LWhlaWdodDogNDEzcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXgtaGVpZ2h0OiAyNjRweDtcbiAgICB9XG5cbiAgfVxufVxuXG4vKiBhY3RpdmUga2lkcyB0aHVtYm5haWwgdmlkZW8gKi9cblxudWwudmlkZW8tdGh1bWJuYWlscyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XG5cbiAgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB3aWR0aDogMTYwcHg7XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTE1KTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIH1cblxuICB9XG5cbn1cblxuLmNmay1yZXZlYWwge1xuICBwYWRkaW5nOiA1cHggMjBweDtcbiAgd2lkdGg6IDM1JSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG5cbiAgPiBidXR0b24gPiBzcGFuIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxufVxuXG4vKiBoaWdobGlnaHRzIGZvciBoYW5kb3V0cyAqL1xuXG4uaGlnaGxpZ2h0cy1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IG5vbmU7XG4gIC8vIGJveC1zaGFkb3c6IDFyZW0gMXJlbSAxMHJlbSByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAyMHB4IDIwcHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHdpZHRoOiAzMCU7XG4gIH1cblxuICBkaXYuaGVhZGVyIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygxMHB4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2ZrLXJlZDtcblxuICAgIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTUpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtN3B4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBkaXYuaGlnaGxpZ2h0cyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggJGNmay1yZWQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMTBweCk7XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAwIDI1cHgpO1xuICAgICAgcGFkZGluZzogMDtcblxuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoNnB4IDApO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi5wYWdpbmF0aW9uLXN0eWxlIHtcblxuICBhIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDEwcHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNtYXJ0LXNjYWxlKCMxNzc5YmEsIDgwJSwgMTAwJSk7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzbWFydC1zY2FsZSgjMTc3OWJhLCA4MCUsIDEwMCUpO1xuICAgIH1cblxuICB9XG5cbiAgbGkge1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMCA1cHgpO1xuICB9XG5cbiAgLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMHB4KTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHNtYXJ0LXNjYWxlKCMxNzc5YmEsIDIwJSwgMTAwJSk7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc21hcnQtc2NhbGUoIzE3NzliYSwgNjAlLCAxMDAlKTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cblxufSIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwcm90b3R5cGUtcm91bmRlZFxuLy8vL1xuXG4vLy8gUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3Igcm91bmRlZCB1dGlsaXR5LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBgcHJvdG90eXBlLWJvcmRlci1yYWRpdXNgXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpICFkZWZhdWx0O1xuXG4vLy8gUm91bmRlZCB1dGlsaXR5IChhbGwgY29ybmVycyk6IEFkZHMgcmFkaXVzIGNvcm5lcnMgKGFsbCBjb3JuZXJzKSB0byBhbiBlbGVtZW50IGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRyYWRpdXMgWyRwcm90b3R5cGUtYm9yZGVyLXJhZGl1c10gQm9yZGVyIHJhZGl1cyAoYWxsIGNvcm5lcnMpXG5AbWl4aW4gYm9yZGVyLXJhZGl1cyhcbiAgJHJhZGl1czogJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzXG4pIHtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbn1cblxuLy8vIFJvdW5kZWQgc3F1YXJlIHV0aWxpdHkgb3IgcmVjdGFuZ2xlIHV0aWxpdHkgKGFsbCBjb3JuZXJzKTogUm91bmRzIGFsbCBjb3JuZXJzIHRvIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCB0byBtYWtlIGEgcGlsbCBzaGFwZS5cbkBtaXhpbiBib3JkZXItcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwMDBweCAhaW1wb3J0YW50O1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcm90b3R5cGUtcm91bmRlZCB7XG4gIC5yb3VuZGVkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcm91bmRlZDtcblxuICAgIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yb3VuZGVkO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgLy8gRm9yIHN3aXRjaGVzXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnJhZGl1cyB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIEBpZiAoJHByb3RvdHlwZS1yb3VuZGVkLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tcm91bmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcm91bmRlZDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLiN7JHNpemV9LXJhZGl1cyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm9iamVjdC1maXQge1xuICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbn1cblxuLy8gQmFsbG9vbiBCb3lcbi5oZXJvLS1vbmVfX29iamVjdC1maXQge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IDgwJTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4vLyBZb2dhIE1vbVxuLmhlcm8tLXRocmVlX19vYmplY3QtZml0IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IC0ycmVtO1xuICAgIHotaW5kZXg6IC0xOyAvLyBXZSBuZWVkIHRoaXMgc28gdGhhdCB0aGUgYmx1ZSB0ZXh0IHBhbmVsIHdpbGwgYmUgb24gdG9wIG9mIHRoZSBpbWFnZS5cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLy8gQmVkIEZhbWlseVxuLmhlcm8tLWZvdXJfX29iamVjdC1maXQge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogcmlnaHQgdG9wO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMTtcbiAgICBtaXgtYmxlbmQtbW9kZTogc2NyZWVuO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtaXgtYmxlbmQtbW9kZTogc2NyZWVuO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxufVxuXG4vLyBTaG91bGRlciBEYWRcbi5oZXJvLS1maXZlX19vYmplY3QtZml0IHtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIG9wYWNpdHk6IDAuNTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIC8vIGhlaWdodDogODAlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuXG4vLyBTZXh1YWwgT3JpZW50YXRpb25cbi5oZXJvLS1zaXhfX29iamVjdC1maXQge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICBvYmplY3QtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWl4LWJsZW5kLW1vZGU6IHNjcmVlbjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGhlaWdodDogODAlO1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgfVxufVxuXG4vLyBSb3RvdmlydXNcbi5oZXJvLS1zZXZlbl9fb2JqZWN0LWZpdCB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvYmplY3QtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogLTE7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG59IiwiQG1lZGlhIHByaW50IHtcblxuICAgICogeyBtYXJnaW46MDsgcGFkZGluZzowOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IH1cblxuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAvKiBCbGFjayBwcmludHMgZmFzdGVyICovXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy8gZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgICAvLyBwYWdlIG1hcmdpbnNcblxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6IDcuNWluIDEwLjVpbjtcbiAgICB9XG5cbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhW2hyZWZdOjphZnRlciB7XG4gICAgICAvLyBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAgIC8vIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIC8vIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLypcbiAgICAqIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgKiBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgKi9cbiAgICBhW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8qXG4gICAgKiBQcmludGluZyBUYWJsZXM6XG4gICAgKiBodHRwczovL3dlYi5hcmNoaXZlLm9yZy93ZWIvMjAxODA4MTUxNTA5MzQvaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgKi9cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8qIGZvbnQgc2l6aW5nICovXG5cbiAgICBwLFxuICAgIGxpLFxuICAgIHRkIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMikgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm1haW4tYm9keSAubW9yZS1pbmZvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuZm9vdGVyIHtcbiAgICAgIC8vIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgICAgLy8gcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuXG4gICAgLmZvb3Rlci1sb2dvcyB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtNjApO1xuICAgIH1cblxuICAgIGh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSwgcCwgYmxvY2txdW90ZSwgcHJlLCBhLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsIGRlbCwgZGZuLCBlbSwgZm9udCwgaW5zLCBrYmQsIHEsIHMsIHNhbXAsIHNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLCB0YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCB7XG4gICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBhZGp1c3QgcG9zaXRpb25pbmcgb2YgY29udGVudCBpbiByZWxhdGlvbiB0byBsb2dvICovXG5cbiAgICAubWFpbi1ib2R5IHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICB9XG5cbiAgICAvKiBhZGQgbGlua3MgdG8gaGFuZG91dCBsaXN0IHBhZ2UgKi9cblxuICAgIC5zaG93LWxpc3QtbGlua3MtZm9yLXByaW50IHtcbiAgICAgIGFbaHJlZl06OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXEEoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBob21lIHBhZ2Ugc3R5bGVzICovXG5cbiAgICAuaGVyby1ibG9jay1wcmludCB7XG5cbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwcHgpO1xuXG4gICAgICAuY2ZrLWJ1dHRvbiB7XG4gICAgICAgICAgLy8gYmFja2dyb3VuZC1zaXplOiAxMDAlIDMwMCU7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIC8vYm9yZGVyLXJhZGl1czogMTAwcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiTmVvZ3JvdGVza0Vzc0FsdC1SZWd1bGFyXCI7XG4gICAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG5cbiAgICAgIC5oZXJvX19zdW1tYXJ5IHAsXG4gICAgICAuaGVyby0tdHdvX19jb250ZW50IHAsXG4gICAgICAuaGVyby0tdGhyZWVfX3N1bW1hcnkgcCxcbiAgICAgIC5oZXJvLS1maXZlX19zdW1tYXJ5IHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuXG4gICAgICAuaGVyby0tdGhyZWVfX2hlYWRpbmcge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgLmhlcm9fX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICAuc2VjdGlvbi1saW5rIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5oZXJvLS10d28ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICB9XG5cbiAgICAuZnVsbDEgKiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5oZXJvX19oZWFkaW5nLFxuICAgIC5oZXJvLS1maXZlX19oZWFkaW5nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgLmhlcm9fX2NvcHkge1xuXG4gICAgfVxuXG4gICAgKiwgKjo6YmVmb3JlLCAqOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5oYXMtYm9yZGVyLS1saWdodC1ibHVlLFxuICAuaGFzLWJvcmRlci0tcGVhY2gge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICBwIGEuaGVyb19fYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogRW5nbGlzaCBob21lIHBhZ2UgKi9cblxuICAjY29udGVudCA+IGRpdiA+IGRpdi5ncmlkLWNvbnRhaW5lci5mdWxsLmhlYXJ0cyA+IGRpdiA+IGRpdiA+IHNlY3Rpb24gPiBkaXYgPiBkaXYgPiBkaXYuZ3JpZC14LmdyaWQtbWFyZ2luLXggPiBkaXY6bnRoLWNoaWxkKDQpID4gcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICNjb250ZW50ID4gZGl2ID4gZGl2Om50aC1jaGlsZCgxKSA+IHNlY3Rpb24gPiBkaXYgPiBkaXYgPiBkaXYgPiBkaXYgPiBwLnRleHQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXYuZ3JpZC1jb250YWluZXIuZnVsbC5oZWFydHMgPiBkaXYgPiBkaXYgPiBzZWN0aW9uID4gZGl2ID4gZGl2ID4gZGl2Om50aC1jaGlsZCgxKSA+IGRpdiA+IGgyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG5cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXYuZ3JpZC1jb250YWluZXIuZnVsbC5oZWFydHMgPiBkaXYgPiBkaXYgPiBzZWN0aW9uID4gZGl2ID4gZGl2ID4gZGl2Om50aC1jaGlsZCgxKSA+IGRpdiA+IGgyIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDMpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGgyIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LWZhbWlseTogUmF0aW9uZWxsLUV4dHJhQm9sZCwgc2Fucy1zZXJpZjtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDMpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGRpdiA+IHAudGV4dC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAjY29udGVudCA+IGRpdiA+IGRpdjpudGgtY2hpbGQoNCkgPiBzZWN0aW9uID4gZGl2ID4gZGl2ID4gZGl2ID4gZGl2IHtcbiAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgfVxuXG4gICNjb250ZW50ID4gZGl2ID4gZGl2Om50aC1jaGlsZCg0KSA+IHNlY3Rpb24gPiBkaXYgPiBkaXYgPiBkaXYgPiBkaXYgPiBwLnRleHQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDQpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGRpdiA+IHA6bnRoLWNoaWxkKDEpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDQpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGRpdiB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAjY29udGVudCA+IGRpdiA+IGRpdjpudGgtY2hpbGQoNCkgPiBzZWN0aW9uID4gZGl2ID4gZGl2ID4gZGl2ID4gaDIge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIGJvZHkgPiBmb290ZXIgPiBkaXYgPiBkaXYgPiBuYXYuZm9vdGVyLWxvZ29zIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICAvKiBmcmVuY2ggaG9tZSBwYWdlICovXG5cbiAgI2NvbnRlbnQgPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDQpID4gc2VjdGlvbiA+IGRpdiA+IGRpdiA+IGRpdiA+IGgyIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LWZhbWlseTogUmF0aW9uZWxsLUV4dHJhQm9sZCwgc2Fucy1zZXJpZjtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cblxuICAuZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLmZvb3Rlci1sb2dvcyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG59XG4iXX0= */
