@charset "UTF-8";
/**
 * Foundation for Sites
 * Version 6.8.1
 * https://get.foundation
 * Licensed under MIT Open Source
 */
/*! 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: 0;
  -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;
}

[data-whatintent=mouse] *, [data-whatintent=mouse] *:focus,
[data-whatintent=touch] *,
[data-whatintent=touch] *:focus,
[data-whatinput=mouse] *,
[data-whatinput=mouse] *:focus,
[data-whatinput=touch] *,
[data-whatinput=touch] *:focus {
  outline: none;
}

[draggable=false] {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
}

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&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: #0a0a0a;
  font-family: "stolzl", "Avenir", "Helvetica Neue", Helvetica, "Hiragino Sans", Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #dfdfdf;
  -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;
  -webkit-overflow-scrolling: touch;
}

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: 0;
  border-radius: 0;
  background-color: #333;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #fefefe;
  -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: 0;
  background-color: #4f4f4f;
  -webkit-box-shadow: none;
          box-shadow: none;
  -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: #d9d9d9;
  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: #4f4f4f;
}

::-moz-placeholder {
  color: #4f4f4f;
}

:-ms-input-placeholder {
  color: #4f4f4f;
}

::-ms-input-placeholder {
  color: #4f4f4f;
}

::placeholder {
  color: #4f4f4f;
}

[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: #fefefe;
}
label.middle {
  margin: 0 0 1rem;
  line-height: 1.5;
  padding: 0.5rem 0;
}

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

.input-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-box-align: 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-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label, .input-group-button, .input-group-field, .input-group-label {
  margin: 0;
  white-space: nowrap;
}

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #7c7c7c;
  background: #d9d9d9;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: 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;
      -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: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -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 {
  -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 #7c7c7c;
}
.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: 0;
  border-radius: 0;
  background-color: #333;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #fefefe;
  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%28124, 124, 124%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: 0;
  background-color: #4f4f4f;
  -webkit-box-shadow: none;
          box-shadow: none;
  -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: #d9d9d9;
  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: #ec5840;
  background-color: #fcedeb;
}
.is-invalid-input:not(:focus)::-webkit-input-placeholder {
  color: #ec5840;
}
.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #ec5840;
}
.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #ec5840;
}
.is-invalid-input:not(:focus)::-ms-input-placeholder {
  color: #ec5840;
}
.is-invalid-input:not(:focus)::placeholder {
  color: #ec5840;
}

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

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #ec5840;
}
.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: 1.4rem;
  font-size: inherit;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
}

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

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

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

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "stolzl", "Avenir", "Helvetica Neue", Helvetica, "Hiragino Sans", Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  color: #fefefe;
  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: #7c7c7c;
}

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 print, screen and (min-width: 40em) {
  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: #77ddff;
  text-decoration: none;
  cursor: pointer;
}
a:hover, a:focus {
  color: #EB9F37;
}
a img {
  border: 0;
}

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

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

li {
  font-size: inherit;
}

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

ol {
  margin-left: 1.25rem;
}

ul ul, ul ol, ol ul, 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 1.4rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #7c7c7c;
}
blockquote, blockquote p {
  line-height: 1.5;
  color: #4f4f4f;
}

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: #d9d9d9;
  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: #4f4f4f;
}

.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: #4f4f4f;
  font-size: 0.8125rem;
}
.cite-block:before, cite:before {
  content: "— ";
}

.code-inline, code {
  border: 1px solid #7c7c7c;
  background-color: #d9d9d9;
  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 #7c7c7c;
  background-color: #d9d9d9;
  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 print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left;
  }
  .medium-text-right {
    text-align: right;
  }
  .medium-text-center {
    text-align: center;
  }
  .medium-text-justify {
    text-align: justify;
  }
}
@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }
  .large-text-right {
    text-align: right;
  }
  .large-text-center {
    text-align: center;
  }
  .large-text-justify {
    text-align: justify;
  }
}
.show-for-print {
  display: none !important;
}

@media print {
  * {
    background: transparent !important;
    color: black !important;
    -webkit-print-color-adjust: economy;
            print-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;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  pre,
  blockquote {
    border: 1px solid #4f4f4f;
    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.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .grid-container {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-container {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-container {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
.grid-container.fluid {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .grid-container.fluid {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-container.fluid {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-container.fluid {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
.grid-container.full {
  padding-right: 0;
  padding-left: 0;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    width: auto;
  }
  .grid-x > .medium-12, .grid-x > .medium-11, .grid-x > .medium-10, .grid-x > .medium-9, .grid-x > .medium-8, .grid-x > .medium-7, .grid-x > .medium-6, .grid-x > .medium-5, .grid-x > .medium-4, .grid-x > .medium-3, .grid-x > .medium-2, .grid-x > .medium-1, .grid-x > .medium-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-x > .medium-shrink {
    width: auto;
  }
  .grid-x > .medium-1 {
    width: 8.3333333333%;
  }
  .grid-x > .medium-2 {
    width: 16.6666666667%;
  }
  .grid-x > .medium-3 {
    width: 25%;
  }
  .grid-x > .medium-4 {
    width: 33.3333333333%;
  }
  .grid-x > .medium-5 {
    width: 41.6666666667%;
  }
  .grid-x > .medium-6 {
    width: 50%;
  }
  .grid-x > .medium-7 {
    width: 58.3333333333%;
  }
  .grid-x > .medium-8 {
    width: 66.6666666667%;
  }
  .grid-x > .medium-9 {
    width: 75%;
  }
  .grid-x > .medium-10 {
    width: 83.3333333333%;
  }
  .grid-x > .medium-11 {
    width: 91.6666666667%;
  }
  .grid-x > .medium-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    width: auto;
  }
  .grid-x > .large-12, .grid-x > .large-11, .grid-x > .large-10, .grid-x > .large-9, .grid-x > .large-8, .grid-x > .large-7, .grid-x > .large-6, .grid-x > .large-5, .grid-x > .large-4, .grid-x > .large-3, .grid-x > .large-2, .grid-x > .large-1, .grid-x > .large-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-x > .large-shrink {
    width: auto;
  }
  .grid-x > .large-1 {
    width: 8.3333333333%;
  }
  .grid-x > .large-2 {
    width: 16.6666666667%;
  }
  .grid-x > .large-3 {
    width: 25%;
  }
  .grid-x > .large-4 {
    width: 33.3333333333%;
  }
  .grid-x > .large-5 {
    width: 41.6666666667%;
  }
  .grid-x > .large-6 {
    width: 50%;
  }
  .grid-x > .large-7 {
    width: 58.3333333333%;
  }
  .grid-x > .large-8 {
    width: 66.6666666667%;
  }
  .grid-x > .large-9 {
    width: 75%;
  }
  .grid-x > .large-10 {
    width: 83.3333333333%;
  }
  .grid-x > .large-11 {
    width: 91.6666666667%;
  }
  .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.9375rem;
  margin-right: -0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-margin-x {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-x {
    margin-left: -1.875rem;
    margin-right: -1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-margin-x {
    margin-left: -3.125rem;
    margin-right: -3.125rem;
  }
}
.grid-margin-x > .cell {
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-margin-x > .cell {
    width: calc(100% - 2.5rem);
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-x > .cell {
    width: calc(100% - 3.75rem);
    margin-left: 1.875rem;
    margin-right: 1.875rem;
  }
}
.grid-margin-x > .auto {
  width: auto;
}
.grid-margin-x > .shrink {
  width: auto;
}
.grid-margin-x > .small-1 {
  width: calc(8.3333333333% - 1.875rem);
}
.grid-margin-x > .small-2 {
  width: calc(16.6666666667% - 1.875rem);
}
.grid-margin-x > .small-3 {
  width: calc(25% - 1.875rem);
}
.grid-margin-x > .small-4 {
  width: calc(33.3333333333% - 1.875rem);
}
.grid-margin-x > .small-5 {
  width: calc(41.6666666667% - 1.875rem);
}
.grid-margin-x > .small-6 {
  width: calc(50% - 1.875rem);
}
.grid-margin-x > .small-7 {
  width: calc(58.3333333333% - 1.875rem);
}
.grid-margin-x > .small-8 {
  width: calc(66.6666666667% - 1.875rem);
}
.grid-margin-x > .small-9 {
  width: calc(75% - 1.875rem);
}
.grid-margin-x > .small-10 {
  width: calc(83.3333333333% - 1.875rem);
}
.grid-margin-x > .small-11 {
  width: calc(91.6666666667% - 1.875rem);
}
.grid-margin-x > .small-12 {
  width: calc(100% - 1.875rem);
}
@media print, screen and (min-width: 40em) {
  .grid-margin-x > .auto {
    width: auto;
  }
  .grid-margin-x > .shrink {
    width: auto;
  }
  .grid-margin-x > .small-1 {
    width: calc(8.3333333333% - 2.5rem);
  }
  .grid-margin-x > .small-2 {
    width: calc(16.6666666667% - 2.5rem);
  }
  .grid-margin-x > .small-3 {
    width: calc(25% - 2.5rem);
  }
  .grid-margin-x > .small-4 {
    width: calc(33.3333333333% - 2.5rem);
  }
  .grid-margin-x > .small-5 {
    width: calc(41.6666666667% - 2.5rem);
  }
  .grid-margin-x > .small-6 {
    width: calc(50% - 2.5rem);
  }
  .grid-margin-x > .small-7 {
    width: calc(58.3333333333% - 2.5rem);
  }
  .grid-margin-x > .small-8 {
    width: calc(66.6666666667% - 2.5rem);
  }
  .grid-margin-x > .small-9 {
    width: calc(75% - 2.5rem);
  }
  .grid-margin-x > .small-10 {
    width: calc(83.3333333333% - 2.5rem);
  }
  .grid-margin-x > .small-11 {
    width: calc(91.6666666667% - 2.5rem);
  }
  .grid-margin-x > .small-12 {
    width: calc(100% - 2.5rem);
  }
  .grid-margin-x > .medium-auto {
    width: auto;
  }
  .grid-margin-x > .medium-shrink {
    width: auto;
  }
  .grid-margin-x > .medium-1 {
    width: calc(8.3333333333% - 2.5rem);
  }
  .grid-margin-x > .medium-2 {
    width: calc(16.6666666667% - 2.5rem);
  }
  .grid-margin-x > .medium-3 {
    width: calc(25% - 2.5rem);
  }
  .grid-margin-x > .medium-4 {
    width: calc(33.3333333333% - 2.5rem);
  }
  .grid-margin-x > .medium-5 {
    width: calc(41.6666666667% - 2.5rem);
  }
  .grid-margin-x > .medium-6 {
    width: calc(50% - 2.5rem);
  }
  .grid-margin-x > .medium-7 {
    width: calc(58.3333333333% - 2.5rem);
  }
  .grid-margin-x > .medium-8 {
    width: calc(66.6666666667% - 2.5rem);
  }
  .grid-margin-x > .medium-9 {
    width: calc(75% - 2.5rem);
  }
  .grid-margin-x > .medium-10 {
    width: calc(83.3333333333% - 2.5rem);
  }
  .grid-margin-x > .medium-11 {
    width: calc(91.6666666667% - 2.5rem);
  }
  .grid-margin-x > .medium-12 {
    width: calc(100% - 2.5rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-x > .auto {
    width: auto;
  }
  .grid-margin-x > .shrink {
    width: auto;
  }
  .grid-margin-x > .small-1 {
    width: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-x > .small-2 {
    width: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-x > .small-3 {
    width: calc(25% - 3.75rem);
  }
  .grid-margin-x > .small-4 {
    width: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-x > .small-5 {
    width: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-x > .small-6 {
    width: calc(50% - 3.75rem);
  }
  .grid-margin-x > .small-7 {
    width: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-x > .small-8 {
    width: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-x > .small-9 {
    width: calc(75% - 3.75rem);
  }
  .grid-margin-x > .small-10 {
    width: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-x > .small-11 {
    width: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-x > .small-12 {
    width: calc(100% - 3.75rem);
  }
  .grid-margin-x > .medium-auto {
    width: auto;
  }
  .grid-margin-x > .medium-shrink {
    width: auto;
  }
  .grid-margin-x > .medium-1 {
    width: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-x > .medium-2 {
    width: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-x > .medium-3 {
    width: calc(25% - 3.75rem);
  }
  .grid-margin-x > .medium-4 {
    width: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-x > .medium-5 {
    width: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-x > .medium-6 {
    width: calc(50% - 3.75rem);
  }
  .grid-margin-x > .medium-7 {
    width: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-x > .medium-8 {
    width: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-x > .medium-9 {
    width: calc(75% - 3.75rem);
  }
  .grid-margin-x > .medium-10 {
    width: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-x > .medium-11 {
    width: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-x > .medium-12 {
    width: calc(100% - 3.75rem);
  }
  .grid-margin-x > .large-auto {
    width: auto;
  }
  .grid-margin-x > .large-shrink {
    width: auto;
  }
  .grid-margin-x > .large-1 {
    width: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-x > .large-2 {
    width: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-x > .large-3 {
    width: calc(25% - 3.75rem);
  }
  .grid-margin-x > .large-4 {
    width: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-x > .large-5 {
    width: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-x > .large-6 {
    width: calc(50% - 3.75rem);
  }
  .grid-margin-x > .large-7 {
    width: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-x > .large-8 {
    width: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-x > .large-9 {
    width: calc(75% - 3.75rem);
  }
  .grid-margin-x > .large-10 {
    width: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-x > .large-11 {
    width: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-x > .large-12 {
    width: calc(100% - 3.75rem);
  }
}

.grid-padding-x .grid-padding-x {
  margin-right: -0.9375rem;
  margin-left: -0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-padding-x .grid-padding-x {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-padding-x .grid-padding-x {
    margin-right: -1.875rem;
    margin-left: -1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-padding-x .grid-padding-x {
    margin-right: -3.125rem;
    margin-left: -3.125rem;
  }
}
.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.9375rem;
  margin-left: -0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-container:not(.full) > .grid-padding-x {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-container:not(.full) > .grid-padding-x {
    margin-right: -1.875rem;
    margin-left: -1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-container:not(.full) > .grid-padding-x {
    margin-right: -3.125rem;
    margin-left: -3.125rem;
  }
}
.grid-padding-x > .cell {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-padding-x > .cell {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-padding-x > .cell {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-padding-x > .cell {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-up-1 > .cell {
    width: 100%;
  }
  .medium-up-2 > .cell {
    width: 50%;
  }
  .medium-up-3 > .cell {
    width: 33.3333333333%;
  }
  .medium-up-4 > .cell {
    width: 25%;
  }
  .medium-up-5 > .cell {
    width: 20%;
  }
  .medium-up-6 > .cell {
    width: 16.6666666667%;
  }
  .medium-up-7 > .cell {
    width: 14.2857142857%;
  }
  .medium-up-8 > .cell {
    width: 12.5%;
  }
}
@media print, screen and (min-width: 64em) {
  .large-up-1 > .cell {
    width: 100%;
  }
  .large-up-2 > .cell {
    width: 50%;
  }
  .large-up-3 > .cell {
    width: 33.3333333333%;
  }
  .large-up-4 > .cell {
    width: 25%;
  }
  .large-up-5 > .cell {
    width: 20%;
  }
  .large-up-6 > .cell {
    width: 16.6666666667%;
  }
  .large-up-7 > .cell {
    width: 14.2857142857%;
  }
  .large-up-8 > .cell {
    width: 12.5%;
  }
}
.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.3333333333% - 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.6666666667% - 1.875rem);
}

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

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

@media print, screen and (min-width: 40em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 2.5rem);
  }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 2.5rem);
  }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.3333333333% - 2.5rem);
  }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 2.5rem);
  }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 2.5rem);
  }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.6666666667% - 2.5rem);
  }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.2857142857% - 2.5rem);
  }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 2.5rem);
  }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 2.5rem);
  }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 2.5rem);
  }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.3333333333% - 2.5rem);
  }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 2.5rem);
  }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 2.5rem);
  }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.6666666667% - 2.5rem);
  }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.2857142857% - 2.5rem);
  }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 2.5rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 3.75rem);
  }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 3.75rem);
  }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 3.75rem);
  }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 3.75rem);
  }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 3.75rem);
  }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 3.75rem);
  }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 3.75rem);
  }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 3.75rem);
  }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.2857142857% - 3.75rem);
  }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.2857142857% - 3.75rem);
  }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 3.75rem);
  }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 3.75rem);
  }
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 3.75rem);
  }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 3.75rem);
  }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 3.75rem);
  }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 3.75rem);
  }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.2857142857% - 3.75rem);
  }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 3.75rem);
  }
}
.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.3333333333%;
}
.small-margin-collapse > .small-2 {
  width: 16.6666666667%;
}
.small-margin-collapse > .small-3 {
  width: 25%;
}
.small-margin-collapse > .small-4 {
  width: 33.3333333333%;
}
.small-margin-collapse > .small-5 {
  width: 41.6666666667%;
}
.small-margin-collapse > .small-6 {
  width: 50%;
}
.small-margin-collapse > .small-7 {
  width: 58.3333333333%;
}
.small-margin-collapse > .small-8 {
  width: 66.6666666667%;
}
.small-margin-collapse > .small-9 {
  width: 75%;
}
.small-margin-collapse > .small-10 {
  width: 83.3333333333%;
}
.small-margin-collapse > .small-11 {
  width: 91.6666666667%;
}
.small-margin-collapse > .small-12 {
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .small-margin-collapse > .medium-1 {
    width: 8.3333333333%;
  }
  .small-margin-collapse > .medium-2 {
    width: 16.6666666667%;
  }
  .small-margin-collapse > .medium-3 {
    width: 25%;
  }
  .small-margin-collapse > .medium-4 {
    width: 33.3333333333%;
  }
  .small-margin-collapse > .medium-5 {
    width: 41.6666666667%;
  }
  .small-margin-collapse > .medium-6 {
    width: 50%;
  }
  .small-margin-collapse > .medium-7 {
    width: 58.3333333333%;
  }
  .small-margin-collapse > .medium-8 {
    width: 66.6666666667%;
  }
  .small-margin-collapse > .medium-9 {
    width: 75%;
  }
  .small-margin-collapse > .medium-10 {
    width: 83.3333333333%;
  }
  .small-margin-collapse > .medium-11 {
    width: 91.6666666667%;
  }
  .small-margin-collapse > .medium-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .small-margin-collapse > .large-1 {
    width: 8.3333333333%;
  }
  .small-margin-collapse > .large-2 {
    width: 16.6666666667%;
  }
  .small-margin-collapse > .large-3 {
    width: 25%;
  }
  .small-margin-collapse > .large-4 {
    width: 33.3333333333%;
  }
  .small-margin-collapse > .large-5 {
    width: 41.6666666667%;
  }
  .small-margin-collapse > .large-6 {
    width: 50%;
  }
  .small-margin-collapse > .large-7 {
    width: 58.3333333333%;
  }
  .small-margin-collapse > .large-8 {
    width: 66.6666666667%;
  }
  .small-margin-collapse > .large-9 {
    width: 75%;
  }
  .small-margin-collapse > .large-10 {
    width: 83.3333333333%;
  }
  .small-margin-collapse > .large-11 {
    width: 91.6666666667%;
  }
  .small-margin-collapse > .large-12 {
    width: 100%;
  }
}

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

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0;
  }
  .medium-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .small-1 {
    width: 8.3333333333%;
  }
  .medium-margin-collapse > .small-2 {
    width: 16.6666666667%;
  }
  .medium-margin-collapse > .small-3 {
    width: 25%;
  }
  .medium-margin-collapse > .small-4 {
    width: 33.3333333333%;
  }
  .medium-margin-collapse > .small-5 {
    width: 41.6666666667%;
  }
  .medium-margin-collapse > .small-6 {
    width: 50%;
  }
  .medium-margin-collapse > .small-7 {
    width: 58.3333333333%;
  }
  .medium-margin-collapse > .small-8 {
    width: 66.6666666667%;
  }
  .medium-margin-collapse > .small-9 {
    width: 75%;
  }
  .medium-margin-collapse > .small-10 {
    width: 83.3333333333%;
  }
  .medium-margin-collapse > .small-11 {
    width: 91.6666666667%;
  }
  .medium-margin-collapse > .small-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.3333333333%;
  }
  .medium-margin-collapse > .medium-2 {
    width: 16.6666666667%;
  }
  .medium-margin-collapse > .medium-3 {
    width: 25%;
  }
  .medium-margin-collapse > .medium-4 {
    width: 33.3333333333%;
  }
  .medium-margin-collapse > .medium-5 {
    width: 41.6666666667%;
  }
  .medium-margin-collapse > .medium-6 {
    width: 50%;
  }
  .medium-margin-collapse > .medium-7 {
    width: 58.3333333333%;
  }
  .medium-margin-collapse > .medium-8 {
    width: 66.6666666667%;
  }
  .medium-margin-collapse > .medium-9 {
    width: 75%;
  }
  .medium-margin-collapse > .medium-10 {
    width: 83.3333333333%;
  }
  .medium-margin-collapse > .medium-11 {
    width: 91.6666666667%;
  }
  .medium-margin-collapse > .medium-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.3333333333%;
  }
  .medium-margin-collapse > .large-2 {
    width: 16.6666666667%;
  }
  .medium-margin-collapse > .large-3 {
    width: 25%;
  }
  .medium-margin-collapse > .large-4 {
    width: 33.3333333333%;
  }
  .medium-margin-collapse > .large-5 {
    width: 41.6666666667%;
  }
  .medium-margin-collapse > .large-6 {
    width: 50%;
  }
  .medium-margin-collapse > .large-7 {
    width: 58.3333333333%;
  }
  .medium-margin-collapse > .large-8 {
    width: 66.6666666667%;
  }
  .medium-margin-collapse > .large-9 {
    width: 75%;
  }
  .medium-margin-collapse > .large-10 {
    width: 83.3333333333%;
  }
  .medium-margin-collapse > .large-11 {
    width: 91.6666666667%;
  }
  .medium-margin-collapse > .large-12 {
    width: 100%;
  }
}

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

@media print, screen and (min-width: 64em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0;
  }
  .large-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.3333333333%;
  }
  .large-margin-collapse > .small-2 {
    width: 16.6666666667%;
  }
  .large-margin-collapse > .small-3 {
    width: 25%;
  }
  .large-margin-collapse > .small-4 {
    width: 33.3333333333%;
  }
  .large-margin-collapse > .small-5 {
    width: 41.6666666667%;
  }
  .large-margin-collapse > .small-6 {
    width: 50%;
  }
  .large-margin-collapse > .small-7 {
    width: 58.3333333333%;
  }
  .large-margin-collapse > .small-8 {
    width: 66.6666666667%;
  }
  .large-margin-collapse > .small-9 {
    width: 75%;
  }
  .large-margin-collapse > .small-10 {
    width: 83.3333333333%;
  }
  .large-margin-collapse > .small-11 {
    width: 91.6666666667%;
  }
  .large-margin-collapse > .small-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.3333333333%;
  }
  .large-margin-collapse > .medium-2 {
    width: 16.6666666667%;
  }
  .large-margin-collapse > .medium-3 {
    width: 25%;
  }
  .large-margin-collapse > .medium-4 {
    width: 33.3333333333%;
  }
  .large-margin-collapse > .medium-5 {
    width: 41.6666666667%;
  }
  .large-margin-collapse > .medium-6 {
    width: 50%;
  }
  .large-margin-collapse > .medium-7 {
    width: 58.3333333333%;
  }
  .large-margin-collapse > .medium-8 {
    width: 66.6666666667%;
  }
  .large-margin-collapse > .medium-9 {
    width: 75%;
  }
  .large-margin-collapse > .medium-10 {
    width: 83.3333333333%;
  }
  .large-margin-collapse > .medium-11 {
    width: 91.6666666667%;
  }
  .large-margin-collapse > .medium-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.3333333333%;
  }
  .large-margin-collapse > .large-2 {
    width: 16.6666666667%;
  }
  .large-margin-collapse > .large-3 {
    width: 25%;
  }
  .large-margin-collapse > .large-4 {
    width: 33.3333333333%;
  }
  .large-margin-collapse > .large-5 {
    width: 41.6666666667%;
  }
  .large-margin-collapse > .large-6 {
    width: 50%;
  }
  .large-margin-collapse > .large-7 {
    width: 58.3333333333%;
  }
  .large-margin-collapse > .large-8 {
    width: 66.6666666667%;
  }
  .large-margin-collapse > .large-9 {
    width: 75%;
  }
  .large-margin-collapse > .large-10 {
    width: 83.3333333333%;
  }
  .large-margin-collapse > .large-11 {
    width: 91.6666666667%;
  }
  .large-margin-collapse > .large-12 {
    width: 100%;
  }
}

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

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

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

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

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

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

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

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

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

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

.grid-margin-x > .small-offset-4 {
  margin-left: calc(33.3333333333% + 1.875rem / 2);
}

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

.grid-margin-x > .small-offset-5 {
  margin-left: calc(41.6666666667% + 1.875rem / 2);
}

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

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

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

.grid-margin-x > .small-offset-7 {
  margin-left: calc(58.3333333333% + 1.875rem / 2);
}

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

.grid-margin-x > .small-offset-8 {
  margin-left: calc(66.6666666667% + 1.875rem / 2);
}

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

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

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

.grid-margin-x > .small-offset-10 {
  margin-left: calc(83.3333333333% + 1.875rem / 2);
}

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

.grid-margin-x > .small-offset-11 {
  margin-left: calc(91.6666666667% + 1.875rem / 2);
}

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%;
  }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 2.5rem / 2);
  }
  .medium-offset-1 {
    margin-left: 8.3333333333%;
  }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.3333333333% + 2.5rem / 2);
  }
  .medium-offset-2 {
    margin-left: 16.6666666667%;
  }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.6666666667% + 2.5rem / 2);
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 2.5rem / 2);
  }
  .medium-offset-4 {
    margin-left: 33.3333333333%;
  }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.3333333333% + 2.5rem / 2);
  }
  .medium-offset-5 {
    margin-left: 41.6666666667%;
  }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.6666666667% + 2.5rem / 2);
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 2.5rem / 2);
  }
  .medium-offset-7 {
    margin-left: 58.3333333333%;
  }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.3333333333% + 2.5rem / 2);
  }
  .medium-offset-8 {
    margin-left: 66.6666666667%;
  }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.6666666667% + 2.5rem / 2);
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 2.5rem / 2);
  }
  .medium-offset-10 {
    margin-left: 83.3333333333%;
  }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.3333333333% + 2.5rem / 2);
  }
  .medium-offset-11 {
    margin-left: 91.6666666667%;
  }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.6666666667% + 2.5rem / 2);
  }
}
@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%;
  }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 3.75rem / 2);
  }
  .large-offset-1 {
    margin-left: 8.3333333333%;
  }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.3333333333% + 3.75rem / 2);
  }
  .large-offset-2 {
    margin-left: 16.6666666667%;
  }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.6666666667% + 3.75rem / 2);
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 3.75rem / 2);
  }
  .large-offset-4 {
    margin-left: 33.3333333333%;
  }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.3333333333% + 3.75rem / 2);
  }
  .large-offset-5 {
    margin-left: 41.6666666667%;
  }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.6666666667% + 3.75rem / 2);
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 3.75rem / 2);
  }
  .large-offset-7 {
    margin-left: 58.3333333333%;
  }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.3333333333% + 3.75rem / 2);
  }
  .large-offset-8 {
    margin-left: 66.6666666667%;
  }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.6666666667% + 3.75rem / 2);
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 3.75rem / 2);
  }
  .large-offset-10 {
    margin-left: 83.3333333333%;
  }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.3333333333% + 3.75rem / 2);
  }
  .large-offset-11 {
    margin-left: 91.6666666667%;
  }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.6666666667% + 3.75rem / 2);
  }
}
.grid-y {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -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 {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
}
@media print, screen and (min-width: 40em) {
  .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
}
.grid-y > .small-12, .grid-y > .small-11, .grid-y > .small-10, .grid-y > .small-9, .grid-y > .small-8, .grid-y > .small-7, .grid-y > .small-6, .grid-y > .small-5, .grid-y > .small-4, .grid-y > .small-3, .grid-y > .small-2, .grid-y > .small-1 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.grid-y > .small-1 {
  height: 8.3333333333%;
}
.grid-y > .small-2 {
  height: 16.6666666667%;
}
.grid-y > .small-3 {
  height: 25%;
}
.grid-y > .small-4 {
  height: 33.3333333333%;
}
.grid-y > .small-5 {
  height: 41.6666666667%;
}
.grid-y > .small-6 {
  height: 50%;
}
.grid-y > .small-7 {
  height: 58.3333333333%;
}
.grid-y > .small-8 {
  height: 66.6666666667%;
}
.grid-y > .small-9 {
  height: 75%;
}
.grid-y > .small-10 {
  height: 83.3333333333%;
}
.grid-y > .small-11 {
  height: 91.6666666667%;
}
.grid-y > .small-12 {
  height: 100%;
}
@media print, screen and (min-width: 40em) {
  .grid-y > .medium-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    height: auto;
  }
  .grid-y > .medium-12, .grid-y > .medium-11, .grid-y > .medium-10, .grid-y > .medium-9, .grid-y > .medium-8, .grid-y > .medium-7, .grid-y > .medium-6, .grid-y > .medium-5, .grid-y > .medium-4, .grid-y > .medium-3, .grid-y > .medium-2, .grid-y > .medium-1, .grid-y > .medium-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-y > .medium-shrink {
    height: auto;
  }
  .grid-y > .medium-1 {
    height: 8.3333333333%;
  }
  .grid-y > .medium-2 {
    height: 16.6666666667%;
  }
  .grid-y > .medium-3 {
    height: 25%;
  }
  .grid-y > .medium-4 {
    height: 33.3333333333%;
  }
  .grid-y > .medium-5 {
    height: 41.6666666667%;
  }
  .grid-y > .medium-6 {
    height: 50%;
  }
  .grid-y > .medium-7 {
    height: 58.3333333333%;
  }
  .grid-y > .medium-8 {
    height: 66.6666666667%;
  }
  .grid-y > .medium-9 {
    height: 75%;
  }
  .grid-y > .medium-10 {
    height: 83.3333333333%;
  }
  .grid-y > .medium-11 {
    height: 91.6666666667%;
  }
  .grid-y > .medium-12 {
    height: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-y > .large-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    height: auto;
  }
  .grid-y > .large-12, .grid-y > .large-11, .grid-y > .large-10, .grid-y > .large-9, .grid-y > .large-8, .grid-y > .large-7, .grid-y > .large-6, .grid-y > .large-5, .grid-y > .large-4, .grid-y > .large-3, .grid-y > .large-2, .grid-y > .large-1, .grid-y > .large-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-y > .large-shrink {
    height: auto;
  }
  .grid-y > .large-1 {
    height: 8.3333333333%;
  }
  .grid-y > .large-2 {
    height: 16.6666666667%;
  }
  .grid-y > .large-3 {
    height: 25%;
  }
  .grid-y > .large-4 {
    height: 33.3333333333%;
  }
  .grid-y > .large-5 {
    height: 41.6666666667%;
  }
  .grid-y > .large-6 {
    height: 50%;
  }
  .grid-y > .large-7 {
    height: 58.3333333333%;
  }
  .grid-y > .large-8 {
    height: 66.6666666667%;
  }
  .grid-y > .large-9 {
    height: 75%;
  }
  .grid-y > .large-10 {
    height: 83.3333333333%;
  }
  .grid-y > .large-11 {
    height: 91.6666666667%;
  }
  .grid-y > .large-12 {
    height: 100%;
  }
}

.grid-padding-y .grid-padding-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-padding-y .grid-padding-y {
    margin-top: -1.25rem;
    margin-bottom: -1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-padding-y .grid-padding-y {
    margin-top: -1.875rem;
    margin-bottom: -1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-padding-y .grid-padding-y {
    margin-top: -3.125rem;
    margin-bottom: -3.125rem;
  }
}
.grid-padding-y > .cell {
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-padding-y > .cell {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-padding-y > .cell {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-padding-y > .cell {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem;
  }
}

.grid-margin-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-margin-y {
    margin-top: -1.25rem;
    margin-bottom: -1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y {
    margin-top: -1.875rem;
    margin-bottom: -1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-margin-y {
    margin-top: -3.125rem;
    margin-bottom: -3.125rem;
  }
}
.grid-margin-y > .cell {
  height: calc(100% - 1.875rem);
  margin-top: 0.9375rem;
  margin-bottom: 0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-margin-y > .cell {
    height: calc(100% - 2.5rem);
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y > .cell {
    height: calc(100% - 3.75rem);
    margin-top: 1.875rem;
    margin-bottom: 1.875rem;
  }
}
.grid-margin-y > .auto {
  height: auto;
}
.grid-margin-y > .shrink {
  height: auto;
}
.grid-margin-y > .small-1 {
  height: calc(8.3333333333% - 1.875rem);
}
.grid-margin-y > .small-2 {
  height: calc(16.6666666667% - 1.875rem);
}
.grid-margin-y > .small-3 {
  height: calc(25% - 1.875rem);
}
.grid-margin-y > .small-4 {
  height: calc(33.3333333333% - 1.875rem);
}
.grid-margin-y > .small-5 {
  height: calc(41.6666666667% - 1.875rem);
}
.grid-margin-y > .small-6 {
  height: calc(50% - 1.875rem);
}
.grid-margin-y > .small-7 {
  height: calc(58.3333333333% - 1.875rem);
}
.grid-margin-y > .small-8 {
  height: calc(66.6666666667% - 1.875rem);
}
.grid-margin-y > .small-9 {
  height: calc(75% - 1.875rem);
}
.grid-margin-y > .small-10 {
  height: calc(83.3333333333% - 1.875rem);
}
.grid-margin-y > .small-11 {
  height: calc(91.6666666667% - 1.875rem);
}
.grid-margin-y > .small-12 {
  height: calc(100% - 1.875rem);
}
@media print, screen and (min-width: 40em) {
  .grid-margin-y > .auto {
    height: auto;
  }
  .grid-margin-y > .shrink {
    height: auto;
  }
  .grid-margin-y > .small-1 {
    height: calc(8.3333333333% - 2.5rem);
  }
  .grid-margin-y > .small-2 {
    height: calc(16.6666666667% - 2.5rem);
  }
  .grid-margin-y > .small-3 {
    height: calc(25% - 2.5rem);
  }
  .grid-margin-y > .small-4 {
    height: calc(33.3333333333% - 2.5rem);
  }
  .grid-margin-y > .small-5 {
    height: calc(41.6666666667% - 2.5rem);
  }
  .grid-margin-y > .small-6 {
    height: calc(50% - 2.5rem);
  }
  .grid-margin-y > .small-7 {
    height: calc(58.3333333333% - 2.5rem);
  }
  .grid-margin-y > .small-8 {
    height: calc(66.6666666667% - 2.5rem);
  }
  .grid-margin-y > .small-9 {
    height: calc(75% - 2.5rem);
  }
  .grid-margin-y > .small-10 {
    height: calc(83.3333333333% - 2.5rem);
  }
  .grid-margin-y > .small-11 {
    height: calc(91.6666666667% - 2.5rem);
  }
  .grid-margin-y > .small-12 {
    height: calc(100% - 2.5rem);
  }
  .grid-margin-y > .medium-auto {
    height: auto;
  }
  .grid-margin-y > .medium-shrink {
    height: auto;
  }
  .grid-margin-y > .medium-1 {
    height: calc(8.3333333333% - 2.5rem);
  }
  .grid-margin-y > .medium-2 {
    height: calc(16.6666666667% - 2.5rem);
  }
  .grid-margin-y > .medium-3 {
    height: calc(25% - 2.5rem);
  }
  .grid-margin-y > .medium-4 {
    height: calc(33.3333333333% - 2.5rem);
  }
  .grid-margin-y > .medium-5 {
    height: calc(41.6666666667% - 2.5rem);
  }
  .grid-margin-y > .medium-6 {
    height: calc(50% - 2.5rem);
  }
  .grid-margin-y > .medium-7 {
    height: calc(58.3333333333% - 2.5rem);
  }
  .grid-margin-y > .medium-8 {
    height: calc(66.6666666667% - 2.5rem);
  }
  .grid-margin-y > .medium-9 {
    height: calc(75% - 2.5rem);
  }
  .grid-margin-y > .medium-10 {
    height: calc(83.3333333333% - 2.5rem);
  }
  .grid-margin-y > .medium-11 {
    height: calc(91.6666666667% - 2.5rem);
  }
  .grid-margin-y > .medium-12 {
    height: calc(100% - 2.5rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y > .auto {
    height: auto;
  }
  .grid-margin-y > .shrink {
    height: auto;
  }
  .grid-margin-y > .small-1 {
    height: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-y > .small-2 {
    height: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-y > .small-3 {
    height: calc(25% - 3.75rem);
  }
  .grid-margin-y > .small-4 {
    height: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-y > .small-5 {
    height: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-y > .small-6 {
    height: calc(50% - 3.75rem);
  }
  .grid-margin-y > .small-7 {
    height: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-y > .small-8 {
    height: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-y > .small-9 {
    height: calc(75% - 3.75rem);
  }
  .grid-margin-y > .small-10 {
    height: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-y > .small-11 {
    height: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-y > .small-12 {
    height: calc(100% - 3.75rem);
  }
  .grid-margin-y > .medium-auto {
    height: auto;
  }
  .grid-margin-y > .medium-shrink {
    height: auto;
  }
  .grid-margin-y > .medium-1 {
    height: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-y > .medium-2 {
    height: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-y > .medium-3 {
    height: calc(25% - 3.75rem);
  }
  .grid-margin-y > .medium-4 {
    height: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-y > .medium-5 {
    height: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-y > .medium-6 {
    height: calc(50% - 3.75rem);
  }
  .grid-margin-y > .medium-7 {
    height: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-y > .medium-8 {
    height: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-y > .medium-9 {
    height: calc(75% - 3.75rem);
  }
  .grid-margin-y > .medium-10 {
    height: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-y > .medium-11 {
    height: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-y > .medium-12 {
    height: calc(100% - 3.75rem);
  }
  .grid-margin-y > .large-auto {
    height: auto;
  }
  .grid-margin-y > .large-shrink {
    height: auto;
  }
  .grid-margin-y > .large-1 {
    height: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-y > .large-2 {
    height: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-y > .large-3 {
    height: calc(25% - 3.75rem);
  }
  .grid-margin-y > .large-4 {
    height: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-y > .large-5 {
    height: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-y > .large-6 {
    height: calc(50% - 3.75rem);
  }
  .grid-margin-y > .large-7 {
    height: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-y > .large-8 {
    height: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-y > .large-9 {
    height: calc(75% - 3.75rem);
  }
  .grid-margin-y > .large-10 {
    height: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-y > .large-11 {
    height: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-y > .large-12 {
    height: calc(100% - 3.75rem);
  }
}

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

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

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

.grid-margin-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-margin-y {
    margin-top: -1.25rem;
    margin-bottom: -1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y {
    margin-top: -1.875rem;
    margin-bottom: -1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .grid-margin-y {
    margin-top: -3.125rem;
    margin-bottom: -3.125rem;
  }
}
.grid-margin-y > .cell {
  height: calc(100% - 1.875rem);
  margin-top: 0.9375rem;
  margin-bottom: 0.9375rem;
}
@media print, screen and (min-width: 40em) {
  .grid-margin-y > .cell {
    height: calc(100% - 2.5rem);
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y > .cell {
    height: calc(100% - 3.75rem);
    margin-top: 1.875rem;
    margin-bottom: 1.875rem;
  }
}
.grid-margin-y > .auto {
  height: auto;
}
.grid-margin-y > .shrink {
  height: auto;
}
.grid-margin-y > .small-1 {
  height: calc(8.3333333333% - 1.875rem);
}
.grid-margin-y > .small-2 {
  height: calc(16.6666666667% - 1.875rem);
}
.grid-margin-y > .small-3 {
  height: calc(25% - 1.875rem);
}
.grid-margin-y > .small-4 {
  height: calc(33.3333333333% - 1.875rem);
}
.grid-margin-y > .small-5 {
  height: calc(41.6666666667% - 1.875rem);
}
.grid-margin-y > .small-6 {
  height: calc(50% - 1.875rem);
}
.grid-margin-y > .small-7 {
  height: calc(58.3333333333% - 1.875rem);
}
.grid-margin-y > .small-8 {
  height: calc(66.6666666667% - 1.875rem);
}
.grid-margin-y > .small-9 {
  height: calc(75% - 1.875rem);
}
.grid-margin-y > .small-10 {
  height: calc(83.3333333333% - 1.875rem);
}
.grid-margin-y > .small-11 {
  height: calc(91.6666666667% - 1.875rem);
}
.grid-margin-y > .small-12 {
  height: calc(100% - 1.875rem);
}
@media print, screen and (min-width: 40em) {
  .grid-margin-y > .auto {
    height: auto;
  }
  .grid-margin-y > .shrink {
    height: auto;
  }
  .grid-margin-y > .small-1 {
    height: calc(8.3333333333% - 2.5rem);
  }
  .grid-margin-y > .small-2 {
    height: calc(16.6666666667% - 2.5rem);
  }
  .grid-margin-y > .small-3 {
    height: calc(25% - 2.5rem);
  }
  .grid-margin-y > .small-4 {
    height: calc(33.3333333333% - 2.5rem);
  }
  .grid-margin-y > .small-5 {
    height: calc(41.6666666667% - 2.5rem);
  }
  .grid-margin-y > .small-6 {
    height: calc(50% - 2.5rem);
  }
  .grid-margin-y > .small-7 {
    height: calc(58.3333333333% - 2.5rem);
  }
  .grid-margin-y > .small-8 {
    height: calc(66.6666666667% - 2.5rem);
  }
  .grid-margin-y > .small-9 {
    height: calc(75% - 2.5rem);
  }
  .grid-margin-y > .small-10 {
    height: calc(83.3333333333% - 2.5rem);
  }
  .grid-margin-y > .small-11 {
    height: calc(91.6666666667% - 2.5rem);
  }
  .grid-margin-y > .small-12 {
    height: calc(100% - 2.5rem);
  }
  .grid-margin-y > .medium-auto {
    height: auto;
  }
  .grid-margin-y > .medium-shrink {
    height: auto;
  }
  .grid-margin-y > .medium-1 {
    height: calc(8.3333333333% - 2.5rem);
  }
  .grid-margin-y > .medium-2 {
    height: calc(16.6666666667% - 2.5rem);
  }
  .grid-margin-y > .medium-3 {
    height: calc(25% - 2.5rem);
  }
  .grid-margin-y > .medium-4 {
    height: calc(33.3333333333% - 2.5rem);
  }
  .grid-margin-y > .medium-5 {
    height: calc(41.6666666667% - 2.5rem);
  }
  .grid-margin-y > .medium-6 {
    height: calc(50% - 2.5rem);
  }
  .grid-margin-y > .medium-7 {
    height: calc(58.3333333333% - 2.5rem);
  }
  .grid-margin-y > .medium-8 {
    height: calc(66.6666666667% - 2.5rem);
  }
  .grid-margin-y > .medium-9 {
    height: calc(75% - 2.5rem);
  }
  .grid-margin-y > .medium-10 {
    height: calc(83.3333333333% - 2.5rem);
  }
  .grid-margin-y > .medium-11 {
    height: calc(91.6666666667% - 2.5rem);
  }
  .grid-margin-y > .medium-12 {
    height: calc(100% - 2.5rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y > .auto {
    height: auto;
  }
  .grid-margin-y > .shrink {
    height: auto;
  }
  .grid-margin-y > .small-1 {
    height: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-y > .small-2 {
    height: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-y > .small-3 {
    height: calc(25% - 3.75rem);
  }
  .grid-margin-y > .small-4 {
    height: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-y > .small-5 {
    height: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-y > .small-6 {
    height: calc(50% - 3.75rem);
  }
  .grid-margin-y > .small-7 {
    height: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-y > .small-8 {
    height: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-y > .small-9 {
    height: calc(75% - 3.75rem);
  }
  .grid-margin-y > .small-10 {
    height: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-y > .small-11 {
    height: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-y > .small-12 {
    height: calc(100% - 3.75rem);
  }
  .grid-margin-y > .medium-auto {
    height: auto;
  }
  .grid-margin-y > .medium-shrink {
    height: auto;
  }
  .grid-margin-y > .medium-1 {
    height: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-y > .medium-2 {
    height: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-y > .medium-3 {
    height: calc(25% - 3.75rem);
  }
  .grid-margin-y > .medium-4 {
    height: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-y > .medium-5 {
    height: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-y > .medium-6 {
    height: calc(50% - 3.75rem);
  }
  .grid-margin-y > .medium-7 {
    height: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-y > .medium-8 {
    height: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-y > .medium-9 {
    height: calc(75% - 3.75rem);
  }
  .grid-margin-y > .medium-10 {
    height: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-y > .medium-11 {
    height: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-y > .medium-12 {
    height: calc(100% - 3.75rem);
  }
  .grid-margin-y > .large-auto {
    height: auto;
  }
  .grid-margin-y > .large-shrink {
    height: auto;
  }
  .grid-margin-y > .large-1 {
    height: calc(8.3333333333% - 3.75rem);
  }
  .grid-margin-y > .large-2 {
    height: calc(16.6666666667% - 3.75rem);
  }
  .grid-margin-y > .large-3 {
    height: calc(25% - 3.75rem);
  }
  .grid-margin-y > .large-4 {
    height: calc(33.3333333333% - 3.75rem);
  }
  .grid-margin-y > .large-5 {
    height: calc(41.6666666667% - 3.75rem);
  }
  .grid-margin-y > .large-6 {
    height: calc(50% - 3.75rem);
  }
  .grid-margin-y > .large-7 {
    height: calc(58.3333333333% - 3.75rem);
  }
  .grid-margin-y > .large-8 {
    height: calc(66.6666666667% - 3.75rem);
  }
  .grid-margin-y > .large-9 {
    height: calc(75% - 3.75rem);
  }
  .grid-margin-y > .large-10 {
    height: calc(83.3333333333% - 3.75rem);
  }
  .grid-margin-y > .large-11 {
    height: calc(91.6666666667% - 3.75rem);
  }
  .grid-margin-y > .large-12 {
    height: calc(100% - 3.75rem);
  }
}

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

@media print, screen and (min-width: 40em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 2.5rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 3.75rem);
  }
}
.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: #2199e8;
  color: #fefefe;
}
.button:hover, .button:focus {
  background-color: #1583cc;
  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: #2199e8;
  color: #0a0a0a;
}
.button.primary:hover, .button.primary:focus {
  background-color: #147cc0;
  color: #0a0a0a;
}
.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: #777777;
  color: #fefefe;
}
.button.secondary:hover, .button.secondary:focus {
  background-color: #5f5f5f;
  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: #2a2a2a;
  color: #fefefe;
}
.button.success:hover, .button.success:focus {
  background-color: #222222;
  color: #fefefe;
}
.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: #FA8E13;
  color: #0a0a0a;
}
.button.warning:hover, .button.warning:focus {
  background-color: #d37204;
  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: #ec5840;
  color: #0a0a0a;
}
.button.alert:hover, .button.alert:focus {
  background-color: #da3116;
  color: #0a0a0a;
}
.button.anchor, .button.anchor.disabled, .button.anchor[disabled], .button.anchor.disabled:hover, .button.anchor[disabled]:hover, .button.anchor.disabled:focus, .button.anchor[disabled]:focus {
  background-color: #77ddff;
  color: #0a0a0a;
}
.button.anchor:hover, .button.anchor:focus {
  background-color: #2ccaff;
  color: #0a0a0a;
}
.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 #2199e8;
  color: #2199e8;
}
.button.hollow:hover, .button.hollow:focus {
  border-color: #0c4d78;
  color: #0c4d78;
}
.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 #2199e8;
  color: #2199e8;
}
.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: #0c4d78;
  color: #0c4d78;
}
.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 #777777;
  color: #777777;
}
.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #3c3c3c;
  color: #3c3c3c;
}
.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 #2a2a2a;
  color: #2a2a2a;
}
.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: #151515;
  color: #151515;
}
.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 #FA8E13;
  color: #FA8E13;
}
.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: #844703;
  color: #844703;
}
.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 #ec5840;
  color: #ec5840;
}
.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: #881f0e;
  color: #881f0e;
}
.button.hollow.anchor, .button.hollow.anchor.disabled, .button.hollow.anchor[disabled], .button.hollow.anchor.disabled:hover, .button.hollow.anchor[disabled]:hover, .button.hollow.anchor.disabled:focus, .button.hollow.anchor[disabled]:focus {
  border: 1px solid #77ddff;
  color: #77ddff;
}
.button.hollow.anchor:hover, .button.hollow.anchor:focus {
  border-color: #008cbb;
  color: #008cbb;
}
.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: #2199e8;
}
.button.clear:hover, .button.clear:focus {
  color: #0c4d78;
}
.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: #2199e8;
}
.button.clear.primary:hover, .button.clear.primary:focus {
  color: #0c4d78;
}
.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: #777777;
}
.button.clear.secondary:hover, .button.clear.secondary:focus {
  color: #3c3c3c;
}
.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: #2a2a2a;
}
.button.clear.success:hover, .button.clear.success:focus {
  color: #151515;
}
.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: #FA8E13;
}
.button.clear.warning:hover, .button.clear.warning:focus {
  color: #844703;
}
.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: #ec5840;
}
.button.clear.alert:hover, .button.clear.alert:focus {
  color: #881f0e;
}
.button.clear.anchor, .button.clear.anchor.disabled, .button.clear.anchor[disabled], .button.clear.anchor.disabled:hover, .button.clear.anchor[disabled]:hover, .button.clear.anchor.disabled:focus, .button.clear.anchor[disabled]:focus {
  color: #77ddff;
}
.button.clear.anchor:hover, .button.clear.anchor:focus {
  color: #008cbb;
}
.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.4em;
  content: "";
  border-bottom-width: 0;
  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: #2199e8;
}
.button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
  border-top-color: #2199e8;
}
.button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after {
  border-top-color: #777777;
}
.button.dropdown.hollow.success::after, .button.dropdown.clear.success::after {
  border-top-color: #2a2a2a;
}
.button.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after {
  border-top-color: #FA8E13;
}
.button.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after {
  border-top-color: #ec5840;
}
.button.dropdown.hollow.anchor::after, .button.dropdown.clear.anchor::after {
  border-top-color: #77ddff;
}
.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

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

.close-button {
  position: absolute;
  z-index: 10;
  color: #4f4f4f;
  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;
}

.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: #def0fc;
  color: #0a0a0a;
}
.callout.secondary {
  background-color: #ebebeb;
  color: #0a0a0a;
}
.callout.success {
  background-color: #dfdfdf;
  color: #0a0a0a;
}
.callout.warning {
  background-color: #feeedc;
  color: #0a0a0a;
}
.callout.alert {
  background-color: #fce6e2;
  color: #0a0a0a;
}
.callout.anchor {
  background-color: #ebfaff;
  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;
}

.responsive-embed,
.flex-video,
.video-container,
.media {
  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,
.video-container iframe,
.media iframe,
.flex-video object,
.video-container object,
.media object,
.flex-video embed,
.video-container embed,
.media embed,
.flex-video video,
.video-container video,
.media video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.responsive-embed.widescreen,
.flex-video.widescreen,
.video-container,
.media {
  padding-bottom: 56.25%;
}

.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: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.clearfix::after {
  clear: both;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5;
  }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6;
  }
}
@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5;
  }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6;
  }
}
.flex-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .medium-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
  .medium-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
  }
  .medium-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .medium-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .medium-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .medium-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .medium-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .large-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
  .large-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
  }
  .large-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .large-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .large-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .large-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .large-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

.visible {
  visibility: visible;
}

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

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

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

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

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

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

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

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

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

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

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px !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;
  }
}

.show-for-dark-mode {
  display: none;
}

.hide-for-dark-mode {
  display: block;
}

@media screen and (prefers-color-scheme: dark) {
  .show-for-dark-mode {
    display: block !important;
  }
  .hide-for-dark-mode {
    display: none !important;
  }
}
.show-for-ie {
  display: none;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .show-for-ie {
    display: block !important;
  }
  .hide-for-ie {
    display: none !important;
  }
}
.show-for-sticky {
  display: none;
}

.is-stuck .show-for-sticky {
  display: block;
}

.is-stuck .hide-for-sticky {
  display: none;
}

a {
  outline: none;
}

.flex-video, .video-container,
.media {
  background: #0d0d0d url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
}

@font-face {
  font-family: "stolzl";
  src: url("../fonts/stolzl-book-webfont.eot?v188fa3d5e42");
  src: url("../fonts/stolzl-book-webfont.eot?v188fa3d5e42#iefix") format("embedded-opentype"), url("../fonts/stolzl-book-webfont.woff2?v188fa3d5e43") format("woff2"), url("../fonts/stolzl-book-webfont.woff?v188fa3d5e43") format("woff"), url("../fonts/stolzl-book-webfont.ttf?v188fa3d5e42") format("truetype"), url("../fonts/stolzl-book-webfont.svg?v188fa3d5e42#stolzlbook") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "stolzl";
  src: url("../fonts/stolzl-bold-webfont.eot?v188fa3d5e40");
  src: url("../fonts/stolzl-bold-webfont.eot?v188fa3d5e40#iefix") format("embedded-opentype"), url("../fonts/stolzl-bold-webfont.woff2?v188fa3d5e41") format("woff2"), url("../fonts/stolzl-bold-webfont.woff?v188fa3d5e41") format("woff"), url("../fonts/stolzl-bold-webfont.ttf?v188fa3d5e41") format("truetype"), url("../fonts/stolzl-bold-webfont.svg?v188fa3d5e41#stolzlbold") format("svg");
  font-weight: bold;
  font-style: normal;
}
body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
  min-height: 100svh;
}

body {
  background-image: url("../img/bg-posi.jpg?v188fa3d5e44");
  background-position: 0 0;
  background-repeat: repeat;
}

@media print, screen and (min-width: 40em) {
  .app-board {
    max-width: 640px;
  }
}
@media screen and (min-width: 75em) {
  .app-board {
    max-width: 720px;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-board {
    margin: 3rem auto;
  }
}
@media print, screen and (min-width: 40em) {
  .app-board {
    margin: 5rem auto;
  }
}
@media print, screen and (min-width: 64em) {
  .app-board {
    margin: 7rem auto;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-board {
    padding: 0 15px;
  }
}
@media print, screen and (min-width: 40em) {
  .app-board {
    padding: 0 30px;
  }
}
@media screen and (min-width: 75em) {
  .app-board {
    padding: 0 70px;
  }
}
@media print, screen and (min-width: 64em) {
  .app-board {
    min-height: 300px;
  }
}
.app-board__heading {
  margin: 0 0 1.5rem 0;
  padding: 0;
  font-size: 1.7rem;
  font-weight: normal;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .app-board__heading {
    margin-bottom: 2.25rem;
  }
}

.app-container {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.app-container::before, .app-container::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-container::after {
  clear: both;
}
@media print, screen and (min-width: 40em) {
  .app-container {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-container {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-container {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}

.app-container-block {
  margin: 0;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-container-block {
    margin-bottom: 4rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-container-block {
    margin-bottom: 4rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-container-block {
    margin-bottom: 5rem;
  }
}
.app-container-block__title {
  display: block;
  padding: 0;
  letter-spacing: 1px;
  font-size: 1.125rem;
  font-weight: bold;
  font-style: normal;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-container-block__title {
    margin: 0 0 1.75rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-container-block__title {
    margin: 0 0 3rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-container-block__title {
    margin: 0 0 3rem 0;
  }
}

.ap-disclaimer {
  margin: 0 0 4rem 0;
}
.ap-disclaimer > h2 {
  margin: 0 0 1.5rem 0;
  font-size: 1.125rem;
  text-align: center;
}
.ap-disclaimer ul, .ap-disclaimer ol {
  margin-bottom: 0;
  line-height: 1.3;
}
.ap-disclaimer ul > li, .ap-disclaimer ol > li {
  margin: 0 0 1rem 0;
}
.ap-disclaimer__link {
  display: block;
  margin: 3rem 0 0 0;
  padding: 3rem 0 0 0;
  text-align: center;
  border-top: 1px dashed #7c7c7c;
}

.ap-edit-floatl {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.ap-edit-floatl__mimiclabel {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #fefefe;
}
.ap-edit-floatl label, .ap-edit-floatl__mimiclabel {
  position: absolute;
  top: 1px;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0.5rem;
  line-height: 1.5;
  width: 100%;
  height: 2.125rem;
  pointer-events: none;
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
  color: #7c7c7c;
}
.ap-edit-floatl label,
.ap-edit-floatl input[type=text],
.ap-edit-floatl input[type=email],
.ap-edit-floatl input[type=password],
.ap-edit-floatl textarea,
.ap-edit-floatl select {
  margin: 0;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}
.ap-edit-floatl input[type=text]::-webkit-input-placeholder,
.ap-edit-floatl input[type=email]::-webkit-input-placeholder,
.ap-edit-floatl input[type=password]::-webkit-input-placeholder,
.ap-edit-floatl textarea::-webkit-input-placeholder,
.ap-edit-floatl select::-webkit-input-placeholder {
  -webkit-transition: inherit;
  transition: inherit;
}
.ap-edit-floatl input[type=text]:focus::-webkit-input-placeholder,
.ap-edit-floatl input[type=email]:focus::-webkit-input-placeholder,
.ap-edit-floatl input[type=password]:focus::-webkit-input-placeholder,
.ap-edit-floatl textarea:focus::-webkit-input-placeholder,
.ap-edit-floatl select:focus::-webkit-input-placeholder {
  opacity: 1;
}
.ap-edit-floatl input[type=text]:not(.active) + label.-invisible,
.ap-edit-floatl input[type=email]:not(.active) + label.-invisible,
.ap-edit-floatl input[type=password]:not(.active) + label.-invisible,
.ap-edit-floatl textarea:not(.active) + label.-invisible,
.ap-edit-floatl select:not(.active) + label.-invisible {
  opacity: 1;
}
.ap-edit-floatl input[type=text]:not(.active) + label:not(.-invisible),
.ap-edit-floatl input[type=email]:not(.active) + label:not(.-invisible),
.ap-edit-floatl input[type=password]:not(.active) + label:not(.-invisible),
.ap-edit-floatl textarea:not(.active) + label:not(.-invisible),
.ap-edit-floatl select:not(.active) + label:not(.-invisible) {
  -webkit-transform: translate(0, 0) scale(1);
          transform: translate(0, 0) scale(1);
}
.ap-edit-floatl input[type=text].active + label.-invisible,
.ap-edit-floatl input[type=email].active + label.-invisible,
.ap-edit-floatl input[type=password].active + label.-invisible,
.ap-edit-floatl textarea.active + label.-invisible,
.ap-edit-floatl select.active + label.-invisible {
  opacity: 0;
}
.ap-edit-floatl input[type=text].active + label:not(.-invisible),
.ap-edit-floatl input[type=email].active + label:not(.-invisible),
.ap-edit-floatl input[type=password].active + label:not(.-invisible),
.ap-edit-floatl textarea.active + label:not(.-invisible),
.ap-edit-floatl select.active + label:not(.-invisible) {
  padding: 0;
  font-size: 0.8125rem;
  color: #6646DB;
  height: auto;
  line-height: 1;
  -webkit-transform: translate(0.25rem, -0.7rem) scale(1);
          transform: translate(0.25rem, -0.7rem) scale(1);
}
.ap-edit-floatl input[type=text].active + label:not(.-invisible) > span,
.ap-edit-floatl input[type=email].active + label:not(.-invisible) > span,
.ap-edit-floatl input[type=password].active + label:not(.-invisible) > span,
.ap-edit-floatl textarea.active + label:not(.-invisible) > span,
.ap-edit-floatl select.active + label:not(.-invisible) > span {
  display: inline-block;
  background: #0a0a0a;
}

.app-c-embed {
  margin: 0 0 2rem 0;
  padding: 0;
  line-height: 1.6;
}
.app-c-embed > .video-container {
  margin-bottom: 0;
}
.app-c-embed > p {
  display: block;
  margin: 0.3rem 0 0 0;
  padding: 0.6rem 1rem;
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
}

.app-c-files {
  margin: 0 0 2rem 0;
  padding: 0;
}
.app-c-files > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.app-c-files > ul > li {
  margin: 0;
  padding: 0.7rem 0;
}
.app-c-files > ul > li > a:hover {
  color: white;
  background: #3a3a3a;
}

.app-c-entry {
  margin: 0;
  padding: 0;
  line-height: 1.7;
  font-size: 1.1rem;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
}
.app-c-entry::before, .app-c-entry::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-c-entry::after {
  clear: both;
}
.app-c-entry > :not(.video-container):last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-c-entry h2 {
    margin: 2rem 0 1.3rem 0;
    padding: 0;
    line-height: 1.3;
    font-size: 1.2rem;
    font-weight: normal;
  }
}
@media print, screen and (min-width: 40em) {
  .app-c-entry h2 {
    margin: 3rem 0 2rem 0;
    padding: 0;
    line-height: 1.3;
    font-size: 1.35rem;
    font-weight: normal;
  }
}
.app-c-entry h2:first-child {
  margin-top: 0;
  padding-top: 0;
  border: 0;
}
.app-c-entry h3 {
  margin: 2rem 0 1.5rem 0;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-c-entry h3 {
    font-size: 1rem;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 40em) {
  .app-c-entry h3 {
    font-size: 1.2rem;
    font-weight: bold;
  }
}
.app-c-entry p {
  line-height: inherit;
}
.app-c-entry img {
  display: block;
  margin-bottom: 1.9rem;
}

.app-pagetop {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.5s ease-in-out 0;
  transition: opacity 0.5s ease-in-out 0;
  position: fixed;
  right: 2rem;
  bottom: 2rem;
  z-index: 999;
  margin: 0;
  padding: 0;
  width: 45px;
  height: 45px;
}
.app-pagetop > a {
  display: block;
  margin: 0;
  padding: 0;
  width: 45px;
  height: 45px;
  background: transparent url("../img/pagetop.png?v188fa3d5e45") no-repeat 0 0;
  background-size: 100%;
  opacity: 0.4;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
}
.app-pagetop.active {
  opacity: 1;
  pointer-events: auto;
}

.app-footer-container {
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
  color: #aaaaaa;
}
@media print, screen and (max-width: 39.99875em) {
  .app-footer-container {
    margin: 6rem 0 0 0;
    padding: 3rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-footer-container {
    margin: 5rem 0 0 0;
    padding: 6rem 0 4.5rem 0;
  }
}

.app-footer {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-footer {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-footer {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-footer {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 64em) {
  .app-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
.app-footer__content {
  margin: 0;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-footer__content {
    margin-bottom: 3rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-footer__content {
    margin-bottom: 2rem;
    width: 33.333%;
  }
  .app-footer__content:first-child {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-footer__content {
    width: 20%;
  }
  .app-footer__content:first-child {
    margin-right: auto;
  }
}

.app-footer-nav__title {
  font-size: 100%;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .app-footer-nav__title {
    margin: 0 0 0 0;
    padding: 0 0 1.25rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-footer-nav__title {
    color: #aaaaaa;
    position: relative;
    margin: 0 0 28px 0;
    padding: 0 0 28px 0;
  }
  .app-footer-nav__title:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    border-bottom: 1px solid #4f4f4f;
  }
}
@media print, screen and (min-width: 64em) {
  .app-footer-nav__title {
    color: #aaaaaa;
    position: relative;
    margin: 0 0 28px 0;
    padding: 0 0 28px 0;
    font-size: 87.5%;
  }
  .app-footer-nav__title:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 70px;
    height: 0;
    border-bottom: 1px solid #4f4f4f;
  }
}

.app-footer-nav {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.app-footer-nav > li > a {
  color: #aaaaaa;
}
.app-footer-nav > li > a:hover {
  text-decoration: none;
  background-color: #3a3a3a;
}
@media print, screen and (max-width: 39.99875em) {
  .app-footer-nav {
    border-top: 1px solid #4f4f4f;
  }
  .app-footer-nav > li {
    border-bottom: 1px solid #4f4f4f;
  }
  .app-footer-nav > li > a {
    display: block;
    margin: 0;
    padding: 0.75rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-footer-nav > li {
    margin: 0 0 14px 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-footer-nav {
    max-width: 161px;
    font-size: 87.5%;
  }
}

.app-channels {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.app-channels > li > a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #aaaaaa;
}
.app-channels > li > a > img {
  display: block;
  margin: 0 0.875rem 0 0;
  width: 24px;
}
.app-channels > li > a:hover {
  text-decoration: none;
  color: #EB9F37;
}
@media print, screen and (max-width: 39.99875em) {
  .app-channels > li {
    margin: 0 0 1.5rem 0;
    padding: 0;
  }
  .app-channels > li > a {
    margin: 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-channels {
    margin-bottom: 3rem;
    text-align: center;
  }
  .app-channels > li {
    display: inline-block;
    margin: 0;
    padding: 0 1.25rem;
  }
  .app-channels > li > a {
    margin: 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-channels > li {
    margin: 0 0 1.25rem 0;
    padding: 0;
  }
  .app-channels > li > a {
    margin: 0;
    padding: 0;
  }
}

.app-copyright {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  color: #666;
}
@media print, screen and (min-width: 40em) {
  .app-copyright {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-copyright {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-copyright {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-copyright {
    margin-top: 1.5rem;
  }
}

p.help-text {
  margin-bottom: 1rem;
}

legend.columns {
  margin-bottom: 0;
  line-height: 1.8;
  color: #fefefe;
}

.has-error input:not(:focus),
.has-error select:not(:focus),
.has-error textarea:not(:focus) {
  border-color: #ec5840;
  background-color: #fcedeb;
}
.has-error input:not(:focus)::-webkit-input-placeholder, .has-error select:not(:focus)::-webkit-input-placeholder, .has-error textarea:not(:focus)::-webkit-input-placeholder {
  color: #ec5840;
}
.has-error input:not(:focus)::-moz-placeholder, .has-error select:not(:focus)::-moz-placeholder, .has-error textarea:not(:focus)::-moz-placeholder {
  color: #ec5840;
}
.has-error input:not(:focus):-ms-input-placeholder, .has-error select:not(:focus):-ms-input-placeholder, .has-error textarea:not(:focus):-ms-input-placeholder {
  color: #ec5840;
}
.has-error input:not(:focus)::-ms-input-placeholder, .has-error select:not(:focus)::-ms-input-placeholder, .has-error textarea:not(:focus)::-ms-input-placeholder {
  color: #ec5840;
}
.has-error input:not(:focus)::placeholder,
.has-error select:not(:focus)::placeholder,
.has-error textarea:not(:focus)::placeholder {
  color: #ec5840;
}
.has-error legend,
.has-error label {
  color: #ec5840 !important;
}

.errors {
  display: block;
  margin: -0.5rem 0 1rem 0;
  padding: 0;
  list-style-type: none;
  font-size: 0.75rem;
  font-weight: bold;
  color: #ec5840;
}
.errors + .errors {
  margin-top: -0.75rem;
}

.store-form-title {
  padding: 0 0 1rem 0;
  font-size: 1.25rem;
  font-weight: normal;
  border-bottom: 1px solid #4f4f4f;
}
@media print, screen and (max-width: 39.99875em) {
  .store-form-title {
    margin: 2rem 0 1.5rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-form-title {
    margin: 3rem 0 2rem 0;
  }
}

.store-form-send {
  margin: 2rem 0 0 0;
  padding: 0;
}

@media print, screen and (max-width: 39.99875em) {
  .store-form-control-label {
    color: #fefefe;
  }
  .store-form-control-label > label {
    color: inherit;
  }
}
.store-form-control-options {
  margin: 0 0 1rem 0;
  padding: 0;
  list-style-type: none;
}
.store-form-control-options > li {
  margin: 0 0 0.25rem 0;
}
.store-form-control-options > li input {
  margin-bottom: 0;
}
.store-form-control-options > li:last-child {
  margin-bottom: 0;
}

.store-form-control-helptext {
  font-weight: normal;
  font-style: normal;
  color: #ec5840;
}

.store-form-control-preview > dt {
  font-weight: normal;
}

.store-form-control-password {
  max-width: 15rem;
}

.store-form-input-small {
  max-width: 8rem;
}

.store-form-input-medium {
  max-width: 12rem;
}

.togglepassword {
  margin: -0.7rem 0 1rem 0;
}
.togglepassword > label > input {
  margin-bottom: 0;
}

.video-container,
.media {
  margin-bottom: 1.4rem;
  width: 100%;
}
.video-container iframe,
.video-container object,
.video-container embed,
.video-container video,
.media iframe,
.media object,
.media embed,
.media video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

@media print, screen and (max-width: 63.99875em) {
  .app-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 9999;
    margin: 0 auto;
  }
  .app-menu.expanded {
    display: block;
  }
}
@media print, screen and (min-width: 64em) {
  .app-menu {
    margin: 0 0 0 auto;
  }
}
.app-menu > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
@media print, screen and (max-width: 63.99875em) {
  .app-menu > ul {
    background: #0a0a0a url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
    border-bottom: 1px solid #2a2a2a;
  }
  .app-menu > ul > li {
    margin: 0;
    border-top: 1px solid #2a2a2a;
  }
  .app-menu > ul > li > a {
    display: block;
    padding: 1rem 1rem;
    text-align: center;
  }
  .app-menu > ul > li > a:hover {
    background-color: rgba(90, 90, 90, 0.1);
  }
}
@media print, screen and (min-width: 64em) {
  .app-menu > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .app-menu > ul > li {
    margin: 0 1rem;
    font-size: 0.9375rem;
  }
  .app-menu > ul > li > a {
    padding: 0 0.5rem;
  }
}
@media screen and (min-width: 75em) {
  .app-menu > ul > li {
    font-size: 1rem;
  }
}

.app-menu-icon {
  display: none;
}
@media print, screen and (max-width: 63.99875em) {
  .app-menu-icon {
    position: relative;
    line-height: 1.2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 0 0 auto;
    padding: 0;
    text-align: center;
    color: #fefefe;
    font-size: 0.875rem;
    font-weight: bold;
    cursor: pointer;
  }
  .app-menu-icon__indicator {
    position: relative;
    display: inline-block;
    margin: 0 0.75rem 0 0;
  }
  .app-menu-icon:not(.active) .app-menu-icon__indicator {
    width: 24px;
    height: 20px;
  }
  .app-menu-icon:not(.active) .app-menu-icon__indicator:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 24px;
    height: 20px;
    background: linear-gradient(#fefefe 2px, transparent 2px, transparent 9px, #fefefe 9px, #fefefe 11px, transparent 11px, transparent 18px, #fefefe 18px);
  }
  .app-menu-icon.active .app-menu-icon__indicator {
    width: 24px;
    height: 24px;
    overflow: hidden;
  }
  .app-menu-icon.active .app-menu-icon__indicator::before, .app-menu-icon.active .app-menu-icon__indicator::after {
    content: "";
    position: absolute;
    height: 2px;
    width: 100%;
    top: 50%;
    left: 0;
    margin: auto;
    background: #fefefe;
  }
  .app-menu-icon.active .app-menu-icon__indicator::before {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .app-menu-icon.active .app-menu-icon__indicator::after {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}
.app-post-content {
  line-height: 1.7;
  font-size: 1.1rem;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
}
.app-post-content::before, .app-post-content::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-post-content::after {
  clear: both;
}
.app-post-content > :not(.video-container):last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
.app-post-content h2 {
  position: relative;
}
@media print, screen and (max-width: 39.99875em) {
  .app-post-content h2 {
    margin: 2rem 0 1.3rem 0;
    padding: 0;
    line-height: 1.4;
    font-size: 1.5rem;
    font-weight: normal;
  }
  .app-post-content h2:after {
    margin: 1.125rem 0 0 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-post-content h2 {
    margin: 3rem 0 1.5rem 0;
    padding: 0;
    line-height: 1.4;
    font-size: 1.6rem;
    font-weight: normal;
  }
  .app-post-content h2:after {
    margin: 1.25rem 0 0 0;
  }
}
.app-post-content h2:first-child {
  margin-top: 0;
}
.app-post-content h3 {
  margin: 2rem 0 1.5rem 0;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-post-content h3 {
    font-size: 1.25rem;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 40em) {
  .app-post-content h3 {
    font-size: 1.25rem;
    font-weight: bold;
  }
}
.app-post-content img {
  margin-bottom: 1.7rem;
}
.app-post-content img + br {
  display: none;
}
.app-post-content p {
  margin-bottom: 1.6rem;
  line-height: inherit;
}
.app-post-content p > img {
  margin-bottom: 0 !important;
}
.app-post-content blockquote {
  position: relative;
  clear: both;
  margin: 0 0 1.6rem;
  padding: 1.75rem 2rem;
  border: 0;
  background-color: rgba(90, 90, 90, 0.1);
  font-size: 1.35rem;
  color: #fff;
  quotes: "“" "”";
}
.app-post-content blockquote:before {
  position: absolute;
  top: -0.5rem;
  left: -0.5rem;
  content: open-quote;
  line-height: 0.8;
  font-weight: bold;
  font-size: 2.5em;
}
.app-post-content blockquote * {
  color: inherit !important;
}
.app-post-content blockquote > *:last-child {
  margin-bottom: 0;
}
.app-post-content > figure,
.app-post-content > figure.image {
  display: table;
  margin: 0.5rem 0 1.4rem 0;
}
.app-post-content > figure > img,
.app-post-content > figure.image > img {
  margin: 0;
}
.app-post-content > figure figcaption,
.app-post-content > figure.image figcaption {
  display: block;
  margin: 0.75rem 0 0.25rem 0;
  padding: 0;
  line-height: 1.5;
  font-size: 1rem;
  text-align: inherit;
}
@media print, screen and (min-width: 40em) {
  .app-post-content > figure[style*="float: right;"],
  .app-post-content > figure.image[style*="float: right;"] {
    float: right;
    margin: 0.3rem 0 1.4rem 1.25rem !important;
  }
}
@media print, screen and (min-width: 40em) {
  .app-post-content > figure[style*="float: left;"],
  .app-post-content > figure.image[style*="float: left;"] {
    float: left;
    margin: 0.3rem 1.25rem 1.4rem 0 !important;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-post-content > figure[style*="float: right;"], .app-post-content > figure[style*="float: left;"],
  .app-post-content > figure.image[style*="float: right;"],
  .app-post-content > figure.image[style*="float: left;"] {
    float: none !important;
    margin: 0.3rem auto 1.4rem auto !important;
    max-width: 70%;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-post-content > figure[style*="float: right;"], .app-post-content > figure[style*="float: left;"],
  .app-post-content > figure.image[style*="float: right;"],
  .app-post-content > figure.image[style*="float: left;"] {
    max-width: 45%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-post-content > figure[style*="float: right;"], .app-post-content > figure[style*="float: left;"],
  .app-post-content > figure.image[style*="float: right;"],
  .app-post-content > figure.image[style*="float: left;"] {
    max-width: 37%;
  }
}
.app-post-content > figure[style*="margin: auto;"], .app-post-content > figure[style*="text-align: center;"],
.app-post-content > figure.image[style*="margin: auto;"],
.app-post-content > figure.image[style*="text-align: center;"] {
  margin: 0.5rem auto 1.4rem auto !important;
}
@media print, screen and (max-width: 39.99875em) {
  .app-post-content > figure[style*="margin: auto;"], .app-post-content > figure[style*="text-align: center;"],
  .app-post-content > figure.image[style*="margin: auto;"],
  .app-post-content > figure.image[style*="text-align: center;"] {
    max-width: 70%;
  }
}
.app-post-content > figure.media,
.app-post-content > figure.image.media {
  width: 100%;
}
.app-post-content strong {
  color: white;
  font-weight: bold;
}
.app-post-content strong.is-important {
  color: #ff3366;
  font-weight: normal;
}
.app-post-content a:hover {
  text-decoration: underline;
}

.app-post-footer {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-post-footer {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-post-footer {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-post-footer {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}

.app-post-footer-content.is-bordered {
  border-top: 1px solid #4f4f4f;
}
@media print, screen and (max-width: 39.99875em) {
  .app-post-footer-content {
    padding: 2.5rem 0 0 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-post-footer-content {
    padding: 3rem 0 0 0;
  }
}

.app-post-footer__title {
  line-height: 1.3;
  font-size: 1.2rem;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .app-post-footer__title {
    margin: 0 0 2rem 0;
    padding: 0;
    text-align: center;
  }
}
@media print, screen and (min-width: 40em) {
  .app-post-footer__title {
    margin: 0 0 2.5rem 0;
    padding: 0;
  }
}

.app-products {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0;
  list-style-type: none;
}
@media print, screen and (max-width: 39.99875em) {
  .app-products {
    margin: 0 -8px;
  }
}
@media print, screen and (min-width: 40em) {
  .app-products {
    margin: 0 -15px;
  }
}

.app-products-item {
  display: block;
  margin: 0 0 3em 0;
  text-align: center;
  line-height: 1.4;
}
@media print, screen and (max-width: 39.99875em) {
  .app-products-item {
    padding: 0 8px;
  }
}
@media print, screen and (min-width: 40em) {
  .app-products-item {
    padding: 0 15px;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-products-item {
    width: 50%;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-products-item {
    width: 33.333%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-products-item {
    width: 25%;
  }
}
@media screen and (min-width: 90em) {
  .app-products-item {
    width: 20%;
  }
}
@media screen and (min-width: 75em) {
  .app-products-item {
    margin-bottom: 4rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-products-item__photo {
    position: relative;
    display: block;
    margin: 0 0 0.9rem 0;
    padding: 0 0 56.25% 0;
    height: 0;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .app-products-item__photo > img {
    width: 100%;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-products-item__photo {
    position: relative;
    display: block;
    margin: 0 0 0.9rem 0;
    padding: 0 0 56.25% 0;
    height: 0;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .app-products-item__photo > img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-products-item__photo {
    position: relative;
    display: block;
    margin: 0 0 1rem 0;
    padding: 0 0 56.25% 0;
    height: 0;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .app-products-item__photo > img {
    width: 100%;
  }
}
.app-products-item__brand {
  display: block;
  margin: 0 0 0.35rem 0;
  color: #fc6;
  font-size: 100%;
  font-weight: normal;
}
.app-products-item__name {
  font-size: 100%;
  font-weight: normal;
}
.app-products-item__appendix {
  display: block;
  margin: 0.125rem 0 0 0;
  font-size: 1rem;
  font-weight: normal;
  color: #a2a2a2;
}
.app-products-item > a {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 1.4;
  text-align: center;
  color: #fefefe;
}
.app-products-item > a:hover {
  color: #fefefe;
  text-decoration: none;
}
.app-products-item > a:hover .app-products-item__name {
  background: #3a3a3a;
}

.app-share {
  margin: 0;
  padding: 0;
}
@media print, screen and (max-width: 63.99875em) {
  .app-share__title {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .app-share__title {
    display: inline-block;
    margin: 0 14px 0 0;
    padding: 0;
    line-height: 1.2;
    font-size: 87.5%;
    font-weight: normal;
  }
}
.app-share__channels {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
@media print, screen and (max-width: 39.99875em) {
  .app-share__channels > li {
    margin: 0 1rem;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-share__channels > li {
    margin: 0 1rem;
    padding: 0;
  }
}
.app-share__channels > li > a {
  display: block;
  width: 27px;
  height: 27px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.app-share__channels > li.-twitter > a {
  background-image: url("../img/icon-twitter.png?v189b44cbfa0");
}
.app-share__channels > li.-facebook > a {
  background-image: url("../img/icon-facebook.png?v1891e6f8deb");
}

.app-topbar {
  position: relative;
  margin: 0;
  padding: 0;
  color: #fff;
  background: #0a0a0a url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
}
.app-topbar a {
  color: #fff;
}
.app-topbar a:hover {
  color: #ccc;
}

.app-topbar-container {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 75px;
}
@media print, screen and (min-width: 40em) {
  .app-topbar-container {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-topbar-container {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-topbar-container {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}

.app-topbar-sitename {
  margin: 0 auto 0 0;
  padding: 0;
  display: block;
  width: 138px;
  height: 30px;
}
.app-topbar-sitename > a {
  display: block;
}
.app-topbar-sitename > a > img {
  display: block;
}

.ap-wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
}

.app-about {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.7;
  font-size: 1.1rem;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
}
@media print, screen and (min-width: 40em) {
  .app-about {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-about {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-about {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-about {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-about {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-about {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}
.app-about > h1 {
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-about > h1 {
    margin: 0 0 1rem 0;
    padding: 0 0 1rem 0;
    font-size: 1.3rem;
    font-weight: normal;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-about > h1 {
    margin: 0 0 1rem 0;
    padding: 0 0 1rem 0;
    font-size: 1.5rem;
    font-weight: normal;
  }
}
@media print, screen and (min-width: 64em) {
  .app-about > h1 {
    margin: 0 0 2rem 0;
    padding: 0 0 2rem 0;
    font-size: 2rem;
    font-weight: normal;
    border-bottom: 1px solid #3a3a3a;
  }
}
.app-about > table {
  width: 100%;
}
.app-about > table > tbody > tr * {
  font-weight: normal;
  font-size: inherit;
  font-style: normal;
  text-decoration: none;
  border: 0;
  vertical-align: top;
}
.app-about > table > tbody > tr th *:last-child, .app-about > table > tbody > tr td *:last-child {
  margin-bottom: 0;
}
@media print, screen and (max-width: 63.99875em) {
  .app-about > table > tbody > tr > th,
  .app-about > table > tbody > tr > td {
    display: block;
    margin: 0;
    padding: 0.2rem 0.5rem;
    text-align: left;
  }
  .app-about > table > tbody > tr > th {
    margin-bottom: 0.5rem;
    color: #999;
    background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
  }
  .app-about > table > tbody > tr > td {
    margin: 0 0 1rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-about > table > tbody > tr > th,
  .app-about > table > tbody > tr > td {
    padding: 0.4rem;
  }
  .app-about > table > tbody > tr > th {
    width: 26.754386%;
    text-align: right;
  }
  .app-about > table > tbody > tr > td {
    padding: 0.4rem 0.4rem 0.4rem 60px;
    width: 73.245614%;
  }
}

.app-blog-nav__categories-heading {
  position: relative;
  display: block;
  margin: 0 0 0 2rem;
  padding: 0;
  font-size: 100%;
  font-weight: normal;
  font-style: normal;
  cursor: pointer;
}
@media print, screen and (min-width: 64em) {
  .app-blog-nav__categories-heading:hover {
    background: #3a3a3a;
  }
}
.app-blog-nav__categories-heading:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -18px;
  margin: auto;
  width: 9px;
  height: 9px;
  border: 0;
  border-right: 1px solid white;
  border-bottom: 1px solid white;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: 100%;
          transform-origin: 100%;
}
.app-blog-nav__categories-heading.open:after {
  border: 0;
  border-right: 1px solid white;
  border-top: 1px solid white;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.app-blog-nav__categories-container {
  margin: 0;
  padding: 0;
  height: 0;
  overflow: hidden;
  -webkit-transition-property: height margin-top margin-bottom;
  transition-property: height margin-top margin-bottom;
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
  -webkit-transition-timing-function: ease-in;
          transition-timing-function: ease-in;
}
.app-blog-nav__categories-container.open {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.app-blog-nav__categories {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
  margin: 0 0 0 auto;
  padding: 0;
  list-style-type: none;
  line-height: 1.4;
}
.app-blog-nav__categories > .app-blog-nav__categories__item {
  margin: 0;
  padding: 0;
  text-align: center;
  font-weight: normal;
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog-nav__categories > .app-blog-nav__categories__item {
    width: 50%;
    border-right: 1px solid #2d2d2d;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:nth-child(2n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:nth-child(2n) {
    border-right: 0;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:first-child:before {
    border-top: 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-blog-nav__categories > .app-blog-nav__categories__item {
    width: 33.3333333333%;
    border-right: 1px solid #2d2d2d;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:nth-child(3n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:nth-child(3n) {
    border-right: 0;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:first-child:before {
    border-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-nav__categories > .app-blog-nav__categories__item {
    width: 25%;
    border-right: 1px solid #2d2d2d;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:nth-child(4n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:nth-child(4n) {
    border-right: 0;
  }
  .app-blog-nav__categories > .app-blog-nav__categories__item:first-child:before {
    border-top: 0;
  }
}
.app-blog-nav__categories > .app-blog-nav__categories__item a {
  display: block;
  margin: 0;
  padding: 0.85rem;
  color: #fefefe;
}
.app-blog-nav__categories > .app-blog-nav__categories__item a:hover {
  background: black;
}
.app-blog-nav__categories > .app-blog-nav__categories__item.is-active a {
  color: #666;
}
.app-blog-nav {
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog-nav {
    margin: 0 0 0.8rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-blog-nav {
    margin: 0 0 1rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-nav {
    margin: 0 0 1rem 0;
  }
}
.app-blog-nav a {
  color: white;
}
@media print, screen and (max-width: 63.99875em) {
  .app-blog-nav a:active {
    text-decoration: none;
    background: #3a3a3a;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-nav a:hover {
    text-decoration: none;
    background: #3a3a3a;
  }
}

.app-blog-nav-show {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.app-blog-nav__title {
  display: inline;
  margin: 0;
  padding: 0;
  font-size: 1.2rem;
  font-weight: bold;
}
.app-blog-nav__title > a {
  color: #dfdfdf;
}

.app-blog-show-more {
  margin: 0;
  padding: 3rem 0 0 0;
  border-top: 1px solid #4f4f4f;
  text-align: center;
  font-size: 1.125rem;
  font-weight: bold;
}
.app-blog-show-more > a {
  color: #fefefe;
}
.app-blog-show-more > a:hover {
  background: #3a3a3a;
}

.app-blog-pagination {
  margin: 3rem 0 0 0;
  padding: 0;
  text-align: center;
  font-size: 1.125rem;
  font-weight: bold;
}

.app-blog-pagination__item {
  display: inline-block;
  margin: 0;
  padding: 0 1rem;
}
.app-blog-pagination__item > a {
  color: #fefefe;
}
.app-blog-pagination__item > a:hover {
  background: #3a3a3a;
}

.app-blog-alert {
  margin: 0;
  padding: 1.5rem 0 0 0;
  color: #fc6;
}
.app-blog-alert :last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

.app-noentries {
  margin: 0;
  padding: 2rem 0;
  border-top: 1px solid #4f4f4f;
}

/* @group story */
@media print, screen and (min-width: 40em) {
  .app-stories {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -10px;
    padding: 0;
  }
}
@media screen and (min-width: 75em) {
  .app-stories {
    margin: 0 -20px;
  }
}

.app-story {
  display: block;
}
.app-story::before, .app-story::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-story::after {
  clear: both;
}
.app-story > a {
  display: block;
  color: inherit;
}
.app-story > a:hover {
  text-decoration: none;
}
.app-story > a:hover > .app-story__title > span {
  background: #3a3a3a;
}
.app-story > a:hover > .app-story__description {
  color: #fefefe;
}
@media print, screen and (max-width: 39.99875em) {
  .app-story {
    margin: 0 0 3rem 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-story {
    margin: 0 0 5rem 0;
    padding: 0 20px;
    width: 50%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-story {
    margin: 0 0 5rem 0;
    padding: 0 20px;
    width: 33.333%;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .app-story__cover {
    position: relative;
    display: block;
    margin: 0 0 1rem 0;
    padding: 0 0 56.25% 0;
    height: 0;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .app-story__cover > img {
    width: 100%;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-story__cover {
    position: relative;
    display: block;
    margin: 0 0 1.5rem 0;
    padding: 0 0 56.25% 0;
    height: 0;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .app-story__cover > img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-story__cover {
    position: relative;
    display: block;
    margin: 0 0 1.5rem 0;
    padding: 0 0 56.25% 0;
    height: 0;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .app-story__cover > img {
    width: 100%;
  }
}

.app-story__category {
  display: block;
  font-size: 87.5%;
  color: #ffcc66;
}

.app-story__title {
  display: inline-block;
  padding: 0;
  font-size: 1.2rem;
  font-weight: bold;
}
@media print, screen and (max-width: 63.99875em) {
  .app-story__title {
    margin: 0.5rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-story__title {
    margin: 0.5rem 0 1rem 0;
  }
}

.app-story__description {
  display: block;
  margin: 0;
  padding: 0;
}

/* @end group story */
.app-blog-post-people {
  margin: 3rem 0 0 0;
  padding: 0;
}

.app-blog-post-person {
  position: relative;
  margin: 0;
  padding: 1.5rem 0;
  border-top: 1px dashed #4f4f4f;
}
.app-blog-post-person::before, .app-blog-post-person::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-blog-post-person::after {
  clear: both;
}
@media print, screen and (min-width: 40em) {
  .app-blog-post-person {
    padding: 2rem 0;
  }
}
.app-blog-post-person:first-child {
  border-top: 0;
}
.app-blog-post-person > *:last-child {
  margin-bottom: 0;
}

.app-blog-post-person__name {
  margin: 0 0 1rem 0;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog-post-person__name {
    font-size: 1.5rem;
    text-align: center;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-blog-post-person__name {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-person__name {
    font-size: 1.5rem;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .app-blog-post-person__photo {
    margin: 0 auto 1rem;
    padding: 0;
    width: 240px;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-blog-post-person__photo {
    float: left;
    margin: 0 1.2rem 0.5rem 0;
    padding: 0;
    width: 200px;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-person__photo {
    float: left;
    margin: 0 1.2rem 0.5rem 0;
    padding: 0;
    width: 200px;
  }
}
.app-blog-post-person__photo > img {
  margin: 0;
  padding: 0;
  width: 100%;
}

.app-blog {
  padding: 0 30px;
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog {
    margin: 2rem auto;
  }
}
@media print, screen and (min-width: 40em) {
  .app-blog {
    margin: 3rem auto;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog {
    margin: 6rem auto;
    max-width: 80%;
  }
}
@media screen and (min-width: 75em) {
  .app-blog {
    padding: 0 70px;
    max-width: 1024px;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .app-blog-header {
    margin: 2rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-blog-header {
    margin: 3rem 10px 2.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-header {
    margin: 6rem 10px 3rem;
  }
}
@media screen and (min-width: 75em) {
  .app-blog-header {
    margin: 6rem 0 3rem 0;
  }
}
.app-blog-header:not(.is-category) .app-blog-nav__title {
  font-size: 1.5rem;
}
.app-blog-header:not(.is-category) .app-blog-nav__title > a {
  color: #fefefe;
}

.app-blog-item {
  margin: 0;
  padding: 2rem 0;
  border-bottom: 1px solid #4f4f4f;
}
.app-blog-item:first-of-type {
  border-top: 1px solid #4f4f4f;
}

.app-blog-item__title {
  display: block;
  margin: 0 0 0.75rem 0;
  padding: 0;
  font-size: 1.2rem;
  font-weight: bold;
  font-style: normal;
}
.app-blog-item__title > a {
  color: #fefefe;
}
.app-blog-item__title > a:hover {
  background: #3a3a3a;
}

.app-blog-item__description {
  margin: 0 0 0.25rem 0;
  padding: 0;
}

.app-blog-item__date {
  color: #666;
}

.app-blog-item__category {
  display: inline-block;
  margin: 0 0 0 1rem;
  padding: 0;
  color: #ffcc66;
}
.app-blog-item__category:hover {
  color: #fefefe;
  background: #3a3a3a;
}

.app-blog-category-name {
  margin: 0;
  padding: 0;
  font-size: 1.5rem;
  font-weight: bold;
}
.app-blog-category-name > a {
  color: white;
  border-bottom: 1px dashed #4f4f4f;
}
.app-blog-category-name > a:hover {
  color: white;
  background: #3a3a3a;
}
.app-blog-category-name span {
  margin: 0 0.25rem;
  color: #7c7c7c;
  font-weight: normal;
}

.app-blog-subcategories {
  margin: 0.5rem 0 0 0;
  padding: 0;
}
.app-blog-subcategories > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.app-blog-subcategories > ul::before, .app-blog-subcategories > ul::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-blog-subcategories > ul::after {
  clear: both;
}
.app-blog-subcategories > ul > li {
  float: left;
  margin: 0.75rem 1.5rem 0 0;
  padding: 0;
}
.app-blog-subcategories > ul > li > a {
  color: #999;
}
.app-blog-subcategories > ul > li > a:hover {
  color: white;
  background: #3a3a3a;
}

/* @group stories */
.app-stories--blogindex {
  margin: 0;
  padding: 0;
}
@media print, screen and (min-width: 40em) {
  .app-stories--blogindex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -10px 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-stories--blogindex {
    margin: 0 -10px 0;
  }
}
@media screen and (min-width: 75em) {
  .app-stories--blogindex {
    margin: 0 -20px 0;
  }
}

.app-story--full {
  display: block;
}
.app-story--full::before, .app-story--full::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-story--full::after {
  clear: both;
}
.app-story--full > a {
  display: block;
  color: inherit;
}
.app-story--full > a:hover {
  text-decoration: none;
}
.app-story--full > a:hover > .app-story__title > span {
  background: #3a3a3a;
}
.app-story--full > a:hover > .app-story__description {
  color: #fefefe;
}
@media print, screen and (max-width: 39.99875em) {
  .app-story--full {
    margin: 0 0 3rem 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-story--full {
    margin: 0 0 3rem 0;
    padding: 0 20px;
    width: 50%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-story--full {
    margin: 0 0 4rem 0;
    padding: 0;
    width: 100%;
  }
  .app-story--full::before, .app-story--full::after {
    display: table;
    content: " ";
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .app-story--full::after {
    clear: both;
  }
  .app-story--full > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  .app-story--full > a:hover {
    text-decoration: none;
  }
  .app-story--full > a:hover .app-story__title > span {
    background: #3a3a3a;
  }
  .app-story--full > a:hover .app-story__description {
    color: #fefefe;
  }
  .app-story--full .app-story--full__image {
    position: relative;
    margin: 0;
    padding: 0 20px;
    width: 66.6667%;
    min-height: 338px;
  }
  .app-story--full .app-story--full__content {
    margin: 0;
    padding: 0 20px;
    width: 33.333%;
  }
  .app-story--full .app-story__cover {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px;
    right: 20px;
    content: "";
    margin: auto;
    padding: 0;
    width: auto;
    height: 100%;
  }
  .app-story--full .app-story__category {
    font-size: 1rem;
  }
  .app-story--full .app-story__title {
    margin: 0.5rem 0 1rem 0;
    font-size: 1.75rem;
  }
  .app-story--full .app-story__description {
    line-height: 1.6;
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 75em) {
  .app-story--full {
    margin: 0 0 5rem 0;
  }
  .app-story--full .app-story--full__image {
    min-height: 400px;
  }
  .app-story--full .app-story__category {
    font-size: 1.125rem;
  }
  .app-story--full .app-story__title {
    margin: 0.5rem 0 1rem 0;
    font-size: 2rem;
  }
  .app-story--full .app-story__description {
    font-size: 1.25rem;
  }
}

/* @end group stories */
.app-blog-post-header {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-blog-post-header {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-header {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-blog-post-header {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog-post-header {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-blog-post-header {
    margin-top: 3rem;
    margin-bottom: 2.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-header {
    margin-top: 6rem;
    margin-bottom: 3rem;
  }
}
@media screen and (min-width: 75em) {
  .app-blog-post-header {
    max-width: 1280px;
  }
}

.app-blog-post-cover {
  margin: 0 auto;
  padding: 0;
  max-width: 1920px;
}
.app-blog-post-cover > img {
  width: 100%;
}

.app-blog-post-body {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-blog-post-body {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-body {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-blog-post-body {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog-post-body {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
  .app-blog-post-body > .app-blog-post-sidebar {
    margin: 2.5rem 0 0 0;
    padding: 2.5rem 0 0 0;
    border-top: 1px solid #4f4f4f;
    text-align: center;
  }
  .app-blog-post-body > .app-blog-post-sidebar .app-share {
    display: block;
    margin: 0 auto 0 auto;
    text-align: center;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-blog-post-body {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }
  .app-blog-post-body > .app-blog-post-sidebar {
    margin: 2.5rem 0 0 0;
    padding: 2.5rem 0 0 0;
    border-top: 1px solid #4f4f4f;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-body {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
  .app-blog-post-body > .app-blog-post-sidebar {
    margin: 2.5rem 0 0 0;
    padding: 2.5rem 0 0 0;
    border-top: 1px solid #4f4f4f;
  }
}

.app-blog-post-cover + .app-blog-post-body {
  border-top: 0;
}

.app-blog-post__title {
  margin: 0;
  padding: 0;
  line-height: 1.4;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog-post__title {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 40em) {
  .app-blog-post__title {
    font-size: 2rem;
  }
}
.app-blog-post__lead {
  margin: 1rem 0 0 0;
  line-height: 1.7;
  font-size: 1.1rem;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
  color: #ccc;
}

.app-blog-post__date {
  display: inline-block;
  margin: 1rem 0 0 0;
  padding: 0;
  color: #999;
}

.app-blog-post__category {
  color: #ffcc66;
}
.app-blog-post__category:hover {
  color: white;
  background: #3a3a3a;
}

.app-blog-post__products {
  list-style-type: none;
}
@media print, screen and (max-width: 63.99875em) {
  .app-blog-post__products {
    margin: 1rem 0 0 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post__products {
    margin: 1rem 0 0 0;
    padding: 0;
  }
}
.app-blog-post__products > li > a {
  color: #999;
}
.app-blog-post__products > li > a:hover {
  color: white;
  background: #3a3a3a;
}
@media print, screen and (max-width: 63.99875em) {
  .app-blog-post__products > li {
    margin: 0 0 0.5rem 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post__products > li {
    margin: 0 0 0.25rem 0;
    padding: 0;
  }
}

.app-blog-post-related {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-blog-post-related {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-related {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-blog-post-related {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
.app-blog-post-related > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
}
.app-blog-post-related > ul a {
  color: white;
}
@media print, screen and (max-width: 63.99875em) {
  .app-blog-post-related > ul a:active {
    text-decoration: none;
    background: #3a3a3a;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-related > ul a:hover {
    text-decoration: none;
    background: #3a3a3a;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog-post-related > ul > li {
    margin: 0;
    padding: 0.7rem 0.75rem;
    border-top: 1px solid #222;
  }
}
@media print, screen and (min-width: 40em) {
  .app-blog-post-related > ul > li {
    margin: 0;
    padding: 0.7rem 0.75rem;
    border-top: 1px solid #222;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-related > ul > li {
    padding: 0.7rem 1.5rem;
  }
  .app-blog-post-related > ul > li:last-child {
    padding-bottom: 1.5rem;
  }
}

.app-blog-post-related__title {
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-blog-post-related__title {
    margin: 0;
    padding: 1rem 0.75rem;
    line-height: 1.3;
    font-size: 1.125rem;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 40em) {
  .app-blog-post-related__title {
    margin: 0;
    padding: 1rem 0.75rem;
    line-height: 1.3;
    font-size: 1.125rem;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 64em) {
  .app-blog-post-related__title {
    padding: 1.5rem 1.5rem 1rem 1.5rem;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .app-brand {
    margin: 2rem 0 4rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-brand {
    margin: 5rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-brand {
    margin: 7rem 0 6rem 0;
  }
}
.app-brand__name {
  display: block;
  line-height: 1.2;
  text-align: center;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .app-brand__name {
    margin: 0;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-brand__name {
    margin: 0;
    font-size: 3rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-brand__name {
    margin: 0;
    font-size: 3rem;
  }
}
.app-brand__name > img {
  display: block;
  margin: 0 auto;
  max-width: 255px;
}
@media print, screen and (max-width: 63.99875em) {
  .app-brand__name > img {
    margin-bottom: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-brand__name > img {
    margin-bottom: 1.5rem;
  }
}
.app-brand__description {
  margin: 2rem auto 0 auto;
}
@media print, screen and (min-width: 40em) {
  .app-brand__description {
    margin-top: 2.5rem;
    max-width: 700px;
  }
}

.app-contact {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-contact {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-contact {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-contact {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
.app-contact .help-text {
  display: block;
  margin-top: 0.25rem;
  line-height: 1.4;
}
.app-contact textarea::-webkit-resizer {
  display: none;
}
.app-contact select {
  display: block;
  max-width: 300px;
}
.app-contact.sent {
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-contact.sent {
    margin-top: 3rem;
    margin-bottom: 4rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-contact.sent {
    margin-top: 3rem;
    margin-bottom: 4rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-contact.sent {
    margin-top: 6rem;
    margin-bottom: 8rem;
  }
}

.app-contact__trackingnum {
  font-size: 1.125rem;
}
.app-contact__trackingnum > strong {
  font-size: 1.25rem;
  color: white;
}

.frm-row {
  display: block;
  margin: 0 0 1.5rem 0;
  padding: 0;
}
.frm-row input,
.frm-row select,
.frm-row textarea {
  margin-bottom: 0;
}

.frm-required {
  font-size: 0.8rem;
  color: #FA8E13;
}

/* @group error message */
.frm-error {
  display: block;
  margin: 0.25rem 0 0 0;
  padding: 0;
  font-size: 0.875rem;
  font-weight: normal;
  color: #FA8E13;
}
.frm-error + .frm-error {
  margin-left: 0.5rem;
}
.frm-form-row + .frm-error {
  margin-top: -0.5rem;
  margin-bottom: 1rem;
}

ul.frm-error {
  list-style-type: none;
}

/* @endgroup error message */
.frm-instruction {
  margin: 1rem 0 0 0;
  padding: 0;
  list-style-type: none;
  font-size: 0.875rem;
  color: #7c7c7c;
}
.frm-instruction > li {
  margin-top: 0.25rem;
}
.frm-instruction > li:first-child {
  margin: 0;
}

.frm-radios {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.frm-radios > li {
  margin-top: 0.25rem;
}
.frm-radios > li:first-child {
  margin: 0;
}
.frm-radios input {
  margin-bottom: 0;
}

.frm-hpfield {
  display: none;
}

.frm-action {
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .frm-action {
    margin: 2rem 0 0 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .frm-action {
    margin: 2rem 0 0 0;
  }
}
@media print, screen and (min-width: 64em) {
  .frm-action {
    margin: 2rem 0 0 0;
  }
}

.app-genre__name {
  display: block;
  line-height: 1.2;
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .app-genre__name {
    margin: 2rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-genre__name {
    margin: 5rem 0 2.5rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-genre__name {
    margin: 7rem 0 3.5rem 0;
  }
}
.app-genre__name > small {
  display: block;
  margin: 1rem 0 0 0;
  font-size: 1.125rem;
  font-weight: normal;
}
.app-genre__filter {
  border-bottom: 1px solid #4f4f4f;
}
@media print, screen and (max-width: 39.99875em) {
  .app-genre__filter {
    margin: 0 0 3rem 0;
    padding: 0 0 2rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-genre__filter {
    margin: 0 0 4rem 0;
    padding: 0 0 2rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-genre__filter {
    margin: 0 0 4rem 0;
    padding: 0 0 3.5rem 0;
  }
}
.app-genre__filter > ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style-type: none;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-genre__filter > ul > li {
    display: block;
    margin: 0;
    padding: 0.5rem 1rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-genre__filter > ul > li {
    display: inline-block;
    margin: 0 1rem 1rem 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-genre__filter > ul > li {
    display: inline-block;
    margin: 0 1rem 0.5rem 1rem;
  }
}
.app-genre__filter > ul > li > a {
  color: #fc6;
}
.app-genre__filter > ul > li > a:hover {
  text-decoration: none;
  background: #3a3a3a;
}

/* @group layout */
.l-index-block {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .l-index-block {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .l-index-block {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .l-index-block {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}

.l-index-block__inner {
  margin: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .l-index-block__inner {
    border-top: 1px solid #fff;
    padding: 3rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .l-index-block__inner {
    border-top: 1px solid #7c7c7c;
    padding: 4rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .l-index-block__inner {
    border-top: 1px solid #4f4f4f;
    padding: 4.5rem 0;
  }
}

/* @end group layout */
/* @group top-story */
.app-top-story {
  margin: 0 auto;
  width: 100%;
  max-width: 1920px;
  padding: 0;
}
@media print, screen and (max-width: 63.99875em) {
  .app-top-story {
    margin-bottom: 5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-top-story {
    margin-bottom: 7rem;
  }
}
@media screen and (min-width: 1920px) {
  .app-top-story {
    margin-top: 42px;
    padding: 0 42px;
  }
}

.app-top-story__cover {
  position: relative;
  display: block;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-top-story__cover {
    margin: 0 0 1.5rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-top-story__cover {
    margin: 0 0 2.5rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-top-story__cover {
    margin: 0 0 3rem 0;
    width: 100%;
    height: 535px;
    overflow: hidden;
  }
  .app-top-story__cover > img {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    min-width: 100%;
  }
}
@media screen and (min-width: 75em) {
  .app-top-story__cover {
    height: 640px;
  }
}
@media screen and (min-width: 1920px) {
  .app-top-story__cover {
    height: 728px;
  }
}
.app-top-story__describes {
  margin: 0 auto;
  padding: 0;
  max-width: 728px;
  text-align: center;
}
@media print, screen and (max-width: 63.99875em) {
  .app-top-story__describes {
    padding: 0 30px;
  }
}

.app-top-story__title {
  display: block;
  margin: 0 0 21px 0;
  padding: 0;
  font-weight: bold;
  color: #fefefe;
}
@media print, screen and (max-width: 39.99875em) {
  .app-top-story__title {
    line-height: 36px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 40em) {
  .app-top-story__title {
    line-height: 48px;
    font-size: 2.3rem;
  }
}
.app-top-story__title > a {
  color: #fefefe;
}
.app-top-story__title > a:hover {
  text-decoration: none;
  background: #3a3a3a;
}

.app-top-story__description {
  margin: 0;
  padding: 0;
}
@media print, screen and (min-width: 64em) {
  .app-top-story__description {
    font-size: 1.2rem;
  }
}

/* @end group top-story */
/* @group second-story */
.app-second-story {
  margin: 0;
  padding: 0;
  text-align: center;
}
.app-second-story > a {
  display: block;
  color: inherit;
}
.app-second-story > a:hover {
  text-decoration: none;
}
.app-second-story > a:hover > .app-second-story__title > span {
  background: #3a3a3a;
}
.app-second-story > a:hover > .app-second-story__description {
  color: #fefefe;
}

.app-second-story__cover {
  position: relative;
  display: block;
  margin: 0 0 1.7rem 0;
  padding: 0;
}
@media print, screen and (min-width: 64em) {
  .app-second-story__cover {
    height: 535px;
    overflow: hidden;
  }
  .app-second-story__cover > img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    min-width: 100%;
  }
}
@media screen and (min-width: 75em) {
  .app-second-story__cover {
    height: 640px;
  }
}
@media screen and (min-width: 1920px) {
  .app-second-story__cover {
    height: 728px;
  }
}
.app-second-story__title {
  display: block;
  margin: 0 auto 1rem auto;
  padding: 0;
  font-weight: bold;
  color: #fefefe;
}
@media print, screen and (max-width: 63.99875em) {
  .app-second-story__title {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-second-story__title {
    font-size: 2rem;
  }
}
@media screen and (min-width: 75em) {
  .app-second-story__title {
    max-width: 90%;
  }
}

.app-second-story__description {
  margin: 0 auto;
  padding: 0;
}
@media print, screen and (min-width: 64em) {
  .app-second-story__description {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 75em) {
  .app-second-story__description {
    max-width: 80%;
  }
}

/* @end group second-story */
/* @group headline stories */
/* @end group headline stories */
/* @group information, deals, events */
.app-news {
  margin: 0 auto 3rem auto;
  padding: 0;
  max-width: 768px;
}
@media print, screen and (max-width: 39.99875em) {
  .app-news {
    margin-bottom: 2.25rem;
  }
  .app-news:last-child {
    margin-bottom: 1rem;
  }
}
@media print, screen and (min-width: 40em) {
  .app-news {
    margin-bottom: 3.5rem;
  }
  .app-news:last-child {
    margin-bottom: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-news {
    margin-bottom: 4.5rem;
  }
  .app-news:last-child {
    margin-bottom: 2rem;
  }
}

.app-news__index {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.app-news__index > li {
  margin: 0;
  padding: 14px 7px;
  line-height: 1.4;
  border-top: 1px dashed #4f4f4f;
}
.app-news__index > li:last-child {
  border-bottom: 1px dashed #4f4f4f;
}
.app-news__index > li > a {
  color: white;
}
.app-news__index > li > a:hover {
  text-decoration: none;
  background: #3a3a3a;
}

/* @end group information, deals, events */
.app-block-title {
  display: block;
  padding: 0;
  letter-spacing: 1px;
  font-size: 1.5rem;
  font-weight: bold;
  font-style: normal;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-block-title {
    margin: 0 0 1.75rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-block-title {
    margin: 0 0 3rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-block-title {
    margin: 0 0 4rem 0;
  }
}
.app-block-title span:last-child {
  letter-spacing: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-block-title span:last-child {
    display: block;
    margin-top: 7px;
    font-size: 100%;
    font-weight: normal;
  }
  .app-block-title span:last-child > a {
    color: #fefefe;
    text-decoration: underline;
  }
  .app-block-title span:last-child > a:hover {
    background: #3a3a3a;
  }
}
@media print, screen and (min-width: 40em) {
  .app-block-title span:last-child {
    margin-left: 21px;
    font-size: 100%;
    font-weight: normal;
  }
  .app-block-title span:last-child > a {
    color: #fefefe;
  }
  .app-block-title span:last-child > a:hover {
    text-decoration: none;
    background: #3a3a3a;
  }
}

/* @group videos */
.app-stories.app-videos {
  margin: 0;
  padding: 0;
}
@media print, screen and (max-width: 63.99875em) {
  .app-stories.app-videos {
    display: block;
  }
}
@media print, screen and (min-width: 64em) {
  .app-stories.app-videos {
    margin: 0 -15px;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .app-stories.app-videos > .app-story {
    padding: 0;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-stories.app-videos > .app-story {
    margin-bottom: 0;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .app-stories.app-videos > .app-story > .flex-video, .app-stories.app-videos > .app-story > .video-container,
  .app-stories.app-videos > .app-story > .media {
    margin-bottom: 14px;
  }
}
@media print, screen and (min-width: 64em) {
  .app-stories.app-videos > .app-story > .flex-video, .app-stories.app-videos > .app-story > .video-container,
  .app-stories.app-videos > .app-story > .media {
    margin-bottom: 28px;
  }
}

.app-more-videos {
  display: block;
  padding: 0;
  text-align: center;
  font-weight: normal;
}
@media print, screen and (max-width: 39.99875em) {
  .app-more-videos {
    margin: 3rem 0 0 0;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-more-videos {
    margin: 4rem 0 0 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-more-videos {
    margin: 5rem 0 0 0;
  }
}
.app-more-videos > a {
  display: inline-block;
  margin: 0;
  padding: 0 0 5px 0;
  color: #fefefe;
  border-bottom: 2px solid #fefefe;
}
.app-more-videos > a:hover {
  text-decoration: none;
}
.app-more-videos > a > img {
  display: block;
  margin: 0 auto 0.75rem auto;
  width: 60px;
}

/* @end group videos */
/* @group media information */
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-media-infos {
    padding: 0 28px;
  }
}
@media print, screen and (min-width: 64em) {
  .app-media-infos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.app-media-info {
  margin: 0 auto;
  padding: 0;
  max-width: 728px;
  -ms-flex-preferred-size: 768px;
      flex-basis: 768px;
}
.app-media-info::before, .app-media-info::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-media-info::after {
  clear: both;
}
@media print, screen and (max-width: 63.99875em) {
  .app-media-info.x2:first-child {
    margin-bottom: 4rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-media-info.x2 {
    margin: 0;
    padding: 0 15px;
    width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}

.app-media-info__image {
  width: 160px;
}
@media print, screen and (max-width: 39.99875em) {
  .app-media-info__image {
    margin: 0 auto 21px auto;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-media-info__image {
    float: left;
    margin: 0 28px 7px 0;
    padding: 0;
  }
}

@media print, screen and (min-width: 40em) {
  .app-media-info__describes {
    margin-left: 188px;
  }
}

.app-media-info__title {
  margin: 0 0 21px 0;
  padding: 0;
  font-size: 100%;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .app-media-info__title {
    text-align: center;
  }
}

.app-media-info__description {
  margin: 0;
  padding: 0;
}
.app-media-info__description > *:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

/* @end group media information */
/* @group new entry */
.app-p-entry {
  margin: 0;
  padding: 0;
  line-height: 1.7;
  font-size: 1.1rem;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
}
.app-p-entry::before, .app-p-entry::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-p-entry::after {
  clear: both;
}
@media print, screen and (min-width: 40em) {
  .app-p-entry {
    font-size: 1.125rem;
  }
}
.app-p-entry > *:last-child {
  margin-bottom: 0;
}

.app-p-heading--l {
  clear: both;
}
@media print, screen and (max-width: 39.99875em) {
  .app-p-heading--l {
    margin: 2.5rem 0 1.75rem 0;
    padding: 0;
    line-height: 1.5;
    font-size: 1.35rem;
    font-weight: normal;
    font-style: normal;
  }
  .app-p-heading--l.bordered {
    padding: 2rem 0 0 0;
    border-top: 1px solid #4f4f4f;
  }
}
@media print, screen and (min-width: 40em) {
  .app-p-heading--l {
    margin: 2.5rem 0 2.5rem 0;
    padding: 0;
    line-height: 1.5;
    font-size: 1.55rem;
    font-weight: normal;
    font-style: normal;
  }
  .app-p-heading--l.bordered {
    padding: 2.5rem 0 0 0;
    border-top: 1px solid #4f4f4f;
  }
  .app-p-figs-container.center + .app-p-heading--l, .app-p-figs-container.full + .app-p-heading--l {
    margin-top: 2.1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-p-heading--l.narrow {
    width: 70%;
    margin-right: auto;
    margin-left: auto;
  }
}
.app-p-heading--l:first-child {
  margin-top: 0;
  padding-top: 0;
  border: 0;
}

.app-p-heading--m {
  clear: both;
}
@media print, screen and (max-width: 39.99875em) {
  .app-p-heading--m {
    margin: 2rem 0 1.3rem 0;
    padding: 0;
    line-height: 1.5;
    font-size: 1.2rem;
    font-weight: bold;
    font-style: normal;
  }
}
@media print, screen and (min-width: 40em) {
  .app-p-heading--m {
    margin: 2.5rem 0 1.3rem 0;
    padding: 0;
    line-height: 1.5;
    font-size: 1.25rem;
    font-weight: bold;
    font-style: normal;
  }
  .app-p-figs-container.center + .app-p-heading--m, .app-p-figs-container.full + .app-p-heading--m {
    margin-top: 2.1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-p-heading--m.narrow {
    width: 70%;
    margin-right: auto;
    margin-left: auto;
  }
}

.app-p-figs-container {
  margin: 0 auto;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-p-figs-container {
    padding: 0.35rem 0 1.4rem 0;
  }
  .app-p-figs-container.center, .app-p-figs-container.left, .app-p-figs-container.right {
    max-width: 70%;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-p-figs-container.left, .app-p-figs-container.right {
    max-width: 40%;
  }
}
@media print, screen and (min-width: 40em) {
  .app-p-figs-container.center {
    max-width: 70%;
  }
  .app-p-figs-container.center, .app-p-figs-container.full {
    padding: 0 0 1.8rem 0;
  }
  .app-p-figs-container.full {
    width: 100%;
  }
  .app-p-figs-container.full img {
    width: 100%;
  }
  .app-p-figs-container.left, .app-p-figs-container.right {
    padding: 0.35rem 0 1.5rem 0;
  }
  .app-p-figs-container.left {
    float: left;
    margin-right: 1.4rem;
  }
  .app-p-figs-container.right {
    float: right;
    margin-left: 1.4rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-p-figs-container.left, .app-p-figs-container.right {
    max-width: 34%;
  }
  .app-p-figs-container.left[data-enable-slider=true], .app-p-figs-container.right[data-enable-slider=true] {
    width: 100%;
  }
}
.app-p-figs-container[data-enable-slider=false] .app-p-figs .app-p-figs__item + .app-p-figs__item {
  margin-top: 1.25rem;
}
.app-p-figs-container[data-enable-slider=false].center .app-p-figs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.app-p-figs-container[data-enable-slider=false].center .app-p-figs .app-p-figs__item {
  margin-top: 0 !important;
  padding: 0 15px !important;
}
.app-p-figs-container[data-enable-slider=true] .app-p-figs .app-p-figs__item {
  width: 100%;
}
.app-p-figs-container[data-enable-slider=true] .app-p-figs .app-p-figs__item img {
  margin: 0 auto;
}

.app-p-figs .app-p-figs__item {
  margin: 0;
  padding: 0;
}
.app-p-figs .app-p-figs__item.slick-slide {
  margin-bottom: 0;
}
.app-p-figs .app-p-figs__item figcaption {
  display: block;
  margin: 0.5rem 0 0.25rem 0;
  padding: 0;
  line-height: 1.5;
  color: #bbb;
  font-size: 0.875rem;
}

.app-p-set::before, .app-p-set::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-p-set::after {
  clear: both;
}
@media print, screen and (min-width: 64em) {
  .app-p-set.narrow {
    width: 70%;
    margin: 0 auto;
  }
}

.app-p-table {
  margin: 0 0 1.4rem 0;
  padding: 0;
  width: 100%;
  border-spacing: 0;
  font-size: 1.125rem;
}
.app-p-table > tbody > tr > th > *:last-child,
.app-p-table > tbody > tr > td > *:last-child {
  margin-bottom: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-p-table {
    border-top: 1px dashed #4f4f4f;
  }
  .app-p-table > tbody > tr > th,
  .app-p-table > tbody > tr > td {
    font-size: inherit;
    font-weight: normal;
    text-align: left;
  }
  .app-p-table > tbody > tr > th {
    display: block;
    margin: 0;
    padding: 0.75rem 0 0.125rem 0;
    color: #a2a2a2;
  }
  .app-p-table > tbody > tr > td {
    display: block;
    margin: 0;
    padding: 0 0 0.75rem 0;
    border-bottom: 1px dashed #4f4f4f;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-p-table > tbody > tr > th {
    width: 13rem;
  }
}
@media print, screen and (min-width: 40em) {
  .app-p-table {
    border-top: 1px dashed #4f4f4f;
  }
  .app-p-table > tbody > tr > th,
  .app-p-table > tbody > tr > td {
    margin: 0;
    line-height: 1.4;
    font-size: inherit;
    font-weight: normal;
    border-bottom: 1px dashed #4f4f4f;
    vertical-align: top;
    text-align: left;
  }
  .app-p-table > tbody > tr > th {
    padding: 0.75rem;
  }
  .app-p-table > tbody > tr > td {
    padding: 0.75rem;
    border-left: 1px dashed #4f4f4f;
  }
}
@media print, screen and (min-width: 64em) {
  .app-p-table > tbody > tr > th {
    width: 18rem;
  }
}

/* @end group new entry */
.app-product__cover {
  margin: 0 auto;
  padding: 0;
  width: 100%;
  max-width: 1920px;
}
.app-product__cover .app-product__coverphotos {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0;
  width: 100%;
}
.app-product__cover .app-product__coverphotos__item {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .app-product__cover {
    height: 535px;
    overflow: hidden;
  }
  .app-product__cover .app-product__coverphotos__item {
    height: 535px;
  }
  .app-product__cover .app-product__coverphotos__item > img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 100%;
  }
}
@media screen and (min-width: 75em) {
  .app-product__cover {
    height: 640px;
  }
  .app-product__cover .app-product__coverphotos__item {
    height: 640px;
  }
}
@media screen and (min-width: 1920px) {
  .app-product__cover {
    padding: 0 42px;
    height: 728px;
  }
  .app-product__cover .app-product__coverphotos__item {
    height: 728px;
  }
}

/* @group header */
.app-product__header::before, .app-product__header::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-product__header::after {
  clear: both;
}
@media print, screen and (max-width: 39.99875em) {
  .app-product__header {
    margin: 3rem 0 0 0;
    padding: 0;
  }
  .app-product__cover + .app-product__header {
    margin-top: 2.5rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-product__header {
    margin: 4rem 0 1.5rem 0;
    padding: 0;
  }
  .app-product__cover + .app-product__header {
    margin-top: 3rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__header {
    margin: 5rem 0 0 0;
    padding: 0;
  }
  .app-product__cover + .app-product__header {
    margin-top: 3.5rem;
  }
}

.app-product__header-inner {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-product__header-inner {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__header-inner {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-product__header-inner {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}

.app-product__namegroup {
  display: block;
  margin: 0 auto;
  padding: 0;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-product__namegroup {
    margin: 0 auto 0.5rem auto;
  }
  .app-product__namegroup.-cover {
    margin-bottom: 3rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-product__namegroup {
    margin: 0 auto 0 auto;
  }
  .app-product__namegroup.-cover {
    margin-bottom: 3rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__namegroup {
    margin: 0 auto 0 auto;
  }
  .app-product__namegroup.-cover {
    margin-bottom: 4.25rem;
  }
}
@media screen and (min-width: 90em) {
  .app-product__namegroup.-cover {
    margin-bottom: 5rem;
  }
}

.app-product__brand {
  display: block;
  margin: 0;
  padding: 0;
  font-size: 21px;
  font-weight: normal;
}
.app-product__brand > a {
  color: #ccc;
}
.app-product__brand > a:hover {
  background: #3a3a3a;
}

.app-product__name {
  display: block;
  line-height: 1.4;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .app-product__name {
    margin: 0.35rem auto 0 auto;
    font-size: 1.8rem;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product__name {
    margin: 0.5rem 0 0 0;
    padding: 0;
    font-size: 2.65rem;
  }
}

.app-product__name-appendix {
  display: block;
  font-size: 1.125rem;
  font-weight: normal;
}
@media print, screen and (max-width: 39.99875em) {
  .app-product__name-appendix {
    margin: 0.5rem 0 0 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product__name-appendix {
    margin: 0.5rem 0 0 0;
    padding: 0;
  }
}

/* @end group header */
/* @group nav */
@media print, screen and (max-width: 39.99875em) {
  .app-product-nav {
    margin: 2rem 0 0 0;
    padding: 0;
  }
  .app-product-nav .app-share {
    display: block;
    margin: 0 auto 2rem auto;
    text-align: center;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product-nav {
    margin: 3rem 0 0 0;
    padding: 0 0 3rem 0;
    border-bottom: 1px solid #4f4f4f;
  }
  .app-product-nav .app-share {
    display: block;
    margin: 0 auto 2rem auto;
    text-align: center;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .app-product__menu {
    margin: 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-product__menu {
    margin: 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__menu {
    margin: 0.5rem 0;
    padding: 0;
  }
}

.app-product__menu--catalog a {
  color: white;
}
@media print, screen and (max-width: 63.99875em) {
  .app-product__menu--catalog a:active {
    text-decoration: none;
    background: #3a3a3a;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__menu--catalog a:hover {
    text-decoration: none;
    background: #3a3a3a;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-product__menu--catalog {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
    margin: 0;
    padding: 0;
    list-style-type: none;
    line-height: 1.4;
  }
  .app-product__menu--catalog > li {
    width: 50%;
    border-right: 1px solid #2d2d2d;
  }
  .app-product__menu--catalog > li:nth-child(2n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-product__menu--catalog > li:nth-child(2n) {
    border-right: 0;
  }
  .app-product__menu--catalog > li:first-child:before {
    border-top: 0;
  }
  .app-product__menu--catalog > li a {
    display: block;
    margin: 0;
    padding: 0.85rem;
    color: #fefefe;
  }
  .app-product__menu--catalog > li a:hover {
    background: black;
  }
  .app-product__menu--catalog > li.is-active a {
    color: #666;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product__menu--catalog {
    margin: 0;
    padding: 0;
    list-style-type: none;
    border-top: 1px solid #4f4f4f;
    font-size: 100%;
    text-align: center;
  }
  .app-product__menu--catalog::before, .app-product__menu--catalog::after {
    display: table;
    content: " ";
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .app-product__menu--catalog::after {
    clear: both;
  }
  .app-product__menu--catalog:first-child {
    border-top: 0;
  }
  .app-product__menu--catalog:last-child {
    margin-bottom: 0;
    border-bottom: 0;
  }
  .app-product__menu--catalog > li {
    display: inline-block;
    margin: 0 1.5rem 0 0;
    padding: 0.6rem 0;
    line-height: 1.3;
  }
  .app-product__menu--catalog > li:last-child {
    margin-right: 0;
  }
  .app-product__menu--catalog > li > a {
    display: block;
  }
  .app-product__menu--catalog > li.is-active > a {
    color: #7c7c7c;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__menu--catalog {
    font-size: 1.125rem;
  }
}

/* @end group nav */
/* @group body */
.app-product__content {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-product__content {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__content {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-product__content {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-product__content {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product__content {
    margin-top: 3rem;
    margin-bottom: 4rem;
  }
}

@media print, screen and (max-width: 63.99875em) {
  .app-chapter-index {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .app-chapter-index {
    margin: 0 auto 3rem auto;
    padding: 0;
    width: 100%;
    list-style-type: none;
    text-align: center;
  }
  .app-chapter-index::before, .app-chapter-index::after {
    display: table;
    content: " ";
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .app-chapter-index::after {
    clear: both;
  }
  .app-chapter-index > li {
    position: relative;
    display: inline-block;
    margin: 0 42px 0 0;
    padding: 3px 0;
  }
  .app-chapter-index > li:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: -22px;
    margin: auto;
    width: 1px;
    height: 16px;
    background-color: #4d4d4d;
    -webkit-transform: rotate(15deg) translateY(-2px);
            transform: rotate(15deg) translateY(-2px);
  }
  .app-chapter-index > li:last-child:after {
    display: none;
  }
  .app-chapter-index > li > a {
    color: #9f9f9f;
  }
  .app-chapter-index > li > a:hover {
    color: white;
  }
}

/* @group tabpanel */
.app-product__panel {
  display: none;
}
.app-product__panel[aria-selected=true] {
  display: block;
}

@media print, screen and (max-width: 39.99875em) {
  .app-product__panel__title {
    margin: 0 0 1.5rem 0;
    padding: 0;
    line-height: 1.3;
    font-size: 1.35rem;
    font-weight: normal;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product__panel__title {
    margin: 0 0 3rem 0;
    padding: 0;
    line-height: 1.3;
    font-size: 1.5rem;
    font-weight: normal;
  }
}

/* @end group tabpanel */
/* @end group body */
/* @group banner */
.app-product__footer {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-product__footer {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__footer {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-product__footer {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .app-product__footer__heading {
    margin: 2.5rem 0 1.75rem 0;
    padding: 0;
    line-height: 1.5;
    font-size: 1.35rem;
    font-weight: normal;
    font-style: normal;
  }
  .app-product__footer__heading:first-child {
    padding: 2rem 0 0 0;
    border-top: 1px solid #4f4f4f;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product__footer__heading {
    margin: 2.5rem 0 2.5rem 0;
    padding: 0;
    line-height: 1.5;
    font-size: 1.55rem;
    font-weight: normal;
    font-style: normal;
  }
  .app-product__footer__heading:first-child {
    padding: 2.5rem 0 0 0;
    border-top: 1px solid #4f4f4f;
  }
}

.app-product__banners {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media print, screen and (max-width: 39.99875em) {
  .app-product__banners {
    margin: 0 -7.5px;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product__banners {
    margin: 0 -15px;
  }
}

.app-product__banner {
  display: block;
  margin: 0 0 30px 0;
  color: inherit;
}
.app-product__banner > img {
  margin: 0 0 0.5rem 0;
  width: 100%;
}
.app-product__banner:hover {
  text-decoration: none;
}
.app-product__banner:hover > span {
  color: #fefefe;
  background: #3a3a3a;
}
@media print, screen and (max-width: 39.99875em) {
  .app-product__banner {
    padding: 0 7.5px;
    width: 50%;
  }
}
@media print, screen and (min-width: 40em) {
  .app-product__banner {
    padding: 0 15px;
    width: 33.333%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product__banner {
    width: 25%;
  }
}

/* @end group banner */
/* @group price */
.app-product-price__photo {
  display: none;
}

.app-product-price__name {
  margin: 0 0 1.25rem 0;
  padding: 0;
  font-size: 1.4rem;
  font-weight: bold;
}

.app-product-price__tag {
  font-weight: normal;
}

.app-product-price__description {
  display: block;
  margin: 1rem 0;
  padding: 0;
}

.app-product-price__stores {
  margin: 1.5rem 0 0 0;
  padding: 0;
}
.app-product-price__stores > dt {
  margin: 0 0 1rem 0;
  padding: 0;
  color: #fc6;
  font-weight: normal;
}
.app-product-price__stores > dd > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.app-product-price__stores > dd > ul a {
  color: white;
}
@media print, screen and (max-width: 63.99875em) {
  .app-product-price__stores > dd > ul a:active {
    text-decoration: none;
    background: #3a3a3a;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product-price__stores > dd > ul a:hover {
    text-decoration: none;
    background: #3a3a3a;
  }
}
.app-product-price__stores > dd > ul > li {
  margin: 0.7rem 0 0 0;
  padding: 0 0 0 18px;
  background: transparent url("../img/arrow.png?v188fa3d5e43") no-repeat 0 50%;
}

@media print, screen and (max-width: 39.99875em) {
  .app-product-price {
    margin: 2rem 0 0 0;
    padding: 2rem 0 0 0;
    border-top: 1px solid #4f4f4f;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-product-price {
    margin: 0 0 2rem 0;
    padding: 0 0 2rem 0;
    border-bottom: 1px solid #4f4f4f;
  }
  .app-product-price::before, .app-product-price::after {
    display: table;
    content: " ";
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .app-product-price::after {
    clear: both;
  }
  .app-product-price:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
  }
  .app-product-price__name {
    margin: 0 0 1.5rem 0;
  }
  .app-product-price__price {
    float: left;
    margin: 0;
    padding: 0 15px 0 0;
    width: 50%;
  }
  .app-product-price__stores {
    float: right;
    margin: 0;
    padding: 0 0 0 15px;
    width: 50%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-product-price {
    position: relative;
    margin: 0 0 3rem 0;
    padding: 0 0 3rem 300px;
    min-height: 152px;
    border-bottom: 1px solid #4f4f4f;
  }
  .app-product-price::before, .app-product-price::after {
    display: table;
    content: " ";
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .app-product-price::after {
    clear: both;
  }
  .app-product-price:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
  }
  .app-product-price__photo {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 270px;
  }
  .app-product-price__photo > img {
    width: 100%;
  }
  .app-product-price__name {
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
  }
}
/* @end group price */
.app-product__deals {
  margin: 0;
  padding: 0;
  text-align: center;
}
.app-product__cover + .app-product__deals {
  margin: 0 auto;
  padding: 0;
  max-width: 1920px;
}
@media screen and (min-width: 1920px) {
  .app-product__cover + .app-product__deals {
    padding: 0 42px;
  }
}
.app-product__deals > a {
  display: block;
  margin: 0;
  padding: 0.75rem 15px;
  color: white;
  background: #33acf5;
  color: white;
  font-size: 1.124rem;
}
.app-product__deals > a:hover {
  background: #0a86d1;
}
.app-product__deals > a > span {
  padding-left: 24px;
  background: transparent url("../img/ribbon.png?v188fa3d5e45") no-repeat 0 50%;
}
.app-product__deals > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  padding: 0;
  list-style-type: none;
  max-width: 1920px;
}
.app-product__deals > ul > li {
  margin: 0;
  padding: 0;
  width: 50%;
}
.app-product__deals > ul > li > a {
  display: block;
  margin: 0;
  padding: 0.5rem 15px;
  color: white;
}

.app-productIndex {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-productIndex {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-productIndex {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-productIndex {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}

.app-productIndex-block {
  margin: 0;
}
.app-productIndex-block:first-child {
  border-top: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-productIndex-block {
    border-top: 1px solid #4f4f4f;
    padding: 3rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-productIndex-block {
    border-top: 1px solid #4f4f4f;
    padding: 4rem 0 1rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-productIndex-block {
    border-top: 1px solid #4f4f4f;
    padding: 4.5rem 0 2rem 0;
  }
}
.app-productIndex-block__title {
  display: block;
  padding: 0;
  letter-spacing: 3px;
  font-weight: bold;
  font-style: normal;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-productIndex-block__title {
    font-size: 1rem;
    margin: 0 0 1.75rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-productIndex-block__title {
    font-size: 1rem;
    margin: 0 0 3rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-productIndex-block__title {
    margin: 0 0 4rem 0;
  }
}
@media screen and (min-width: 75em) {
  .app-productIndex-block__title {
    font-size: 1.125rem;
    margin: 0 0 4.5rem 0;
  }
}

.app-productIndex-categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0;
  list-style-type: none;
}
@media print, screen and (max-width: 39.99875em) {
  .app-productIndex-categories {
    margin: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .app-productIndex-categories {
    margin: 0 -15px;
  }
}

.app-productIndex-category {
  display: block;
  margin: 0;
  text-align: center;
  line-height: 1.4;
}
@media print, screen and (max-width: 39.99875em) {
  .app-productIndex-category {
    padding: 0 8px;
  }
}
@media print, screen and (min-width: 40em) {
  .app-productIndex-category {
    padding: 0 15px;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-productIndex-category {
    width: 50%;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-productIndex-category {
    width: 33.333%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-productIndex-category {
    width: 25%;
  }
}
@media screen and (min-width: 90em) {
  .app-productIndex-category {
    width: 20%;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-productIndex-category {
    padding: 0;
    width: 100%;
  }
}
@media print, screen and (min-width: 40em) {
  .app-productIndex-category {
    margin-bottom: 3rem;
  }
}
.app-productIndex-category > a {
  display: block;
  margin: 0;
  padding: 0;
  color: #fefefe;
}
@media print, screen and (max-width: 39.99875em) {
  .app-productIndex-category > a {
    margin: 0 0 1px 0;
    padding: 14px 0;
    background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
  }
}
.app-productIndex-category > a:hover {
  text-decoration: none;
}
.app-productIndex-category > a:hover .app-productIndex-category__name {
  background: #3a3a3a;
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-productIndex-category__image {
    position: relative;
    display: block;
    margin: 0 0 0.9rem 0;
    padding: 0 0 56.25% 0;
    height: 0;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .app-productIndex-category__image > img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-productIndex-category__image {
    position: relative;
    display: block;
    margin: 0 0 1rem 0;
    padding: 0 0 56.25% 0;
    height: 0;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .app-productIndex-category__image > img {
    width: 100%;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-productIndex-category__image {
    display: none;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-search {
    margin: 3rem 0 3.5rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-search {
    margin: 5rem 0 3rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-search {
    margin: 7rem 0 5rem 0;
  }
}
.app-search__title {
  display: block;
  margin: 0;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .app-search__title {
    margin-bottom: 1rem;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-search__title {
    margin-bottom: 1.5rem;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-search__title {
    margin-bottom: 2rem;
    font-size: 1.25rem;
  }
}
.app-search__notfound {
  text-align: center;
}
.app-search__form {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 20rem;
}
@media print, screen and (max-width: 39.99875em) {
  .app-search__form.-index {
    margin-top: 0;
    margin-bottom: 2rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-search__form.-index {
    margin-top: -1rem;
    margin-bottom: 3.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-search__form.-index {
    margin-top: -2rem;
    margin-bottom: 3.5rem;
  }
}

.app-search-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0.5rem 0.5rem 0.5rem 0;
  background: #232323;
}
.app-search-form__input {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.app-search-form__input label {
  font-size: 0.875rem;
}
.app-search-form input[type=search],
.app-search-form input[type=text] {
  margin: 0;
  background: none;
}
.app-search-form > input[type=submit] {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 0 0;
  padding: 0.6rem 0.75rem;
  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;
  font-size: 0.9375rem !important;
}
[data-whatinput=mouse] .app-search-form > input[type=submit] {
  outline: 0;
}
.app-search-form > input[type=submit], .app-search-form > input[type=submit].disabled, .app-search-form > input[type=submit][disabled], .app-search-form > input[type=submit].disabled:hover, .app-search-form > input[type=submit][disabled]:hover, .app-search-form > input[type=submit].disabled:focus, .app-search-form > input[type=submit][disabled]:focus {
  background-color: #0a0a0a;
  color: #fefefe;
}
.app-search-form > input[type=submit]:hover, .app-search-form > input[type=submit]:focus {
  background-color: #4f4f4f;
  color: #fefefe;
}

.store {
  max-width: 1920px;
}
@media print, screen and (max-width: 39.99875em) {
  .store {
    margin: 3rem auto;
  }
}
@media print, screen and (min-width: 40em) {
  .store {
    margin: 3rem auto;
  }
}
@media print, screen and (min-width: 64em) {
  .store {
    margin: 5rem auto;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .store {
    padding: 0 15px;
  }
}
@media print, screen and (min-width: 40em) {
  .store {
    padding: 0 30px;
  }
}
@media screen and (min-width: 75em) {
  .store {
    padding: 0 70px;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .store-header {
    margin: 0 0 2rem 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 0 3rem 0;
    padding: 0;
  }
}

.store-title {
  margin: 0;
  padding: 0;
  line-height: 1.4;
  font-size: 1.4rem;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .store-title {
    margin: 0 0 1rem 0;
    text-align: center;
  }
}
@media print, screen and (min-width: 40em) {
  .store-title {
    display: inline-block;
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .store-title {
    display: inline-block;
    padding: 0;
  }
}
.store-title > small {
  display: block;
  margin: 0.3rem 0 0 0;
  padding: 0;
  line-height: 1.3;
  font-size: 1rem;
  font-weight: normal;
  color: #d9d9d9;
}
.store-title > a {
  color: #fefefe;
}
.store-title > a:hover {
  background: rgba(0, 0, 0, 0.3);
}
.store-title > a > span {
  margin: 0 0.5rem;
  color: #666;
}

.store-header__menu {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.store-header__menu > li {
  display: inline-block;
}
.store-header__menu > li > a {
  color: #fefefe;
}
.store-header__menu > li > a:hover {
  color: #b2b2b2;
}
@media print, screen and (max-width: 39.99875em) {
  .store-header__menu {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
    margin: 2rem 0 0 0;
    padding: 0;
    list-style-type: none;
    line-height: 1.4;
  }
  .store-header__menu > li {
    width: 100%;
    border-right: 1px solid #2d2d2d;
    text-align: center;
  }
  .store-header__menu > li:nth-child(1n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .store-header__menu > li:nth-child(1n) {
    border-right: 0;
  }
  .store-header__menu > li:first-child:before {
    border-top: 0;
  }
  .store-header__menu > li a {
    display: block;
    margin: 0;
    padding: 0.85rem;
    color: #fefefe;
  }
  .store-header__menu > li a:hover {
    background: black;
  }
  .store-header__menu > li.is-active a {
    color: #666;
  }
}
@media print, screen and (min-width: 40em) {
  .store-header__menu {
    margin-left: 3rem;
  }
  .store-header__menu > li {
    padding: 0 0.5rem;
  }
}

.store-product-list--store {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0;
  list-style-type: none;
}
@media print, screen and (max-width: 39.99875em) {
  .store-product-list--store {
    margin: 0 -8px;
  }
}
@media print, screen and (min-width: 40em) {
  .store-product-list--store {
    margin: 0 -15px;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .store-product-categories {
    margin: 0 0 2rem 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-product-categories {
    margin: 0 0 3rem 0;
    padding: 0;
  }
}
.store-product-categories > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.store-product-categories > ul > li {
  margin: 0;
  padding: 0 1rem 0.75rem 1rem;
}
.store-product-categories > ul > li > a {
  margin: 0;
  padding: 0;
  color: #dfdfdf;
}
.store-product-categories > ul > li > a:hover {
  background: #3a3a3a;
}
.store-product-categories > ul > li.active > a {
  color: white;
  background: #3a3a3a;
}

.store-product::before, .store-product::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.store-product::after {
  clear: both;
}
@media print, screen and (max-width: 89.99875em) {
  .store-product {
    max-width: 1280px;
  }
}
@media screen and (min-width: 90em) {
  .store-product {
    max-width: 1440px;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .store-product {
    margin: 2rem auto;
  }
}
@media print, screen and (min-width: 40em) {
  .store-product {
    margin: 3rem auto;
  }
}
@media print, screen and (min-width: 64em) {
  .store-product {
    margin: 6rem auto;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .store-product {
    padding: 0 15px;
  }
}
@media print, screen and (min-width: 40em) {
  .store-product {
    padding: 0 30px;
  }
}
@media screen and (min-width: 75em) {
  .store-product {
    padding: 0 70px;
  }
}

.store-product-header {
  margin: 0 0 2rem 0;
  padding: 0;
}

@media print, screen and (max-width: 39.99875em) {
  .store-product-header__brand {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 40em) {
  .store-product-header__brand {
    font-size: 1.25rem;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .store-product-header__name {
    margin: 0.25rem 0 0 0;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .store-product-header__name {
    margin: 0.25rem 0 0 0;
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 64em) {
  .store-product-header__name {
    font-size: 2.4rem;
    font-weight: bold;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .store-product-header__lead {
    margin: 0.5rem 0 0 0;
    padding: 0;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .store-product-header__lead {
    margin: 0.75rem 0 0 0;
    padding: 0;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .store-product-header__lead {
    margin: 0;
    padding: 0;
    font-size: 1.25rem;
  }
}

@media print, screen and (min-width: 64em) {
  .store-product-section::before, .store-product-section::after {
    display: table;
    content: " ";
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .store-product-section::after {
    clear: both;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .store-product-section__main {
    margin: 0 0 2rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .store-product-section__main {
    margin: 0 0 3rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .store-product-section__main {
    float: left;
    width: 67%;
    margin: 0;
    padding: 0 42px 0 0;
  }
}

@media print, screen and (min-width: 64em) {
  .store-product-section__sub {
    float: right;
    width: 33%;
    margin: 0;
    padding: 0;
  }
}

@media print, screen and (max-width: 63.99875em) {
  .store-product__photos > img {
    width: 100%;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .store-product-form__buynow {
    margin: 0 0 3rem 0;
    padding: 0;
    text-align: center;
  }
}
@media print, screen and (min-width: 64em) {
  .store-product-form__buynow {
    margin: 0;
    padding: 2rem 0 0 0;
    text-align: center;
    border-top: 1px solid #4f4f4f;
  }
}

.store-product__price {
  display: block;
  margin: 0 0 2rem 0;
  color: white;
  font-size: 2rem;
  font-style: normal;
  font-weight: bold;
}
.store-product__price > small {
  display: block;
  font-size: 1rem;
  font-weight: normal;
}

.store-product__soldout {
  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;
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
  opacity: 0.25;
  cursor: not-allowed;
  font-size: 1.25rem;
  font-weight: normal;
}
[data-whatinput=mouse] .store-product__soldout {
  outline: 0;
}
.store-product__soldout, .store-product__soldout.disabled, .store-product__soldout[disabled], .store-product__soldout.disabled:hover, .store-product__soldout[disabled]:hover, .store-product__soldout.disabled:focus, .store-product__soldout[disabled]:focus {
  background-color: #2199e8;
  color: #fefefe;
}
.store-product__soldout:hover, .store-product__soldout:focus {
  background-color: #1583cc;
  color: #fefefe;
}

@media print, screen and (max-width: 63.99875em) {
  .store-product-detail {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .store-product-detail {
    padding: 2rem 0 0 0;
  }
}
.store-product-detail > h2 {
  margin: 2rem 0 1.5rem 0;
  padding: 0;
  font-size: 1.4rem;
}
.store-product-detail > h2:first-child {
  margin-top: 0;
}

@media print, screen and (max-width: 63.99875em) {
  .store-product-notation {
    margin: 0;
    padding: 1.3rem 1.5rem;
    background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
  }
  .store-product-notation > h2 {
    margin: 1.5rem 0 0.75rem 0;
    padding: 1.5rem 0 0 0;
    font-size: 1rem;
    font-weight: normal;
    border-top: 1px solid #4f4f4f;
  }
  .store-product-notation > h2:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
  }
  .store-product-notation > *:last-child {
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .store-product-notation > h2 {
    margin: 2rem 0 0.75rem 0;
    padding: 1.5rem 0 0 0;
    font-size: 1rem;
    font-weight: normal;
    border-top: 1px solid #4f4f4f;
  }
  .store-product-notation > h2:first-child {
    margin-top: 0;
  }
}

.store-upgrade-table {
  width: 100%;
  margin: 0;
  padding: 0;
  border-spacing: 0;
}
.store-upgrade-table > tbody {
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
}
.store-upgrade-table > tbody > tr > th, .store-upgrade-table > tbody > tr > td {
  vertical-align: middle;
}
@media print, screen and (max-width: 39.99875em) {
  .store-upgrade-table > tbody > tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    border-bottom: 1px solid #4f4f4f;
  }
  .store-upgrade-table > tbody > tr > th, .store-upgrade-table > tbody > tr > td {
    margin: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-upgrade-table > tbody > tr > th, .store-upgrade-table > tbody > tr > td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #4f4f4f;
  }
}
.store-upgrade-table > tfoot th, .store-upgrade-table > tfoot td {
  padding: 0.75rem 1rem;
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
  font-size: 87.5%;
  text-align: right;
  vertical-align: top;
  color: #7c7c7c;
}

.store-upgrade-table__item-name {
  color: white;
}
@media print, screen and (max-width: 39.99875em) {
  .store-upgrade-table__item-name {
    padding: 0.75rem 1rem;
    width: 100%;
  }
}

.store-upgrade-table__item-name-suffix {
  padding-left: 0.5rem;
  color: #999;
}

.store-upgrade-table__item-description {
  margin: 0;
  padding: 0;
}

.store-upgrade-table__item-price {
  text-align: right;
}
@media print, screen and (max-width: 39.99875em) {
  .store-upgrade-table__item-price {
    padding: 0 1rem 0.75rem 1rem;
  }
}
.store-upgrade-table__item-buy {
  text-align: right;
}
@media print, screen and (max-width: 39.99875em) {
  .store-upgrade-table__item-buy {
    padding: 0 1rem 0.75rem 1rem;
  }
}
.store-upgrade-table__item-buy > form > .button {
  margin-bottom: 0;
}

.store-upgrade-notation {
  padding: 2rem 1.5rem;
  border-bottom: 1px solid #7c7c7c;
}
@media print, screen and (max-width: 39.99875em) {
  .store-upgrade-notation {
    margin: 0 0 2rem 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .store-upgrade-notation {
    margin: 0 0 2rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .store-upgrade-notation {
    margin: 0;
  }
}
.store-upgrade-notation > h2 {
  margin: 0 0 1.25rem 0;
  padding: 0;
  font-size: 1rem;
  font-weight: bold;
}
.store-upgrade-notation > *:last-child {
  margin-bottom: 0;
}

.store-signin-form {
  margin: 0 0 1.5rem 0;
  padding: 0;
}
.store-signin-form > .store-signin-input {
  position: relative;
  margin: 0 0 1.5rem 0;
  padding: 0;
}
.store-signin-form > .store-signin-input > label {
  color: #dfdfdf;
}
.store-signin-form > .store-signin-input > input {
  margin-bottom: 0;
}
.store-signin-form > .store-signin-input:first-child {
  margin-bottom: 0.5rem;
}
@media print, screen and (max-width: 39.99875em) {
  .store-signin-form > .button {
    display: block;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .store-signin-alter {
    display: block;
    margin: 1.5rem 0 0 0;
    text-align: center;
  }
}
@media print, screen and (min-width: 40em) {
  .store-signin-alter {
    display: inline-block;
    margin: 0 0 0 7px;
    padding: 7px 10px 7px 10px;
  }
}

.store-signin__errors {
  margin: 0 0 1rem 0;
  padding: 0;
  list-style-type: none;
  color: #ec5840;
}

.store-checkout {
  max-width: 768px;
  margin: 0 auto;
  padding: 0;
  min-height: 360px;
}

.store-checkout-payment-cc {
  max-width: 420px;
  margin: 0 auto;
  padding: 0;
  text-align: center;
}

.store-checkout-complete {
  max-width: 768px;
  margin: 0 auto;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .store-checkout-complete {
    padding: 1rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-checkout-complete {
    padding: 3rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .store-checkout-complete {
    min-height: 300px;
  }
}

.store-checkout-options {
  margin: 0;
  padding: 0;
}
.store-checkout-options > p {
  margin: 0.5rem 0 0 0;
}
.store-checkout-options span {
  display: block;
  color: #999;
}
.store-checkout-options span + br {
  display: none;
}

@media print, screen and (max-width: 39.99875em) {
  .store-checkout-header {
    margin: 0 0 2rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-checkout-header {
    margin: 0 0 2rem 0;
  }
}

.store-checkout-header__title {
  margin: 0;
  padding: 0;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .store-checkout-header__title {
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 40em) {
  .store-checkout-header__title {
    font-size: 1.7rem;
  }
}

.store-checkout-header__description {
  margin: 0.5rem 0 0 0;
}

.store-confirm-table {
  padding: 0;
  width: 100%;
  border-top: 1px solid #4f4f4f;
  border-spacing: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .store-confirm-table {
    margin: 2rem 0 0 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-confirm-table {
    margin: 3rem 0 0 0;
  }
}
.store-confirm-table > caption {
  margin: 0;
  padding: 0 0 1rem 0;
  font-size: 1.25rem;
  font-weight: normal;
  text-align: left;
  color: white;
}
.store-confirm-table > tbody > tr > th,
.store-confirm-table > tbody > tr > td {
  text-align: left;
  font-weight: normal;
  vertical-align: top;
}
.store-confirm-table > tbody > tr > th {
  color: #d9d9d9;
}
@media print, screen and (max-width: 39.99875em) {
  .store-confirm-table > tbody > tr > th {
    display: block;
    margin: 0;
    padding: 0.75rem 0 0.25rem 0;
    width: 10rem;
    font-size: 87.5%;
    color: #7c7c7c;
  }
}
@media print, screen and (min-width: 40em) {
  .store-confirm-table > tbody > tr > th {
    margin: 0;
    padding: 0.75rem 0;
    width: 12rem;
    border-bottom: 1px solid #4f4f4f;
  }
}
.store-confirm-table > tbody > tr > td {
  color: white;
}
@media print, screen and (max-width: 39.99875em) {
  .store-confirm-table > tbody > tr > td {
    display: block;
    margin: 0;
    padding: 0 0 0.75rem 0;
    border-bottom: 1px solid #4f4f4f;
  }
}
@media print, screen and (min-width: 40em) {
  .store-confirm-table > tbody > tr > td {
    margin: 0;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #4f4f4f;
  }
}

.store-remise-form .button {
  line-height: 1.5;
}

.store-purchase {
  margin: 0;
  padding: 2rem 0;
  border-top: 1px solid #7c7c7c;
}

.store-purchase__product {
  margin: 0;
}
.store-purchase__product > dt {
  margin: 0 0 0.5rem 0;
  padding: 0;
  font-weight: normal;
}
.store-purchase__product > dd {
  margin: 0 0 1.5rem 0;
  padding: 1rem 1.5rem;
  color: white;
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
}

.store-preview {
  width: 100%;
  margin: 0 0 2rem 0;
  border-spacing: 0;
  border: 0;
  border-top: 1px solid #4f4f4f;
  border-left: 1px solid #4f4f4f;
}
.store-preview caption {
  margin: 0 0.7rem 1rem 0.7rem;
  padding: 0;
  text-align: left;
  font-size: 1.125rem;
}
.store-preview tr > th,
.store-preview tr > td {
  padding: 0.7rem;
  text-align: left;
  vertical-align: top;
  border: 0;
  border-right: 1px solid #4f4f4f;
  border-bottom: 1px solid #4f4f4f;
}
.store-preview th {
  width: 160px;
  font-weight: normal;
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
}

.store-signup-form {
  margin: 0;
  padding: 2rem 0 0 0;
  border-top: 1px solid #4f4f4f;
}

.store-customer {
  max-width: 768px;
  margin: 0 auto;
  padding: 0;
}

@media print, screen and (max-width: 39.99875em) {
  .store-customer-nav {
    margin: 0 0 3rem 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-customer-nav {
    margin: 0 0 2rem 0;
    padding: 0 0 1.5rem 0;
    border-bottom: 1px solid #4f4f4f;
  }
}
.store-customer-nav > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .store-customer-nav > ul {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
    margin: 0;
    padding: 0;
    list-style-type: none;
    line-height: 1.4;
  }
  .store-customer-nav > ul > li {
    width: 50%;
    border-right: 1px solid #2d2d2d;
  }
  .store-customer-nav > ul > li:nth-child(2n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .store-customer-nav > ul > li:nth-child(2n) {
    border-right: 0;
  }
  .store-customer-nav > ul > li:first-child:before {
    border-top: 0;
  }
  .store-customer-nav > ul > li a {
    display: block;
    margin: 0;
    padding: 0.85rem;
    color: #fefefe;
  }
  .store-customer-nav > ul > li a:hover {
    background: black;
  }
  .store-customer-nav > ul > li.is-active a {
    color: #666;
  }
}
@media print, screen and (min-width: 40em) {
  .store-customer-nav > ul > li {
    display: inline-block;
    margin: 0;
    padding: 0 1rem;
  }
  .store-customer-nav > ul > li > a {
    color: #dfdfdf;
  }
  .store-customer-nav > ul > li > a:hover {
    color: white;
    background-color: #3a3a3a;
  }
  .store-customer-nav > ul > li.active > a {
    color: white;
    background-color: #3a3a3a;
  }
}

.store-register-myproduct {
  margin: 0 0 2rem 0;
  text-align: center;
}

.store-myproduct {
  border-bottom: 1px solid #4f4f4f;
}
@media print, screen and (max-width: 39.99875em) {
  .store-myproduct {
    margin: 0 0 1.5rem 0;
    padding: 0 0 1.5rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-myproduct {
    margin: 0;
    padding: 1.5rem 0;
  }
}
.store-myproduct > dl {
  margin: 0;
  padding: 0;
}
.store-myproduct > dl::before, .store-myproduct > dl::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.store-myproduct > dl::after {
  clear: both;
}
@media print, screen and (max-width: 39.99875em) {
  .store-myproduct > dl > dt {
    margin: 0.75rem 0 0.125rem 0;
    padding: 0;
    color: #7c7c7c;
    font-weight: normal;
  }
  .store-myproduct > dl > dt:first-child {
    margin-top: 0;
  }
  .store-myproduct > dl > dd {
    margin: 0;
    padding: 0;
    color: white;
    word-wrap: break-word;
  }
}
@media print, screen and (min-width: 40em) {
  .store-myproduct > dl > dt {
    clear: both;
    float: left;
    margin: 0;
    padding: 0.5rem 0 0 0;
    width: 22%;
    font-weight: normal;
  }
  .store-myproduct > dl > dd {
    float: right;
    margin: 0;
    padding: 0.5rem 0 0 1rem;
    width: 78%;
    color: white;
    word-wrap: break-word;
  }
}

.store-myproduct__name {
  padding: 0;
  line-height: 1.3;
  font-size: 1.4rem;
  font-weight: bold;
}
@media print, screen and (max-width: 39.99875em) {
  .store-myproduct__name {
    margin: 0 0 1rem 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-myproduct__name {
    margin: 0 0 1rem 0;
  }
}

.store-survey-item {
  margin: 3rem 0 1.5rem 0;
  padding: 0;
}
.store-survey-item:first-child {
  margin-top: 0;
}

.store-survey-item-question {
  margin: 0 0 1rem 0;
  padding: 0;
  border: 0;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: normal;
  color: white;
}

.store-survey-item-options {
  margin: 0;
  padding: 0;
}
.store-survey-item-options::before, .store-survey-item-options::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.store-survey-item-options::after {
  clear: both;
}
.store-survey-item-options > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.store-survey-item-options > ul > li {
  margin: 0;
  padding: 0.5rem 0.75rem 0.5rem 0;
}
@media print, screen and (max-width: 39.99875em) {
  .store-survey-item-options > ul > li {
    width: 50%;
  }
}
@media print, screen and (min-width: 40em) {
  .store-survey-item-options > ul > li {
    width: 33%;
  }
}
.store-survey-item-options > ul > li input {
  margin-bottom: 0;
}
.store-survey-item-options > ul > li > label {
  line-height: 1.4;
}

.store-myproduct-supportinfo-heading {
  margin: 0;
  padding: 0;
  line-height: 1.4;
  font-size: 1.4rem;
  font-weight: normal;
}
@media print, screen and (max-width: 39.99875em) {
  .store-myproduct-supportinfo-heading {
    margin: 1.5rem 0 0 0;
  }
}
@media print, screen and (min-width: 40em) {
  .store-myproduct-supportinfo-heading {
    font-size: 1.5rem;
  }
  .store-myproduct-supportinfo-heading + .store-myproduct {
    padding-top: 0.75rem;
  }
}

.store-myproduct-supportinfo {
  margin: 0 0 1rem 0;
  padding: 1.5rem 0;
  border-bottom: 1px solid #4f4f4f;
}
.store-myproduct-supportinfo > *:last-child {
  margin-bottom: 0;
}

.store-register-form {
  margin: 0;
  padding: 2rem 0 0 0;
  border-top: 1px solid #4f4f4f;
}

.store-select-brands-products > .help-text input[type=checkbox] {
  margin-bottom: 0;
}

.store-select-brands-products_altinput {
  margin-top: -0.5rem;
  margin-bottom: 1.75rem;
}

.store-board {
  max-width: 380px;
}
@media print, screen and (min-width: 40em) {
  .store-board {
    max-width: 410px;
  }
}
@media screen and (min-width: 75em) {
  .store-board {
    max-width: 490px;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .store-board {
    margin: 3rem auto;
  }
}
@media print, screen and (min-width: 40em) {
  .store-board {
    margin: 3rem auto;
  }
}
@media print, screen and (min-width: 64em) {
  .store-board {
    margin: 5rem auto;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .store-board {
    padding: 0 15px;
  }
}
@media print, screen and (min-width: 40em) {
  .store-board {
    padding: 0 30px;
  }
}
@media screen and (min-width: 75em) {
  .store-board {
    padding: 0 70px;
  }
}
@media print, screen and (min-width: 64em) {
  .store-board {
    min-height: 300px;
  }
}

.store-board__header {
  margin: 0 0 1.5rem 0;
  padding: 0;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
}

.store-ad {
  display: block;
  margin: 1rem 0 0 0;
  padding: 0;
  text-align: center;
}
.store-ad > a {
  display: inline-block;
  margin: 0;
  padding: 0.75rem 1.25rem;
  color: #dfdfdf;
}
.store-ad > a:hover {
  color: #EB9F37;
}
@media print, screen and (max-width: 39.99875em) {
  .store-ad > a > img {
    display: block;
    margin: 0 auto 0.5rem auto;
  }
}
@media print, screen and (min-width: 40em) {
  .store-ad > a {
    background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
  }
}

.app-support {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}
.app-support::before, .app-support::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-support::after {
  clear: both;
}
@media print, screen and (min-width: 40em) {
  .app-support {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-support {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-support {
    margin-top: 2rem;
    margin-bottom: 4rem;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-support {
    margin-top: 3rem;
    margin-bottom: 6rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support {
    margin-top: 6rem;
    margin-bottom: 8rem;
  }
}
.app-support.is-entry {
  margin-bottom: 0;
}
.app-support__heading {
  display: inline-block;
  padding: 0 0.4rem;
  line-height: 1.4;
  font-weight: bold;
}
@media print, screen and (max-width: 63.99875em) {
  .app-support__heading {
    margin: 0 0 1.25rem 0;
    padding: 0;
    font-size: 1.25rem;
    font-weight: bold;
  }
  .is-index .app-support__heading {
    padding: 0;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support__heading {
    margin: 0 3rem 0 0;
    font-size: 1.5rem;
  }
}
.app-support__heading > a {
  color: #fefefe;
}
.app-support__heading > a:hover {
  background: #3a3a3a;
}
.app-support__menu {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-support__menu {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support__menu {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-support__menu {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-support__menu {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
  .is-index .app-support__menu {
    margin-top: 1rem;
    margin-bottom: 3rem;
  }
  .is-entry .app-support__menu {
    margin-bottom: 2rem;
  }
  .app-support__menu > ul {
    border: 1px solid #2d2d2d;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style-type: none;
    line-height: 1.4;
  }
  .app-support__menu > ul > li {
    width: 50%;
    border-right: 1px solid #2d2d2d;
  }
  .app-support__menu > ul > li:nth-child(2n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-support__menu > ul > li:nth-child(2n) {
    border-right: 0;
  }
  .app-support__menu > ul > li:first-child:before {
    border-top: 0;
  }
  .app-support__menu > ul > li a {
    display: block;
    margin: 0;
    padding: 0.85rem;
    color: #fefefe;
  }
  .app-support__menu > ul > li a:hover {
    color: #EB9F37;
  }
  .app-support__menu > ul > li.is-active a {
    color: #666;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-support__menu {
    margin-top: 2rem;
    margin-bottom: 3.5rem;
  }
  .is-index .app-support__menu {
    margin-top: 1rem;
    margin-bottom: 3rem;
  }
  .is-entry .app-support__menu {
    margin-bottom: 2rem;
  }
  .app-support__menu > ul {
    border: 1px solid #2d2d2d;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style-type: none;
    line-height: 1.4;
  }
  .app-support__menu > ul > li {
    width: 33.3333333333%;
    border-right: 1px solid #2d2d2d;
  }
  .app-support__menu > ul > li:nth-child(3n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-support__menu > ul > li:nth-child(3n) {
    border-right: 0;
  }
  .app-support__menu > ul > li:first-child:before {
    border-top: 0;
  }
  .app-support__menu > ul > li a {
    display: block;
    margin: 0;
    padding: 0.85rem;
    color: #fefefe;
  }
  .app-support__menu > ul > li a:hover {
    color: #EB9F37;
  }
  .app-support__menu > ul > li.is-active a {
    color: #666;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-bottom: 4.5rem;
  }
  .app-support__menu > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0;
    padding: 0;
    list-style-type: none;
  }
  .app-support__menu > ul > li {
    margin: 0 2.5rem 0 0;
    padding: 0;
  }
  .app-support__menu > ul > li > a {
    color: #fefefe;
  }
  .app-support__menu > ul > li > a:hover {
    color: #EB9F37;
  }
  .app-support__menu > ul > li.is-active > a {
    color: #666;
  }
  .app-support__menu > ul > li:last-child {
    margin-right: 0;
  }
}
.app-support__main {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .app-support__main {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support__main {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media screen and (min-width: 90em) {
  .app-support__main {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
.app-support__form {
  margin: 0 auto;
  width: 100%;
  max-width: 28rem;
}

/* @group menu decoration */
/* @end group menu decoration */
.app-support-categories > ul {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: transparent url("../img/bg-nega.jpg?v188fa3d5e44") repeat 0 0;
  margin: 0;
  padding: 0;
  list-style-type: none;
  line-height: 1.4;
}
.app-support-categories > ul > li a {
  display: block;
  margin: 0;
  padding: 0.85rem;
  color: #fefefe;
}
.app-support-categories > ul > li a:hover {
  background: black;
}
.app-support-categories > ul > li.is-active a {
  color: #666;
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-categories {
    margin: 0 0 1rem 0;
  }
  .app-support-categories > ul > li {
    width: 50%;
    border-right: 1px solid #2d2d2d;
  }
  .app-support-categories > ul > li:nth-child(2n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-support-categories > ul > li:nth-child(2n) {
    border-right: 0;
  }
  .app-support-categories > ul > li:first-child:before {
    border-top: 0;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-support-categories {
    margin: 0 0 1.5rem 0;
  }
  .app-support-categories > ul > li {
    width: 33.3333333333%;
    border-right: 1px solid #2d2d2d;
  }
  .app-support-categories > ul > li:nth-child(3n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-support-categories > ul > li:nth-child(3n) {
    border-right: 0;
  }
  .app-support-categories > ul > li:first-child:before {
    border-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support-categories {
    margin: 0 0 1.5rem 0;
  }
  .app-support-categories > ul > li {
    width: 25%;
    border-right: 1px solid #2d2d2d;
  }
  .app-support-categories > ul > li:nth-child(4n+1):before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #2d2d2d;
  }
  .app-support-categories > ul > li:nth-child(4n) {
    border-right: 0;
  }
  .app-support-categories > ul > li:first-child:before {
    border-top: 0;
  }
}

.app-support-articles-list {
  margin: 0;
  padding: 0;
}
.app-support-categories + .app-support-articles-list > ul {
  border-top: 0;
}
.app-support-articles-list > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  border-top: 1px solid #4f4f4f;
}
.app-support-articles-list > ul > li {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #4f4f4f;
}
.app-support-articles-list > ul > li > a {
  display: block;
  padding: 0.8rem 0.4rem;
  color: #fefefe;
}
.app-support-articles-list > ul > li > a:hover {
  background: rgba(0, 0, 0, 0.3);
}
.app-support-articles-list > ul > li > a > span {
  margin: 0 0.125rem;
  color: #d9d9d9;
  font-weight: bold;
}
.app-support-articles-list > ul > li.is-important > a {
  color: #fc6;
}

/* @group contact */
.app-support-entry-wrapper--contact {
  margin: 0;
  padding: 0 0 3rem 0;
}
@media print, screen and (max-width: 63.99875em) {
  .app-support-entry-wrapper--contact {
    margin-top: 1rem;
    border-bottom: 1px solid #4f4f4f;
  }
}
.app-support-entry--contact {
  margin: 0;
  padding: 0;
  line-height: 1.7;
  font-size: 1.1rem;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
}
.app-support-entry--contact::before, .app-support-entry--contact::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-support-entry--contact::after {
  clear: both;
}
.app-support-entry--contact :not(.video-container):last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
.app-support-entry--contact h1 {
  border-bottom: 1px solid #4f4f4f;
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-entry--contact h1 {
    margin: 3rem 0 1.3rem 0;
    padding: 0 0 1rem 0;
    line-height: 1.3;
    font-size: 1.2rem;
    font-weight: normal;
  }
}
@media print, screen and (min-width: 40em) {
  .app-support-entry--contact h1 {
    margin: 4rem 0 2rem 0;
    padding: 0 0 2rem 0;
    line-height: 1.3;
    font-size: 1.35rem;
    font-weight: normal;
  }
}
.app-support-entry--contact h1:first-child {
  margin-top: 0;
  padding-top: 0;
}
.app-support-entry--contact h2 {
  margin: 2rem 0 1.5rem 0;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-entry--contact h2 {
    font-size: 1rem;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 40em) {
  .app-support-entry--contact h2 {
    font-size: 1.2rem;
    font-weight: bold;
  }
}
.app-support-entry--contact p {
  line-height: inherit;
}
.app-support-entry--contact img {
  display: block;
  margin-bottom: 1.9rem;
}

/* @end group contact */
.app-support-entry-attr {
  margin: 0;
  padding: 0;
  color: #999;
}
@media print, screen and (max-width: 63.99875em) {
  .app-support-entry-attr {
    margin: 0 0 0.5rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support-entry-attr {
    margin: 0 0 0.25rem 0;
    padding: 0 0.4rem;
  }
}

.app-support-entry-wrapper {
  margin: 0;
  border-top: 1px solid #4f4f4f;
}
.app-support-entry-targets + .app-support-entry-wrapper {
  border-top-style: dashed;
}
@media print, screen and (max-width: 63.99875em) {
  .app-support-entry-wrapper {
    padding: 2rem 0 3.5rem 0;
    border-bottom: 1px solid #4f4f4f;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support-entry-wrapper {
    padding: 2rem 0.4rem 5rem 0.4rem;
    min-height: 18rem;
  }
}

.app-support-entry {
  margin: 0;
  padding: 0;
  line-height: 1.7;
  font-size: 1.1rem;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
}
.app-support-entry::before, .app-support-entry::after {
  display: table;
  content: " ";
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.app-support-entry::after {
  clear: both;
}
.app-support-entry > :not(.video-container):last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-entry h2 {
    margin: 2rem 0 1.3rem 0;
    padding: 0;
    line-height: 1.4;
    font-size: 1.5rem;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 40em) {
  .app-support-entry h2 {
    margin: 3.5rem 0 2rem 0;
    padding: 0;
    line-height: 1.4;
    font-size: 1.6rem;
    font-weight: normal;
  }
}
.app-support-entry h2:first-child {
  margin-top: 0;
}
.app-support-entry h3 {
  margin: 2.5rem 0 1.5rem 0;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-entry h3 {
    font-size: 1.25rem;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 40em) {
  .app-support-entry h3 {
    font-size: 1.25rem;
    font-weight: bold;
  }
}
.app-support-entry h4 {
  margin: 2.5rem 0 1.5rem 0;
  padding: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-entry h4 {
    font-size: 1.125rem;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 40em) {
  .app-support-entry h4 {
    font-size: 1.125rem;
    font-weight: bold;
  }
}
.app-support-entry img {
  margin-bottom: 1.7rem;
}
.app-support-entry img + br {
  display: none;
}
.app-support-entry p {
  margin-bottom: 1.6rem;
  line-height: inherit;
}
.app-support-entry p > img {
  margin-bottom: 0 !important;
}
.app-support-entry blockquote {
  clear: both;
  margin: 0 0 1.6rem;
  padding: 1.5rem;
  border: 0;
  background-color: rgba(90, 90, 90, 0.1);
  font-size: 1.5rem;
  color: #fff;
  quotes: "“" "”";
}
.app-support-entry blockquote:before {
  content: open-quote;
  font-weight: bold;
  font-size: 2.5em;
  line-height: 0.1em;
  margin-right: 0.125em;
  vertical-align: -0.3em;
}
.app-support-entry > figure {
  display: block;
  margin: 0 0 1.4rem 0;
}
.app-support-entry > figure > img {
  margin: 0;
}
.app-support-entry > figure figcaption {
  display: block;
  margin: 0.75rem 0 0.25rem 0;
  padding: 0;
  line-height: 1.5;
  font-size: 1rem;
  text-align: inherit;
}
@media print, screen and (min-width: 40em) {
  .app-support-entry > figure[style*="float: right;"] {
    float: right;
    margin: 0.3rem 0 1.4rem 1.25rem !important;
  }
}
@media print, screen and (min-width: 40em) {
  .app-support-entry > figure[style*="float: left;"] {
    float: left;
    margin: 0.3rem 1.25rem 1.4rem 0 !important;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-entry > figure[style*="float: right;"], .app-support-entry > figure[style*="float: left;"] {
    float: none !important;
    margin: 0.3rem auto 1.4rem auto !important;
    max-width: 70%;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .app-support-entry > figure[style*="float: right;"], .app-support-entry > figure[style*="float: left;"] {
    max-width: 45%;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support-entry > figure[style*="float: right;"], .app-support-entry > figure[style*="float: left;"] {
    max-width: 37%;
  }
}
.app-support-entry > figure[style*="margin: auto;"], .app-support-entry > figure[style*="text-align: center;"] {
  margin: 0.5rem auto 1.4rem auto !important;
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-entry > figure[style*="margin: auto;"], .app-support-entry > figure[style*="text-align: center;"] {
    max-width: 70%;
  }
}
.app-support-entry strong {
  color: white;
  font-weight: bold;
}
.app-support-entry strong.is-important {
  color: #ff3366;
  font-weight: normal;
}
.app-support-entry a:hover {
  text-decoration: underline;
}
.app-support-entry ul,
.app-support-entry ol {
  line-height: 1.4;
}
.app-support-entry ul > li,
.app-support-entry ol > li {
  margin: 0 0 0.75rem 0;
}

.app-support-entry-targets {
  margin: 0;
  border-top: 1px solid #4f4f4f;
}
@media print, screen and (max-width: 63.99875em) {
  .app-support-entry-targets {
    padding: 1.5rem 0.4rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support-entry-targets {
    padding: 2rem 0.4rem;
  }
}
.app-support-entry-targets > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.app-support-entry-targets > ul > li > a {
  color: #ccc;
}
.app-support-entry-targets > ul > li > a:hover {
  color: #fff;
  background: #3a3a3a;
}
.app-support-entry-targets > ul > li span {
  margin: 0 0.125rem;
  color: #333;
}

@media print, screen and (max-width: 63.99875em) {
  .app-support-header {
    margin: 0 0 2rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support-header {
    margin: 0 0 3rem 0;
  }
  .is-entry .app-support-header {
    margin-bottom: 2rem;
  }
}
.app-support-header__back {
  display: block;
  margin: 0 0 0.25rem 0;
  padding: 0 0.4rem;
}
.app-support-header__back > a {
  color: #d9d9d9;
}
.app-support-header__back > a:hover {
  background: rgba(0, 0, 0, 0.3);
}
.app-support-header__title {
  margin: 0;
  padding: 0;
  line-height: 1.4;
  font-size: 1.25rem;
  font-weight: normal;
}
@media print, screen and (min-width: 40em) {
  .app-support-header__title {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .app-support-header__title {
    display: inline-block;
    padding: 0 0.4rem;
  }
}
.app-support-header__title > a {
  border-bottom: 1px solid white;
  color: #fefefe;
}
.app-support-header__title > a:hover {
  background: rgba(0, 0, 0, 0.3);
}
.app-support-header__title .divider {
  margin: 0 0.25rem;
  color: #7c7c7c;
}
.app-support-header__description {
  margin: 0.5rem 0 0 0;
  padding: 0;
}
@media print, screen and (min-width: 64em) {
  .app-support-header__description {
    display: inline-block;
    margin: 0 0 0 1rem;
  }
}
.app-support-header__context {
  display: block;
  margin: 0 0 0.125rem 0;
  font-size: 1.125rem;
}

.app-support-entry-targets__heading {
  padding: 0;
  font-weight: normal;
}
@media print, screen and (max-width: 39.99875em) {
  .app-support-entry-targets__heading {
    margin: 0 0 1rem 0;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 40em) {
  .app-support-entry-targets__heading {
    margin: 0 0 1rem 0;
    font-size: 1.125rem;
  }
}

.app-support-products {
  margin: 1.5rem 0 0 0;
}
.app-support-products > p {
  padding: 0 0.4rem;
}
.app-support-products > ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  border-top: 1px solid #4f4f4f;
}
.app-support-products > ul > li {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #4f4f4f;
}
.app-support-products > ul > li > a {
  display: block;
  padding: 0.8rem 0.4rem;
  color: #fefefe;
}
.app-support-products > ul > li > a:hover {
  background: rgba(0, 0, 0, 0.3);
}
.app-support-products > ul > li > a > span {
  margin: 0 0.5rem;
  color: #666;
}

/* @group slick */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../img/ajax-loader.gif?v188fa3d5e43") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot?v188fa3d5e40");
  src: url("../fonts/slick.eot?v188fa3d5e40#iefix") format("embedded-opentype"), url("../fonts/slick.woff?v188fa3d5e40") format("woff"), url("../fonts/slick.ttf?v188fa3d5e40") format("truetype"), url("../fonts/slick.svg?v188fa3d5e40#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 35px;
  width: 35px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  z-index: 1;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 35px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: 14px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: 14px;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -30px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
  vertical-align: middle;
}
.slick-dots li button {
  display: block;
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  color: white;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: white;
  opacity: 0.75;
}

.slick-slide {
  position: relative;
  outline: none;
}
.slick-slide > .flex-video, .slick-slide > .video-container,
.slick-slide > .media {
  margin: 0;
  z-index: 0;
}
.slick-slide > .overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  margin: auto;
  width: 100%;
  height: 100%;
  background: rgba(130, 27, 27, 0.3);
}

/* @end group slick */
/*!
 * Pikaday
 * Copyright © 2014 David Bushell | BSD & MIT license | http://dbushell.com/
 */
.pika-single {
  z-index: 9999;
  display: block;
  position: relative;
  color: #ccc;
  background: #444;
  border: 1px solid #444;
  border-bottom-color: #444;
  font-family: "stolzl", "Avenir", "Helvetica Neue", Helvetica, "Hiragino Sans", Roboto, Arial, sans-serif;
}
.pika-single.is-hidden {
  display: none;
}
.pika-single.is-bound {
  position: absolute;
  -webkit-box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.5);
          box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.5);
}

.pika-single {
  *zoom: 1;
}
.pika-single:before, .pika-single:after {
  content: " ";
  display: table;
}
.pika-single:after {
  clear: both;
}

.pika-lendar {
  float: left;
  width: 240px;
  margin: 8px;
}

.pika-title {
  position: relative;
  text-align: center;
}
.pika-title select {
  cursor: pointer;
  position: absolute;
  z-index: 9998;
  margin: 0;
  left: 0;
  top: 5px;
  filter: alpha(opacity=0);
  opacity: 0;
}

.pika-label {
  display: inline-block;
  *display: inline;
  position: relative;
  z-index: 9999;
  overflow: hidden;
  margin: 0;
  padding: 5px 3px;
  font-size: 0.875rem;
  line-height: 20px;
  font-weight: bold;
  color: #ccc;
  background-color: #444;
}

.pika-prev,
.pika-next {
  display: block;
  cursor: pointer;
  position: relative;
  outline: none;
  border: 0;
  padding: 0;
  width: 20px;
  height: 30px;
  text-indent: 20px;
  white-space: nowrap;
  overflow: hidden;
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 75% 75%;
  opacity: 0.5;
  *position: absolute;
  *top: 0;
}
.pika-prev:hover,
.pika-next:hover {
  opacity: 1;
}
.pika-prev.is-disabled,
.pika-next.is-disabled {
  cursor: default;
  opacity: 0.2;
}

.pika-prev,
.is-rtl .pika-next {
  float: left;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");
  *left: 0;
}

.pika-next,
.is-rtl .pika-prev {
  float: right;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");
  *right: 0;
}

.pika-select {
  display: inline-block;
  *display: inline;
}

.pika-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 0;
}
.pika-table th,
.pika-table td {
  width: 14.2857142857%;
  padding: 0;
}
.pika-table th {
  color: white;
  font-size: 0.8rem;
  line-height: 25px;
  font-weight: normal;
  text-align: center;
}
.pika-table abbr {
  border-bottom: none;
  cursor: help;
}

.pika-button {
  cursor: pointer;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none;
  border: 0;
  margin: 0;
  width: 100%;
  padding: 5px;
  color: #dfdfdf;
  font-size: 0.875rem;
  line-height: 15px;
  text-align: right;
  background: #444;
}
.is-today .pika-button {
  color: #ffc044;
  font-weight: bold;
}
.is-selected .pika-button {
  color: #fff;
  font-weight: bold;
  background: #33aaff;
  -webkit-box-shadow: inset 0 1px 3px transparent;
          box-shadow: inset 0 1px 3px transparent;
  border-radius: 3px;
}
.is-disabled .pika-button, .is-outside-current-month .pika-button {
  color: #bbb;
  opacity: 0.5;
}
.is-disabled .pika-button {
  pointer-events: none;
  cursor: default;
}
.pika-button:hover {
  color: #333;
  background: #ddd;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 3px;
}
.pika-button .is-selection-disabled {
  pointer-events: none;
  cursor: default;
}

.pika-week {
  font-size: 0.875rem;
  color: #999;
}

.is-inrange .pika-button {
  background: #D5E9F7;
}

.is-startrange .pika-button {
  color: #fff;
  background: #6CB31D;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 3px;
}

.is-endrange .pika-button {
  color: #fff;
  background: #33aaff;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 3px;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jZWxsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2xheW91dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jb2xsYXBzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19mcmFtZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiZ2xvYmFsL19vdmVycmlkZS1mb3VuZGF0aW9uLnNjc3MiLCJnbG9iYWwvX3R5cG9ncmFwaHkuc2NzcyIsImdsb2JhbC9faHRtbC5zY3NzIiwiZ2xvYmFsL19iZy5zY3NzIiwiY29tcG9uZW50cy9fYm9hcmQuc2NzcyIsImdsb2JhbC9fbGF5b3V0LnNjc3MiLCJjb21wb25lbnRzL19jb250YWluZXIuc2NzcyIsImNvbXBvbmVudHMvX2Rpc2NsYWltZXIuc2NzcyIsImNvbXBvbmVudHMvZWRpdC9fZmxvYXRsLnNjc3MiLCJjb21wb25lbnRzL2VkaXQvX3ZhcmlhYmxlcy5zY3NzIiwiY29tcG9uZW50cy9fZW50cnkuc2NzcyIsIl9pbml0YXBwLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0uc2NzcyIsImNvbXBvbmVudHMvX21lZGlhLnNjc3MiLCJjb21wb25lbnRzL21lbnUvX21lbnUuc2NzcyIsImNvbXBvbmVudHMvbWVudS9faWNvbi5zY3NzIiwiY29tcG9uZW50cy9fcG9zdC5zY3NzIiwiY29tcG9uZW50cy9wcm9kdWN0cy9wcm9kdWN0cy5zY3NzIiwiY29tcG9uZW50cy9wcm9kdWN0cy9pdGVtL2l0ZW0uc2NzcyIsImNvbXBvbmVudHMvX3NoYXJlLnNjc3MiLCJjb21wb25lbnRzL3RvcGJhci9fdG9wYmFyLnNjc3MiLCJjb21wb25lbnRzL3RvcGJhci9fY29udGFpbmVyLnNjc3MiLCJjb21wb25lbnRzL3RvcGJhci9fdmFyaWFibGVzLnNjc3MiLCJjb21wb25lbnRzL3RvcGJhci9fc2l0ZW5hbWUuc2NzcyIsImNvbXBvbmVudHMvX3dyYXAuc2NzcyIsInBhZ2VzL2Fib3V0LnNjc3MiLCJwYWdlcy9ibG9nLnNjc3MiLCJwYWdlcy9ibG9nLWluZGV4LnNjc3MiLCJwYWdlcy9ibG9nLXBvc3Quc2NzcyIsInBhZ2VzL2JyYW5kLnNjc3MiLCJwYWdlcy9jb250YWN0LnNjc3MiLCJwYWdlcy9nZW5yZS5zY3NzIiwicGFnZXMvaW5kZXguc2NzcyIsInBhZ2VzL3Byb2R1Y3QvcHJvZHVjdC5zY3NzIiwicGFnZXMvcHJvZHVjdEluZGV4L3Byb2R1Y3RJbmRleC5zY3NzIiwicGFnZXMvcHJvZHVjdEluZGV4L2Jsb2NrLnNjc3MiLCJwYWdlcy9wcm9kdWN0SW5kZXgvY2F0ZWdvcmllcy5zY3NzIiwicGFnZXMvcHJvZHVjdEluZGV4L2NhdGVnb3J5LnNjc3MiLCJwYWdlcy9zZWFyY2gvX3NlYXJjaC5zY3NzIiwicGFnZXMvc2VhcmNoL19mb3JtLnNjc3MiLCJwYWdlcy9zdG9yZS5zY3NzIiwicGFnZXMvc3VwcG9ydC9fc3VwcG9ydC5zY3NzIiwicGFnZXMvc3VwcG9ydC9lbnRyeS9fZW50cnkuc2NzcyIsInBhZ2VzL3N1cHBvcnQvX2hlYWRlci5zY3NzIiwicGFnZXMvc3VwcG9ydC9fcHJvZHVjdHMuc2NzcyIsImFwcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MiLCJ2ZW5kb3Ivc2xpY2svc2xpY2stdGhlbWUuc2NzcyIsInZlbmRvci9waWthZGF5LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDQWhCOzs7OztFQUFBO0FDR0UsMkVBQUE7QUFRQTtFQUNFLGlCQUFBO0VBQ0EsOEJBQUE7QUZGSjs7QUVVRTtFQUNFLFNBQUE7QUZQSjs7QUVhRTtFQUNFLGNBQUE7RUFDQSxnQkFBQTtBRlZKOztBRW1CRTtFQUNFLCtCQUFBO1VBQUEsdUJBQUE7RUFDQSxTQUFBO0VBQ0EsaUJBQUE7QUZoQko7O0FFc0JFO0VBQ0UsaUNBQUE7RUFDQSxjQUFBO0FGbkJKOztBRTJCRTtFQUNFLDZCQUFBO0FGeEJKOztBRThCRTtFQUNFLGdCQUFBO0VBQ0EseUNBQUE7VUFBQSxpQ0FBQTtBRjNCSjs7QUVnQ0U7O0VBRUUsbUJBQUE7QUY3Qko7O0FFbUNFOzs7RUFHRSxpQ0FBQTtFQUNBLGNBQUE7QUZoQ0o7O0FFcUNFO0VBQ0UsY0FBQTtBRmxDSjs7QUV3Q0U7O0VBRUUsY0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBO0FGckNKOztBRXdDRTtFQUNFLGVBQUE7QUZyQ0o7O0FFd0NFO0VBQ0UsV0FBQTtBRnJDSjs7QUU2Q0U7RUFDRSxrQkFBQTtBRjFDSjs7QUVtREU7Ozs7O0VBS0Usb0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxTQUFBO0FGaERKOztBRXNERTs7RUFFRSxpQkFBQTtBRm5ESjs7QUV5REU7O0VBRUUsb0JBQUE7QUZ0REo7O0FFMkRFOzs7O0VBSUUsMEJBQUE7QUZ4REo7O0FFNkRFOzs7O0VBSUUsa0JBQUE7RUFDQSxVQUFBO0FGMURKOztBRStERTs7OztFQUlFLDhCQUFBO0FGNURKOztBRWlFRTtFQUNFLDhCQUFBO0FGOURKOztBRXNFRTtFQUNFLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLGVBQUE7RUFDQSxVQUFBO0VBQ0EsbUJBQUE7QUZuRUo7O0FFd0VFO0VBQ0Usd0JBQUE7QUZyRUo7O0FFMEVFO0VBQ0UsY0FBQTtBRnZFSjs7QUU2RUU7O0VBRUUsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLFVBQUE7QUYxRUo7O0FFK0VFOztFQUVFLFlBQUE7QUY1RUo7O0FFa0ZFO0VBQ0UsNkJBQUE7RUFDQSxvQkFBQTtBRi9FSjs7QUVvRkU7RUFDRSx3QkFBQTtBRmpGSjs7QUV1RkU7RUFDRSwwQkFBQTtFQUNBLGFBQUE7QUZwRko7O0FFNEZFO0VBQ0UsY0FBQTtBRnpGSjs7QUU4RkU7RUFDRSxrQkFBQTtBRjNGSjs7QUVtR0U7RUFDRSxhQUFBO0FGaEdKOztBRXFHRTtFQUNFLGFBQUE7QUZsR0o7O0FFMEdJOzs7Ozs7O0VBQ0UsYUFBQTtBRmpHTjs7QUVzR0U7RUFDRSwyQkFBQTtFQUNBLHlCQUFBO0FGbkdKOztBR3JERTtFQUNFLHdFQUFBO0FId0RKOztBR3JERTtFQUNFLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSxlQ2pGZTtBSnlJbkI7O0FHcERFOzs7RUFHRSwyQkFBQTtVQUFBLG1CQUFBO0FIdURKOztBR25ERTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBVUEsbUJDMUZJO0VENEZKLHdHQ3hGZTtFRHlGZixtQkNuRm1CO0VEb0ZuQixnQkMxR2dCO0VEMkdoQixjQzVGYztFRCtGWixtQ0FBQTtFQUNBLGtDQUFBO0FIMENOOztBR3RDRTtFQUVFLHFCQUFBO0VBQ0Esc0JBQUE7RUFHQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLCtCQUFBO0FIc0NKOztBR2xDRTtFQUNFLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQzFHWTtBSitJaEI7O0FHakNFO0VBQ0UsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLFdBQUE7RUFDQSxnQkNqSFk7QUpxSmhCOztBRzdCSTs7Ozs7O0VBR0UsMEJBQUE7QUhtQ047O0FHOUJFO0VBRUUsVUFBQTtFQUNBLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxnQkNySVk7RURzSVosdUJBQUE7RUFDQSxjQUFBO0VBQ0EsWUNsSW1CO0FKa0t2QjtBSzdERTtFQUNFLFVBQUE7QUwrREo7O0FHL0JFO0VBQ0UsY0FBQTtFQUNBLGlDQUFBO0FIa0NKOztBRzlCRTs7Ozs7RUFLRSxvQkFBQTtBSGlDSjs7QUc3QkU7RUFDRSx5QkFBQTtBSGdDSjs7QUc3QkU7RUFDRSx3QkFBQTtBSGdDSjs7QU1sS0U7O0VBckNBLGNBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0EsV0FBQTtFQUNBLGlCQUxTO0VBTVQsZ0JBQUE7RUFDQSxlRnNYYztFRXBYZCxTRmtYYTtFRWpYYixnQkZEYztFRUVkLHNCRjZXaUI7RUU1V2pCLHdCRmtYYTtVRWxYYixnQkZrWGE7RUVoWGIsb0JGc1drQjtFRXJXbEIsZUZzV2dCO0VFcldoQixtQkZUcUI7RUVVckIsZ0JGaENrQjtFRWlDbEIsY0ZwQk07RUV1QkosMkVGNFdlO0VFNVdmLG1FRjRXZTtFRTVXZiwyREY0V2U7RUU1V2Ysb0ZGNFdlO0VFdlZmLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtBTm9MSjtBTXJNRTs7RUFDRSxhQUFBO0VBQ0EsU0ZpV2lCO0VFaFdqQix5QkY2VnFCO0VFNVZyQix3QkZrV2lCO1VFbFdqQixnQkZrV2lCO0VFL1ZmLDJFRmlXYTtFRWpXYixtRUZpV2E7RUVqV2IsMkRGaVdhO0VFaldiLG9GRmlXYTtBSjNKbkI7O0FNeExFO0VBQ0UsZUFBQTtBTjJMSjtBTXpMSTtFQUNFLFlBQUE7QU4yTE47O0FNcExJOzs7RUFFRSx5QkZqRU87RUVrRVAsbUJGb1VrQjtBSjVJeEI7O0FNbkxFOztFQUVFLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLGdCRjNEWTtBSmlQaEI7O0FNbExFO0VBQ0UsOEJBQUE7VUFBQSxzQkFBQTtBTnFMSjs7QU1wS0U7RUFDRSxjRi9GUTtBSnNRWjs7QU14S0U7RUFDRSxjRi9GUTtBSnNRWjs7QU14S0U7RUFDRSxjRi9GUTtBSnNRWjs7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QVkzYkU7RUFDRSxZQUFBO0VBQ0Esc0JBQUE7QVo2Yko7QVkzYkU7RUFDRSxjQUFBO0VBQ0EsaUJBQUE7QVo2Yko7O0FhbGVFO0VBQ0UscUJUeUx1QjtFU3hMdkIseUJBQUE7QWJxZUo7QWFuZUk7RUFDRSxjVHFMcUI7QUpnVDNCO0FhdGVJO0VBQ0UsY1RxTHFCO0FKZ1QzQjtBYXRlSTtFQUNFLGNUcUxxQjtBSmdUM0I7QWF0ZUk7RUFDRSxjVHFMcUI7QUpnVDNCO0FhdGVJO0VBQ0UsY1RxTHFCO0FKZ1QzQjs7QWEzY0k7RUFDRSxjVDJKcUI7QUptVDNCOztBYXpjRTtFQXpCQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQlQ4WGE7RVM1WGIsa0JUNktzQjtFUzVLdEIsaUJUZ0NtQjtFUy9CbkIsY1QwS2tCO0FKMlRwQjtBYS9jSTtFQUNFLGNBQUE7QWJpZE47O0FjblVFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBbUJFLFNBQUE7RUFDQSxVQUFBO0Fkc1VKOztBY2xVRTtFQUNFLHFCVmhGc0I7RVVrRnRCLGtCQUFBO0VBQ0EsZ0JWcEZtQjtFVXFGbkIsa0NWbkZ1QjtBSnVaM0I7O0FjaFVFOztFQUVFLGtCQUFBO0VBQ0Esb0JBQUE7QWRtVUo7O0FjL1RFOztFQUVFLGlCVmhMaUI7RVVpTGpCLG9CQUFBO0Fka1VKOztBYzlURTtFQUNFLGdCVjFHYztFVTJHZCxvQkFBQTtBZGlVSjs7QWM3VEU7Ozs7OztFQU1FLHdHVnhNZTtFVXlNZixrQlY5SWdCO0VVK0loQixtQlZwTW1CO0VVcU1uQixjVjlNSTtFVStNSixrQ1YxSG9CO0FKMGJ4QjtBYzlUSTs7Ozs7O0VBQ0UsY0FBQTtFQUNBLGNWdE5RO0FKMmhCZDs7QWM1VFE7RUFJSSxpQkFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWRvU1o7O0FjblVRO0VBSUksa0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FkMlNaOztBYzFVUTtFQUlJLG9CQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBZGtUWjs7QWNqVlE7RUFJSSxtQkFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWR5VFo7O0FjeFZRO0VBSUksb0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FkZ1VaOztBYy9WUTtFQUlJLGVBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FkdVVaOztBZWxlUTtFRDRIQTtJQUlJLGVBRGlCO0Vkd1czQjtFYzNXTTtJQUlJLGlCQURpQjtFZDJXM0I7RWM5V007SUFJSSxvQkFEaUI7RWQ4VzNCO0VjalhNO0lBSUksb0JBRGlCO0VkaVgzQjtFY3BYTTtJQUlJLGtCQURpQjtFZG9YM0I7RWN2WE07SUFJSSxlQURpQjtFZHVYM0I7QUFDRjtBY3BWRTtFQUNFLG9CQUFBO0VBQ0EsY1Z6S1c7RVUwS1gscUJWeEtxQjtFVTBLckIsZUFBQTtBZHFWSjtBY25WSTtFQUVFLGNWL0tlO0FKbWdCckI7QWM5VUk7RUFDRSxTQUFBO0FkZ1ZOOztBYzNVRTtFQUNFLFdBQUE7RUFFQSxpQlZ6U1c7RVUwU1gsU0FBQTtFQUNBLG9CVjNMUTtFVTZMUixhQUFBO0VBQ0EsZUFBQTtFQUNBLGdDVmhNUTtFVWlNUixjQUFBO0FkNFVKOztBY3hVRTs7O0VBR0UscUJWaE5zQjtFVWlOdEIsNEJWcE1rQjtFVXFNbEIsZ0JWbk5tQjtBSjhoQnZCOztBY3ZVRTtFQUNFLGtCQUFBO0FkMFVKOztBY3RVRTtFQUNFLG9CVjlNZTtFVStNZixxQlZqTmM7QUowaEJsQjs7QWNyVUU7RUFDRSxvQlZwTmU7QUo0aEJuQjs7QWNuVUk7RUFDRSxvQlZ6Tm9CO0VVME5wQixnQkFBQTtBZHNVTjs7QWNqVUU7RUFDRSxtQlYvTnFCO0FKbWlCekI7QWNsVUk7RUFDRSxxQlZoT3dCO0VVaU94QixpQlZsVWU7QUpzb0JyQjs7QWMvVEU7RUFDRSxrQkFBQTtFQUNBLHNDVnRPaUI7RVV1T2pCLDhCVnRPZ0I7QUp3aUJwQjtBY2hVSTtFQUNFLGdCVi9QaUI7RVVnUWpCLGNWMVZNO0FKNHBCWjs7QWNwVEU7RUFDRSxpQ1ZsUGE7RVVtUGIsWUFBQTtFQUNBLHFCQUFBO0FkdVRKOztBY25URTtFQUNFLFNBQUE7QWRzVEo7O0FjM1NFO0VBQ0UsU0FBQTtFQUNBLDJCVnhRZ0I7RVUwUWhCLHlCVmpZUztFVW1ZVCw0RFZoVW9CO0VVaVVwQixjVmpZSTtBSjZxQlI7O0FnQjFuQkU7RUFDRSxrQlo0RW1CO0VZM0VuQixxQlo0RXNCO0VZMUV0QixtQlo3Q21CO0VZOENuQixnQlpxRW1CO0VZcEVuQixjWjFEUTtBSnNyQlo7O0FnQnhuQkU7RUFDRSxlWjZEYTtFWTVEYixnQlo2RGM7QUo4akJsQjs7QWdCdm5CRTtFQUNFLGlCWjhEYTtFWTdEYixjQUFBO0FoQjBuQko7QWdCeG5CSTtFQUNFLGlCQUFBO0FoQjBuQk47O0FnQnBuQkk7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7QWhCdW5CTjs7QWdCbm5CRTtFQWpGQSxjQUFBO0VBQ0EsY1pMVTtFWU1WLG9CWitIZTtBSnlrQmpCO0FnQnRzQkU7RUFDRSxhWjZIa0I7QUoya0J0Qjs7QWdCcG5CRTtFQTdFQSx5QloySFk7RVkxSFoseUJabkJXO0VZcUJYLDREWjhDc0I7RVk3Q3RCLG1CWlRxQjtFWVVyQixjWnBCTTtFWTBCTixlQUFBO0VBQ0EsZUFBQTtFQUNBLHFCQUFBO0VBRUEscUNaNkdhO0FKaWxCZjs7QWdCdm5CRTtFQXRGQSx5QloySFk7RVkxSFoseUJabkJXO0VZcUJYLDREWjhDc0I7RVk3Q3RCLG1CWlRxQjtFWVVyQixjWnBCTTtFWW9DTixjQUFBO0VBQ0EsY0FBQTtFQUNBLGdCQUFBO0VBRUEsYVpvR21CO0VZbkduQixxQlpvR3lCO0FKNGxCM0I7O0FpQjd5QlU7RUFDRSxnQkFSVTtBakJ3ekJ0Qjs7QWlCanpCVTtFQUNFLGlCQVJVO0FqQjR6QnRCOztBaUJyekJVO0VBQ0Usa0JBUlU7QWpCZzBCdEI7O0FpQnp6QlU7RUFDRSxtQkFSVTtBakJvMEJ0Qjs7QWV4cEJRO0VFMUtFO0lBQ0UsZ0JBSFU7RWpCeTBCcEI7RWlCdjBCUTtJQUNFLGlCQUhVO0VqQjQwQnBC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O0lBQ0UsNkJBQUE7UUFBQSxnQkFBQTtFbkJ1OUJOO0FBQ0Y7QWVwMkJRO0VJckhGO0lBQ0UsNkJBQUE7UUFBQSxnQkFBQTtFbkI0OUJOO0FBQ0Y7QW1CaDlCSTtFR3NERixtQkFBQTtNQUFBLGtCQUFBO1VBQUEsY0FBQTtBdEI2NUJGOztBbUJwOEJNO0VHa0ZGLG9CQVRNO0F0QiszQlY7O0FtQng4Qk07RUdrRkYscUJBVE07QXRCbTRCVjs7QW1CNThCTTtFR2tGRixVQVRNO0F0QnU0QlY7O0FtQmg5Qk07RUdrRkYscUJBVE07QXRCMjRCVjs7QW1CcDlCTTtFR2tGRixxQkFUTTtBdEIrNEJWOztBbUJ4OUJNO0VHa0ZGLFVBVE07QXRCbTVCVjs7QW1CNTlCTTtFR2tGRixxQkFUTTtBdEJ1NUJWOztBbUJoK0JNO0VHa0ZGLHFCQVRNO0F0QjI1QlY7O0FtQnArQk07RUdrRkYsVUFUTTtBdEIrNUJWOztBbUJ4K0JNO0VHa0ZGLHFCQVRNO0F0Qm02QlY7O0FtQjUrQk07RUdrRkYscUJBVE07QXRCdTZCVjs7QW1CaC9CTTtFR2tGRixXQVRNO0F0QjI2QlY7O0FlNTVCUTtFSTVHRjtJRzJESixtQkFBQTtRQUFBLGlCQUFBO1lBQUEsV0FBQTtJQTJDRSxXQVRNO0V0Qmk3QlI7RW1CemdDRTtJR3NERixtQkFBQTtRQUFBLGtCQUFBO1lBQUEsY0FBQTtFdEJzOUJBO0VtQnRnQ0k7SUcyRkYsV0FUTTtFdEJ1N0JSO0VtQmhnQ0k7SUdrRkYsb0JBVE07RXRCMDdCUjtFbUJuZ0NJO0lHa0ZGLHFCQVRNO0V0QjY3QlI7RW1CdGdDSTtJR2tGRixVQVRNO0V0Qmc4QlI7RW1CemdDSTtJR2tGRixxQkFUTTtFdEJtOEJSO0VtQjVnQ0k7SUdrRkYscUJBVE07RXRCczhCUjtFbUIvZ0NJO0lHa0ZGLFVBVE07RXRCeThCUjtFbUJsaENJO0lHa0ZGLHFCQVRNO0V0QjQ4QlI7RW1CcmhDSTtJR2tGRixxQkFUTTtFdEIrOEJSO0VtQnhoQ0k7SUdrRkYsVUFUTTtFdEJrOUJSO0VtQjNoQ0k7SUdrRkYscUJBVE07RXRCcTlCUjtFbUI5aENJO0lHa0ZGLHFCQVRNO0V0Qnc5QlI7RW1CamlDSTtJR2tGRixXQVRNO0V0QjI5QlI7QUFDRjtBZTc4QlE7RUk1R0Y7SUcyREosbUJBQUE7UUFBQSxpQkFBQTtZQUFBLFdBQUE7SUEyQ0UsV0FUTTtFdEJpK0JSO0VtQnpqQ0U7SUdzREYsbUJBQUE7UUFBQSxrQkFBQTtZQUFBLGNBQUE7RXRCc2dDQTtFbUJ0akNJO0lHMkZGLFdBVE07RXRCdStCUjtFbUJoakNJO0lHa0ZGLG9CQVRNO0V0QjArQlI7RW1CbmpDSTtJR2tGRixxQkFUTTtFdEI2K0JSO0VtQnRqQ0k7SUdrRkYsVUFUTTtFdEJnL0JSO0VtQnpqQ0k7SUdrRkYscUJBVE07RXRCbS9CUjtFbUI1akNJO0lHa0ZGLHFCQVRNO0V0QnMvQlI7RW1CL2pDSTtJR2tGRixVQVRNO0V0QnkvQlI7RW1CbGtDSTtJR2tGRixxQkFUTTtFdEI0L0JSO0VtQnJrQ0k7SUdrRkYscUJBVE07RXRCKy9CUjtFbUJ4a0NJO0lHa0ZGLFVBVE07RXRCa2dDUjtFbUIza0NJO0lHa0ZGLHFCQVRNO0V0QnFnQ1I7RW1COWtDSTtJR2tGRixxQkFUTTtFdEJ3Z0NSO0VtQmpsQ0k7SUdrRkYsV0FUTTtFdEIyZ0NSO0FBQ0Y7QW1CN2tDRTtFQUNFLFdBQUE7QW5CK2tDSjs7QW1CM2tDRTtFQUNFLFlBQUE7QW5COGtDSjs7QW1CaGpDRTtFQ3ZHTSx1QkFBQTtFQUFBLHdCQUFBO0FwQjRwQ1I7QWV6Z0NRO0VJNUNOO0lDdkdNLHFCQUFBO0lBQUEsc0JBQUE7RXBCaXFDTjtBQUNGO0FlL2dDUTtFSTVDTjtJQ3ZHTSxzQkFBQTtJQUFBLHVCQUFBO0VwQnVxQ047QUFDRjtBZWhoQ1E7RUlqRE47SUN2R00sc0JBQUE7SUFBQSx1QkFBQTtFcEI2cUNOO0FBQ0Y7QW1CbmtDSTtFR2tDQSw0QkFUTTtFRjNISixzQkFBQTtFQUFBLHVCQUFBO0FwQjBxQ047QWVoaUNRO0VJakNBO0lHMkJKLDBCQVRNO0lGM0hKLG9CQUFBO0lBQUEscUJBQUE7RXBCZ3JDSjtBQUNGO0FldmlDUTtFSWpDQTtJRzJCSiwyQkFUTTtJRjNISixxQkFBQTtJQUFBLHNCQUFBO0VwQnVyQ0o7QUFDRjtBbUJsbkNFO0VHOERFLFdBVE07QXRCZ2tDVjtBbUJqbkNFO0VHMERFLFdBVE07QXRCbWtDVjtBbUI1bUNJO0VHa0RBLHFDQVRNO0F0QnNrQ1Y7QW1CL21DSTtFR2tEQSxzQ0FUTTtBdEJ5a0NWO0FtQmxuQ0k7RUdrREEsMkJBVE07QXRCNGtDVjtBbUJybkNJO0VHa0RBLHNDQVRNO0F0QitrQ1Y7QW1CeG5DSTtFR2tEQSxzQ0FUTTtBdEJrbENWO0FtQjNuQ0k7RUdrREEsMkJBVE07QXRCcWxDVjtBbUI5bkNJO0VHa0RBLHNDQVRNO0F0QndsQ1Y7QW1Cam9DSTtFR2tEQSxzQ0FUTTtBdEIybENWO0FtQnBvQ0k7RUdrREEsMkJBVE07QXRCOGxDVjtBbUJ2b0NJO0VHa0RBLHNDQVRNO0F0QmltQ1Y7QW1CMW9DSTtFR2tEQSxzQ0FUTTtBdEJvbUNWO0FtQjdvQ0k7RUdrREEsNEJBVE07QXRCdW1DVjtBZXhsQ1E7RUlwRU47SUc4REUsV0FUTTtFdEIybUNSO0VtQjVwQ0E7SUcwREUsV0FUTTtFdEI4bUNSO0VtQnZwQ0U7SUdrREEsbUNBVE07RXRCaW5DUjtFbUIxcENFO0lHa0RBLG9DQVRNO0V0Qm9uQ1I7RW1CN3BDRTtJR2tEQSx5QkFUTTtFdEJ1bkNSO0VtQmhxQ0U7SUdrREEsb0NBVE07RXRCMG5DUjtFbUJucUNFO0lHa0RBLG9DQVRNO0V0QjZuQ1I7RW1CdHFDRTtJR2tEQSx5QkFUTTtFdEJnb0NSO0VtQnpxQ0U7SUdrREEsb0NBVE07RXRCbW9DUjtFbUI1cUNFO0lHa0RBLG9DQVRNO0V0QnNvQ1I7RW1CL3FDRTtJR2tEQSx5QkFUTTtFdEJ5b0NSO0VtQmxyQ0U7SUdrREEsb0NBVE07RXRCNG9DUjtFbUJyckNFO0lHa0RBLG9DQVRNO0V0QitvQ1I7RW1CeHJDRTtJR2tEQSwwQkFUTTtFdEJrcENSO0VtQnZzQ0E7SUc4REUsV0FUTTtFdEJxcENSO0VtQnRzQ0E7SUcwREUsV0FUTTtFdEJ3cENSO0VtQmpzQ0U7SUdrREEsbUNBVE07RXRCMnBDUjtFbUJwc0NFO0lHa0RBLG9DQVRNO0V0QjhwQ1I7RW1CdnNDRTtJR2tEQSx5QkFUTTtFdEJpcUNSO0VtQjFzQ0U7SUdrREEsb0NBVE07RXRCb3FDUjtFbUI3c0NFO0lHa0RBLG9DQVRNO0V0QnVxQ1I7RW1CaHRDRTtJR2tEQSx5QkFUTTtFdEIwcUNSO0VtQm50Q0U7SUdrREEsb0NBVE07RXRCNnFDUjtFbUJ0dENFO0lHa0RBLG9DQVRNO0V0QmdyQ1I7RW1CenRDRTtJR2tEQSx5QkFUTTtFdEJtckNSO0VtQjV0Q0U7SUdrREEsb0NBVE07RXRCc3JDUjtFbUIvdENFO0lHa0RBLG9DQVRNO0V0QnlyQ1I7RW1CbHVDRTtJR2tEQSwwQkFUTTtFdEI0ckNSO0FBQ0Y7QWU5cUNRO0VJcEVOO0lHOERFLFdBVE07RXRCaXNDUjtFbUJsdkNBO0lHMERFLFdBVE07RXRCb3NDUjtFbUI3dUNFO0lHa0RBLG9DQVRNO0V0QnVzQ1I7RW1CaHZDRTtJR2tEQSxxQ0FUTTtFdEIwc0NSO0VtQm52Q0U7SUdrREEsMEJBVE07RXRCNnNDUjtFbUJ0dkNFO0lHa0RBLHFDQVRNO0V0Qmd0Q1I7RW1CenZDRTtJR2tEQSxxQ0FUTTtFdEJtdENSO0VtQjV2Q0U7SUdrREEsMEJBVE07RXRCc3RDUjtFbUIvdkNFO0lHa0RBLHFDQVRNO0V0Qnl0Q1I7RW1CbHdDRTtJR2tEQSxxQ0FUTTtFdEI0dENSO0VtQnJ3Q0U7SUdrREEsMEJBVE07RXRCK3RDUjtFbUJ4d0NFO0lHa0RBLHFDQVRNO0V0Qmt1Q1I7RW1CM3dDRTtJR2tEQSxxQ0FUTTtFdEJxdUNSO0VtQjl3Q0U7SUdrREEsMkJBVE07RXRCd3VDUjtFbUI3eENBO0lHOERFLFdBVE07RXRCMnVDUjtFbUI1eENBO0lHMERFLFdBVE07RXRCOHVDUjtFbUJ2eENFO0lHa0RBLG9DQVRNO0V0Qml2Q1I7RW1CMXhDRTtJR2tEQSxxQ0FUTTtFdEJvdkNSO0VtQjd4Q0U7SUdrREEsMEJBVE07RXRCdXZDUjtFbUJoeUNFO0lHa0RBLHFDQVRNO0V0QjB2Q1I7RW1CbnlDRTtJR2tEQSxxQ0FUTTtFdEI2dkNSO0VtQnR5Q0U7SUdrREEsMEJBVE07RXRCZ3dDUjtFbUJ6eUNFO0lHa0RBLHFDQVRNO0V0Qm13Q1I7RW1CNXlDRTtJR2tEQSxxQ0FUTTtFdEJzd0NSO0VtQi95Q0U7SUdrREEsMEJBVE07RXRCeXdDUjtFbUJsekNFO0lHa0RBLHFDQVRNO0V0QjR3Q1I7RW1CcnpDRTtJR2tEQSxxQ0FUTTtFdEIrd0NSO0VtQnh6Q0U7SUdrREEsMkJBVE07RXRCa3hDUjtFbUJ2MENBO0lHOERFLFdBVE07RXRCcXhDUjtFbUJ0MENBO0lHMERFLFdBVE07RXRCd3hDUjtFbUJqMENFO0lHa0RBLG9DQVRNO0V0QjJ4Q1I7RW1CcDBDRTtJR2tEQSxxQ0FUTTtFdEI4eENSO0VtQnYwQ0U7SUdrREEsMEJBVE07RXRCaXlDUjtFbUIxMENFO0lHa0RBLHFDQVRNO0V0Qm95Q1I7RW1CNzBDRTtJR2tEQSxxQ0FUTTtFdEJ1eUNSO0VtQmgxQ0U7SUdrREEsMEJBVE07RXRCMHlDUjtFbUJuMUNFO0lHa0RBLHFDQVRNO0V0QjZ5Q1I7RW1CdDFDRTtJR2tEQSxxQ0FUTTtFdEJnekNSO0VtQnoxQ0U7SUdrREEsMEJBVE07RXRCbXpDUjtFbUI1MUNFO0lHa0RBLHFDQVRNO0V0QnN6Q1I7RW1CLzFDRTtJR2tEQSxxQ0FUTTtFdEJ5ekNSO0VtQmwyQ0U7SUdrREEsMkJBVE07RXRCNHpDUjtBQUNGOztBbUJuekNJO0VDOUlJLHdCQUFBO0VBQUEsdUJBQUE7QXBCczhDUjtBZW56Q1E7RUlMSjtJQzlJSSxzQkFBQTtJQUFBLHFCQUFBO0VwQjI4Q047QUFDRjtBZXp6Q1E7RUlMSjtJQzlJSSx1QkFBQTtJQUFBLHNCQUFBO0VwQmk5Q047QUFDRjtBZTF6Q1E7RUlWSjtJQzlJSSx1QkFBQTtJQUFBLHNCQUFBO0VwQnU5Q047QUFDRjtBbUJwMENJO0VDcEpJLHdCQUFBO0VBQUEsdUJBQUE7QXBCNDlDUjtBZXowQ1E7RUlDSjtJQ3BKSSxzQkFBQTtJQUFBLHFCQUFBO0VwQmkrQ047QUFDRjtBZS8wQ1E7RUlDSjtJQ3BKSSx1QkFBQTtJQUFBLHNCQUFBO0VwQnUrQ047QUFDRjtBZWgxQ1E7RUlKSjtJQ3BKSSx1QkFBQTtJQUFBLHNCQUFBO0VwQjYrQ047QUFDRjtBbUJyMUNJO0VDekpJLHdCQUFBO0VBQUEsdUJBQUE7QXBCay9DUjtBZS8xQ1E7RUlNSjtJQ3pKSSxzQkFBQTtJQUFBLHFCQUFBO0VwQnUvQ047QUFDRjtBZXIyQ1E7RUlNSjtJQ3pKSSx1QkFBQTtJQUFBLHNCQUFBO0VwQjYvQ047QUFDRjtBZXQyQ1E7RUlDSjtJQ3pKSSx1QkFBQTtJQUFBLHNCQUFBO0VwQm1nRE47QUFDRjs7QXVCcGdERTtFRDZJRSxXQVRNO0F0Qm80Q1Y7O0F1QnhnREU7RUQ2SUUsVUFUTTtBdEJ3NENWOztBdUI1Z0RFO0VENklFLHFCQVRNO0F0QjQ0Q1Y7O0F1QmhoREU7RUQ2SUUsVUFUTTtBdEJnNUNWOztBdUJwaERFO0VENklFLFVBVE07QXRCbzVDVjs7QXVCeGhERTtFRDZJRSxxQkFUTTtBdEJ3NUNWOztBdUI1aERFO0VENklFLHFCQVRNO0F0QjQ1Q1Y7O0F1QmhpREU7RUQ2SUUsWUFUTTtBdEJnNkNWOztBZWo1Q1E7RVFuSk47SUQ2SUUsV0FUTTtFdEJxNkNSO0V1QnppREE7SUQ2SUUsVUFUTTtFdEJ3NkNSO0V1QjVpREE7SUQ2SUUscUJBVE07RXRCMjZDUjtFdUIvaURBO0lENklFLFVBVE07RXRCODZDUjtFdUJsakRBO0lENklFLFVBVE07RXRCaTdDUjtFdUJyakRBO0lENklFLHFCQVRNO0V0Qm83Q1I7RXVCeGpEQTtJRDZJRSxxQkFUTTtFdEJ1N0NSO0V1QjNqREE7SUQ2SUUsWUFUTTtFdEIwN0NSO0FBQ0Y7QWU1NkNRO0VRbkpOO0lENklFLFdBVE07RXRCKzdDUjtFdUJua0RBO0lENklFLFVBVE07RXRCazhDUjtFdUJ0a0RBO0lENklFLHFCQVRNO0V0QnE4Q1I7RXVCemtEQTtJRDZJRSxVQVRNO0V0Qnc4Q1I7RXVCNWtEQTtJRDZJRSxVQVRNO0V0QjI4Q1I7RXVCL2tEQTtJRDZJRSxxQkFUTTtFdEI4OENSO0V1QmxsREE7SUQ2SUUscUJBVE07RXRCaTlDUjtFdUJybERBO0lENklFLFlBVE07RXRCbzlDUjtBQUNGO0F1QnpsREU7RUQ2SUUsNEJBVE07QXRCdzlDVjs7QXVCNWxERTtFRDZJRSwyQkFUTTtBdEI0OUNWOztBdUJobURFO0VENklFLHNDQVRNO0F0QmcrQ1Y7O0F1QnBtREU7RUQ2SUUsMkJBVE07QXRCbytDVjs7QXVCeG1ERTtFRDZJRSwyQkFUTTtBdEJ3K0NWOztBdUI1bURFO0VENklFLHNDQVRNO0F0QjQrQ1Y7O0F1QmhuREU7RUQ2SUUsc0NBVE07QXRCZy9DVjs7QXVCcG5ERTtFRDZJRSw2QkFUTTtBdEJvL0NWOztBZXIrQ1E7RVFuSk47SUQ2SUUsMEJBVE07RXRCeS9DUjtFdUI3bkRBO0lENklFLHlCQVRNO0V0QjQvQ1I7RXVCaG9EQTtJRDZJRSxvQ0FUTTtFdEIrL0NSO0V1Qm5vREE7SUQ2SUUseUJBVE07RXRCa2dEUjtFdUJ0b0RBO0lENklFLHlCQVRNO0V0QnFnRFI7RXVCem9EQTtJRDZJRSxvQ0FUTTtFdEJ3Z0RSO0V1QjVvREE7SUQ2SUUsb0NBVE07RXRCMmdEUjtFdUIvb0RBO0lENklFLDJCQVRNO0V0QjhnRFI7RXVCbHBEQTtJRDZJRSwwQkFUTTtFdEJpaERSO0V1QnJwREE7SUQ2SUUseUJBVE07RXRCb2hEUjtFdUJ4cERBO0lENklFLG9DQVRNO0V0QnVoRFI7RXVCM3BEQTtJRDZJRSx5QkFUTTtFdEIwaERSO0V1QjlwREE7SUQ2SUUseUJBVE07RXRCNmhEUjtFdUJqcURBO0lENklFLG9DQVRNO0V0QmdpRFI7RXVCcHFEQTtJRDZJRSxvQ0FUTTtFdEJtaURSO0V1QnZxREE7SUQ2SUUsMkJBVE07RXRCc2lEUjtBQUNGO0FleGhEUTtFUW5KTjtJRDZJRSwyQkFUTTtFdEIyaURSO0V1Qi9xREE7SUQ2SUUsMkJBVE07RXRCOGlEUjtFdUJsckRBO0lENklFLDBCQVRNO0V0QmlqRFI7RXVCcnJEQTtJRDZJRSwwQkFUTTtFdEJvakRSO0V1QnhyREE7SUQ2SUUscUNBVE07RXRCdWpEUjtFdUIzckRBO0lENklFLHFDQVRNO0V0QjBqRFI7RXVCOXJEQTtJRDZJRSwwQkFUTTtFdEI2akRSO0V1QmpzREE7SUQ2SUUsMEJBVE07RXRCZ2tEUjtFdUJwc0RBO0lENklFLDBCQVRNO0V0Qm1rRFI7RXVCdnNEQTtJRDZJRSwwQkFUTTtFdEJza0RSO0V1QjFzREE7SUQ2SUUscUNBVE07RXRCeWtEUjtFdUI3c0RBO0lENklFLHFDQVRNO0V0QjRrRFI7RXVCaHREQTtJRDZJRSxxQ0FUTTtFdEIra0RSO0V1Qm50REE7SUQ2SUUscUNBVE07RXRCa2xEUjtFdUJ0dERBO0lENklFLDRCQVRNO0V0QnFsRFI7RXVCenREQTtJRDZJRSw0QkFUTTtFdEJ3bERSO0V1QjV0REE7SUQ2SUUsMkJBVE07RXRCMmxEUjtFdUIvdERBO0lENklFLDBCQVRNO0V0QjhsRFI7RXVCbHVEQTtJRDZJRSxxQ0FUTTtFdEJpbURSO0V1QnJ1REE7SUQ2SUUsMEJBVE07RXRCb21EUjtFdUJ4dURBO0lENklFLDBCQVRNO0V0QnVtRFI7RXVCM3VEQTtJRDZJRSxxQ0FUTTtFdEIwbURSO0V1Qjl1REE7SUQ2SUUscUNBVE07RXRCNm1EUjtFdUJqdkRBO0lENklFLDRCQVRNO0V0QmduRFI7QUFDRjtBbUI5aURNO0VLOU1FLGVBQUE7RUFBQSxjQUFBO0F4Qmd3RFI7QXdCN3ZETTtFQUVJLGVBQUE7RUFBQSxjQUFBO0F4Qit2RFY7QXdCenVEWTtFRnlIUixvQkFUTTtBdEI0bkRWO0F3QjV1RFk7RUZ5SFIscUJBVE07QXRCK25EVjtBd0IvdURZO0VGeUhSLFVBVE07QXRCa29EVjtBd0JsdkRZO0VGeUhSLHFCQVRNO0F0QnFvRFY7QXdCcnZEWTtFRnlIUixxQkFUTTtBdEJ3b0RWO0F3Qnh2RFk7RUZ5SFIsVUFUTTtBdEIyb0RWO0F3QjN2RFk7RUZ5SFIscUJBVE07QXRCOG9EVjtBd0I5dkRZO0VGeUhSLHFCQVRNO0F0QmlwRFY7QXdCandEWTtFRnlIUixVQVRNO0F0Qm9wRFY7QXdCcHdEWTtFRnlIUixxQkFUTTtBdEJ1cERWO0F3QnZ3RFk7RUZ5SFIscUJBVE07QXRCMHBEVjtBd0Ixd0RZO0VGeUhSLFdBVE07QXRCNnBEVjtBZTlvRFE7RVMvSEk7SUZ5SFIsb0JBVE07RXRCaXFEUjtFd0JqeERVO0lGeUhSLHFCQVRNO0V0Qm9xRFI7RXdCcHhEVTtJRnlIUixVQVRNO0V0QnVxRFI7RXdCdnhEVTtJRnlIUixxQkFUTTtFdEIwcURSO0V3QjF4RFU7SUZ5SFIscUJBVE07RXRCNnFEUjtFd0I3eERVO0lGeUhSLFVBVE07RXRCZ3JEUjtFd0JoeURVO0lGeUhSLHFCQVRNO0V0Qm1yRFI7RXdCbnlEVTtJRnlIUixxQkFUTTtFdEJzckRSO0V3QnR5RFU7SUZ5SFIsVUFUTTtFdEJ5ckRSO0V3Qnp5RFU7SUZ5SFIscUJBVE07RXRCNHJEUjtFd0I1eURVO0lGeUhSLHFCQVRNO0V0QityRFI7RXdCL3lEVTtJRnlIUixXQVRNO0V0QmtzRFI7QUFDRjtBZXByRFE7RVMvSEk7SUZ5SFIsb0JBVE07RXRCdXNEUjtFd0J2ekRVO0lGeUhSLHFCQVRNO0V0QjBzRFI7RXdCMXpEVTtJRnlIUixVQVRNO0V0QjZzRFI7RXdCN3pEVTtJRnlIUixxQkFUTTtFdEJndERSO0V3QmgwRFU7SUZ5SFIscUJBVE07RXRCbXREUjtFd0JuMERVO0lGeUhSLFVBVE07RXRCc3REUjtFd0J0MERVO0lGeUhSLHFCQVRNO0V0Qnl0RFI7RXdCejBEVTtJRnlIUixxQkFUTTtFdEI0dERSO0V3QjUwRFU7SUZ5SFIsVUFUTTtFdEIrdERSO0V3Qi8wRFU7SUZ5SFIscUJBVE07RXRCa3VEUjtFd0JsMURVO0lGeUhSLHFCQVRNO0V0QnF1RFI7RXdCcjFEVTtJRnlIUixXQVRNO0V0Qnd1RFI7QUFDRjs7QW1CaHFETTtFSzdLRSxlQUFBO0VBQUEsY0FBQTtBeEJrMURSO0F3Qi8wRE07RUFFSSxnQkFBQTtFQUFBLGVBQUE7QXhCaTFEVjs7QWVudURRO0VJb0RGO0lLOU1FLGVBQUE7SUFBQSxjQUFBO0V4Qm00RE47RXdCaDRESTtJQUVJLGVBQUE7SUFBQSxjQUFBO0V4Qms0RFI7QUFDRjtBZTl1RFE7RVN4SUk7SUZrSVIsb0JBVE07RXRCaXdEUjtFd0IxM0RVO0lGa0lSLHFCQVRNO0V0Qm93RFI7RXdCNzNEVTtJRmtJUixVQVRNO0V0QnV3RFI7RXdCaDREVTtJRmtJUixxQkFUTTtFdEIwd0RSO0V3Qm40RFU7SUZrSVIscUJBVE07RXRCNndEUjtFd0J0NERVO0lGa0lSLFVBVE07RXRCZ3hEUjtFd0J6NERVO0lGa0lSLHFCQVRNO0V0Qm14RFI7RXdCNTREVTtJRmtJUixxQkFUTTtFdEJzeERSO0V3Qi80RFU7SUZrSVIsVUFUTTtFdEJ5eERSO0V3Qmw1RFU7SUZrSVIscUJBVE07RXRCNHhEUjtFd0JyNURVO0lGa0lSLHFCQVRNO0V0Qit4RFI7RXdCeDVEVTtJRmtJUixXQVRNO0V0Qmt5RFI7QUFDRjtBZXB4RFE7RVMvSEk7SUZ5SFIsb0JBVE07RXRCdXlEUjtFd0J2NURVO0lGeUhSLHFCQVRNO0V0QjB5RFI7RXdCMTVEVTtJRnlIUixVQVRNO0V0QjZ5RFI7RXdCNzVEVTtJRnlIUixxQkFUTTtFdEJnekRSO0V3Qmg2RFU7SUZ5SFIscUJBVE07RXRCbXpEUjtFd0JuNkRVO0lGeUhSLFVBVE07RXRCc3pEUjtFd0J0NkRVO0lGeUhSLHFCQVRNO0V0Qnl6RFI7RXdCejZEVTtJRnlIUixxQkFUTTtFdEI0ekRSO0V3QjU2RFU7SUZ5SFIsVUFUTTtFdEIrekRSO0V3Qi82RFU7SUZ5SFIscUJBVE07RXRCazBEUjtFd0JsN0RVO0lGeUhSLHFCQVRNO0V0QnEwRFI7RXdCcjdEVTtJRnlIUixXQVRNO0V0QncwRFI7QUFDRjtBZTF6RFE7RVMvSEk7SUZ5SFIsb0JBVE07RXRCNjBEUjtFd0I3N0RVO0lGeUhSLHFCQVRNO0V0QmcxRFI7RXdCaDhEVTtJRnlIUixVQVRNO0V0Qm0xRFI7RXdCbjhEVTtJRnlIUixxQkFUTTtFdEJzMURSO0V3QnQ4RFU7SUZ5SFIscUJBVE07RXRCeTFEUjtFd0J6OERVO0lGeUhSLFVBVE07RXRCNDFEUjtFd0I1OERVO0lGeUhSLHFCQVRNO0V0QisxRFI7RXdCLzhEVTtJRnlIUixxQkFUTTtFdEJrMkRSO0V3Qmw5RFU7SUZ5SFIsVUFUTTtFdEJxMkRSO0V3QnI5RFU7SUZ5SFIscUJBVE07RXRCdzJEUjtFd0J4OURVO0lGeUhSLHFCQVRNO0V0QjIyRFI7RXdCMzlEVTtJRnlIUixXQVRNO0V0QjgyRFI7QUFDRjs7QWVoMkRRO0VJMERGO0lLN0tFLGVBQUE7SUFBQSxjQUFBO0V4Qnk5RE47RXdCdDlESTtJQUVJLGdCQUFBO0lBQUEsZUFBQTtFeEJ3OURSO0FBQ0Y7O0FlMzJEUTtFSW9ERjtJSzlNRSxlQUFBO0lBQUEsY0FBQTtFeEIyZ0VOO0V3QnhnRUk7SUFFSSxlQUFBO0lBQUEsY0FBQTtFeEIwZ0VSO0FBQ0Y7QWV0M0RRO0VTeElJO0lGa0lSLG9CQVRNO0V0Qnk0RFI7RXdCbGdFVTtJRmtJUixxQkFUTTtFdEI0NERSO0V3QnJnRVU7SUZrSVIsVUFUTTtFdEIrNERSO0V3QnhnRVU7SUZrSVIscUJBVE07RXRCazVEUjtFd0IzZ0VVO0lGa0lSLHFCQVRNO0V0QnE1RFI7RXdCOWdFVTtJRmtJUixVQVRNO0V0Qnc1RFI7RXdCamhFVTtJRmtJUixxQkFUTTtFdEIyNURSO0V3QnBoRVU7SUZrSVIscUJBVE07RXRCODVEUjtFd0J2aEVVO0lGa0lSLFVBVE07RXRCaTZEUjtFd0IxaEVVO0lGa0lSLHFCQVRNO0V0Qm82RFI7RXdCN2hFVTtJRmtJUixxQkFUTTtFdEJ1NkRSO0V3QmhpRVU7SUZrSVIsV0FUTTtFdEIwNkRSO0FBQ0Y7QWU1NURRO0VTeElJO0lGa0lSLG9CQVRNO0V0Qis2RFI7RXdCeGlFVTtJRmtJUixxQkFUTTtFdEJrN0RSO0V3QjNpRVU7SUZrSVIsVUFUTTtFdEJxN0RSO0V3QjlpRVU7SUZrSVIscUJBVE07RXRCdzdEUjtFd0JqakVVO0lGa0lSLHFCQVRNO0V0QjI3RFI7RXdCcGpFVTtJRmtJUixVQVRNO0V0Qjg3RFI7RXdCdmpFVTtJRmtJUixxQkFUTTtFdEJpOERSO0V3QjFqRVU7SUZrSVIscUJBVE07RXRCbzhEUjtFd0I3akVVO0lGa0lSLFVBVE07RXRCdThEUjtFd0Joa0VVO0lGa0lSLHFCQVRNO0V0QjA4RFI7RXdCbmtFVTtJRmtJUixxQkFUTTtFdEI2OERSO0V3QnRrRVU7SUZrSVIsV0FUTTtFdEJnOURSO0FBQ0Y7QWVsOERRO0VTL0hJO0lGeUhSLG9CQVRNO0V0QnE5RFI7RXdCcmtFVTtJRnlIUixxQkFUTTtFdEJ3OURSO0V3QnhrRVU7SUZ5SFIsVUFUTTtFdEIyOURSO0V3QjNrRVU7SUZ5SFIscUJBVE07RXRCODlEUjtFd0I5a0VVO0lGeUhSLHFCQVRNO0V0QmkrRFI7RXdCamxFVTtJRnlIUixVQVRNO0V0Qm8rRFI7RXdCcGxFVTtJRnlIUixxQkFUTTtFdEJ1K0RSO0V3QnZsRVU7SUZ5SFIscUJBVE07RXRCMCtEUjtFd0IxbEVVO0lGeUhSLFVBVE07RXRCNitEUjtFd0I3bEVVO0lGeUhSLHFCQVRNO0V0QmcvRFI7RXdCaG1FVTtJRnlIUixxQkFUTTtFdEJtL0RSO0V3Qm5tRVU7SUZ5SFIsV0FUTTtFdEJzL0RSO0FBQ0Y7O0FleCtEUTtFSTBERjtJSzdLRSxlQUFBO0lBQUEsY0FBQTtFeEJpbUVOO0V3QjlsRUk7SUFFSSxnQkFBQTtJQUFBLGVBQUE7RXhCZ21FUjtBQUNGOztBbUIzNkRNO0VNbk1GLGVBQUE7QXpCa25FSjs7QW1CMzZETTtFTXZNRixvQ0FBQTtBekJzbkVKOztBbUJuN0RNO0VNbk1GLDBCQUFBO0F6QjBuRUo7O0FtQm43RE07RU12TUYsK0NBQUE7QXpCOG5FSjs7QW1CMzdETTtFTW5NRiwyQkFBQTtBekJrb0VKOztBbUIzN0RNO0VNdk1GLGdEQUFBO0F6QnNvRUo7O0FtQm44RE07RU1uTUYsZ0JBQUE7QXpCMG9FSjs7QW1CbjhETTtFTXZNRixxQ0FBQTtBekI4b0VKOztBbUIzOERNO0VNbk1GLDJCQUFBO0F6QmtwRUo7O0FtQjM4RE07RU12TUYsZ0RBQUE7QXpCc3BFSjs7QW1CbjlETTtFTW5NRiwyQkFBQTtBekIwcEVKOztBbUJuOURNO0VNdk1GLGdEQUFBO0F6QjhwRUo7O0FtQjM5RE07RU1uTUYsZ0JBQUE7QXpCa3FFSjs7QW1CMzlETTtFTXZNRixxQ0FBQTtBekJzcUVKOztBbUJuK0RNO0VNbk1GLDJCQUFBO0F6QjBxRUo7O0FtQm4rRE07RU12TUYsZ0RBQUE7QXpCOHFFSjs7QW1CMytETTtFTW5NRiwyQkFBQTtBekJrckVKOztBbUIzK0RNO0VNdk1GLGdEQUFBO0F6QnNyRUo7O0FtQm4vRE07RU1uTUYsZ0JBQUE7QXpCMHJFSjs7QW1Cbi9ETTtFTXZNRixxQ0FBQTtBekI4ckVKOztBbUIzL0RNO0VNbk1GLDJCQUFBO0F6QmtzRUo7O0FtQjMvRE07RU12TUYsZ0RBQUE7QXpCc3NFSjs7QW1CbmdFTTtFTW5NRiwyQkFBQTtBekIwc0VKOztBbUJuZ0VNO0VNdk1GLGdEQUFBO0F6QjhzRUo7O0FlbmxFUTtFSXdFRjtJTW5NRixlQUFBO0V6Qm10RUY7RW1CNWdFSTtJTXZNRixrQ0FBQTtFekJzdEVGO0VtQm5oRUk7SU1uTUYsMEJBQUE7RXpCeXRFRjtFbUJsaEVJO0lNdk1GLDZDQUFBO0V6QjR0RUY7RW1CemhFSTtJTW5NRiwyQkFBQTtFekIrdEVGO0VtQnhoRUk7SU12TUYsOENBQUE7RXpCa3VFRjtFbUIvaEVJO0lNbk1GLGdCQUFBO0V6QnF1RUY7RW1COWhFSTtJTXZNRixtQ0FBQTtFekJ3dUVGO0VtQnJpRUk7SU1uTUYsMkJBQUE7RXpCMnVFRjtFbUJwaUVJO0lNdk1GLDhDQUFBO0V6Qjh1RUY7RW1CM2lFSTtJTW5NRiwyQkFBQTtFekJpdkVGO0VtQjFpRUk7SU12TUYsOENBQUE7RXpCb3ZFRjtFbUJqakVJO0lNbk1GLGdCQUFBO0V6QnV2RUY7RW1CaGpFSTtJTXZNRixtQ0FBQTtFekIwdkVGO0VtQnZqRUk7SU1uTUYsMkJBQUE7RXpCNnZFRjtFbUJ0akVJO0lNdk1GLDhDQUFBO0V6Qmd3RUY7RW1CN2pFSTtJTW5NRiwyQkFBQTtFekJtd0VGO0VtQjVqRUk7SU12TUYsOENBQUE7RXpCc3dFRjtFbUJua0VJO0lNbk1GLGdCQUFBO0V6Qnl3RUY7RW1CbGtFSTtJTXZNRixtQ0FBQTtFekI0d0VGO0VtQnprRUk7SU1uTUYsMkJBQUE7RXpCK3dFRjtFbUJ4a0VJO0lNdk1GLDhDQUFBO0V6Qmt4RUY7RW1CL2tFSTtJTW5NRiwyQkFBQTtFekJxeEVGO0VtQjlrRUk7SU12TUYsOENBQUE7RXpCd3hFRjtBQUNGO0FlOXBFUTtFSXdFRjtJTW5NRixlQUFBO0V6QjZ4RUY7RW1CdGxFSTtJTXZNRixtQ0FBQTtFekJneUVGO0VtQjdsRUk7SU1uTUYsMEJBQUE7RXpCbXlFRjtFbUI1bEVJO0lNdk1GLDhDQUFBO0V6QnN5RUY7RW1Cbm1FSTtJTW5NRiwyQkFBQTtFekJ5eUVGO0VtQmxtRUk7SU12TUYsK0NBQUE7RXpCNHlFRjtFbUJ6bUVJO0lNbk1GLGdCQUFBO0V6Qit5RUY7RW1CeG1FSTtJTXZNRixvQ0FBQTtFekJrekVGO0VtQi9tRUk7SU1uTUYsMkJBQUE7RXpCcXpFRjtFbUI5bUVJO0lNdk1GLCtDQUFBO0V6Qnd6RUY7RW1Ccm5FSTtJTW5NRiwyQkFBQTtFekIyekVGO0VtQnBuRUk7SU12TUYsK0NBQUE7RXpCOHpFRjtFbUIzbkVJO0lNbk1GLGdCQUFBO0V6QmkwRUY7RW1CMW5FSTtJTXZNRixvQ0FBQTtFekJvMEVGO0VtQmpvRUk7SU1uTUYsMkJBQUE7RXpCdTBFRjtFbUJob0VJO0lNdk1GLCtDQUFBO0V6QjAwRUY7RW1Cdm9FSTtJTW5NRiwyQkFBQTtFekI2MEVGO0VtQnRvRUk7SU12TUYsK0NBQUE7RXpCZzFFRjtFbUI3b0VJO0lNbk1GLGdCQUFBO0V6Qm0xRUY7RW1CNW9FSTtJTXZNRixvQ0FBQTtFekJzMUVGO0VtQm5wRUk7SU1uTUYsMkJBQUE7RXpCeTFFRjtFbUJscEVJO0lNdk1GLCtDQUFBO0V6QjQxRUY7RW1CenBFSTtJTW5NRiwyQkFBQTtFekIrMUVGO0VtQnhwRUk7SU12TUYsK0NBQUE7RXpCazJFRjtBQUNGO0FtQjFvRUU7RUUvT0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsNEJBQUE7VUFBQSx3QkFBQTtBckI0M0VGO0FtQjFvRUk7RUdySUYsWUFBQTtFQUNBLGdCQUFBO0F0Qmt4RUY7QW1CMW9FSTtFRzVHQSxZQVRNO0F0Qmt3RVY7QW1Cem9FSTtFR2hIQSxZQVRNO0F0QnF3RVY7QW1COW5FTTtFQUNFLDZCQUFBO01BQUEsZ0JBQUE7QW5CZ29FUjtBZXp2RVE7RUl3SEY7SUFDRSw2QkFBQTtRQUFBLGdCQUFBO0VuQm9vRU47QUFDRjtBZTl2RVE7RUl3SEY7SUFDRSw2QkFBQTtRQUFBLGdCQUFBO0VuQnlvRU47QUFDRjtBbUI5bkVNO0VHdExKLG1CQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0F0QnV6RUY7QW1CbG5FUTtFRzFKSixxQkFUTTtBdEJ3eEVWO0FtQnJuRVE7RUcxSkosc0JBVE07QXRCMnhFVjtBbUJ4bkVRO0VHMUpKLFdBVE07QXRCOHhFVjtBbUIzbkVRO0VHMUpKLHNCQVRNO0F0Qml5RVY7QW1COW5FUTtFRzFKSixzQkFUTTtBdEJveUVWO0FtQmpvRVE7RUcxSkosV0FUTTtBdEJ1eUVWO0FtQnBvRVE7RUcxSkosc0JBVE07QXRCMHlFVjtBbUJ2b0VRO0VHMUpKLHNCQVRNO0F0QjZ5RVY7QW1CMW9FUTtFRzFKSixXQVRNO0F0Qmd6RVY7QW1CN29FUTtFRzFKSixzQkFUTTtBdEJtekVWO0FtQmhwRVE7RUcxSkosc0JBVE07QXRCc3pFVjtBbUJucEVRO0VHMUpKLFlBVE07QXRCeXpFVjtBZTF5RVE7RUlnSUE7SUdqTE4sbUJBQUE7UUFBQSxpQkFBQTtZQUFBLFdBQUE7SUEyQ0UsWUFUTTtFdEI4ekVSO0VtQjFxRUk7SUd0TEosbUJBQUE7UUFBQSxrQkFBQTtZQUFBLGNBQUE7RXRCbTJFQTtFbUJ2cUVNO0lHakpKLFlBVE07RXRCbzBFUjtFbUJqcUVNO0lHMUpKLHFCQVRNO0V0QnUwRVI7RW1CcHFFTTtJRzFKSixzQkFUTTtFdEIwMEVSO0VtQnZxRU07SUcxSkosV0FUTTtFdEI2MEVSO0VtQjFxRU07SUcxSkosc0JBVE07RXRCZzFFUjtFbUI3cUVNO0lHMUpKLHNCQVRNO0V0Qm0xRVI7RW1CaHJFTTtJRzFKSixXQVRNO0V0QnMxRVI7RW1CbnJFTTtJRzFKSixzQkFUTTtFdEJ5MUVSO0VtQnRyRU07SUcxSkosc0JBVE07RXRCNDFFUjtFbUJ6ckVNO0lHMUpKLFdBVE07RXRCKzFFUjtFbUI1ckVNO0lHMUpKLHNCQVRNO0V0QmsyRVI7RW1CL3JFTTtJRzFKSixzQkFUTTtFdEJxMkVSO0VtQmxzRU07SUcxSkosWUFUTTtFdEJ3MkVSO0FBQ0Y7QWUxMUVRO0VJZ0lBO0lHakxOLG1CQUFBO1FBQUEsaUJBQUE7WUFBQSxXQUFBO0lBMkNFLFlBVE07RXRCODJFUjtFbUIxdEVJO0lHdExKLG1CQUFBO1FBQUEsa0JBQUE7WUFBQSxjQUFBO0V0Qm01RUE7RW1CdnRFTTtJR2pKSixZQVRNO0V0Qm8zRVI7RW1CanRFTTtJRzFKSixxQkFUTTtFdEJ1M0VSO0VtQnB0RU07SUcxSkosc0JBVE07RXRCMDNFUjtFbUJ2dEVNO0lHMUpKLFdBVE07RXRCNjNFUjtFbUIxdEVNO0lHMUpKLHNCQVRNO0V0Qmc0RVI7RW1CN3RFTTtJRzFKSixzQkFUTTtFdEJtNEVSO0VtQmh1RU07SUcxSkosV0FUTTtFdEJzNEVSO0VtQm51RU07SUcxSkosc0JBVE07RXRCeTRFUjtFbUJ0dUVNO0lHMUpKLHNCQVRNO0V0QjQ0RVI7RW1CenVFTTtJRzFKSixXQVRNO0V0Qis0RVI7RW1CNXVFTTtJRzFKSixzQkFUTTtFdEJrNUVSO0VtQi91RU07SUcxSkosc0JBVE07RXRCcTVFUjtFbUJsdkVNO0lHMUpKLFlBVE07RXRCdzVFUjtBQUNGOztBbUIxdUVNO0VDblRFLHNCQUFBO0VBQUEseUJBQUE7QXBCa2lGUjtBZS80RVE7RUlnS0Y7SUNuVEUsb0JBQUE7SUFBQSx1QkFBQTtFcEJ1aUZOO0FBQ0Y7QWVyNUVRO0VJZ0tGO0lDblRFLHFCQUFBO0lBQUEsd0JBQUE7RXBCNmlGTjtBQUNGO0FldDVFUTtFSTJKRjtJQ25URSxxQkFBQTtJQUFBLHdCQUFBO0VwQm1qRk47QUFDRjtBbUI1dkVNO0VDeFRFLHNCQUFBO0VBQUEseUJBQUE7QXBCd2pGUjtBZXI2RVE7RUlxS0Y7SUN4VEUsb0JBQUE7SUFBQSx1QkFBQTtFcEI2akZOO0FBQ0Y7QWUzNkVRO0VJcUtGO0lDeFRFLHFCQUFBO0lBQUEsd0JBQUE7RXBCbWtGTjtBQUNGO0FlNTZFUTtFSWdLRjtJQ3hURSxxQkFBQTtJQUFBLHdCQUFBO0VwQnlrRk47QUFDRjs7QW1CbitFRTtFQ3ZHTSxzQkFBQTtFQUFBLHlCQUFBO0FwQitrRlI7QWU1N0VRO0VJNUNOO0lDdkdNLG9CQUFBO0lBQUEsdUJBQUE7RXBCb2xGTjtBQUNGO0FlbDhFUTtFSTVDTjtJQ3ZHTSxxQkFBQTtJQUFBLHdCQUFBO0VwQjBsRk47QUFDRjtBZW44RVE7RUlqRE47SUN2R00scUJBQUE7SUFBQSx3QkFBQTtFcEJnbUZOO0FBQ0Y7QW1CdC9FSTtFR2tDQSw2QkFUTTtFRjNISixxQkFBQTtFQUFBLHdCQUFBO0FwQjZsRk47QWVuOUVRO0VJakNBO0lHMkJKLDJCQVRNO0lGM0hKLG1CQUFBO0lBQUEsc0JBQUE7RXBCbW1GSjtBQUNGO0FlMTlFUTtFSWpDQTtJRzJCSiw0QkFUTTtJRjNISixvQkFBQTtJQUFBLHVCQUFBO0VwQjBtRko7QUFDRjtBbUJyaUZFO0VHOERFLFlBVE07QXRCbS9FVjtBbUJwaUZFO0VHMERFLFlBVE07QXRCcy9FVjtBbUIvaEZJO0VHa0RBLHNDQVRNO0F0QnkvRVY7QW1CbGlGSTtFR2tEQSx1Q0FUTTtBdEI0L0VWO0FtQnJpRkk7RUdrREEsNEJBVE07QXRCKy9FVjtBbUJ4aUZJO0VHa0RBLHVDQVRNO0F0QmtnRlY7QW1CM2lGSTtFR2tEQSx1Q0FUTTtBdEJxZ0ZWO0FtQjlpRkk7RUdrREEsNEJBVE07QXRCd2dGVjtBbUJqakZJO0VHa0RBLHVDQVRNO0F0QjJnRlY7QW1CcGpGSTtFR2tEQSx1Q0FUTTtBdEI4Z0ZWO0FtQnZqRkk7RUdrREEsNEJBVE07QXRCaWhGVjtBbUIxakZJO0VHa0RBLHVDQVRNO0F0Qm9oRlY7QW1CN2pGSTtFR2tEQSx1Q0FUTTtBdEJ1aEZWO0FtQmhrRkk7RUdrREEsNkJBVE07QXRCMGhGVjtBZTNnRlE7RUlwRU47SUc4REUsWUFUTTtFdEI4aEZSO0VtQi9rRkE7SUcwREUsWUFUTTtFdEJpaUZSO0VtQjFrRkU7SUdrREEsb0NBVE07RXRCb2lGUjtFbUI3a0ZFO0lHa0RBLHFDQVRNO0V0QnVpRlI7RW1CaGxGRTtJR2tEQSwwQkFUTTtFdEIwaUZSO0VtQm5sRkU7SUdrREEscUNBVE07RXRCNmlGUjtFbUJ0bEZFO0lHa0RBLHFDQVRNO0V0QmdqRlI7RW1CemxGRTtJR2tEQSwwQkFUTTtFdEJtakZSO0VtQjVsRkU7SUdrREEscUNBVE07RXRCc2pGUjtFbUIvbEZFO0lHa0RBLHFDQVRNO0V0QnlqRlI7RW1CbG1GRTtJR2tEQSwwQkFUTTtFdEI0akZSO0VtQnJtRkU7SUdrREEscUNBVE07RXRCK2pGUjtFbUJ4bUZFO0lHa0RBLHFDQVRNO0V0QmtrRlI7RW1CM21GRTtJR2tEQSwyQkFUTTtFdEJxa0ZSO0VtQjFuRkE7SUc4REUsWUFUTTtFdEJ3a0ZSO0VtQnpuRkE7SUcwREUsWUFUTTtFdEIya0ZSO0VtQnBuRkU7SUdrREEsb0NBVE07RXRCOGtGUjtFbUJ2bkZFO0lHa0RBLHFDQVRNO0V0QmlsRlI7RW1CMW5GRTtJR2tEQSwwQkFUTTtFdEJvbEZSO0VtQjduRkU7SUdrREEscUNBVE07RXRCdWxGUjtFbUJob0ZFO0lHa0RBLHFDQVRNO0V0QjBsRlI7RW1Cbm9GRTtJR2tEQSwwQkFUTTtFdEI2bEZSO0VtQnRvRkU7SUdrREEscUNBVE07RXRCZ21GUjtFbUJ6b0ZFO0lHa0RBLHFDQVRNO0V0Qm1tRlI7RW1CNW9GRTtJR2tEQSwwQkFUTTtFdEJzbUZSO0VtQi9vRkU7SUdrREEscUNBVE07RXRCeW1GUjtFbUJscEZFO0lHa0RBLHFDQVRNO0V0QjRtRlI7RW1CcnBGRTtJR2tEQSwyQkFUTTtFdEIrbUZSO0FBQ0Y7QWVqbUZRO0VJcEVOO0lHOERFLFlBVE07RXRCb25GUjtFbUJycUZBO0lHMERFLFlBVE07RXRCdW5GUjtFbUJocUZFO0lHa0RBLHFDQVRNO0V0QjBuRlI7RW1CbnFGRTtJR2tEQSxzQ0FUTTtFdEI2bkZSO0VtQnRxRkU7SUdrREEsMkJBVE07RXRCZ29GUjtFbUJ6cUZFO0lHa0RBLHNDQVRNO0V0Qm1vRlI7RW1CNXFGRTtJR2tEQSxzQ0FUTTtFdEJzb0ZSO0VtQi9xRkU7SUdrREEsMkJBVE07RXRCeW9GUjtFbUJsckZFO0lHa0RBLHNDQVRNO0V0QjRvRlI7RW1CcnJGRTtJR2tEQSxzQ0FUTTtFdEIrb0ZSO0VtQnhyRkU7SUdrREEsMkJBVE07RXRCa3BGUjtFbUIzckZFO0lHa0RBLHNDQVRNO0V0QnFwRlI7RW1COXJGRTtJR2tEQSxzQ0FUTTtFdEJ3cEZSO0VtQmpzRkU7SUdrREEsNEJBVE07RXRCMnBGUjtFbUJodEZBO0lHOERFLFlBVE07RXRCOHBGUjtFbUIvc0ZBO0lHMERFLFlBVE07RXRCaXFGUjtFbUIxc0ZFO0lHa0RBLHFDQVRNO0V0Qm9xRlI7RW1CN3NGRTtJR2tEQSxzQ0FUTTtFdEJ1cUZSO0VtQmh0RkU7SUdrREEsMkJBVE07RXRCMHFGUjtFbUJudEZFO0lHa0RBLHNDQVRNO0V0QjZxRlI7RW1CdHRGRTtJR2tEQSxzQ0FUTTtFdEJnckZSO0VtQnp0RkU7SUdrREEsMkJBVE07RXRCbXJGUjtFbUI1dEZFO0lHa0RBLHNDQVRNO0V0QnNyRlI7RW1CL3RGRTtJR2tEQSxzQ0FUTTtFdEJ5ckZSO0VtQmx1RkU7SUdrREEsMkJBVE07RXRCNHJGUjtFbUJydUZFO0lHa0RBLHNDQVRNO0V0QityRlI7RW1CeHVGRTtJR2tEQSxzQ0FUTTtFdEJrc0ZSO0VtQjN1RkU7SUdrREEsNEJBVE07RXRCcXNGUjtFbUIxdkZBO0lHOERFLFlBVE07RXRCd3NGUjtFbUJ6dkZBO0lHMERFLFlBVE07RXRCMnNGUjtFbUJwdkZFO0lHa0RBLHFDQVRNO0V0QjhzRlI7RW1CdnZGRTtJR2tEQSxzQ0FUTTtFdEJpdEZSO0VtQjF2RkU7SUdrREEsMkJBVE07RXRCb3RGUjtFbUI3dkZFO0lHa0RBLHNDQVRNO0V0QnV0RlI7RW1CaHdGRTtJR2tEQSxzQ0FUTTtFdEIwdEZSO0VtQm53RkU7SUdrREEsMkJBVE07RXRCNnRGUjtFbUJ0d0ZFO0lHa0RBLHNDQVRNO0V0Qmd1RlI7RW1CendGRTtJR2tEQSxzQ0FUTTtFdEJtdUZSO0VtQjV3RkU7SUdrREEsMkJBVE07RXRCc3VGUjtFbUIvd0ZFO0lHa0RB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QUFBO0VuQituRlI7QUFDRjs7QW1CajZGRTtFQ3ZHTSxzQkFBQTtFQUFBLHlCQUFBO0FwQjZnR1I7QWUxM0ZRO0VJNUNOO0lDdkdNLG9CQUFBO0lBQUEsdUJBQUE7RXBCa2hHTjtBQUNGO0FlaDRGUTtFSTVDTjtJQ3ZHTSxxQkFBQTtJQUFBLHdCQUFBO0VwQndoR047QUFDRjtBZWo0RlE7RUlqRE47SUN2R00scUJBQUE7SUFBQSx3QkFBQTtFcEI4aEdOO0FBQ0Y7QW1CcDdGSTtFR2tDQSw2QkFUTTtFRjNISixxQkFBQTtFQUFBLHdCQUFBO0FwQjJoR047QWVqNUZRO0VJakNBO0lHMkJKLDJCQVRNO0lGM0hKLG1CQUFBO0lBQUEsc0JBQUE7RXBCaWlHSjtBQUNGO0FleDVGUTtFSWpDQTtJRzJCSiw0QkFUTTtJRjNISixvQkFBQTtJQUFBLHVCQUFBO0VwQndpR0o7QUFDRjtBbUJuK0ZFO0VHOERFLFlBVE07QXRCaTdGVjtBbUJsK0ZFO0VHMERFLFlBVE07QXRCbzdGVjtBbUI3OUZJO0VHa0RBLHNDQVRNO0F0QnU3RlY7QW1CaCtGSTtFR2tEQSx1Q0FUTTtBdEIwN0ZWO0FtQm4rRkk7RUdrREEsNEJBVE07QXRCNjdGVjtBbUJ0K0ZJO0VHa0RBLHVDQVRNO0F0Qmc4RlY7QW1CeitGSTtFR2tEQSx1Q0FUTTtBdEJtOEZWO0FtQjUrRkk7RUdrREEsNEJBVE07QXRCczhGVjtBbUIvK0ZJO0VHa0RBLHVDQVRNO0F0Qnk4RlY7QW1CbC9GSTtFR2tEQSx1Q0FUTTtBdEI0OEZWO0FtQnIvRkk7RUdrREEsNEJBVE07QXRCKzhGVjtBbUJ4L0ZJO0VHa0RBLHVDQVRNO0F0Qms5RlY7QW1CMy9GSTtFR2tEQSx1Q0FUTTtBdEJxOUZWO0FtQjkvRkk7RUdrREEsNkJBVE07QXRCdzlGVjtBZXo4RlE7RUlwRU47SUc4REUsWUFUTTtFdEI0OUZSO0VtQjdnR0E7SUcwREUsWUFUTTtFdEIrOUZSO0VtQnhnR0U7SUdrREEsb0NBVE07RXRCaytGUjtFbUIzZ0dFO0lHa0RBLHFDQVRNO0V0QnErRlI7RW1COWdHRTtJR2tEQSwwQkFUTTtFdEJ3K0ZSO0VtQmpoR0U7SUdrREEscUNBVE07RXRCMitGUjtFbUJwaEdFO0lHa0RBLHFDQVRNO0V0QjgrRlI7RW1CdmhHRTtJR2tEQSwwQkFUTTtFdEJpL0ZSO0VtQjFoR0U7SUdrREEscUNBVE07RXRCby9GUjtFbUI3aEdFO0lHa0RBLHFDQVRNO0V0QnUvRlI7RW1CaGlHRTtJR2tEQSwwQkFUTTtFdEIwL0ZSO0VtQm5pR0U7SUdrREEscUNBVE07RXRCNi9GUjtFbUJ0aUdFO0lHa0RBLHFDQVRNO0V0QmdnR1I7RW1CemlHRTtJR2tEQSwyQkFUTTtFdEJtZ0dSO0VtQnhqR0E7SUc4REUsWUFUTTtFdEJzZ0dSO0VtQnZqR0E7SUcwREUsWUFUTTtFdEJ5Z0dSO0VtQmxqR0U7SUdrREEsb0NBVE07RXRCNGdHUjtFbUJyakdFO0lHa0RBLHFDQVRNO0V0QitnR1I7RW1CeGpHRTtJR2tEQSwwQkFUTTtFdEJraEdSO0VtQjNqR0U7SUdrREEscUNBVE07RXRCcWhHUjtFbUI5akdFO0lHa0RBLHFDQVRNO0V0QndoR1I7RW1CamtHRTtJR2tEQSwwQkFUTTtFdEIyaEdSO0VtQnBrR0U7SUdrREEscUNBVE07RXRCOGhHUjtFbUJ2a0dFO0lHa0RBLHFDQVRNO0V0QmlpR1I7RW1CMWtHRTtJR2tEQSwwQkFUTTtFdEJvaUdSO0VtQjdrR0U7SUdrREEscUNBVE07RXRCdWlHUjtFbUJobEdFO0lHa0RBLHFDQVRNO0V0QjBpR1I7RW1CbmxHRTtJR2tEQSwyQkFUTTtFdEI2aUdSO0FBQ0Y7QWUvaEdRO0VJcEVOO0lHOERFLFlBVE07RXRCa2pHUjtFbUJubUdBO0lHMERFLFlBVE07RXRCcWpHUjtFbUI5bEdFO0lHa0RBLHFDQVRNO0V0QndqR1I7RW1Cam1HRTtJR2tEQSxzQ0FUTTtFdEIyakdSO0VtQnBtR0U7SUdrREEsMkJBVE07RXRCOGpHUjtFbUJ2bUdFO0lHa0RBLHNDQVRNO0V0QmlrR1I7RW1CMW1HRTtJR2tEQSxzQ0FUTTtFdEJva0dSO0VtQjdtR0U7SUdrREEsMkJBVE07RXRCdWtHUjtFbUJobkdFO0lHa0RBLHNDQVRNO0V0QjBrR1I7RW1Cbm5HRTtJR2tEQSxzQ0FUTTtFdEI2a0dSO0VtQnRuR0U7SUdrREEsMkJBVE07RXRCZ2xHUjtFbUJ6bkdFO0lHa0RBLHNDQVRNO0V0Qm1sR1I7RW1CNW5HRTtJR2tEQSxzQ0FUTTtFdEJzbEdSO0VtQi9uR0U7SUdrREEsNEJBVE07RXRCeWxHUjtFbUI5b0dBO0lHOERFLFlBVE07RXRCNGxHUjtFbUI3b0dBO0lHMERFLFlBVE07RXRCK2xHUjtFbUJ4b0dFO0lHa0RBLHFDQVRNO0V0QmttR1I7RW1CM29HRTtJR2tEQSxzQ0FUTTtFdEJxbUdSO0VtQjlvR0U7SUdrREEsMkJBVE07RXRCd21HUjtFbUJqcEdFO0lHa0RBLHNDQVRNO0V0QjJtR1I7RW1CcHBHRTtJR2tEQSxzQ0FUTTtFdEI4bUdSO0VtQnZwR0U7SUdrREEsMkJBVE07RXRCaW5HUjtFbUIxcEdFO0lHa0RBLHNDQVRNO0V0Qm9uR1I7RW1CN3BHRTtJR2tEQSxzQ0FUTTtFdEJ1bkdSO0VtQmhxR0U7SUdrREEsMkJBVE07RXRCMG5HUjtFbUJucUdFO0lHa0RBLHNDQVRNO0V0QjZuR1I7RW1CdHFHRTtJR2tEQSxzQ0FUTTtFdEJnb0dSO0VtQnpxR0U7SUdrREEsNEJBVE07RXRCbW9HUjtFbUJ4ckdBO0lHOERFLFlBVE07RXRCc29HUjtFbUJ2ckdBO0lHMERFLFlBVE07RXRCeW9HUjtFbUJsckdFO0lHa0RBLHFDQVRNO0V0QjRvR1I7RW1CcnJHRTtJR2tEQSxzQ0FUTTtFdEIrb0dSO0VtQnhyR0U7SUdrREEsMkJBVE07RXRCa3BHUjtFbUIzckdFO0lHa0RBLHNDQVRNO0V0QnFwR1I7RW1COXJHRTtJR2tEQSxzQ0FUTTtFdEJ3cEdSO0VtQmpzR0U7SUdrREEsMkJBVE07RXRCMnBHUjtFbUJwc0dFO0lHa0RBLHNDQVRNO0V0QjhwR1I7RW1CdnNHRTtJR2tEQSxzQ0FUTTtFdEJpcUdSO0VtQjFzR0U7SUdrREEsMkJBVE07RXRCb3FHUjtFbUI3c0dFO0lHa0RBLHNDQVRNO0V0QnVxR1I7RW1CaHRHRTtJR2tEQSxzQ0FUTTtFdEIwcUdSO0VtQm50R0U7SUdrREEsNEJBVE07RXRCNnFHUjtBQUNGOztBbUJuNkZJO0VPdFlJLDhCQUFBO0ExQjZ5R1I7QWVucUdRO0VJNFBKO0lPdFlJLDRCQUFBO0UxQml6R047QUFDRjtBZXhxR1E7RUk0UEo7SU90WUksNkJBQUE7RTFCc3pHTjtBQUNGOztBZTdxR1E7RUlnUUY7SU8xWUUsNEJBQUE7RTFCNHpHTjtBQUNGO0FlbnJHUTtFSWdRRjtJTzFZRSw2QkFBQTtFMUJpMEdOO0FBQ0Y7QTJCL2hHRTtFQTFPQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0J2QndNYztFdUI5TFosbUJ2QjZMYTtFdUIxTGYsNkJ2QmtNYztFdUJqTWQsZ0J2QnBCYztFdUJxQmQseUV2QjRNa0I7RXVCNU1sQixpRXZCNE1rQjtFdUIzTWxCLG9CdkJxTG1CO0V1QnBMbkIsaUJBQUE7RUFFQSx3QkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGVBQUE7QTNCZ3dHRjtBS2pyR0U7RUFDRSxVQUFBO0FMbXJHSjtBMkI1aUdNO0VBQ0UsaUJBRm1CO0EzQmdqRzNCO0EyQi9pR007RUFDRSxrQkFGbUI7QTNCbWpHM0I7QTJCbGpHTTtFQUNFLGtCQUZtQjtBM0JzakczQjtBMkJoakdJO0VBck5BLGNBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QTNCd3dHSjtBMkJ2c0dFO0VBSUUseUJDaEZnQjtFRGlGaEIsY3ZCdkhJO0FKNnpHUjtBMkJuc0dFO0VBQ0UseUJ2QmlHc0I7RXVCaEd0QixjdkI1SEk7QUppMEdSO0EyQi9zR0U7RUFJRSx5QnZCbElpQjtFdUJtSWpCLGNBYlE7QTNCMnRHWjtBMkIzc0dFO0VBQ0UseUJBYm1CO0VBY25CLGNBbEJRO0EzQit0R1o7QTJCdnRHRTtFQUlFLHlCdkJsSWlCO0V1Qm1JakIsY0FiUTtBM0JtdUdaO0EyQm50R0U7RUFDRSx5QkFibUI7RUFjbkIsY0FsQlE7QTNCdXVHWjtBMkIvdEdFO0VBSUUseUJ2QmxJaUI7RXVCbUlqQixjQWJRO0EzQjJ1R1o7QTJCM3RHRTtFQUNFLHlCQWJtQjtFQWNuQixjQWxCUTtBM0IrdUdaO0EyQnZ1R0U7RUFJRSx5QnZCbElpQjtFdUJtSWpCLGNBYlE7QTNCbXZHWjtBMkJudUdFO0VBQ0UseUJBYm1CO0VBY25CLGNBbEJRO0EzQnV2R1o7QTJCL3VHRTtFQUlFLHlCdkJsSWlCO0V1Qm1JakIsY0FiUTtBM0IydkdaO0EyQjN1R0U7RUFDRSx5QkFibUI7RUFjbkIsY0FsQlE7QTNCK3ZHWjtBMkJ2dkdFO0VBSUUseUJ2QmxJaUI7RXVCbUlqQixjQWJRO0EzQm13R1o7QTJCbnZHRTtFQUNFLHlCQWJtQjtFQWNuQixjQWxCUTtBM0J1d0daO0EyQjd1R0k7RUFDRSw2QkFBQTtBM0IrdUdOO0EyQjl0R0U7RUFJRSx5QkFBQTtFQUNBLGNDckhnQjtBNUJrMUdwQjtBMkIxdEdFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EzQnl1R2hCO0EyQnR1R0U7RUFJRSx5QkFBQTtFQUNBLGN2QnZLaUI7QUo0NEdyQjtBMkJsdUdFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EzQml2R2hCO0EyQjl1R0U7RUFJRSx5QkFBQTtFQUNBLGN2QnZLaUI7QUpvNUdyQjtBMkIxdUdFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EzQnl2R2hCO0EyQnR2R0U7RUFJRSx5QkFBQTtFQUNBLGN2QnZLaUI7QUo0NUdyQjtBMkJsdkdFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EzQml3R2hCO0EyQjl2R0U7RUFJRSx5QkFBQTtFQUNBLGN2QnZLaUI7QUpvNkdyQjtBMkIxdkdFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EzQnl3R2hCO0EyQnR3R0U7RUFJRSx5QkFBQTtFQUNBLGN2QnZLaUI7QUo0NkdyQjtBMkJsd0dFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EzQml4R2hCO0EyQjl3R0U7RUFJRSx5QkFBQTtFQUNBLGN2QnZLaUI7QUpvN0dyQjtBMkIxd0dFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EzQnl4R2hCO0EyQnB3R0k7RUFDRSx5QkFBQTtFQUNBLDZCQUFBO0EzQnN3R047QTJCdnZHRTtFQUlFLGNDdkpnQjtBNUI2NEdwQjtBMkJudkdFO0VBQ0UsY0FYWTtBM0Jnd0doQjtBMkI3dkdFO0VBSUUsY3ZCek1pQjtBSnE4R3JCO0EyQnp2R0U7RUFDRSxjQVhZO0EzQnN3R2hCO0EyQm53R0U7RUFJRSxjdkJ6TWlCO0FKMjhHckI7QTJCL3ZHRTtFQUNFLGNBWFk7QTNCNHdHaEI7QTJCendHRTtFQUlFLGN2QnpNaUI7QUppOUdyQjtBMkJyd0dFO0VBQ0UsY0FYWTtBM0JreEdoQjtBMkIvd0dFO0VBSUUsY3ZCek1pQjtBSnU5R3JCO0EyQjN3R0U7RUFDRSxjQVhZO0EzQnd4R2hCO0EyQnJ4R0U7RUFJRSxjdkJ6TWlCO0FKNjlHckI7QTJCanhHRTtFQUNFLGNBWFk7QTNCOHhHaEI7QTJCM3hHRTtFQUlFLGN2QnpNaUI7QUptK0dyQjtBMkJ2eEdFO0VBQ0UsY0FYWTtBM0JveUdoQjtBMkI3cUdJO0VBbkdGLGF2QitCd0I7RXVCOUJ4QixtQkFBQTtBM0JteEdGO0EyQnZ3R0U7RXRCN1BBLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUVBLG1CQUFBO0VBQ0EsbUJzQm9QTztFdEJsUFAsV0FBQTtFQUdFLHNCQUFBO0VBQ0EsNkNBQUE7RXNCb1BBLGtCQUFBO0VBQ0EsVUFBQTtFQUVBLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQVRPO0EzQnd4R1g7QTJCanJHUTtFQUNFLHlCQ3ZSVTtBNUIwOEdwQjtBMkI5cUdZO0VBQ0UseUJ2Qi9VTztBSisvR3JCO0EyQmpyR1k7RUFDRSx5QnZCL1VPO0FKa2dIckI7QTJCcHJHWTtFQUNFLHlCdkIvVU87QUpxZ0hyQjtBMkJ2ckdZO0VBQ0UseUJ2Qi9VTztBSndnSHJCO0EyQjFyR1k7RUFDRSx5QnZCL1VPO0FKMmdIckI7QTJCN3JHWTtFQUNFLHlCdkIvVU87QUo4Z0hyQjtBMkJ2ckdJO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0EzQnlyR047O0EyQnByR0k7RUFFRSxxQkFBQTtBM0JzckdOOztBNkJuL0dFO0VBWkEsa0JBQUE7RUFDQSxXekI0UW9CO0V5QjNRcEIs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QVJRO0FsQyt1SFY7O0FpQy9ySEk7RUN4QkYsMkJBUFE7TUFPUixrQkFQUTtBbENrdUhWOztBaUN2c0hJO0VDcENGLDBCQVJRO01BUVIsdUJBUlE7VUFRUixvQkFSUTtBbEN1dkhWOztBaUN2c0hJO0VDeEJGLDRCQVBRO01BT1IsbUJBUFE7QWxDMHVIVjs7QWlDcnNIRTtFQy9DQSx3QkFoQlE7TUFnQlIscUJBaEJRO1VBZ0JSLHVCQWhCUTtFQWlCUix5QkFSUTtNQVFSLHNCQVJRO1VBUVIsbUJBUlE7RUR3RE4sMEJBQUE7TUFBQSxxQkFBQTtBakN5c0hKOztBaUNuc0hNO0VDaENKLDRCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QWpDd3NIakI7O0FpQ3ZzSE07RUNoQ0osNEJEK0JlO01DL0JmLGlCRCtCZTtVQy9CZixRRCtCZTtBakM0c0hqQjs7QWlDM3NITTtFQ2hDSiw0QkQrQmU7TUMvQmYsaUJEK0JlO1VDL0JmLFFEK0JlO0FqQ2d0SGpCOztBaUMvc0hNO0VDaENKLDRCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QWpDb3RIakI7O0FpQ250SE07RUNoQ0osNEJEK0JlO01DL0JmLGlCRCtCZTtVQy9CZixRRCtCZTtBakN3dEhqQjs7QWlDdnRITTtFQ2hDSiw0QkQrQmU7TUMvQmYsaUJEK0JlO1VDL0JmLFFEK0JlO0FqQzR0SGpCOztBZXRwSFE7RWtCckVGO0lDaENKLDRCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWpDaXVIZjtFaUNodUhJO0lDaENKLDRCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWpDb3VIZjtFaUNudUhJO0lDaENKLDRCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWpDdXVIZjtFaUN0dUhJO0lDaENKLDRCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWpDMHVIZjtFaUN6dUhJO0lDaENKLDRCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWpDNnVIZjtFaUM1dUhJO0lDaENKLDRCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWpDZ3ZIZjtBQUNGO0FlM3FIUTtFa0JyRUY7SUNoQ0osNEJEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFakNxdkhmO0VpQ3B2SEk7SUNoQ0osNEJEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFakN3dkhmO0VpQ3Z2SEk7SUNoQ0osNEJEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFakMydkhmO0VpQzF2SEk7SUNoQ0osNEJEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFakM4dkhmO0VpQzd2SEk7SUNoQ0osNEJEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFakNpd0hmO0VpQ2h3SEk7SUNoQ0osNEJEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFakNvd0hmO0FBQ0Y7QWlDajJIRTtFQ1lBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0FsQ3cxSEY7O0FpQ2gySEU7RUFDRSxtQkFBQTtNQUFBLGtCQUFBO1VBQUEsY0FBQTtBakNtMkhKOztBaUNoMkhFO0VBQ0UsbUJBQUE7TUFBQSxrQkFBQTtVQUFBLGNBQUE7QWpDbTJISjs7QWlDaDJIRTtFQUNFLG1CQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0FqQ20ySEo7O0FpQy8xSEk7RUNzREYsOEJBcEVtQjtFQW9FbkIsNkJBcEVtQjtNQW9FbkIsdUJBcEVtQjtVQW9FbkIsbUJBcEVtQjtBbENpM0hyQjs7QWlDbjJISTtFQ3NERiw4QkFwRW1CO0VBb0VuQiw4QkFwRW1CO01Bb0VuQiwrQkFwRW1CO1VBb0VuQiwyQkFwRW1CO0FsQ3EzSHJCOztBaUN2MkhJO0VDc0RGLDRCQXBFbUI7RUFvRW5CLDZCQXBFbUI7TUFvRW5CLDBCQXBFbUI7VUFvRW5CLHNCQXBFbUI7QWxDeTNIckI7O0FpQzMySEk7RUNzREYsNEJBcEVtQjtFQW9FbkIsOEJBcEVtQjtNQW9FbkIsa0NBcEVtQjtVQW9FbkIsOEJBcEVtQjtBbEM2M0hyQjs7QWU5dEhRO0VrQnZJRTtJQ2ZSLG9CQUFBO0lBQUEsb0JB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QmxEYixpQkFBQTtFQUNBLGtCQUFBO0UyQnVQRSxXQUFBO0FoRGcvSUo7QWV4a0pRO0VpQ3NGUjtJNUJ6T1Esc0JBQUE7SUFBQSxxQkFBQTtFcEJndUpOO0FBQ0Y7QWU5a0pRO0VpQ3NGUjtJNUJ6T1EsdUJBQUE7SUFBQSxzQkFBQTtFcEJzdUpOO0FBQ0Y7QWUva0pRO0VpQ2lGUjtJNUJ6T1EsdUJBQUE7SUFBQSxzQkFBQTtFcEI0dUpOO0FBQ0Y7QWUxbEpRO0VpQ3NGUjtJQVVRLGtCQUFBO0VoRDgvSU47QUFDRjs7QWlEaHhKQTtFQUNFLG1CQUFBO0FqRG14SkY7O0FpRGh4SkE7RUFDRSxnQkFBQTtFQUNBLGdCN0MyYnVCO0U2QzFidkIsYzdDMEVNO0FKeXNKUjs7QWFodkpFOzs7RUFDRSxxQlR5THVCO0VTeEx2Qix5QkFBQTtBYnF2Sko7QWFudkpJO0VBQ0UsY1RxTHFCO0FKa2tKM0I7QWF4dkpJO0VBQ0UsY1RxTHFCO0FKa2tKM0I7QWF4dkpJO0VBQ0UsY1RxTHFCO0FKa2tKM0I7QWF4dkpJO0VBQ0UsY1RxTHFCO0FKa2tKM0I7QWF4dkpJOzs7RUFDRSxjVHFMcUI7QUpra0ozQjtBaUQvd0pFOztFQUVFLHlCQUFBO0FqRGl4Sko7O0FpRDd3SkE7RUFDRSxjQUFBO0VBQ0Esd0JBQUE7RUFDQSxVQUFBO0VBQ0EscUJBQUE7RUFDQSxrQjdDcU1zQjtFNkNwTXRCLGlCN0N3RG1CO0U2Q3ZEbkIsYzdDa01rQjtBSjhrSnBCO0FpRDl3SkU7RUFDRSxvQkFBQTtBakRneEpKOztBaUR2d0pBO0VBQ0UsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0NBQUE7QWpEMHdKRjtBZTdvSlE7RWtDaklSO0lBT0ksdUJBQUE7RWpEMndKRjtBQUNGO0FlbHBKUTtFa0NqSVI7SUFXSSxxQkFBQTtFakQ0d0pGO0FBQ0Y7O0FpRHp3SkE7RUFDRSxrQkFBQTtFQUNBLFVBQUE7QWpENHdKRjs7QWU1cEpRO0VrQ3hHUjtJQUVJLGM3Q01JO0VKaXdKTjtFaUR0d0pFO0lBQ0UsY0FBQTtFakR3d0pKO0FBQ0Y7QWlE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LGdCQUFBO0E3RTI1Uk47QTZFeDVSSTtFQUNFLHFCQUFBO0E3RTA1Uk47QWV4dlNRO0U4RG1XSjtJQUNFLGNBQUE7RTdFdzVSSjtBQUNGOztBZTd2U1E7RThEMFdSO0lBRUksY0FBQTtJQUNBLG9CQUFBO0lBRUEsa0JBQUE7RTdFcTVSRjtBQUNGO0FlcndTUTtFOEQwV1I7SUFTSSxxQkFBQTtJQUNBLGlCQUFBO0lBQ0EsMEJBQUE7RTdFczVSRjtBQUNGOztBNkU3NFJBO0VBQ0Usa0JBQUE7RUFDQSxVQUFBO0VBQ0EscUJBQUE7RUFDQSxjekUvVXlCO0FKK3RTM0I7O0E2RXg0UkE7RXBDeGlCUSxnQm9DeWlCOEI7RXBDN2hCOUIsY29DNmhCOEM7RXBDamhCOUMsVW9DaWhCZ0U7RUFDdEUsaUJBQUE7QTdFNjRSRjs7QTZFMTRSQTtFcEM3aUJRLGdCb0M4aUI4QjtFcENsaUI5Qixjb0NraUI4QztFcEN0aEI5QyxVb0NzaEJnRTtFQUN0RSxrQkFBQTtBN0UrNFJGOztBNkU1NFJBO0VwQ2xqQlEsZ0JvQ21qQjhCO0VwQ3ZpQjlCLGNvQ3VpQjhDO0VBQ3BELGtCQUFBO0E3RWc1UkY7QWV2eVNRO0U4RHFaUjtJcENoaUJnQixlQUFBO0V6Q3M3U2Q7QUFDRjtBZTV5U1E7RThEcVpSO0lwQ2hpQmdCLGVBQUE7RXpDMjdTZDtBQUNGO0FlanpTUTtFOERxWlI7SUFLSSxpQkFBQTtFN0UyNVJGO0FBQ0Y7O0E2RXg1UkE7RUFDRSxTQUFBO0VBQ0EsVUFBQTtBN0UyNVJGO0E2RXo1UkU7RUFDRSxvQkFBQTtBN0UyNVJKO0E2RXg1UkU7RUFDRSxjQUFBO0VBQ0EsV0FBQTtBN0UwNVJKO0E2RXg1Ukk7RUFDRSxhQUFBO0E3RTA1Uk47O0FlcjBTUTtFOERnYlI7SUFFSSxrQkFBQTtFN0V3NVJGO0FBQ0Y7QWUzMFNRO0U4RGdiUjtJQU1JLGtCQUFBO0U3RXk1UkY7QUFDRjs7QTZFdDVSQTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBRUEsaUJBQUE7QTdFdzVSRjtBZXQxU1E7RThEMGJSO0lBT0ksaUJBQUE7RTdFeTVSRjtBQUNG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R2QsbUJBQUE7RUFDQSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JIekZRO0FsRjRwV1o7QXFGamtXSTtFQUNJLGNIekZhO0VHMEZiLGlCQUFBO0FyRm1rV1I7QXFGaGtXSTtFQUNJLFdBbkxnQjtFQW9MaEIsaUJBQUE7RUFDQSxtQkFwTGE7RUFxTGIsK0NBQUE7VUFBQSx1Q0FBQTtFQUNBLGtCQUFBO0FyRmtrV1I7QXFGL2pXSTtFQUVJLFdIbkdnQjtFR29HaEIsWUFBQTtBckZna1dSO0FxRjdqV0k7RUFDSSxvQkFBQTtFQUNBLGVBQUE7QXJGK2pXUjtBcUY1aldJO0VBQ0ksV0huSGE7RUdvSGIsZ0JIbkhVO0VHb0hWLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxrQkFBQTtBckY4aldSO0FxRjNqV0k7RUFDSSxvQkFBQTtFQUNBLGVBQUE7QXJGNmpXUjs7QXFGempXQTtFQUNJLG1CQUFBO0VBQ0EsV0FoTlk7QXJGNHdXaEI7O0FxRnpqV0E7RUFDSSxtQkFBQTtBckY0aldKOztBcUZ6aldBO0VBQ0ksV0FBQTtFQUNBLG1CQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLGtCQUFBO0FyRjRqV0o7O0FxRnpqV0E7RUFDSSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esa0JBQUE7QXJGNGpXSiIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjguMVxuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltkYXRhLXdoYXRpbnRlbnQ9bW91c2VdICosIFtkYXRhLXdoYXRpbnRlbnQ9bW91c2VdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW50ZW50PXRvdWNoXSAqLFxuW2RhdGEtd2hhdGludGVudD10b3VjaF0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gKixcbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD10b3VjaF0gKixcbltkYXRhLXdoYXRpbnB1dD10b3VjaF0gKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbltkcmFnZ2FibGU9ZmFsc2VdIHtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiO1xufVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBmb250LWZhbWlseTogXCJzdG9semxcIiwgXCJBdmVuaXJcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFwiSGlyYWdpbm8gU2Fuc1wiLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogI2RmZGZkZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG59XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBhdXRvO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSBidXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5bdHlwZT10ZXh0XSwgW3R5cGU9cGFzc3dvcmRdLCBbdHlwZT1kYXRlXSwgW3R5cGU9ZGF0ZXRpbWVdLCBbdHlwZT1kYXRldGltZS1sb2NhbF0sIFt0eXBlPW1vbnRoXSwgW3R5cGU9d2Vla10sIFt0eXBlPWVtYWlsXSwgW3R5cGU9bnVtYmVyXSwgW3R5cGU9c2VhcmNoXSwgW3R5cGU9dGVsXSwgW3R5cGU9dGltZV0sIFt0eXBlPXVybF0sIFt0eXBlPWNvbG9yXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblt0eXBlPXRleHRdOmZvY3VzLCBbdHlwZT1wYXNzd29yZF06Zm9jdXMsIFt0eXBlPWRhdGVdOmZvY3VzLCBbdHlwZT1kYXRldGltZV06Zm9jdXMsIFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1cywgW3R5cGU9bW9udGhdOmZvY3VzLCBbdHlwZT13ZWVrXTpmb2N1cywgW3R5cGU9ZW1haWxdOmZvY3VzLCBbdHlwZT1udW1iZXJdOmZvY3VzLCBbdHlwZT1zZWFyY2hdOmZvY3VzLCBbdHlwZT10ZWxdOmZvY3VzLCBbdHlwZT10aW1lXTpmb2N1cywgW3R5cGU9dXJsXTpmb2N1cywgW3R5cGU9Y29sb3JdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZjRmNGY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbnRleHRhcmVhW3Jvd3NdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5bdHlwZT1zdWJtaXRdLFxuW3R5cGU9YnV0dG9uXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzRmNGY0Zjtcbn1cblxuW3R5cGU9ZmlsZV0sXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5bdHlwZT1jaGVja2JveF0gKyBsYWJlbCxcblt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsW2Zvcl0sXG5bdHlwZT1yYWRpb10gKyBsYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5sYWJlbCA+IFt0eXBlPWNoZWNrYm94XSxcbmxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cblt0eXBlPWZpbGVdIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5sYWJlbC5taWRkbGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjN2M3YzdjO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzdjN2M3YztcbiAgYmFja2dyb3VuZDogI2Q5ZDlkOTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG59XG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzdjN2M3Yztcbn1cbi5maWVsZHNldCBsZWdlbmQge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICBwYWRkaW5nOiAwIDAuMTg3NXJlbTtcbn1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiByZ2IlMjgxMjQsIDEyNCwgMTI0JTI5XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCApIHtcbiAgc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpO1xuICB9XG59XG5zZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZjRmNGY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuc2VsZWN0OmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZDlkOTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5zZWxlY3RbbXVsdGlwbGVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuc2VsZWN0Om5vdChbbXVsdGlwbGVdKSB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNlYzU4NDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2VkZWI7XG59XG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2VjNTg0MDtcbn1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2VjNTg0MDtcbn1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2VjNTg0MDtcbn1cbi5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNHJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODcuNSU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogXCJzdG9semxcIiwgXCJBdmVuaXJcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFwiSGlyYWdpbm8gU2Fuc1wiLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuaDEgc21hbGwsIC5oMSBzbWFsbCxcbmgyIHNtYWxsLCAuaDIgc21hbGwsXG5oMyBzbWFsbCwgLmgzIHNtYWxsLFxuaDQgc21hbGwsIC5oNCBzbWFsbCxcbmg1IHNtYWxsLCAuaDUgc21hbGwsXG5oNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGNvbG9yOiAjN2M3YzdjO1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtO1xuICB9XG4gIGg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtO1xuICB9XG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICM3N2RkZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuYTpob3ZlciwgYTpmb2N1cyB7XG4gIGNvbG9yOiAjRUI5RjM3O1xufVxuYSBpbWcge1xuICBib3JkZXI6IDA7XG59XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogMTIwcmVtO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjN2M3YzdjO1xuICBib3JkZXItbGVmdDogMDtcbn1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMS40cmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuXG51bCB1bCwgdWwgb2wsIG9sIHVsLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5kbCBkdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxLjRyZW07XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM3YzdjN2M7XG59XG5ibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzRmNGY0Zjtcbn1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwYTBhMGE7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM0ZjRmNGY7XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbnAgKyAuc3RhdCB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xufVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uY2l0ZS1ibG9jaywgY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzRmNGY0ZjtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG59XG4uY2l0ZS1ibG9jazpiZWZvcmUsIGNpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJQgXCI7XG59XG5cbi5jb2RlLWlubGluZSwgY29kZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3YzdjN2M7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWQ5ZDk7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTtcbn1cblxuLmNvZGUtYmxvY2sge1xuICBib3JkZXI6IDFweCBzb2xpZCAjN2M3YzdjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBwcmludC1jb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDtcbiAgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIsXG4gIGFbaHJlZl49XCIjXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNGY0ZjRmO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtO1xuICB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgfVxufVxuLmdyaWQtY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiAxMjByZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICB9XG59XG4uZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICB9XG59XG4uZ3JpZC1jb250YWluZXIuZnVsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uZ3JpZC14IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmNlbGwge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWluLWhlaWdodDogMDtcbiAgbWluLXdpZHRoOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5jZWxsLmF1dG8ge1xuICBmbGV4OiAxIDEgMDtcbn1cbi5jZWxsLnNocmluayB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uZ3JpZC14ID4gLmF1dG8ge1xuICB3aWR0aDogYXV0bztcbn1cbi5ncmlkLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5ncmlkLXggPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC14ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4LWJhc2lzOiBhdXRvO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbn1cbi5ncmlkLXggPiAuc21hbGwtMTIsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTEge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTkge1xuICB3aWR0aDogNzUlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEyLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZ3JpZC1tYXJnaW4teCB7XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuODc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTEuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14IHtcbiAgICBtYXJnaW4tbGVmdDogLTMuMTI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTMuMTI1cmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMS44NzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gIHdpZHRoOiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1hdXRvIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgfVxufVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgIG1hcmdpbi1yaWdodDogLTEuMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjg3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTEuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgIG1hcmdpbi1yaWdodDogLTMuMTI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMy4xMjVyZW07XG4gIH1cbn1cbi5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgIG1hcmdpbi1yaWdodDogLTEuODc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgIG1hcmdpbi1yaWdodDogLTMuMTI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMy4xMjVyZW07XG4gIH1cbn1cbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlO1xufVxuXG4uc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xufVxuXG4uc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTtcbn1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDIuNXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzE0Mjg1NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzE0Mjg1NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMy43NXJlbSk7XG4gIH1cbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICB3aWR0aDogNzUlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMzMzMzMzJSArIDEuODc1cmVtIC8gMik7XG59XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NjY2NjY3JSArIDEuODc1cmVtIC8gMik7XG59XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzMzMzMzMlICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY2NjY2NjclICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAxLjg3NXJlbSAvIDIpO1xufVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgKyAxLjg3NXJlbSAvIDIpO1xufVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgKyAxLjg3NXJlbSAvIDIpO1xufVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDEuODc1cmVtIC8gMik7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzMzMzMzMlICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgKyAxLjg3NXJlbSAvIDIpO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDIuNXJlbSAvIDIpO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMzMzMzMzJSArIDIuNXJlbSAvIDIpO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY2NjY2NjclICsgMi41cmVtIC8gMik7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDIuNXJlbSAvIDIpO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzMzMzMzMlICsgMi41cmVtIC8gMik7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgKyAyLjVyZW0gLyAyKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMi41cmVtIC8gMik7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgKyAyLjVyZW0gLyAyKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NjY2NjY3JSArIDIuNXJlbSAvIDIpO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAyLjVyZW0gLyAyKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzMzMzMzMlICsgMi41cmVtIC8gMik7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NjY2NjY3JSArIDIuNXJlbSAvIDIpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAzLjc1cmVtIC8gMik7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMzMzMzMzJSArIDMuNzVyZW0gLyAyKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgKyAzLjc1cmVtIC8gMik7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAzLjc1cmVtIC8gMik7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzMzMzMzMlICsgMy43NXJlbSAvIDIpO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NjY2NjY3JSArIDMuNzVyZW0gLyAyKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDMuNzVyZW0gLyAyKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgKyAzLjc1cmVtIC8gMik7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY2NjY2NjclICsgMy43NXJlbSAvIDIpO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMy43NXJlbSAvIDIpO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzMzMzMzMlICsgMy43NXJlbSAvIDIpO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY2NjY2NjclICsgMy43NXJlbSAvIDIpO1xuICB9XG59XG4uZ3JpZC15IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xufVxuLmdyaWQteSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiBub25lO1xufVxuLmdyaWQteSA+IC5hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQteSA+IC5zaHJpbmsge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZ3JpZC15ID4gLnNtYWxsLXNocmluaywgLmdyaWQteSA+IC5zbWFsbC1mdWxsLCAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgZmxleC1iYXNpczogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuLmdyaWQteSA+IC5zbWFsbC0xMiwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuLmdyaWQteSA+IC5zbWFsbC0xIHtcbiAgaGVpZ2h0OiA4LjMzMzMzMzMzMzMlO1xufVxuLmdyaWQteSA+IC5zbWFsbC0yIHtcbiAgaGVpZ2h0OiAxNi42NjY2NjY2NjY3JTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtMyB7XG4gIGhlaWdodDogMjUlO1xufVxuLmdyaWQteSA+IC5zbWFsbC00IHtcbiAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtNSB7XG4gIGhlaWdodDogNDEuNjY2NjY2NjY2NyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTYge1xuICBoZWlnaHQ6IDUwJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtNyB7XG4gIGhlaWdodDogNTguMzMzMzMzMzMzMyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTgge1xuICBoZWlnaHQ6IDY2LjY2NjY2NjY2NjclO1xufVxuLmdyaWQteSA+IC5zbWFsbC05IHtcbiAgaGVpZ2h0OiA3NSU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTEwIHtcbiAgaGVpZ2h0OiA4My4zMzMzMzMzMzMzJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtMTEge1xuICBoZWlnaHQ6IDkxLjY2NjY2NjY2NjclO1xufVxuLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMiwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTEge1xuICAgIGhlaWdodDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTMge1xuICAgIGhlaWdodDogMjUlO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTQge1xuICAgIGhlaWdodDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tNSB7XG4gICAgaGVpZ2h0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS02IHtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS03IHtcbiAgICBoZWlnaHQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTgge1xuICAgIGhlaWdodDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tOSB7XG4gICAgaGVpZ2h0OiA3NSU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMTAge1xuICAgIGhlaWdodDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteSA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xMiwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xIHtcbiAgICBoZWlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMyB7XG4gICAgaGVpZ2h0OiAyNSU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS00IHtcbiAgICBoZWlnaHQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNSB7XG4gICAgaGVpZ2h0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTYge1xuICAgIGhlaWdodDogNTAlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNyB7XG4gICAgaGVpZ2h0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTgge1xuICAgIGhlaWdodDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS05IHtcbiAgICBoZWlnaHQ6IDc1JTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTEwIHtcbiAgICBoZWlnaHQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgbWFyZ2luLXRvcDogLTEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICAgIG1hcmdpbi10b3A6IC0xLjg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgbWFyZ2luLXRvcDogLTMuMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0zLjEyNXJlbTtcbiAgfVxufVxuLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gICAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gICAgcGFkZGluZy10b3A6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAzLjEyNXJlbTtcbiAgfVxufVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgbWFyZ2luLXRvcDogLTEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15IHtcbiAgICBtYXJnaW4tdG9wOiAtMS44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15IHtcbiAgICBtYXJnaW4tdG9wOiAtMy4xMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLTMuMTI1cmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgfVxufVxuXG4uZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwdnc7XG59XG5cbi5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jZWxsLWJsb2NrIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4uY2VsbC1ibG9jay15IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcbn1cbi5jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7XG4gIH1cbiAgLmNlbGwgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVkaXVtLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubWVkaXVtLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICB9XG4gIC5jZWxsIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIH1cbn1cbi5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2VsbCAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15IHtcbiAgICBtYXJnaW4tdG9wOiAtMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkge1xuICAgIG1hcmdpbi10b3A6IC0xLjg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkge1xuICAgIG1hcmdpbi10b3A6IC0zLjEyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMy4xMjVyZW07XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNzVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDIuNXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAyLjVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAzLjc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMy43NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDMuNzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNzVyZW0pO1xuICB9XG59XG5cbi5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjVyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAzLjc1cmVtKTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMi41cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMy43NXJlbSk7XG4gIH1cbn1cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5idXR0b24udGlueSB7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xufVxuLmJ1dHRvbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbi5idXR0b24ubGFyZ2Uge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uYnV0dG9uLmV4cGFuZGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmJ1dHRvbiwgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk5ZTg7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTgzY2M7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5wcmltYXJ5LCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTllODtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDdjYzA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3Nzc3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZjVmNWY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5zdWNjZXNzLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJhMmEyYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi53YXJuaW5nLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZBOEUxMztcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMzcyMDQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYzU4NDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYTMxMTY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5hbmNob3IsIC5idXR0b24uYW5jaG9yLmRpc2FibGVkLCAuYnV0dG9uLmFuY2hvcltkaXNhYmxlZF0sIC5idXR0b24uYW5jaG9yLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmFuY2hvcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uYW5jaG9yLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmFuY2hvcltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzdkZGZmO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24uYW5jaG9yOmhvdmVyLCAuYnV0dG9uLmFuY2hvcjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyY2NhZmY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjE5OWU4O1xuICBjb2xvcjogIzIxOTllODtcbn1cbi5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzBjNGQ3ODtcbiAgY29sb3I6ICMwYzRkNzg7XG59XG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5LCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzIxOTllODtcbiAgY29sb3I6ICMyMTk5ZTg7XG59XG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGM0ZDc4O1xuICBjb2xvcjogIzBjNGQ3ODtcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Nzc3Nzc7XG4gIGNvbG9yOiAjNzc3Nzc3O1xufVxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMzYzNjM2M7XG4gIGNvbG9yOiAjM2MzYzNjO1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcywgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyYTJhMmE7XG4gIGNvbG9yOiAjMmEyYTJhO1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzE1MTUxNTtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZBOEUxMztcbiAgY29sb3I6ICNGQThFMTM7XG59XG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODQ0NzAzO1xuICBjb2xvcjogIzg0NDcwMztcbn1cbi5idXR0b24uaG9sbG93LmFsZXJ0LCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VjNTg0MDtcbiAgY29sb3I6ICNlYzU4NDA7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM4ODFmMGU7XG4gIGNvbG9yOiAjODgxZjBlO1xufVxuLmJ1dHRvbi5ob2xsb3cuYW5jaG9yLCAuYnV0dG9uLmhvbGxvdy5hbmNob3IuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFuY2hvcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFuY2hvci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYW5jaG9yW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYW5jaG9yLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5hbmNob3JbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc3ZGRmZjtcbiAgY29sb3I6ICM3N2RkZmY7XG59XG4uYnV0dG9uLmhvbGxvdy5hbmNob3I6aG92ZXIsIC5idXR0b24uaG9sbG93LmFuY2hvcjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzAwOGNiYjtcbiAgY29sb3I6ICMwMDhjYmI7XG59XG4uYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICMyMTk5ZTg7XG59XG4uYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgY29sb3I6ICMwYzRkNzg7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzIxOTllODtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICMwYzRkNzg7XG59XG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjNzc3Nzc3O1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICMzYzNjM2M7XG59XG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzJhMmEyYTtcbn1cbi5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG4uYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI0ZBOEUxMztcbn1cbi5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6ICM4NDQ3MDM7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICNlYzU4NDA7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgY29sb3I6ICM4ODFmMGU7XG59XG4uYnV0dG9uLmNsZWFyLmFuY2hvciwgLmJ1dHRvbi5jbGVhci5hbmNob3IuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYW5jaG9yW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbmNob3IuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYW5jaG9yW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbmNob3IuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYW5jaG9yW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjNzdkZGZmO1xufVxuLmJ1dHRvbi5jbGVhci5hbmNob3I6aG92ZXIsIC5idXR0b24uY2xlYXIuYW5jaG9yOmZvY3VzIHtcbiAgY29sb3I6ICMwMDhjYmI7XG59XG4uYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNGVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjRlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzIxOTllODtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzIxOTllODtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM3Nzc3Nzc7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMyYTJhMmE7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNGQThFMTM7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2VjNTg0MDtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LmFuY2hvcjo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuYW5jaG9yOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM3N2RkZmY7XG59XG4uYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgdG9wOiAtMC4xZW07XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgY29sb3I6ICM0ZjRmNGY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLmNsb3NlLWJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG4uY2xvc2UtYnV0dG9uOmhvdmVyLCAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2xvc2UtYnV0dG9uLnNtYWxsIHtcbiAgcmlnaHQ6IDAuNjZyZW07XG4gIHRvcDogMC4zM2VtO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNsb3NlLWJ1dHRvbi5tZWRpdW0sIC5jbG9zZS1idXR0b24ge1xuICByaWdodDogMXJlbTtcbiAgdG9wOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNhbGxvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY2FsbG91dC5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZjBmYztcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYWxsb3V0LnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZkZmRmO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYWxsb3V0Lndhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlZWRjO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYWxsb3V0LmFsZXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTZlMjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5hbmNob3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJmYWZmO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYWxsb3V0LnNtYWxsIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cbi5jYWxsb3V0LmxhcmdlIHtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDNyZW07XG59XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8sXG4udmlkZW8tY29udGFpbmVyLFxuLm1lZGlhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4ucmVzcG9uc2l2ZS1lbWJlZCBvYmplY3QsXG4ucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbi5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuLmZsZXgtdmlkZW8gaWZyYW1lLFxuLnZpZGVvLWNvbnRhaW5lciBpZnJhbWUsXG4ubWVkaWEgaWZyYW1lLFxuLmZsZXgtdmlkZW8gb2JqZWN0LFxuLnZpZGVvLWNvbnRhaW5lciBvYmplY3QsXG4ubWVkaWEgb2JqZWN0LFxuLmZsZXgtdmlkZW8gZW1iZWQsXG4udmlkZW8tY29udGFpbmVyIGVtYmVkLFxuLm1lZGlhIGVtYmVkLFxuLmZsZXgtdmlkZW8gdmlkZW8sXG4udmlkZW8tY29udGFpbmVyIHZpZGVvLFxuLm1lZGlhIHZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuLFxuLmZsZXgtdmlkZW8ud2lkZXNjcmVlbixcbi52aWRlby1jb250YWluZXIsXG4ubWVkaWEge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4uZmxvYXQtY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTtcbn1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjtcbn1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMztcbn1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDtcbn1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTtcbn1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG59XG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZmxleC1jaGlsZC1hdXRvIHtcbiAgZmxleDogMSAxIGF1dG87XG59XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bztcbn1cblxuLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgZmxleDogMCAxIGF1dG87XG59XG5cbi5mbGV4LWRpci1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5cbi5mbGV4LWRpci1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIH1cbn1cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LWZvci1kYXJrLW1vZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnNob3ctZm9yLWllIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgLnNob3ctZm9yLWllIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1pZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1mb3Itc3RpY2t5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmlzLXN0dWNrIC5zaG93LWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmlzLXN0dWNrIC5oaWRlLWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5hIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZsZXgtdmlkZW8sIC52aWRlby1jb250YWluZXIsXG4ubWVkaWEge1xuICBiYWNrZ3JvdW5kOiAjMGQwZDBkIHVybCguLi9pbWcvYmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJzdG9semxcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdG9semwtYm9vay13ZWJmb250LmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdG9semwtYm9vay13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3N0b2x6bC1ib29rLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL3N0b2x6bC1ib29rLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9zdG9semwtYm9vay13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc3RvbHpsLWJvb2std2ViZm9udC5zdmcjc3RvbHpsYm9va1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJzdG9semxcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdG9semwtYm9sZC13ZWJmb250LmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdG9semwtYm9sZC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3N0b2x6bC1ib2xkLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL3N0b2x6bC1ib2xkLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9zdG9semwtYm9sZC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc3RvbHpsLWJvbGQtd2ViZm9udC5zdmcjc3RvbHpsYm9sZFwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5ib2R5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IDEwMHN2aDtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYmctcG9zaS5qcGcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtYm9hcmQge1xuICAgIG1heC13aWR0aDogNjQwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmFwcC1ib2FyZCB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1ib2FyZCB7XG4gICAgbWFyZ2luOiAzcmVtIGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtYm9hcmQge1xuICAgIG1hcmdpbjogNXJlbSBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWJvYXJkIHtcbiAgICBtYXJnaW46IDdyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1ib2FyZCB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWJvYXJkIHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmFwcC1ib2FyZCB7XG4gICAgcGFkZGluZzogMCA3MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWJvYXJkIHtcbiAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgfVxufVxuLmFwcC1ib2FyZF9faGVhZGluZyB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEuN3JlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ib2FyZF9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgfVxufVxuXG4uYXBwLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogMTIwcmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cbi5hcHAtY29udGFpbmVyOjpiZWZvcmUsIC5hcHAtY29udGFpbmVyOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4uYXBwLWNvbnRhaW5lcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cblxuLmFwcC1jb250YWluZXItYmxvY2sge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWNvbnRhaW5lci1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtY29udGFpbmVyLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWNvbnRhaW5lci1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgfVxufVxuLmFwcC1jb250YWluZXItYmxvY2tfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtY29udGFpbmVyLWJsb2NrX190aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMS43NXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWNvbnRhaW5lci1ibG9ja19fdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1jb250YWluZXItYmxvY2tfX3RpdGxlIHtcbiAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gIH1cbn1cblxuLmFwLWRpc2NsYWltZXIge1xuICBtYXJnaW46IDAgMCA0cmVtIDA7XG59XG4uYXAtZGlzY2xhaW1lciA+IGgyIHtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5hcC1kaXNjbGFpbWVyIHVsLCAuYXAtZGlzY2xhaW1lciBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4uYXAtZGlzY2xhaW1lciB1bCA+IGxpLCAuYXAtZGlzY2xhaW1lciBvbCA+IGxpIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xufVxuLmFwLWRpc2NsYWltZXJfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAzcmVtIDAgMCAwO1xuICBwYWRkaW5nOiAzcmVtIDAgMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzdjN2M3Yztcbn1cblxuLmFwLWVkaXQtZmxvYXRsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG59XG4uYXAtZWRpdC1mbG9hdGxfX21pbWljbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5hcC1lZGl0LWZsb2F0bCBsYWJlbCwgLmFwLWVkaXQtZmxvYXRsX19taW1pY2xhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDFweDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuMTI1cmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gIGNvbG9yOiAjN2M3YzdjO1xufVxuLmFwLWVkaXQtZmxvYXRsIGxhYmVsLFxuLmFwLWVkaXQtZmxvYXRsIGlucHV0W3R5cGU9dGV4dF0sXG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT1lbWFpbF0sXG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT1wYXNzd29yZF0sXG4uYXAtZWRpdC1mbG9hdGwgdGV4dGFyZWEsXG4uYXAtZWRpdC1mbG9hdGwgc2VsZWN0IHtcbiAgbWFyZ2luOiAwO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cbi5hcC1lZGl0LWZsb2F0bCBpbnB1dFt0eXBlPXRleHRdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuLmFwLWVkaXQtZmxvYXRsIGlucHV0W3R5cGU9ZW1haWxdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuLmFwLWVkaXQtZmxvYXRsIGlucHV0W3R5cGU9cGFzc3dvcmRdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuLmFwLWVkaXQtZmxvYXRsIHRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuLmFwLWVkaXQtZmxvYXRsIHNlbGVjdDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIHRyYW5zaXRpb246IGluaGVyaXQ7XG59XG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT10ZXh0XTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbi5hcC1lZGl0LWZsb2F0bCBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbi5hcC1lZGl0LWZsb2F0bCBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbi5hcC1lZGl0LWZsb2F0bCB0ZXh0YXJlYTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbi5hcC1lZGl0LWZsb2F0bCBzZWxlY3Q6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLmFwLWVkaXQtZmxvYXRsIGlucHV0W3R5cGU9dGV4dF06bm90KC5hY3RpdmUpICsgbGFiZWwuLWludmlzaWJsZSxcbi5hcC1lZGl0LWZsb2F0bCBpbnB1dFt0eXBlPWVtYWlsXTpub3QoLmFjdGl2ZSkgKyBsYWJlbC4taW52aXNpYmxlLFxuLmFwLWVkaXQtZmxvYXRsIGlucHV0W3R5cGU9cGFzc3dvcmRdOm5vdCguYWN0aXZlKSArIGxhYmVsLi1pbnZpc2libGUsXG4uYXAtZWRpdC1mbG9hdGwgdGV4dGFyZWE6bm90KC5hY3RpdmUpICsgbGFiZWwuLWludmlzaWJsZSxcbi5hcC1lZGl0LWZsb2F0bCBzZWxlY3Q6bm90KC5hY3RpdmUpICsgbGFiZWwuLWludmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT10ZXh0XTpub3QoLmFjdGl2ZSkgKyBsYWJlbDpub3QoLi1pbnZpc2libGUpLFxuLmFwLWVkaXQtZmxvYXRsIGlucHV0W3R5cGU9ZW1haWxdOm5vdCguYWN0aXZlKSArIGxhYmVsOm5vdCguLWludmlzaWJsZSksXG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT1wYXNzd29yZF06bm90KC5hY3RpdmUpICsgbGFiZWw6bm90KC4taW52aXNpYmxlKSxcbi5hcC1lZGl0LWZsb2F0bCB0ZXh0YXJlYTpub3QoLmFjdGl2ZSkgKyBsYWJlbDpub3QoLi1pbnZpc2libGUpLFxuLmFwLWVkaXQtZmxvYXRsIHNlbGVjdDpub3QoLmFjdGl2ZSkgKyBsYWJlbDpub3QoLi1pbnZpc2libGUpIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgc2NhbGUoMSk7XG59XG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT10ZXh0XS5hY3RpdmUgKyBsYWJlbC4taW52aXNpYmxlLFxuLmFwLWVkaXQtZmxvYXRsIGlucHV0W3R5cGU9ZW1haWxdLmFjdGl2ZSArIGxhYmVsLi1pbnZpc2libGUsXG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT1wYXNzd29yZF0uYWN0aXZlICsgbGFiZWwuLWludmlzaWJsZSxcbi5hcC1lZGl0LWZsb2F0bCB0ZXh0YXJlYS5hY3RpdmUgKyBsYWJlbC4taW52aXNpYmxlLFxuLmFwLWVkaXQtZmxvYXRsIHNlbGVjdC5hY3RpdmUgKyBsYWJlbC4taW52aXNpYmxlIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5hcC1lZGl0LWZsb2F0bCBpbnB1dFt0eXBlPXRleHRdLmFjdGl2ZSArIGxhYmVsOm5vdCguLWludmlzaWJsZSksXG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT1lbWFpbF0uYWN0aXZlICsgbGFiZWw6bm90KC4taW52aXNpYmxlKSxcbi5hcC1lZGl0LWZsb2F0bCBpbnB1dFt0eXBlPXBhc3N3b3JkXS5hY3RpdmUgKyBsYWJlbDpub3QoLi1pbnZpc2libGUpLFxuLmFwLWVkaXQtZmxvYXRsIHRleHRhcmVhLmFjdGl2ZSArIGxhYmVsOm5vdCguLWludmlzaWJsZSksXG4uYXAtZWRpdC1mbG9hdGwgc2VsZWN0LmFjdGl2ZSArIGxhYmVsOm5vdCguLWludmlzaWJsZSkge1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICM2NjQ2REI7XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAuMjVyZW0sIC0wLjdyZW0pIHNjYWxlKDEpO1xufVxuLmFwLWVkaXQtZmxvYXRsIGlucHV0W3R5cGU9dGV4dF0uYWN0aXZlICsgbGFiZWw6bm90KC4taW52aXNpYmxlKSA+IHNwYW4sXG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT1lbWFpbF0uYWN0aXZlICsgbGFiZWw6bm90KC4taW52aXNpYmxlKSA+IHNwYW4sXG4uYXAtZWRpdC1mbG9hdGwgaW5wdXRbdHlwZT1wYXNzd29yZF0uYWN0aXZlICsgbGFiZWw6bm90KC4taW52aXNpYmxlKSA+IHNwYW4sXG4uYXAtZWRpdC1mbG9hdGwgdGV4dGFyZWEuYWN0aXZlICsgbGFiZWw6bm90KC4taW52aXNpYmxlKSA+IHNwYW4sXG4uYXAtZWRpdC1mbG9hdGwgc2VsZWN0LmFjdGl2ZSArIGxhYmVsOm5vdCguLWludmlzaWJsZSkgPiBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xufVxuXG4uYXBwLWMtZW1iZWQge1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG4uYXBwLWMtZW1iZWQgPiAudmlkZW8tY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hcHAtYy1lbWJlZCA+IHAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwLjNyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDAuNnJlbSAxcmVtO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2JnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xufVxuXG4uYXBwLWMtZmlsZXMge1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uYXBwLWMtZmlsZXMgPiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLmFwcC1jLWZpbGVzID4gdWwgPiBsaSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC43cmVtIDA7XG59XG4uYXBwLWMtZmlsZXMgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogIzNhM2EzYTtcbn1cblxuLmFwcC1jLWVudHJ5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS43O1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLmFwcC1jLWVudHJ5OjpiZWZvcmUsIC5hcHAtYy1lbnRyeTo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLmFwcC1jLWVudHJ5OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmFwcC1jLWVudHJ5ID4gOm5vdCgudmlkZW8tY29udGFpbmVyKTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWMtZW50cnkgaDIge1xuICAgIG1hcmdpbjogMnJlbSAwIDEuM3JlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWMtZW50cnkgaDIge1xuICAgIG1hcmdpbjogM3JlbSAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cbi5hcHAtYy1lbnRyeSBoMjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBib3JkZXI6IDA7XG59XG4uYXBwLWMtZW50cnkgaDMge1xuICBtYXJnaW46IDJyZW0gMCAxLjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtYy1lbnRyeSBoMyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWMtZW50cnkgaDMge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG4uYXBwLWMtZW50cnkgcCB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuLmFwcC1jLWVudHJ5IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxLjlyZW07XG59XG5cbi5hcHAtcGFnZXRvcCB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQgMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMnJlbTtcbiAgYm90dG9tOiAycmVtO1xuICB6LWluZGV4OiA5OTk7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbn1cbi5hcHAtcGFnZXRvcCA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogNDVweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL3BhZ2V0b3AucG5nKSBuby1yZXBlYXQgMCAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIG9wYWNpdHk6IDAuNDtcbiAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uYXBwLXBhZ2V0b3AuYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5hcHAtZm9vdGVyLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvYmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG4gIGNvbG9yOiAjYWFhYWFhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1mb290ZXItY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDZyZW0gMCAwIDA7XG4gICAgcGFkZGluZzogM3JlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWZvb3Rlci1jb250YWluZXIge1xuICAgIG1hcmdpbjogNXJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiA2cmVtIDAgNC41cmVtIDA7XG4gIH1cbn1cblxuLmFwcC1mb290ZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtZm9vdGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1mb290ZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1mb290ZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWZvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4uYXBwLWZvb3Rlcl9fY29udGVudCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtZm9vdGVyX19jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1mb290ZXJfX2NvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gIH1cbiAgLmFwcC1mb290ZXJfX2NvbnRlbnQ6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWZvb3Rlcl9fY29udGVudCB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAuYXBwLWZvb3Rlcl9fY29udGVudDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5hcHAtZm9vdGVyLW5hdl9fdGl0bGUge1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1mb290ZXItbmF2X190aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgIHBhZGRpbmc6IDAgMCAxLjI1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWZvb3Rlci1uYXZfX3RpdGxlIHtcbiAgICBjb2xvcjogI2FhYWFhYTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIDAgMjhweCAwO1xuICAgIHBhZGRpbmc6IDAgMCAyOHB4IDA7XG4gIH1cbiAgLmFwcC1mb290ZXItbmF2X190aXRsZTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWZvb3Rlci1uYXZfX3RpdGxlIHtcbiAgICBjb2xvcjogI2FhYWFhYTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIDAgMjhweCAwO1xuICAgIHBhZGRpbmc6IDAgMCAyOHB4IDA7XG4gICAgZm9udC1zaXplOiA4Ny41JTtcbiAgfVxuICAuYXBwLWZvb3Rlci1uYXZfX3RpdGxlOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIH1cbn1cblxuLmFwcC1mb290ZXItbmF2IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4uYXBwLWZvb3Rlci1uYXYgPiBsaSA+IGEge1xuICBjb2xvcjogI2FhYWFhYTtcbn1cbi5hcHAtZm9vdGVyLW5hdiA+IGxpID4gYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhM2EzYTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtZm9vdGVyLW5hdiB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIH1cbiAgLmFwcC1mb290ZXItbmF2ID4gbGkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG4gIC5hcHAtZm9vdGVyLW5hdiA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1mb290ZXItbmF2ID4gbGkge1xuICAgIG1hcmdpbjogMCAwIDE0cHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWZvb3Rlci1uYXYge1xuICAgIG1heC13aWR0aDogMTYxcHg7XG4gICAgZm9udC1zaXplOiA4Ny41JTtcbiAgfVxufVxuXG4uYXBwLWNoYW5uZWxzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4uYXBwLWNoYW5uZWxzID4gbGkgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjYWFhYWFhO1xufVxuLmFwcC1jaGFubmVscyA+IGxpID4gYSA+IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMC44NzVyZW0gMCAwO1xuICB3aWR0aDogMjRweDtcbn1cbi5hcHAtY2hhbm5lbHMgPiBsaSA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjRUI5RjM3O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1jaGFubmVscyA+IGxpIHtcbiAgICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5hcHAtY2hhbm5lbHMgPiBsaSA+IGEge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1jaGFubmVscyB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmFwcC1jaGFubmVscyA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgfVxuICAuYXBwLWNoYW5uZWxzID4gbGkgPiBhIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1jaGFubmVscyA+IGxpIHtcbiAgICBtYXJnaW46IDAgMCAxLjI1cmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuYXBwLWNoYW5uZWxzID4gbGkgPiBhIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uYXBwLWNvcHlyaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogMTIwcmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBjb2xvcjogIzY2Njtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtY29weXJpZ2h0IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIH1cbn1cblxucC5oZWxwLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5sZWdlbmQuY29sdW1ucyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uaGFzLWVycm9yIGlucHV0Om5vdCg6Zm9jdXMpLFxuLmhhcy1lcnJvciBzZWxlY3Q6bm90KDpmb2N1cyksXG4uaGFzLWVycm9yIHRleHRhcmVhOm5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWM1ODQwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNlZGViO1xufVxuLmhhcy1lcnJvciBpbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIsXG4uaGFzLWVycm9yIHNlbGVjdDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIsXG4uaGFzLWVycm9yIHRleHRhcmVhOm5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZWM1ODQwO1xufVxuLmhhcy1lcnJvciBsZWdlbmQsXG4uaGFzLWVycm9yIGxhYmVsIHtcbiAgY29sb3I6ICNlYzU4NDAgIWltcG9ydGFudDtcbn1cblxuLmVycm9ycyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IC0wLjVyZW0gMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNlYzU4NDA7XG59XG4uZXJyb3JzICsgLmVycm9ycyB7XG4gIG1hcmdpbi10b3A6IC0wLjc1cmVtO1xufVxuXG4uc3RvcmUtZm9ybS10aXRsZSB7XG4gIHBhZGRpbmc6IDAgMCAxcmVtIDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0ZjRmNGY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtZm9ybS10aXRsZSB7XG4gICAgbWFyZ2luOiAycmVtIDAgMS41cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1mb3JtLXRpdGxlIHtcbiAgICBtYXJnaW46IDNyZW0gMCAycmVtIDA7XG4gIH1cbn1cblxuLnN0b3JlLWZvcm0tc2VuZCB7XG4gIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0b3JlLWZvcm0tY29udHJvbC1sYWJlbCB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbiAgLnN0b3JlLWZvcm0tY29udHJvbC1sYWJlbCA+IGxhYmVsIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuLnN0b3JlLWZvcm0tY29udHJvbC1vcHRpb25zIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4uc3RvcmUtZm9ybS1jb250cm9sLW9wdGlvbnMgPiBsaSB7XG4gIG1hcmdpbjogMCAwIDAuMjVyZW0gMDtcbn1cbi5zdG9yZS1mb3JtLWNvbnRyb2wtb3B0aW9ucyA+IGxpIGlucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zdG9yZS1mb3JtLWNvbnRyb2wtb3B0aW9ucyA+IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3RvcmUtZm9ybS1jb250cm9sLWhlbHB0ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogI2VjNTg0MDtcbn1cblxuLnN0b3JlLWZvcm0tY29udHJvbC1wcmV2aWV3ID4gZHQge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uc3RvcmUtZm9ybS1jb250cm9sLXBhc3N3b3JkIHtcbiAgbWF4LXdpZHRoOiAxNXJlbTtcbn1cblxuLnN0b3JlLWZvcm0taW5wdXQtc21hbGwge1xuICBtYXgtd2lkdGg6IDhyZW07XG59XG5cbi5zdG9yZS1mb3JtLWlucHV0LW1lZGl1bSB7XG4gIG1heC13aWR0aDogMTJyZW07XG59XG5cbi50b2dnbGVwYXNzd29yZCB7XG4gIG1hcmdpbjogLTAuN3JlbSAwIDFyZW0gMDtcbn1cbi50b2dnbGVwYXNzd29yZCA+IGxhYmVsID4gaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udmlkZW8tY29udGFpbmVyLFxuLm1lZGlhIHtcbiAgbWFyZ2luLWJvdHRvbTogMS40cmVtO1xuICB3aWR0aDogMTAwJTtcbn1cbi52aWRlby1jb250YWluZXIgaWZyYW1lLFxuLnZpZGVvLWNvbnRhaW5lciBvYmplY3QsXG4udmlkZW8tY29udGFpbmVyIGVtYmVkLFxuLnZpZGVvLWNvbnRhaW5lciB2aWRlbyxcbi5tZWRpYSBpZnJhbWUsXG4ubWVkaWEgb2JqZWN0LFxuLm1lZGlhIGVtYmVkLFxuLm1lZGlhIHZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgLmFwcC1tZW51LmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1tZW51IHtcbiAgICBtYXJnaW46IDAgMCAwIGF1dG87XG4gIH1cbn1cbi5hcHAtbWVudSA+IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLW1lbnUgPiB1bCB7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYSB1cmwoLi4vaW1nL2JnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMmEyYTJhO1xuICB9XG4gIC5hcHAtbWVudSA+IHVsID4gbGkge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJhMmEyYTtcbiAgfVxuICAuYXBwLW1lbnUgPiB1bCA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuYXBwLW1lbnUgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCwgOTAsIDkwLCAwLjEpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLW1lbnUgPiB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5hcHAtbWVudSA+IHVsID4gbGkge1xuICAgIG1hcmdpbjogMCAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICB9XG4gIC5hcHAtbWVudSA+IHVsID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuYXBwLW1lbnUgPiB1bCA+IGxpIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuLmFwcC1tZW51LWljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1tZW51LWljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMCAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgLmFwcC1tZW51LWljb25fX2luZGljYXRvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMC43NXJlbSAwIDA7XG4gIH1cbiAgLmFwcC1tZW51LWljb246bm90KC5hY3RpdmUpIC5hcHAtbWVudS1pY29uX19pbmRpY2F0b3Ige1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuICAuYXBwLW1lbnUtaWNvbjpub3QoLmFjdGl2ZSkgLmFwcC1tZW51LWljb25fX2luZGljYXRvcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2ZlZmVmZSAycHgsIHRyYW5zcGFyZW50IDJweCwgdHJhbnNwYXJlbnQgOXB4LCAjZmVmZWZlIDlweCwgI2ZlZmVmZSAxMXB4LCB0cmFuc3BhcmVudCAxMXB4LCB0cmFuc3BhcmVudCAxOHB4LCAjZmVmZWZlIDE4cHgpO1xuICB9XG4gIC5hcHAtbWVudS1pY29uLmFjdGl2ZSAuYXBwLW1lbnUtaWNvbl9faW5kaWNhdG9yIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAuYXBwLW1lbnUtaWNvbi5hY3RpdmUgLmFwcC1tZW51LWljb25fX2luZGljYXRvcjo6YmVmb3JlLCAuYXBwLW1lbnUtaWNvbi5hY3RpdmUgLmFwcC1tZW51LWljb25fX2luZGljYXRvcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIH1cbiAgLmFwcC1tZW51LWljb24uYWN0aXZlIC5hcHAtbWVudS1pY29uX19pbmRpY2F0b3I6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG4gIC5hcHAtbWVudS1pY29uLmFjdGl2ZSAuYXBwLW1lbnUtaWNvbl9faW5kaWNhdG9yOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxufVxuLmFwcC1wb3N0LWNvbnRlbnQge1xuICBsaW5lLWhlaWdodDogMS43O1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLmFwcC1wb3N0LWNvbnRlbnQ6OmJlZm9yZSwgLmFwcC1wb3N0LWNvbnRlbnQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5hcHAtcG9zdC1jb250ZW50OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmFwcC1wb3N0LWNvbnRlbnQgPiA6bm90KC52aWRlby1jb250YWluZXIpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5hcHAtcG9zdC1jb250ZW50IGgyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wb3N0LWNvbnRlbnQgaDIge1xuICAgIG1hcmdpbjogMnJlbSAwIDEuM3JlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG4gIC5hcHAtcG9zdC1jb250ZW50IGgyOmFmdGVyIHtcbiAgICBtYXJnaW46IDEuMTI1cmVtIDAgMCAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXBvc3QtY29udGVudCBoMiB7XG4gICAgbWFyZ2luOiAzcmVtIDAgMS41cmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbiAgLmFwcC1wb3N0LWNvbnRlbnQgaDI6YWZ0ZXIge1xuICAgIG1hcmdpbjogMS4yNXJlbSAwIDAgMDtcbiAgfVxufVxuLmFwcC1wb3N0LWNvbnRlbnQgaDI6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmFwcC1wb3N0LWNvbnRlbnQgaDMge1xuICBtYXJnaW46IDJyZW0gMCAxLjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcG9zdC1jb250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcG9zdC1jb250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cbi5hcHAtcG9zdC1jb250ZW50IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDEuN3JlbTtcbn1cbi5hcHAtcG9zdC1jb250ZW50IGltZyArIGJyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5hcHAtcG9zdC1jb250ZW50IHAge1xuICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuLmFwcC1wb3N0LWNvbnRlbnQgcCA+IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi5hcHAtcG9zdC1jb250ZW50IGJsb2NrcXVvdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDAgMCAxLjZyZW07XG4gIHBhZGRpbmc6IDEuNzVyZW0gMnJlbTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkwLCA5MCwgOTAsIDAuMSk7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIHF1b3RlczogXCLigJxcIiBcIuKAnVwiO1xufVxuLmFwcC1wb3N0LWNvbnRlbnQgYmxvY2txdW90ZTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTAuNXJlbTtcbiAgbGVmdDogLTAuNXJlbTtcbiAgY29udGVudDogb3Blbi1xdW90ZTtcbiAgbGluZS1oZWlnaHQ6IDAuODtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG59XG4uYXBwLXBvc3QtY29udGVudCBibG9ja3F1b3RlICoge1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuLmFwcC1wb3N0LWNvbnRlbnQgYmxvY2txdW90ZSA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZSxcbi5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1hcmdpbjogMC41cmVtIDAgMS40cmVtIDA7XG59XG4uYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZSA+IGltZyxcbi5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlID4gaW1nIHtcbiAgbWFyZ2luOiAwO1xufVxuLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmUgZmlnY2FwdGlvbixcbi5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlIGZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwLjc1cmVtIDAgMC4yNXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogcmlnaHQ7XCJdLFxuICAuYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZS5pbWFnZVtzdHlsZSo9XCJmbG9hdDogcmlnaHQ7XCJdIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAwLjNyZW0gMCAxLjRyZW0gMS4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogbGVmdDtcIl0sXG4gIC5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlW3N0eWxlKj1cImZsb2F0OiBsZWZ0O1wiXSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwLjNyZW0gMS4yNXJlbSAxLjRyZW0gMCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogcmlnaHQ7XCJdLCAuYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogbGVmdDtcIl0sXG4gIC5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlW3N0eWxlKj1cImZsb2F0OiByaWdodDtcIl0sXG4gIC5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlW3N0eWxlKj1cImZsb2F0OiBsZWZ0O1wiXSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAuM3JlbSBhdXRvIDEuNHJlbSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiA3MCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogcmlnaHQ7XCJdLCAuYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogbGVmdDtcIl0sXG4gIC5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlW3N0eWxlKj1cImZsb2F0OiByaWdodDtcIl0sXG4gIC5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlW3N0eWxlKj1cImZsb2F0OiBsZWZ0O1wiXSB7XG4gICAgbWF4LXdpZHRoOiA0NSU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlW3N0eWxlKj1cImZsb2F0OiByaWdodDtcIl0sIC5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlW3N0eWxlKj1cImZsb2F0OiBsZWZ0O1wiXSxcbiAgLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmUuaW1hZ2Vbc3R5bGUqPVwiZmxvYXQ6IHJpZ2h0O1wiXSxcbiAgLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmUuaW1hZ2Vbc3R5bGUqPVwiZmxvYXQ6IGxlZnQ7XCJdIHtcbiAgICBtYXgtd2lkdGg6IDM3JTtcbiAgfVxufVxuLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmVbc3R5bGUqPVwibWFyZ2luOiBhdXRvO1wiXSwgLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmVbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyO1wiXSxcbi5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLmltYWdlW3N0eWxlKj1cIm1hcmdpbjogYXV0bztcIl0sXG4uYXBwLXBvc3QtY29udGVudCA+IGZpZ3VyZS5pbWFnZVtzdHlsZSo9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCJdIHtcbiAgbWFyZ2luOiAwLjVyZW0gYXV0byAxLjRyZW0gYXV0byAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmVbc3R5bGUqPVwibWFyZ2luOiBhdXRvO1wiXSwgLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmVbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyO1wiXSxcbiAgLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmUuaW1hZ2Vbc3R5bGUqPVwibWFyZ2luOiBhdXRvO1wiXSxcbiAgLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmUuaW1hZ2Vbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyO1wiXSB7XG4gICAgbWF4LXdpZHRoOiA3MCU7XG4gIH1cbn1cbi5hcHAtcG9zdC1jb250ZW50ID4gZmlndXJlLm1lZGlhLFxuLmFwcC1wb3N0LWNvbnRlbnQgPiBmaWd1cmUuaW1hZ2UubWVkaWEge1xuICB3aWR0aDogMTAwJTtcbn1cbi5hcHAtcG9zdC1jb250ZW50IHN0cm9uZyB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uYXBwLXBvc3QtY29udGVudCBzdHJvbmcuaXMtaW1wb3J0YW50IHtcbiAgY29sb3I6ICNmZjMzNjY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4uYXBwLXBvc3QtY29udGVudCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5hcHAtcG9zdC1mb290ZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcG9zdC1mb290ZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXBvc3QtZm9vdGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5hcHAtcG9zdC1mb290ZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cblxuLmFwcC1wb3N0LWZvb3Rlci1jb250ZW50LmlzLWJvcmRlcmVkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXBvc3QtZm9vdGVyLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wb3N0LWZvb3Rlci1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAzcmVtIDAgMCAwO1xuICB9XG59XG5cbi5hcHAtcG9zdC1mb290ZXJfX3RpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wb3N0LWZvb3Rlcl9fdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wb3N0LWZvb3Rlcl9fdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDIuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmFwcC1wcm9kdWN0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0cyB7XG4gICAgbWFyZ2luOiAwIC04cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcHJvZHVjdHMge1xuICAgIG1hcmdpbjogMCAtMTVweDtcbiAgfVxufVxuXG4uYXBwLXByb2R1Y3RzLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgM2VtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdHMtaXRlbSB7XG4gICAgcGFkZGluZzogMCA4cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcHJvZHVjdHMtaXRlbSB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RzLWl0ZW0ge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RzLWl0ZW0ge1xuICAgIHdpZHRoOiAzMy4zMzMlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXByb2R1Y3RzLWl0ZW0ge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1wcm9kdWN0cy1pdGVtIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdHMtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0cy1pdGVtX19waG90byB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDAuOXJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMCA1Ni4yNSUgMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICAuYXBwLXByb2R1Y3RzLWl0ZW1fX3Bob3RvID4gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdHMtaXRlbV9fcGhvdG8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAwLjlyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgNTYuMjUlIDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbiAgLmFwcC1wcm9kdWN0cy1pdGVtX19waG90byA+IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtcHJvZHVjdHMtaXRlbV9fcGhvdG8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMCAwIDU2LjI1JSAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG4gIC5hcHAtcHJvZHVjdHMtaXRlbV9fcGhvdG8gPiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uYXBwLXByb2R1Y3RzLWl0ZW1fX2JyYW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDAuMzVyZW0gMDtcbiAgY29sb3I6ICNmYzY7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi5hcHAtcHJvZHVjdHMtaXRlbV9fbmFtZSB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi5hcHAtcHJvZHVjdHMtaXRlbV9fYXBwZW5kaXgge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwLjEyNXJlbSAwIDAgMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogI2EyYTJhMjtcbn1cbi5hcHAtcHJvZHVjdHMtaXRlbSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmFwcC1wcm9kdWN0cy1pdGVtID4gYTpob3ZlciB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYXBwLXByb2R1Y3RzLWl0ZW0gPiBhOmhvdmVyIC5hcHAtcHJvZHVjdHMtaXRlbV9fbmFtZSB7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG5cbi5hcHAtc2hhcmUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXNoYXJlX190aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zaGFyZV9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMTRweCAwIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGZvbnQtc2l6ZTogODcuNSU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuLmFwcC1zaGFyZV9fY2hhbm5lbHMge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXNoYXJlX19jaGFubmVscyA+IGxpIHtcbiAgICBtYXJnaW46IDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXNoYXJlX19jaGFubmVscyA+IGxpIHtcbiAgICBtYXJnaW46IDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4uYXBwLXNoYXJlX19jaGFubmVscyA+IGxpID4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjdweDtcbiAgaGVpZ2h0OiAyN3B4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWluZGVudDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xufVxuLmFwcC1zaGFyZV9fY2hhbm5lbHMgPiBsaS4tdHdpdHRlciA+IGEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24tdHdpdHRlci5wbmcpO1xufVxuLmFwcC1zaGFyZV9fY2hhbm5lbHMgPiBsaS4tZmFjZWJvb2sgPiBhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uLWZhY2Vib29rLnBuZyk7XG59XG5cbi5hcHAtdG9wYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhIHVybCguLi9pbWcvYmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG59XG4uYXBwLXRvcGJhciBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uYXBwLXRvcGJhciBhOmhvdmVyIHtcbiAgY29sb3I6ICNjY2M7XG59XG5cbi5hcHAtdG9wYmFyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogMTIwcmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDc1cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXRvcGJhci1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXRvcGJhci1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC10b3BiYXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICB9XG59XG5cbi5hcHAtdG9wYmFyLXNpdGVuYW1lIHtcbiAgbWFyZ2luOiAwIGF1dG8gMCAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEzOHB4O1xuICBoZWlnaHQ6IDMwcHg7XG59XG4uYXBwLXRvcGJhci1zaXRlbmFtZSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5hcHAtdG9wYmFyLXNpdGVuYW1lID4gYSA+IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYXAtd3JhcCB7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuXG4uYXBwLWFib3V0IHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiAxMDI0cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIGh5cGhlbnM6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWFib3V0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1hYm91dCB7XG4gICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuYXBwLWFib3V0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWFib3V0IHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWFib3V0IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtYWJvdXQge1xuICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogNnJlbTtcbiAgfVxufVxuLmFwcC1hYm91dCA+IGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1hYm91dCA+IGgxIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMCAwIDFyZW0gMDtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1hYm91dCA+IGgxIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMCAwIDFyZW0gMDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWFib3V0ID4gaDEge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgMnJlbSAwO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjM2EzYTNhO1xuICB9XG59XG4uYXBwLWFib3V0ID4gdGFibGUge1xuICB3aWR0aDogMTAwJTtcbn1cbi5hcHAtYWJvdXQgPiB0YWJsZSA+IHRib2R5ID4gdHIgKiB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi5hcHAtYWJvdXQgPiB0YWJsZSA+IHRib2R5ID4gdHIgdGggKjpsYXN0LWNoaWxkLCAuYXBwLWFib3V0ID4gdGFibGUgPiB0Ym9keSA+IHRyIHRkICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWFib3V0ID4gdGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4gIC5hcHAtYWJvdXQgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuMnJlbSAwLjVyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAuYXBwLWFib3V0ID4gdGFibGUgPiB0Ym9keSA+IHRyID4gdGgge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2JnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICB9XG4gIC5hcHAtYWJvdXQgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWFib3V0ID4gdGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4gIC5hcHAtYWJvdXQgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgcGFkZGluZzogMC40cmVtO1xuICB9XG4gIC5hcHAtYWJvdXQgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgd2lkdGg6IDI2Ljc1NDM4NiU7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLmFwcC1hYm91dCA+IHRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICBwYWRkaW5nOiAwLjRyZW0gMC40cmVtIDAuNHJlbSA2MHB4O1xuICAgIHdpZHRoOiA3My4yNDU2MTQlO1xuICB9XG59XG5cbi5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMtaGVhZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDAgMnJlbTtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMtaGVhZGluZzpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzNhM2EzYTtcbiAgfVxufVxuLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllcy1oZWFkaW5nOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IC0xOHB4O1xuICBtYXJnaW46IGF1dG87XG4gIHdpZHRoOiA5cHg7XG4gIGhlaWdodDogOXB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgd2hpdGU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcbn1cbi5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMtaGVhZGluZy5vcGVuOmFmdGVyIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB3aGl0ZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHdoaXRlO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4uYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQgbWFyZ2luLXRvcCBtYXJnaW4tYm90dG9tO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbn1cbi5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMtY29udGFpbmVyLm9wZW4ge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2JnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICBtYXJnaW46IDAgMCAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMgPiAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzX19pdGVtIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMmQyZDJkO1xuICB9XG4gIC5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMgPiAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzX19pdGVtOm50aC1jaGlsZCgybisxKTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmQyZDJkO1xuICB9XG4gIC5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMgPiAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzX19pdGVtOm50aC1jaGlsZCgybikge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuICAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbTpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbSB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMyZDJkMmQ7XG4gIH1cbiAgLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllcyA+IC5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXNfX2l0ZW06bnRoLWNoaWxkKDNuKzEpOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyZDJkMmQ7XG4gIH1cbiAgLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllcyA+IC5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXNfX2l0ZW06bnRoLWNoaWxkKDNuKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICB9XG4gIC5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMgPiAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzX19pdGVtOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllcyA+IC5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXNfX2l0ZW0ge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbTpudGgtY2hpbGQoNG4rMSk6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbTpudGgtY2hpbGQoNG4pIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cbiAgLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllcyA+IC5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXNfX2l0ZW06Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG4uYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC44NXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG59XG4uYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbS5pcy1hY3RpdmUgYSB7XG4gIGNvbG9yOiAjNjY2O1xufVxuLmFwcC1ibG9nLW5hdiB7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctbmF2IHtcbiAgICBtYXJnaW46IDAgMCAwLjhyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtYmxvZy1uYXYge1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ibG9nLW5hdiB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICB9XG59XG4uYXBwLWJsb2ctbmF2IGEge1xuICBjb2xvcjogd2hpdGU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctbmF2IGE6YWN0aXZlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZDogIzNhM2EzYTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ibG9nLW5hdiBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZDogIzNhM2EzYTtcbiAgfVxufVxuXG4uYXBwLWJsb2ctbmF2LXNob3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5hcHAtYmxvZy1uYXZfX3RpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5hcHAtYmxvZy1uYXZfX3RpdGxlID4gYSB7XG4gIGNvbG9yOiAjZGZkZmRmO1xufVxuXG4uYXBwLWJsb2ctc2hvdy1tb3JlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAzcmVtIDAgMCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzRmNGY0ZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5hcHAtYmxvZy1zaG93LW1vcmUgPiBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYXBwLWJsb2ctc2hvdy1tb3JlID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG5cbi5hcHAtYmxvZy1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luOiAzcmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYXBwLWJsb2ctcGFnaW5hdGlvbl9faXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDFyZW07XG59XG4uYXBwLWJsb2ctcGFnaW5hdGlvbl9faXRlbSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5hcHAtYmxvZy1wYWdpbmF0aW9uX19pdGVtID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG5cbi5hcHAtYmxvZy1hbGVydCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS41cmVtIDAgMCAwO1xuICBjb2xvcjogI2ZjNjtcbn1cbi5hcHAtYmxvZy1hbGVydCA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYXBwLW5vZW50cmllcyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzRmNGY0Zjtcbn1cblxuLyogQGdyb3VwIHN0b3J5ICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXN0b3JpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCAtMTBweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5hcHAtc3RvcmllcyB7XG4gICAgbWFyZ2luOiAwIC0yMHB4O1xuICB9XG59XG5cbi5hcHAtc3Rvcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5hcHAtc3Rvcnk6OmJlZm9yZSwgLmFwcC1zdG9yeTo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLmFwcC1zdG9yeTo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5hcHAtc3RvcnkgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLmFwcC1zdG9yeSA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYXBwLXN0b3J5ID4gYTpob3ZlciA+IC5hcHAtc3RvcnlfX3RpdGxlID4gc3BhbiB7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG4uYXBwLXN0b3J5ID4gYTpob3ZlciA+IC5hcHAtc3RvcnlfX2Rlc2NyaXB0aW9uIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXN0b3J5IHtcbiAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtc3Rvcnkge1xuICAgIG1hcmdpbjogMCAwIDVyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zdG9yeSB7XG4gICAgbWFyZ2luOiAwIDAgNXJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB3aWR0aDogMzMuMzMzJTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXN0b3J5X19jb3ZlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgNTYuMjUlIDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbiAgLmFwcC1zdG9yeV9fY292ZXIgPiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zdG9yeV9fY292ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgNTYuMjUlIDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbiAgLmFwcC1zdG9yeV9fY292ZXIgPiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXN0b3J5X19jb3ZlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMCA1Ni4yNSUgMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICAuYXBwLXN0b3J5X19jb3ZlciA+IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmFwcC1zdG9yeV9fY2F0ZWdvcnkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgY29sb3I6ICNmZmNjNjY7XG59XG5cbi5hcHAtc3RvcnlfX3RpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXN0b3J5X190aXRsZSB7XG4gICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zdG9yeV9fdGl0bGUge1xuICAgIG1hcmdpbjogMC41cmVtIDAgMXJlbSAwO1xuICB9XG59XG5cbi5hcHAtc3RvcnlfX2Rlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyogQGVuZCBncm91cCBzdG9yeSAqL1xuLmFwcC1ibG9nLXBvc3QtcGVvcGxlIHtcbiAgbWFyZ2luOiAzcmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uYXBwLWJsb2ctcG9zdC1wZXJzb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS41cmVtIDA7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzRmNGY0Zjtcbn1cbi5hcHAtYmxvZy1wb3N0LXBlcnNvbjo6YmVmb3JlLCAuYXBwLWJsb2ctcG9zdC1wZXJzb246OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5hcHAtYmxvZy1wb3N0LXBlcnNvbjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0LXBlcnNvbiB7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuICB9XG59XG4uYXBwLWJsb2ctcG9zdC1wZXJzb246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiAwO1xufVxuLmFwcC1ibG9nLXBvc3QtcGVyc29uID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFwcC1ibG9nLXBvc3QtcGVyc29uX19uYW1lIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtcGVyc29uX19uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1wZXJzb25fX25hbWUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1wZXJzb25fX25hbWUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0LXBlcnNvbl9fcGhvdG8ge1xuICAgIG1hcmdpbjogMCBhdXRvIDFyZW07XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMjQwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1wZXJzb25fX3Bob3RvIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMS4ycmVtIDAuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1wZXJzb25fX3Bob3RvIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMS4ycmVtIDAuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG59XG4uYXBwLWJsb2ctcG9zdC1wZXJzb25fX3Bob3RvID4gaW1nIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFwcC1ibG9nIHtcbiAgcGFkZGluZzogMCAzMHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1ibG9nIHtcbiAgICBtYXJnaW46IDJyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1ibG9nIHtcbiAgICBtYXJnaW46IDNyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ibG9nIHtcbiAgICBtYXJnaW46IDZyZW0gYXV0bztcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuYXBwLWJsb2cge1xuICAgIHBhZGRpbmc6IDAgNzBweDtcbiAgICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctaGVhZGVyIHtcbiAgICBtYXJnaW46IDJyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtYmxvZy1oZWFkZXIge1xuICAgIG1hcmdpbjogM3JlbSAxMHB4IDIuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ibG9nLWhlYWRlciB7XG4gICAgbWFyZ2luOiA2cmVtIDEwcHggM3JlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuYXBwLWJsb2ctaGVhZGVyIHtcbiAgICBtYXJnaW46IDZyZW0gMCAzcmVtIDA7XG4gIH1cbn1cbi5hcHAtYmxvZy1oZWFkZXI6bm90KC5pcy1jYXRlZ29yeSkgLmFwcC1ibG9nLW5hdl9fdGl0bGUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cbi5hcHAtYmxvZy1oZWFkZXI6bm90KC5pcy1jYXRlZ29yeSkgLmFwcC1ibG9nLW5hdl9fdGl0bGUgPiBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5hcHAtYmxvZy1pdGVtIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xufVxuLmFwcC1ibG9nLWl0ZW06Zmlyc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xufVxuXG4uYXBwLWJsb2ctaXRlbV9fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMC43NXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi5hcHAtYmxvZy1pdGVtX190aXRsZSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5hcHAtYmxvZy1pdGVtX190aXRsZSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xufVxuXG4uYXBwLWJsb2ctaXRlbV9fZGVzY3JpcHRpb24ge1xuICBtYXJnaW46IDAgMCAwLjI1cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5hcHAtYmxvZy1pdGVtX19kYXRlIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5hcHAtYmxvZy1pdGVtX19jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI2ZmY2M2Njtcbn1cbi5hcHAtYmxvZy1pdGVtX19jYXRlZ29yeTpob3ZlciB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xufVxuXG4uYXBwLWJsb2ctY2F0ZWdvcnktbmFtZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmFwcC1ibG9nLWNhdGVnb3J5LW5hbWUgPiBhIHtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICM0ZjRmNGY7XG59XG4uYXBwLWJsb2ctY2F0ZWdvcnktbmFtZSA+IGE6aG92ZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG4uYXBwLWJsb2ctY2F0ZWdvcnktbmFtZSBzcGFuIHtcbiAgbWFyZ2luOiAwIDAuMjVyZW07XG4gIGNvbG9yOiAjN2M3YzdjO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uYXBwLWJsb2ctc3ViY2F0ZWdvcmllcyB7XG4gIG1hcmdpbjogMC41cmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmFwcC1ibG9nLXN1YmNhdGVnb3JpZXMgPiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLmFwcC1ibG9nLXN1YmNhdGVnb3JpZXMgPiB1bDo6YmVmb3JlLCAuYXBwLWJsb2ctc3ViY2F0ZWdvcmllcyA+IHVsOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4uYXBwLWJsb2ctc3ViY2F0ZWdvcmllcyA+IHVsOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmFwcC1ibG9nLXN1YmNhdGVnb3JpZXMgPiB1bCA+IGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMC43NXJlbSAxLjVyZW0gMCAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmFwcC1ibG9nLXN1YmNhdGVnb3JpZXMgPiB1bCA+IGxpID4gYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuLmFwcC1ibG9nLXN1YmNhdGVnb3JpZXMgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogIzNhM2EzYTtcbn1cblxuLyogQGdyb3VwIHN0b3JpZXMgKi9cbi5hcHAtc3Rvcmllcy0tYmxvZ2luZGV4IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1zdG9yaWVzLS1ibG9naW5kZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCAtMTBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc3Rvcmllcy0tYmxvZ2luZGV4IHtcbiAgICBtYXJnaW46IDAgLTEwcHggMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuYXBwLXN0b3JpZXMtLWJsb2dpbmRleCB7XG4gICAgbWFyZ2luOiAwIC0yMHB4IDA7XG4gIH1cbn1cblxuLmFwcC1zdG9yeS0tZnVsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmFwcC1zdG9yeS0tZnVsbDo6YmVmb3JlLCAuYXBwLXN0b3J5LS1mdWxsOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4uYXBwLXN0b3J5LS1mdWxsOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmFwcC1zdG9yeS0tZnVsbCA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uYXBwLXN0b3J5LS1mdWxsID4gYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5hcHAtc3RvcnktLWZ1bGwgPiBhOmhvdmVyID4gLmFwcC1zdG9yeV9fdGl0bGUgPiBzcGFuIHtcbiAgYmFja2dyb3VuZDogIzNhM2EzYTtcbn1cbi5hcHAtc3RvcnktLWZ1bGwgPiBhOmhvdmVyID4gLmFwcC1zdG9yeV9fZGVzY3JpcHRpb24ge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtc3RvcnktLWZ1bGwge1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zdG9yeS0tZnVsbCB7XG4gICAgbWFyZ2luOiAwIDAgM3JlbSAwO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXN0b3J5LS1mdWxsIHtcbiAgICBtYXJnaW46IDAgMCA0cmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYXBwLXN0b3J5LS1mdWxsOjpiZWZvcmUsIC5hcHAtc3RvcnktLWZ1bGw6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5hcHAtc3RvcnktLWZ1bGw6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAuYXBwLXN0b3J5LS1mdWxsID4gYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbiAgLmFwcC1zdG9yeS0tZnVsbCA+IGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAuYXBwLXN0b3J5LS1mdWxsID4gYTpob3ZlciAuYXBwLXN0b3J5X190aXRsZSA+IHNwYW4ge1xuICAgIGJhY2tncm91bmQ6ICMzYTNhM2E7XG4gIH1cbiAgLmFwcC1zdG9yeS0tZnVsbCA+IGE6aG92ZXIgLmFwcC1zdG9yeV9fZGVzY3JpcHRpb24ge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG4gIC5hcHAtc3RvcnktLWZ1bGwgLmFwcC1zdG9yeS0tZnVsbF9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHdpZHRoOiA2Ni42NjY3JTtcbiAgICBtaW4taGVpZ2h0OiAzMzhweDtcbiAgfVxuICAuYXBwLXN0b3J5LS1mdWxsIC5hcHAtc3RvcnktLWZ1bGxfX2NvbnRlbnQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gIH1cbiAgLmFwcC1zdG9yeS0tZnVsbCAuYXBwLXN0b3J5X19jb3ZlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMjBweDtcbiAgICByaWdodDogMjBweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAuYXBwLXN0b3J5LS1mdWxsIC5hcHAtc3RvcnlfX2NhdGVnb3J5IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgLmFwcC1zdG9yeS0tZnVsbCAuYXBwLXN0b3J5X190aXRsZSB7XG4gICAgbWFyZ2luOiAwLjVyZW0gMCAxcmVtIDA7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG4gIC5hcHAtc3RvcnktLWZ1bGwgLmFwcC1zdG9yeV9fZGVzY3JpcHRpb24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmFwcC1zdG9yeS0tZnVsbCB7XG4gICAgbWFyZ2luOiAwIDAgNXJlbSAwO1xuICB9XG4gIC5hcHAtc3RvcnktLWZ1bGwgLmFwcC1zdG9yeS0tZnVsbF9faW1hZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICB9XG4gIC5hcHAtc3RvcnktLWZ1bGwgLmFwcC1zdG9yeV9fY2F0ZWdvcnkge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbiAgLmFwcC1zdG9yeS0tZnVsbCAuYXBwLXN0b3J5X190aXRsZSB7XG4gICAgbWFyZ2luOiAwLjVyZW0gMCAxcmVtIDA7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gIC5hcHAtc3RvcnktLWZ1bGwgLmFwcC1zdG9yeV9fZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIHN0b3JpZXMgKi9cbi5hcHAtYmxvZy1wb3N0LWhlYWRlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0LWhlYWRlciB7XG4gICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1oZWFkZXIge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1oZWFkZXIge1xuICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1oZWFkZXIge1xuICAgIG1heC13aWR0aDogMTI4MHB4O1xuICB9XG59XG5cbi5hcHAtYmxvZy1wb3N0LWNvdmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIG1heC13aWR0aDogMTkyMHB4O1xufVxuLmFwcC1ibG9nLXBvc3QtY292ZXIgPiBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFwcC1ibG9nLXBvc3QtYm9keSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogMTAyNHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtYm9keSB7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0LWJvZHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtYm9keSB7XG4gICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtYm9keSB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG4gIC5hcHAtYmxvZy1wb3N0LWJvZHkgPiAuYXBwLWJsb2ctcG9zdC1zaWRlYmFyIHtcbiAgICBtYXJnaW46IDIuNXJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMCAwIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5hcHAtYmxvZy1wb3N0LWJvZHkgPiAuYXBwLWJsb2ctcG9zdC1zaWRlYmFyIC5hcHAtc2hhcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvIDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1ib2R5IHtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICB9XG4gIC5hcHAtYmxvZy1wb3N0LWJvZHkgPiAuYXBwLWJsb2ctcG9zdC1zaWRlYmFyIHtcbiAgICBtYXJnaW46IDIuNXJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMCAwIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0LWJvZHkge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxuICAuYXBwLWJsb2ctcG9zdC1ib2R5ID4gLmFwcC1ibG9nLXBvc3Qtc2lkZWJhciB7XG4gICAgbWFyZ2luOiAyLjVyZW0gMCAwIDA7XG4gICAgcGFkZGluZzogMi41cmVtIDAgMCAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG59XG5cbi5hcHAtYmxvZy1wb3N0LWNvdmVyICsgLmFwcC1ibG9nLXBvc3QtYm9keSB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5hcHAtYmxvZy1wb3N0X190aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctcG9zdF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWJsb2ctcG9zdF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuLmFwcC1ibG9nLXBvc3RfX2xlYWQge1xuICBtYXJnaW46IDFyZW0gMCAwIDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIGh5cGhlbnM6IGF1dG87XG4gIGNvbG9yOiAjY2NjO1xufVxuXG4uYXBwLWJsb2ctcG9zdF9fZGF0ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzk5OTtcbn1cblxuLmFwcC1ibG9nLXBvc3RfX2NhdGVnb3J5IHtcbiAgY29sb3I6ICNmZmNjNjY7XG59XG4uYXBwLWJsb2ctcG9zdF9fY2F0ZWdvcnk6aG92ZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG5cbi5hcHAtYmxvZy1wb3N0X19wcm9kdWN0cyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0X19wcm9kdWN0cyB7XG4gICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0X19wcm9kdWN0cyB7XG4gICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5hcHAtYmxvZy1wb3N0X19wcm9kdWN0cyA+IGxpID4gYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuLmFwcC1ibG9nLXBvc3RfX3Byb2R1Y3RzID4gbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3RfX3Byb2R1Y3RzID4gbGkge1xuICAgIG1hcmdpbjogMCAwIDAuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0X19wcm9kdWN0cyA+IGxpIHtcbiAgICBtYXJnaW46IDAgMCAwLjI1cmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uYXBwLWJsb2ctcG9zdC1yZWxhdGVkIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiAxMDI0cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1yZWxhdGVkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtcmVsYXRlZCB7XG4gICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1yZWxhdGVkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICB9XG59XG4uYXBwLWJsb2ctcG9zdC1yZWxhdGVkID4gdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uL2ltZy9iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcbn1cbi5hcHAtYmxvZy1wb3N0LXJlbGF0ZWQgPiB1bCBhIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtcmVsYXRlZCA+IHVsIGE6YWN0aXZlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZDogIzNhM2EzYTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtcmVsYXRlZCA+IHVsIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1yZWxhdGVkID4gdWwgPiBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuN3JlbSAwLjc1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjIyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1yZWxhdGVkID4gdWwgPiBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuN3JlbSAwLjc1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjIyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1yZWxhdGVkID4gdWwgPiBsaSB7XG4gICAgcGFkZGluZzogMC43cmVtIDEuNXJlbTtcbiAgfVxuICAuYXBwLWJsb2ctcG9zdC1yZWxhdGVkID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICB9XG59XG5cbi5hcHAtYmxvZy1wb3N0LXJlbGF0ZWRfX3RpdGxlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uL2ltZy9iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtYmxvZy1wb3N0LXJlbGF0ZWRfX3RpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1ibG9nLXBvc3QtcmVsYXRlZF9fdGl0bGUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWJsb2ctcG9zdC1yZWxhdGVkX190aXRsZSB7XG4gICAgcGFkZGluZzogMS41cmVtIDEuNXJlbSAxcmVtIDEuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWJyYW5kIHtcbiAgICBtYXJnaW46IDJyZW0gMCA0cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWJyYW5kIHtcbiAgICBtYXJnaW46IDVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1icmFuZCB7XG4gICAgbWFyZ2luOiA3cmVtIDAgNnJlbSAwO1xuICB9XG59XG4uYXBwLWJyYW5kX19uYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWJyYW5kX19uYW1lIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1icmFuZF9fbmFtZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1icmFuZF9fbmFtZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuLmFwcC1icmFuZF9fbmFtZSA+IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAyNTVweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtYnJhbmRfX25hbWUgPiBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtYnJhbmRfX25hbWUgPiBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxufVxuLmFwcC1icmFuZF9fZGVzY3JpcHRpb24ge1xuICBtYXJnaW46IDJyZW0gYXV0byAwIGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWJyYW5kX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtO1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gIH1cbn1cblxuLmFwcC1jb250YWN0IHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiA2NDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtY29udGFjdCB7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtY29udGFjdCB7XG4gICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuYXBwLWNvbnRhY3Qge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cbi5hcHAtY29udGFjdCAuaGVscC10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4uYXBwLWNvbnRhY3QgdGV4dGFyZWE6Oi13ZWJraXQtcmVzaXplciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYXBwLWNvbnRhY3Qgc2VsZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMzAwcHg7XG59XG4uYXBwLWNvbnRhY3Quc2VudCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtY29udGFjdC5zZW50IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLWNvbnRhY3Quc2VudCB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWNvbnRhY3Quc2VudCB7XG4gICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA4cmVtO1xuICB9XG59XG5cbi5hcHAtY29udGFjdF9fdHJhY2tpbmdudW0ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuLmFwcC1jb250YWN0X190cmFja2luZ251bSA+IHN0cm9uZyB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uZnJtLXJvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cbi5mcm0tcm93IGlucHV0LFxuLmZybS1yb3cgc2VsZWN0LFxuLmZybS1yb3cgdGV4dGFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZnJtLXJlcXVpcmVkIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjRkE4RTEzO1xufVxuXG4vKiBAZ3JvdXAgZXJyb3IgbWVzc2FnZSAqL1xuLmZybS1lcnJvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAuMjVyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjRkE4RTEzO1xufVxuLmZybS1lcnJvciArIC5mcm0tZXJyb3Ige1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuLmZybS1mb3JtLXJvdyArIC5mcm0tZXJyb3Ige1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG51bC5mcm0tZXJyb3Ige1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8qIEBlbmRncm91cCBlcnJvciBtZXNzYWdlICovXG4uZnJtLWluc3RydWN0aW9uIHtcbiAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjN2M3YzdjO1xufVxuLmZybS1pbnN0cnVjdGlvbiA+IGxpIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cbi5mcm0taW5zdHJ1Y3Rpb24gPiBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmZybS1yYWRpb3Mge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5mcm0tcmFkaW9zID4gbGkge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuLmZybS1yYWRpb3MgPiBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogMDtcbn1cbi5mcm0tcmFkaW9zIGlucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZybS1ocGZpZWxkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZybS1hY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZnJtLWFjdGlvbiB7XG4gICAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmZybS1hY3Rpb24ge1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZybS1hY3Rpb24ge1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgfVxufVxuXG4uYXBwLWdlbnJlX19uYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtZ2VucmVfX25hbWUge1xuICAgIG1hcmdpbjogMnJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1nZW5yZV9fbmFtZSB7XG4gICAgbWFyZ2luOiA1cmVtIDAgMi41cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtZ2VucmVfX25hbWUge1xuICAgIG1hcmdpbjogN3JlbSAwIDMuNXJlbSAwO1xuICB9XG59XG4uYXBwLWdlbnJlX19uYW1lID4gc21hbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuLmFwcC1nZW5yZV9fZmlsdGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0ZjRmNGY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWdlbnJlX19maWx0ZXIge1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgMnJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1nZW5yZV9fZmlsdGVyIHtcbiAgICBtYXJnaW46IDAgMCA0cmVtIDA7XG4gICAgcGFkZGluZzogMCAwIDJyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1nZW5yZV9fZmlsdGVyIHtcbiAgICBtYXJnaW46IDAgMCA0cmVtIDA7XG4gICAgcGFkZGluZzogMCAwIDMuNXJlbSAwO1xuICB9XG59XG4uYXBwLWdlbnJlX19maWx0ZXIgPiB1bCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1nZW5yZV9fZmlsdGVyID4gdWwgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1nZW5yZV9fZmlsdGVyID4gdWwgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAxcmVtIDFyZW0gMXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1nZW5yZV9fZmlsdGVyID4gdWwgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAxcmVtIDAuNXJlbSAxcmVtO1xuICB9XG59XG4uYXBwLWdlbnJlX19maWx0ZXIgPiB1bCA+IGxpID4gYSB7XG4gIGNvbG9yOiAjZmM2O1xufVxuLmFwcC1nZW5yZV9fZmlsdGVyID4gdWwgPiBsaSA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG5cbi8qIEBncm91cCBsYXlvdXQgKi9cbi5sLWluZGV4LWJsb2NrIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiAxMjByZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmwtaW5kZXgtYmxvY2sge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubC1pbmRleC1ibG9jayB7XG4gICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubC1pbmRleC1ibG9jayB7XG4gICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgfVxufVxuXG4ubC1pbmRleC1ibG9ja19faW5uZXIge1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubC1pbmRleC1ibG9ja19faW5uZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICAgIHBhZGRpbmc6IDNyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5sLWluZGV4LWJsb2NrX19pbm5lciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM3YzdjN2M7XG4gICAgcGFkZGluZzogNHJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubC1pbmRleC1ibG9ja19faW5uZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xuICAgIHBhZGRpbmc6IDQuNXJlbSAwO1xuICB9XG59XG5cbi8qIEBlbmQgZ3JvdXAgbGF5b3V0ICovXG4vKiBAZ3JvdXAgdG9wLXN0b3J5ICovXG4uYXBwLXRvcC1zdG9yeSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxOTIwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXRvcC1zdG9yeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC10b3Atc3Rvcnkge1xuICAgIG1hcmdpbi1ib3R0b206IDdyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAuYXBwLXRvcC1zdG9yeSB7XG4gICAgbWFyZ2luLXRvcDogNDJweDtcbiAgICBwYWRkaW5nOiAwIDQycHg7XG4gIH1cbn1cblxuLmFwcC10b3Atc3RvcnlfX2NvdmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtdG9wLXN0b3J5X19jb3ZlciB7XG4gICAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXRvcC1zdG9yeV9fY292ZXIge1xuICAgIG1hcmdpbjogMCAwIDIuNXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXRvcC1zdG9yeV9fY292ZXIge1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUzNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmFwcC10b3Atc3RvcnlfX2NvdmVyID4gaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5hcHAtdG9wLXN0b3J5X19jb3ZlciB7XG4gICAgaGVpZ2h0OiA2NDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC5hcHAtdG9wLXN0b3J5X19jb3ZlciB7XG4gICAgaGVpZ2h0OiA3MjhweDtcbiAgfVxufVxuLmFwcC10b3Atc3RvcnlfX2Rlc2NyaWJlcyB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBtYXgtd2lkdGg6IDcyOHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXRvcC1zdG9yeV9fZGVzY3JpYmVzIHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gIH1cbn1cblxuLmFwcC10b3Atc3RvcnlfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDIxcHggMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC10b3Atc3RvcnlfX3RpdGxlIHtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtdG9wLXN0b3J5X190aXRsZSB7XG4gICAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gICAgZm9udC1zaXplOiAyLjNyZW07XG4gIH1cbn1cbi5hcHAtdG9wLXN0b3J5X190aXRsZSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5hcHAtdG9wLXN0b3J5X190aXRsZSA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG5cbi5hcHAtdG9wLXN0b3J5X19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtdG9wLXN0b3J5X19kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cblxuLyogQGVuZCBncm91cCB0b3Atc3RvcnkgKi9cbi8qIEBncm91cCBzZWNvbmQtc3RvcnkgKi9cbi5hcHAtc2Vjb25kLXN0b3J5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYXBwLXNlY29uZC1zdG9yeSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uYXBwLXNlY29uZC1zdG9yeSA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYXBwLXNlY29uZC1zdG9yeSA+IGE6aG92ZXIgPiAuYXBwLXNlY29uZC1zdG9yeV9fdGl0bGUgPiBzcGFuIHtcbiAgYmFja2dyb3VuZDogIzNhM2EzYTtcbn1cbi5hcHAtc2Vjb25kLXN0b3J5ID4gYTpob3ZlciA+IC5hcHAtc2Vjb25kLXN0b3J5X19kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYXBwLXNlY29uZC1zdG9yeV9fY292ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAxLjdyZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc2Vjb25kLXN0b3J5X19jb3ZlciB7XG4gICAgaGVpZ2h0OiA1MzVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5hcHAtc2Vjb25kLXN0b3J5X19jb3ZlciA+IGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5hcHAtc2Vjb25kLXN0b3J5X19jb3ZlciB7XG4gICAgaGVpZ2h0OiA2NDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC5hcHAtc2Vjb25kLXN0b3J5X19jb3ZlciB7XG4gICAgaGVpZ2h0OiA3MjhweDtcbiAgfVxufVxuLmFwcC1zZWNvbmQtc3RvcnlfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDFyZW0gYXV0bztcbiAgcGFkZGluZzogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zZWNvbmQtc3RvcnlfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zZWNvbmQtc3RvcnlfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmFwcC1zZWNvbmQtc3RvcnlfX3RpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgfVxufVxuXG4uYXBwLXNlY29uZC1zdG9yeV9fZGVzY3JpcHRpb24ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc2Vjb25kLXN0b3J5X19kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmFwcC1zZWNvbmQtc3RvcnlfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIHNlY29uZC1zdG9yeSAqL1xuLyogQGdyb3VwIGhlYWRsaW5lIHN0b3JpZXMgKi9cbi8qIEBlbmQgZ3JvdXAgaGVhZGxpbmUgc3RvcmllcyAqL1xuLyogQGdyb3VwIGluZm9ybWF0aW9uLCBkZWFscywgZXZlbnRzICovXG4uYXBwLW5ld3Mge1xuICBtYXJnaW46IDAgYXV0byAzcmVtIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIG1heC13aWR0aDogNzY4cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLW5ld3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIH1cbiAgLmFwcC1uZXdzOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtbmV3cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy41cmVtO1xuICB9XG4gIC5hcHAtbmV3czpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtbmV3cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNC41cmVtO1xuICB9XG4gIC5hcHAtbmV3czpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG5cbi5hcHAtbmV3c19faW5kZXgge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5hcHAtbmV3c19faW5kZXggPiBsaSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTRweCA3cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzRmNGY0Zjtcbn1cbi5hcHAtbmV3c19faW5kZXggPiBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjNGY0ZjRmO1xufVxuLmFwcC1uZXdzX19pbmRleCA+IGxpID4gYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5hcHAtbmV3c19faW5kZXggPiBsaSA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG5cbi8qIEBlbmQgZ3JvdXAgaW5mb3JtYXRpb24sIGRlYWxzLCBldmVudHMgKi9cbi5hcHAtYmxvY2stdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtYmxvY2stdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDEuNzVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgM3JlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLWJsb2NrLXRpdGxlIHtcbiAgICBtYXJnaW46IDAgMCA0cmVtIDA7XG4gIH1cbn1cbi5hcHAtYmxvY2stdGl0bGUgc3BhbjpsYXN0LWNoaWxkIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLWJsb2NrLXRpdGxlIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogN3B4O1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG4gIC5hcHAtYmxvY2stdGl0bGUgc3BhbjpsYXN0LWNoaWxkID4gYSB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLmFwcC1ibG9jay10aXRsZSBzcGFuOmxhc3QtY2hpbGQgPiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLWJsb2NrLXRpdGxlIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDIxcHg7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbiAgLmFwcC1ibG9jay10aXRsZSBzcGFuOmxhc3QtY2hpbGQgPiBhIHtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgfVxuICAuYXBwLWJsb2NrLXRpdGxlIHNwYW46bGFzdC1jaGlsZCA+IGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xuICB9XG59XG5cbi8qIEBncm91cCB2aWRlb3MgKi9cbi5hcHAtc3Rvcmllcy5hcHAtdmlkZW9zIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zdG9yaWVzLmFwcC12aWRlb3Mge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXN0b3JpZXMuYXBwLXZpZGVvcyB7XG4gICAgbWFyZ2luOiAwIC0xNXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXN0b3JpZXMuYXBwLXZpZGVvcyA+IC5hcHAtc3Rvcnkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc3Rvcmllcy5hcHAtdmlkZW9zID4gLmFwcC1zdG9yeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zdG9yaWVzLmFwcC12aWRlb3MgPiAuYXBwLXN0b3J5ID4gLmZsZXgtdmlkZW8sIC5hcHAtc3Rvcmllcy5hcHAtdmlkZW9zID4gLmFwcC1zdG9yeSA+IC52aWRlby1jb250YWluZXIsXG4gIC5hcHAtc3Rvcmllcy5hcHAtdmlkZW9zID4gLmFwcC1zdG9yeSA+IC5tZWRpYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zdG9yaWVzLmFwcC12aWRlb3MgPiAuYXBwLXN0b3J5ID4gLmZsZXgtdmlkZW8sIC5hcHAtc3Rvcmllcy5hcHAtdmlkZW9zID4gLmFwcC1zdG9yeSA+IC52aWRlby1jb250YWluZXIsXG4gIC5hcHAtc3Rvcmllcy5hcHAtdmlkZW9zID4gLmFwcC1zdG9yeSA+IC5tZWRpYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjhweDtcbiAgfVxufVxuXG4uYXBwLW1vcmUtdmlkZW9zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtbW9yZS12aWRlb3Mge1xuICAgIG1hcmdpbjogM3JlbSAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1tb3JlLXZpZGVvcyB7XG4gICAgbWFyZ2luOiA0cmVtIDAgMCAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLW1vcmUtdmlkZW9zIHtcbiAgICBtYXJnaW46IDVyZW0gMCAwIDA7XG4gIH1cbn1cbi5hcHAtbW9yZS12aWRlb3MgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMCA1cHggMDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmVmZWZlO1xufVxuLmFwcC1tb3JlLXZpZGVvcyA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYXBwLW1vcmUtdmlkZW9zID4gYSA+IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0byAwLjc1cmVtIGF1dG87XG4gIHdpZHRoOiA2MHB4O1xufVxuXG4vKiBAZW5kIGdyb3VwIHZpZGVvcyAqL1xuLyogQGdyb3VwIG1lZGlhIGluZm9ybWF0aW9uICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1tZWRpYS1pbmZvcyB7XG4gICAgcGFkZGluZzogMCAyOHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLW1lZGlhLWluZm9zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5hcHAtbWVkaWEtaW5mbyB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBtYXgtd2lkdGg6IDcyOHB4O1xuICBmbGV4LWJhc2lzOiA3NjhweDtcbn1cbi5hcHAtbWVkaWEtaW5mbzo6YmVmb3JlLCAuYXBwLW1lZGlhLWluZm86OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5hcHAtbWVkaWEtaW5mbzo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtbWVkaWEtaW5mby54MjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1tZWRpYS1pbmZvLngyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICB9XG59XG5cbi5hcHAtbWVkaWEtaW5mb19faW1hZ2Uge1xuICB3aWR0aDogMTYwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLW1lZGlhLWluZm9fX2ltYWdlIHtcbiAgICBtYXJnaW46IDAgYXV0byAyMXB4IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1tZWRpYS1pbmZvX19pbWFnZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwIDI4cHggN3B4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLW1lZGlhLWluZm9fX2Rlc2NyaWJlcyB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4OHB4O1xuICB9XG59XG5cbi5hcHAtbWVkaWEtaW5mb19fdGl0bGUge1xuICBtYXJnaW46IDAgMCAyMXB4IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLW1lZGlhLWluZm9fX3RpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmFwcC1tZWRpYS1pbmZvX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5hcHAtbWVkaWEtaW5mb19fZGVzY3JpcHRpb24gPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyogQGVuZCBncm91cCBtZWRpYSBpbmZvcm1hdGlvbiAqL1xuLyogQGdyb3VwIG5ldyBlbnRyeSAqL1xuLmFwcC1wLWVudHJ5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS43O1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLmFwcC1wLWVudHJ5OjpiZWZvcmUsIC5hcHAtcC1lbnRyeTo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLmFwcC1wLWVudHJ5OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wLWVudHJ5IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG4uYXBwLXAtZW50cnkgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYXBwLXAtaGVhZGluZy0tbCB7XG4gIGNsZWFyOiBib3RoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wLWhlYWRpbmctLWwge1xuICAgIG1hcmdpbjogMi41cmVtIDAgMS43NXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IDEuMzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbiAgLmFwcC1wLWhlYWRpbmctLWwuYm9yZGVyZWQge1xuICAgIHBhZGRpbmc6IDJyZW0gMCAwIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcC1oZWFkaW5nLS1sIHtcbiAgICBtYXJnaW46IDIuNXJlbSAwIDIuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IDEuNTVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbiAgLmFwcC1wLWhlYWRpbmctLWwuYm9yZGVyZWQge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAwIDAgMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzRmNGY0ZjtcbiAgfVxuICAuYXBwLXAtZmlncy1jb250YWluZXIuY2VudGVyICsgLmFwcC1wLWhlYWRpbmctLWwsIC5hcHAtcC1maWdzLWNvbnRhaW5lci5mdWxsICsgLmFwcC1wLWhlYWRpbmctLWwge1xuICAgIG1hcmdpbi10b3A6IDIuMXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wLWhlYWRpbmctLWwubmFycm93IHtcbiAgICB3aWR0aDogNzAlO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuLmFwcC1wLWhlYWRpbmctLWw6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uYXBwLXAtaGVhZGluZy0tbSB7XG4gIGNsZWFyOiBib3RoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wLWhlYWRpbmctLW0ge1xuICAgIG1hcmdpbjogMnJlbSAwIDEuM3JlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcC1oZWFkaW5nLS1tIHtcbiAgICBtYXJnaW46IDIuNXJlbSAwIDEuM3JlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG4gIC5hcHAtcC1maWdzLWNvbnRhaW5lci5jZW50ZXIgKyAuYXBwLXAtaGVhZGluZy0tbSwgLmFwcC1wLWZpZ3MtY29udGFpbmVyLmZ1bGwgKyAuYXBwLXAtaGVhZGluZy0tbSB7XG4gICAgbWFyZ2luLXRvcDogMi4xcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXAtaGVhZGluZy0tbS5uYXJyb3cge1xuICAgIHdpZHRoOiA3MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG59XG5cbi5hcHAtcC1maWdzLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXAtZmlncy1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAuMzVyZW0gMCAxLjRyZW0gMDtcbiAgfVxuICAuYXBwLXAtZmlncy1jb250YWluZXIuY2VudGVyLCAuYXBwLXAtZmlncy1jb250YWluZXIubGVmdCwgLmFwcC1wLWZpZ3MtY29udGFpbmVyLnJpZ2h0IHtcbiAgICBtYXgtd2lkdGg6IDcwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtcC1maWdzLWNvbnRhaW5lci5sZWZ0LCAuYXBwLXAtZmlncy1jb250YWluZXIucmlnaHQge1xuICAgIG1heC13aWR0aDogNDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXAtZmlncy1jb250YWluZXIuY2VudGVyIHtcbiAgICBtYXgtd2lkdGg6IDcwJTtcbiAgfVxuICAuYXBwLXAtZmlncy1jb250YWluZXIuY2VudGVyLCAuYXBwLXAtZmlncy1jb250YWluZXIuZnVsbCB7XG4gICAgcGFkZGluZzogMCAwIDEuOHJlbSAwO1xuICB9XG4gIC5hcHAtcC1maWdzLWNvbnRhaW5lci5mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYXBwLXAtZmlncy1jb250YWluZXIuZnVsbCBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5hcHAtcC1maWdzLWNvbnRhaW5lci5sZWZ0LCAuYXBwLXAtZmlncy1jb250YWluZXIucmlnaHQge1xuICAgIHBhZGRpbmc6IDAuMzVyZW0gMCAxLjVyZW0gMDtcbiAgfVxuICAuYXBwLXAtZmlncy1jb250YWluZXIubGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjRyZW07XG4gIH1cbiAgLmFwcC1wLWZpZ3MtY29udGFpbmVyLnJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wLWZpZ3MtY29udGFpbmVyLmxlZnQsIC5hcHAtcC1maWdzLWNvbnRhaW5lci5yaWdodCB7XG4gICAgbWF4LXdpZHRoOiAzNCU7XG4gIH1cbiAgLmFwcC1wLWZpZ3MtY29udGFpbmVyLmxlZnRbZGF0YS1lbmFibGUtc2xpZGVyPXRydWVdLCAuYXBwLXAtZmlncy1jb250YWluZXIucmlnaHRbZGF0YS1lbmFibGUtc2xpZGVyPXRydWVdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmFwcC1wLWZpZ3MtY29udGFpbmVyW2RhdGEtZW5hYmxlLXNsaWRlcj1mYWxzZV0gLmFwcC1wLWZpZ3MgLmFwcC1wLWZpZ3NfX2l0ZW0gKyAuYXBwLXAtZmlnc19faXRlbSB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG59XG4uYXBwLXAtZmlncy1jb250YWluZXJbZGF0YS1lbmFibGUtc2xpZGVyPWZhbHNlXS5jZW50ZXIgLmFwcC1wLWZpZ3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5hcHAtcC1maWdzLWNvbnRhaW5lcltkYXRhLWVuYWJsZS1zbGlkZXI9ZmFsc2VdLmNlbnRlciAuYXBwLXAtZmlncyAuYXBwLXAtZmlnc19faXRlbSB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAxNXB4ICFpbXBvcnRhbnQ7XG59XG4uYXBwLXAtZmlncy1jb250YWluZXJbZGF0YS1lbmFibGUtc2xpZGVyPXRydWVdIC5hcHAtcC1maWdzIC5hcHAtcC1maWdzX19pdGVtIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYXBwLXAtZmlncy1jb250YWluZXJbZGF0YS1lbmFibGUtc2xpZGVyPXRydWVdIC5hcHAtcC1maWdzIC5hcHAtcC1maWdzX19pdGVtIGltZyB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uYXBwLXAtZmlncyAuYXBwLXAtZmlnc19faXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5hcHAtcC1maWdzIC5hcHAtcC1maWdzX19pdGVtLnNsaWNrLXNsaWRlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hcHAtcC1maWdzIC5hcHAtcC1maWdzX19pdGVtIGZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwLjVyZW0gMCAwLjI1cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjYmJiO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4uYXBwLXAtc2V0OjpiZWZvcmUsIC5hcHAtcC1zZXQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5hcHAtcC1zZXQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXAtc2V0Lm5hcnJvdyB7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4uYXBwLXAtdGFibGUge1xuICBtYXJnaW46IDAgMCAxLjRyZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuLmFwcC1wLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRoID4gKjpsYXN0LWNoaWxkLFxuLmFwcC1wLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRkID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcC10YWJsZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjNGY0ZjRmO1xuICB9XG4gIC5hcHAtcC10YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLmFwcC1wLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5hcHAtcC10YWJsZSA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMCAwLjEyNXJlbSAwO1xuICAgIGNvbG9yOiAjYTJhMmEyO1xuICB9XG4gIC5hcHAtcC10YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAwLjc1cmVtIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjNGY0ZjRmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1wLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRoIHtcbiAgICB3aWR0aDogMTNyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcC10YWJsZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjNGY0ZjRmO1xuICB9XG4gIC5hcHAtcC10YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLmFwcC1wLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICM0ZjRmNGY7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5hcHAtcC10YWJsZSA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgfVxuICAuYXBwLXAtdGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzRmNGY0ZjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRoIHtcbiAgICB3aWR0aDogMThyZW07XG4gIH1cbn1cblxuLyogQGVuZCBncm91cCBuZXcgZW50cnkgKi9cbi5hcHAtcHJvZHVjdF9fY292ZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTkyMHB4O1xufVxuLmFwcC1wcm9kdWN0X19jb3ZlciAuYXBwLXByb2R1Y3RfX2NvdmVycGhvdG9zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFwcC1wcm9kdWN0X19jb3ZlciAuYXBwLXByb2R1Y3RfX2NvdmVycGhvdG9zX19pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXByb2R1Y3RfX2NvdmVyIHtcbiAgICBoZWlnaHQ6IDUzNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmFwcC1wcm9kdWN0X19jb3ZlciAuYXBwLXByb2R1Y3RfX2NvdmVycGhvdG9zX19pdGVtIHtcbiAgICBoZWlnaHQ6IDUzNXB4O1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fY292ZXIgLmFwcC1wcm9kdWN0X19jb3ZlcnBob3Rvc19faXRlbSA+IGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19jb3ZlciB7XG4gICAgaGVpZ2h0OiA2NDBweDtcbiAgfVxuICAuYXBwLXByb2R1Y3RfX2NvdmVyIC5hcHAtcHJvZHVjdF9fY292ZXJwaG90b3NfX2l0ZW0ge1xuICAgIGhlaWdodDogNjQwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAuYXBwLXByb2R1Y3RfX2NvdmVyIHtcbiAgICBwYWRkaW5nOiAwIDQycHg7XG4gICAgaGVpZ2h0OiA3MjhweDtcbiAgfVxuICAuYXBwLXByb2R1Y3RfX2NvdmVyIC5hcHAtcHJvZHVjdF9fY292ZXJwaG90b3NfX2l0ZW0ge1xuICAgIGhlaWdodDogNzI4cHg7XG4gIH1cbn1cblxuLyogQGdyb3VwIGhlYWRlciAqL1xuLmFwcC1wcm9kdWN0X19oZWFkZXI6OmJlZm9yZSwgLmFwcC1wcm9kdWN0X19oZWFkZXI6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5hcHAtcHJvZHVjdF9faGVhZGVyOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19oZWFkZXIge1xuICAgIG1hcmdpbjogM3JlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fY292ZXIgKyAuYXBwLXByb2R1Y3RfX2hlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19oZWFkZXIge1xuICAgIG1hcmdpbjogNHJlbSAwIDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmFwcC1wcm9kdWN0X19jb3ZlciArIC5hcHAtcHJvZHVjdF9faGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXByb2R1Y3RfX2hlYWRlciB7XG4gICAgbWFyZ2luOiA1cmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmFwcC1wcm9kdWN0X19jb3ZlciArIC5hcHAtcHJvZHVjdF9faGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzLjVyZW07XG4gIH1cbn1cblxuLmFwcC1wcm9kdWN0X19oZWFkZXItaW5uZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcHJvZHVjdF9faGVhZGVyLWlubmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19oZWFkZXItaW5uZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19oZWFkZXItaW5uZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cblxuLmFwcC1wcm9kdWN0X19uYW1lZ3JvdXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fbmFtZWdyb3VwIHtcbiAgICBtYXJnaW46IDAgYXV0byAwLjVyZW0gYXV0bztcbiAgfVxuICAuYXBwLXByb2R1Y3RfX25hbWVncm91cC4tY292ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RfX25hbWVncm91cCB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMCBhdXRvO1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fbmFtZWdyb3VwLi1jb3ZlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19uYW1lZ3JvdXAge1xuICAgIG1hcmdpbjogMCBhdXRvIDAgYXV0bztcbiAgfVxuICAuYXBwLXByb2R1Y3RfX25hbWVncm91cC4tY292ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDQuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19uYW1lZ3JvdXAuLWNvdmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICB9XG59XG5cbi5hcHAtcHJvZHVjdF9fYnJhbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4uYXBwLXByb2R1Y3RfX2JyYW5kID4gYSB7XG4gIGNvbG9yOiAjY2NjO1xufVxuLmFwcC1wcm9kdWN0X19icmFuZCA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xufVxuXG4uYXBwLXByb2R1Y3RfX25hbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RfX25hbWUge1xuICAgIG1hcmdpbjogMC4zNXJlbSBhdXRvIDAgYXV0bztcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19uYW1lIHtcbiAgICBtYXJnaW46IDAuNXJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMi42NXJlbTtcbiAgfVxufVxuXG4uYXBwLXByb2R1Y3RfX25hbWUtYXBwZW5kaXgge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fbmFtZS1hcHBlbmRpeCB7XG4gICAgbWFyZ2luOiAwLjVyZW0gMCAwIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19uYW1lLWFwcGVuZGl4IHtcbiAgICBtYXJnaW46IDAuNXJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8qIEBlbmQgZ3JvdXAgaGVhZGVyICovXG4vKiBAZ3JvdXAgbmF2ICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3QtbmF2IHtcbiAgICBtYXJnaW46IDJyZW0gMCAwIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuYXBwLXByb2R1Y3QtbmF2IC5hcHAtc2hhcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvIDJyZW0gYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcHJvZHVjdC1uYXYge1xuICAgIG1hcmdpbjogM3JlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwIDAgM3JlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG4gIC5hcHAtcHJvZHVjdC1uYXYgLmFwcC1zaGFyZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG8gMnJlbSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RfX21lbnUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19tZW51IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19tZW51IHtcbiAgICBtYXJnaW46IDAuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmFwcC1wcm9kdWN0X19tZW51LS1jYXRhbG9nIGEge1xuICBjb2xvcjogd2hpdGU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RfX21lbnUtLWNhdGFsb2cgYTphY3RpdmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXByb2R1Y3RfX21lbnUtLWNhdGFsb2cgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICMzYTNhM2E7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fbWVudS0tY2F0YWxvZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvYmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIH1cbiAgLmFwcC1wcm9kdWN0X19tZW51LS1jYXRhbG9nID4gbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuYXBwLXByb2R1Y3RfX21lbnUtLWNhdGFsb2cgPiBsaTpudGgtY2hpbGQoMm4rMSk6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuYXBwLXByb2R1Y3RfX21lbnUtLWNhdGFsb2cgPiBsaTpudGgtY2hpbGQoMm4pIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cbiAgLmFwcC1wcm9kdWN0X19tZW51LS1jYXRhbG9nID4gbGk6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fbWVudS0tY2F0YWxvZyA+IGxpIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjg1cmVtO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fbWVudS0tY2F0YWxvZyA+IGxpIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fbWVudS0tY2F0YWxvZyA+IGxpLmlzLWFjdGl2ZSBhIHtcbiAgICBjb2xvcjogIzY2NjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19tZW51LS1jYXRhbG9nIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuYXBwLXByb2R1Y3RfX21lbnUtLWNhdGFsb2c6OmJlZm9yZSwgLmFwcC1wcm9kdWN0X19tZW51LS1jYXRhbG9nOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAuYXBwLXByb2R1Y3RfX21lbnUtLWNhdGFsb2c6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAuYXBwLXByb2R1Y3RfX21lbnUtLWNhdGFsb2c6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbiAgLmFwcC1wcm9kdWN0X19tZW51LS1jYXRhbG9nOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxuICAuYXBwLXByb2R1Y3RfX21lbnUtLWNhdGFsb2cgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAxLjVyZW0gMCAwO1xuICAgIHBhZGRpbmc6IDAuNnJlbSAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIH1cbiAgLmFwcC1wcm9kdWN0X19tZW51LS1jYXRhbG9nID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fbWVudS0tY2F0YWxvZyA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmFwcC1wcm9kdWN0X19tZW51LS1jYXRhbG9nID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICM3YzdjN2M7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fbWVudS0tY2F0YWxvZyB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIG5hdiAqL1xuLyogQGdyb3VwIGJvZHkgKi9cbi5hcHAtcHJvZHVjdF9fY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19jb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19jb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fY29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtY2hhcHRlci1pbmRleCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1jaGFwdGVyLWluZGV4IHtcbiAgICBtYXJnaW46IDAgYXV0byAzcmVtIGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5hcHAtY2hhcHRlci1pbmRleDo6YmVmb3JlLCAuYXBwLWNoYXB0ZXItaW5kZXg6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5hcHAtY2hhcHRlci1pbmRleDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5hcHAtY2hhcHRlci1pbmRleCA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCA0MnB4IDAgMDtcbiAgICBwYWRkaW5nOiAzcHggMDtcbiAgfVxuICAuYXBwLWNoYXB0ZXItaW5kZXggPiBsaTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogLTIycHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0ZDRkNGQ7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTVkZWcpIHRyYW5zbGF0ZVkoLTJweCk7XG4gIH1cbiAgLmFwcC1jaGFwdGVyLWluZGV4ID4gbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYXBwLWNoYXB0ZXItaW5kZXggPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjOWY5ZjlmO1xuICB9XG4gIC5hcHAtY2hhcHRlci1pbmRleCA+IGxpID4gYTpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG59XG5cbi8qIEBncm91cCB0YWJwYW5lbCAqL1xuLmFwcC1wcm9kdWN0X19wYW5lbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYXBwLXByb2R1Y3RfX3BhbmVsW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19wYW5lbF9fdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBmb250LXNpemU6IDEuMzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19wYW5lbF9fdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIHRhYnBhbmVsICovXG4vKiBAZW5kIGdyb3VwIGJvZHkgKi9cbi8qIEBncm91cCBiYW5uZXIgKi9cbi5hcHAtcHJvZHVjdF9fZm9vdGVyIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiAxMjByZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXByb2R1Y3RfX2Zvb3RlciB7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fZm9vdGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fZm9vdGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdF9fZm9vdGVyX19oZWFkaW5nIHtcbiAgICBtYXJnaW46IDIuNXJlbSAwIDEuNzVyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fZm9vdGVyX19oZWFkaW5nOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAycmVtIDAgMCAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXByb2R1Y3RfX2Zvb3Rlcl9faGVhZGluZyB7XG4gICAgbWFyZ2luOiAyLjVyZW0gMCAyLjVyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgZm9udC1zaXplOiAxLjU1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG4gIC5hcHAtcHJvZHVjdF9fZm9vdGVyX19oZWFkaW5nOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMCAwIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIH1cbn1cblxuLmFwcC1wcm9kdWN0X19iYW5uZXJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19iYW5uZXJzIHtcbiAgICBtYXJnaW46IDAgLTcuNXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXByb2R1Y3RfX2Jhbm5lcnMge1xuICAgIG1hcmdpbjogMCAtMTVweDtcbiAgfVxufVxuXG4uYXBwLXByb2R1Y3RfX2Jhbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLmFwcC1wcm9kdWN0X19iYW5uZXIgPiBpbWcge1xuICBtYXJnaW46IDAgMCAwLjVyZW0gMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYXBwLXByb2R1Y3RfX2Jhbm5lcjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5hcHAtcHJvZHVjdF9fYmFubmVyOmhvdmVyID4gc3BhbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19iYW5uZXIge1xuICAgIHBhZGRpbmc6IDAgNy41cHg7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19iYW5uZXIge1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB3aWR0aDogMzMuMzMzJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0X19iYW5uZXIge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cblxuLyogQGVuZCBncm91cCBiYW5uZXIgKi9cbi8qIEBncm91cCBwcmljZSAqL1xuLmFwcC1wcm9kdWN0LXByaWNlX19waG90byB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5hcHAtcHJvZHVjdC1wcmljZV9fbmFtZSB7XG4gIG1hcmdpbjogMCAwIDEuMjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYXBwLXByb2R1Y3QtcHJpY2VfX3RhZyB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5hcHAtcHJvZHVjdC1wcmljZV9fZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5hcHAtcHJvZHVjdC1wcmljZV9fc3RvcmVzIHtcbiAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uYXBwLXByb2R1Y3QtcHJpY2VfX3N0b3JlcyA+IGR0IHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI2ZjNjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi5hcHAtcHJvZHVjdC1wcmljZV9fc3RvcmVzID4gZGQgPiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLmFwcC1wcm9kdWN0LXByaWNlX19zdG9yZXMgPiBkZCA+IHVsIGEge1xuICBjb2xvcjogd2hpdGU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3QtcHJpY2VfX3N0b3JlcyA+IGRkID4gdWwgYTphY3RpdmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXByb2R1Y3QtcHJpY2VfX3N0b3JlcyA+IGRkID4gdWwgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICMzYTNhM2E7XG4gIH1cbn1cbi5hcHAtcHJvZHVjdC1wcmljZV9fc3RvcmVzID4gZGQgPiB1bCA+IGxpIHtcbiAgbWFyZ2luOiAwLjdyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDAgMCAwIDE4cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvYXJyb3cucG5nKSBuby1yZXBlYXQgMCA1MCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdC1wcmljZSB7XG4gICAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDJyZW0gMCAwIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3QtcHJpY2Uge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgMnJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG4gIC5hcHAtcHJvZHVjdC1wcmljZTo6YmVmb3JlLCAuYXBwLXByb2R1Y3QtcHJpY2U6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5hcHAtcHJvZHVjdC1wcmljZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5hcHAtcHJvZHVjdC1wcmljZTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbiAgLmFwcC1wcm9kdWN0LXByaWNlX19uYW1lIHtcbiAgICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgfVxuICAuYXBwLXByb2R1Y3QtcHJpY2VfX3ByaWNlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5hcHAtcHJvZHVjdC1wcmljZV9fc3RvcmVzIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0LXByaWNlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIDAgM3JlbSAwO1xuICAgIHBhZGRpbmc6IDAgMCAzcmVtIDMwMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDE1MnB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG4gIC5hcHAtcHJvZHVjdC1wcmljZTo6YmVmb3JlLCAuYXBwLXByb2R1Y3QtcHJpY2U6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5hcHAtcHJvZHVjdC1wcmljZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5hcHAtcHJvZHVjdC1wcmljZTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbiAgLmFwcC1wcm9kdWN0LXByaWNlX19waG90byB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyNzBweDtcbiAgfVxuICAuYXBwLXByb2R1Y3QtcHJpY2VfX3Bob3RvID4gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYXBwLXByb2R1Y3QtcHJpY2VfX25hbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuLyogQGVuZCBncm91cCBwcmljZSAqL1xuLmFwcC1wcm9kdWN0X19kZWFscyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmFwcC1wcm9kdWN0X19jb3ZlciArIC5hcHAtcHJvZHVjdF9fZGVhbHMge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgbWF4LXdpZHRoOiAxOTIwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLmFwcC1wcm9kdWN0X19jb3ZlciArIC5hcHAtcHJvZHVjdF9fZGVhbHMge1xuICAgIHBhZGRpbmc6IDAgNDJweDtcbiAgfVxufVxuLmFwcC1wcm9kdWN0X19kZWFscyA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjc1cmVtIDE1cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogIzMzYWNmNTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDEuMTI0cmVtO1xufVxuLmFwcC1wcm9kdWN0X19kZWFscyA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMGE4NmQxO1xufVxuLmFwcC1wcm9kdWN0X19kZWFscyA+IGEgPiBzcGFuIHtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL3JpYmJvbi5wbmcpIG5vLXJlcGVhdCAwIDUwJTtcbn1cbi5hcHAtcHJvZHVjdF9fZGVhbHMgPiB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXgtd2lkdGg6IDE5MjBweDtcbn1cbi5hcHAtcHJvZHVjdF9fZGVhbHMgPiB1bCA+IGxpIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogNTAlO1xufVxuLmFwcC1wcm9kdWN0X19kZWFscyA+IHVsID4gbGkgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41cmVtIDE1cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmFwcC1wcm9kdWN0SW5kZXgge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcHJvZHVjdEluZGV4IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cblxuLmFwcC1wcm9kdWN0SW5kZXgtYmxvY2sge1xuICBtYXJnaW46IDA7XG59XG4uYXBwLXByb2R1Y3RJbmRleC1ibG9jazpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RJbmRleC1ibG9jayB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gICAgcGFkZGluZzogM3JlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgtYmxvY2sge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xuICAgIHBhZGRpbmc6IDRyZW0gMCAxcmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtcHJvZHVjdEluZGV4LWJsb2NrIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzRmNGY0ZjtcbiAgICBwYWRkaW5nOiA0LjVyZW0gMCAycmVtIDA7XG4gIH1cbn1cbi5hcHAtcHJvZHVjdEluZGV4LWJsb2NrX190aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RJbmRleC1ibG9ja19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW46IDAgMCAxLjc1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtcHJvZHVjdEluZGV4LWJsb2NrX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgtYmxvY2tfX3RpdGxlIHtcbiAgICBtYXJnaW46IDAgMCA0cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgtYmxvY2tfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIG1hcmdpbjogMCAwIDQuNXJlbSAwO1xuICB9XG59XG5cbi5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3JpZXMge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgtY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luOiAwIC0xNXB4O1xuICB9XG59XG5cbi5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3J5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgtY2F0ZWdvcnkge1xuICAgIHBhZGRpbmc6IDAgOHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXByb2R1Y3RJbmRleC1jYXRlZ29yeSB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RJbmRleC1jYXRlZ29yeSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3J5IHtcbiAgICB3aWR0aDogMzMuMzMzJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgtY2F0ZWdvcnkge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmFwcC1wcm9kdWN0SW5kZXgtY2F0ZWdvcnkge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3J5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXByb2R1Y3RJbmRleC1jYXRlZ29yeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxufVxuLmFwcC1wcm9kdWN0SW5kZXgtY2F0ZWdvcnkgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXByb2R1Y3RJbmRleC1jYXRlZ29yeSA+IGEge1xuICAgIG1hcmdpbjogMCAwIDFweCAwO1xuICAgIHBhZGRpbmc6IDE0cHggMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2JnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICB9XG59XG4uYXBwLXByb2R1Y3RJbmRleC1jYXRlZ29yeSA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYXBwLXByb2R1Y3RJbmRleC1jYXRlZ29yeSA+IGE6aG92ZXIgLmFwcC1wcm9kdWN0SW5kZXgtY2F0ZWdvcnlfX25hbWUge1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3J5X19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDAuOXJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMCA1Ni4yNSUgMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICAuYXBwLXByb2R1Y3RJbmRleC1jYXRlZ29yeV9faW1hZ2UgPiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXByb2R1Y3RJbmRleC1jYXRlZ29yeV9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMCAwIDU2LjI1JSAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG4gIC5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3J5X19pbWFnZSA+IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3J5X19pbWFnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1zZWFyY2gge1xuICAgIG1hcmdpbjogM3JlbSAwIDMuNXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zZWFyY2gge1xuICAgIG1hcmdpbjogNXJlbSAwIDNyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zZWFyY2gge1xuICAgIG1hcmdpbjogN3JlbSAwIDVyZW0gMDtcbiAgfVxufVxuLmFwcC1zZWFyY2hfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtc2VhcmNoX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zZWFyY2hfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXNlYXJjaF9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG59XG4uYXBwLXNlYXJjaF9fbm90Zm91bmQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYXBwLXNlYXJjaF9fZm9ybSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMjByZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXNlYXJjaF9fZm9ybS4taW5kZXgge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtc2VhcmNoX19mb3JtLi1pbmRleCB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXNlYXJjaF9fZm9ybS4taW5kZXgge1xuICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDMuNXJlbTtcbiAgfVxufVxuXG4uYXBwLXNlYXJjaC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xuICBiYWNrZ3JvdW5kOiAjMjMyMzIzO1xufVxuLmFwcC1zZWFyY2gtZm9ybV9faW5wdXQge1xuICBmbGV4OiAxO1xufVxuLmFwcC1zZWFyY2gtZm9ybV9faW5wdXQgbGFiZWwge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuLmFwcC1zZWFyY2gtZm9ybSBpbnB1dFt0eXBlPXNlYXJjaF0sXG4uYXBwLXNlYXJjaC1mb3JtIGlucHV0W3R5cGU9dGV4dF0ge1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4uYXBwLXNlYXJjaC1mb3JtID4gaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIHBhZGRpbmc6IDAuNnJlbSAwLjc1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5hcHAtc2VhcmNoLWZvcm0gPiBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBvdXRsaW5lOiAwO1xufVxuLmFwcC1zZWFyY2gtZm9ybSA+IGlucHV0W3R5cGU9c3VibWl0XSwgLmFwcC1zZWFyY2gtZm9ybSA+IGlucHV0W3R5cGU9c3VibWl0XS5kaXNhYmxlZCwgLmFwcC1zZWFyY2gtZm9ybSA+IGlucHV0W3R5cGU9c3VibWl0XVtkaXNhYmxlZF0sIC5hcHAtc2VhcmNoLWZvcm0gPiBpbnB1dFt0eXBlPXN1Ym1pdF0uZGlzYWJsZWQ6aG92ZXIsIC5hcHAtc2VhcmNoLWZvcm0gPiBpbnB1dFt0eXBlPXN1Ym1pdF1bZGlzYWJsZWRdOmhvdmVyLCAuYXBwLXNlYXJjaC1mb3JtID4gaW5wdXRbdHlwZT1zdWJtaXRdLmRpc2FibGVkOmZvY3VzLCAuYXBwLXNlYXJjaC1mb3JtID4gaW5wdXRbdHlwZT1zdWJtaXRdW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmFwcC1zZWFyY2gtZm9ybSA+IGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciwgLmFwcC1zZWFyY2gtZm9ybSA+IGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZjRmNGY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uc3RvcmUge1xuICBtYXgtd2lkdGg6IDE5MjBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZSB7XG4gICAgbWFyZ2luOiAzcmVtIGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZSB7XG4gICAgbWFyZ2luOiAzcmVtIGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9yZSB7XG4gICAgbWFyZ2luOiA1cmVtIGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZSB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc3RvcmUge1xuICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc3RvcmUge1xuICAgIHBhZGRpbmc6IDAgNzBweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtaGVhZGVyIHtcbiAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uc3RvcmUtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS10aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9yZS10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5zdG9yZS10aXRsZSA+IHNtYWxsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMC4zcmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjZDlkOWQ5O1xufVxuLnN0b3JlLXRpdGxlID4gYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnN0b3JlLXRpdGxlID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5zdG9yZS10aXRsZSA+IGEgPiBzcGFuIHtcbiAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5zdG9yZS1oZWFkZXJfX21lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5zdG9yZS1oZWFkZXJfX21lbnUgPiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5zdG9yZS1oZWFkZXJfX21lbnUgPiBsaSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5zdG9yZS1oZWFkZXJfX21lbnUgPiBsaSA+IGE6aG92ZXIge1xuICBjb2xvcjogI2IyYjJiMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1oZWFkZXJfX21lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2JnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG4gIC5zdG9yZS1oZWFkZXJfX21lbnUgPiBsaSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzJkMmQyZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnN0b3JlLWhlYWRlcl9fbWVudSA+IGxpOm50aC1jaGlsZCgxbisxKTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmQyZDJkO1xuICB9XG4gIC5zdG9yZS1oZWFkZXJfX21lbnUgPiBsaTpudGgtY2hpbGQoMW4pIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cbiAgLnN0b3JlLWhlYWRlcl9fbWVudSA+IGxpOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICAuc3RvcmUtaGVhZGVyX19tZW51ID4gbGkgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuODVyZW07XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbiAgLnN0b3JlLWhlYWRlcl9fbWVudSA+IGxpIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICB9XG4gIC5zdG9yZS1oZWFkZXJfX21lbnUgPiBsaS5pcy1hY3RpdmUgYSB7XG4gICAgY29sb3I6ICM2NjY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1oZWFkZXJfX21lbnUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICB9XG4gIC5zdG9yZS1oZWFkZXJfX21lbnUgPiBsaSB7XG4gICAgcGFkZGluZzogMCAwLjVyZW07XG4gIH1cbn1cblxuLnN0b3JlLXByb2R1Y3QtbGlzdC0tc3RvcmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0LWxpc3QtLXN0b3JlIHtcbiAgICBtYXJnaW46IDAgLThweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3QtbGlzdC0tc3RvcmUge1xuICAgIG1hcmdpbjogMCAtMTVweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtcHJvZHVjdC1jYXRlZ29yaWVzIHtcbiAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3QtY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luOiAwIDAgM3JlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5zdG9yZS1wcm9kdWN0LWNhdGVnb3JpZXMgPiB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLnN0b3JlLXByb2R1Y3QtY2F0ZWdvcmllcyA+IHVsID4gbGkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMXJlbSAwLjc1cmVtIDFyZW07XG59XG4uc3RvcmUtcHJvZHVjdC1jYXRlZ29yaWVzID4gdWwgPiBsaSA+IGEge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjZGZkZmRmO1xufVxuLnN0b3JlLXByb2R1Y3QtY2F0ZWdvcmllcyA+IHVsID4gbGkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzNhM2EzYTtcbn1cbi5zdG9yZS1wcm9kdWN0LWNhdGVnb3JpZXMgPiB1bCA+IGxpLmFjdGl2ZSA+IGEge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG5cbi5zdG9yZS1wcm9kdWN0OjpiZWZvcmUsIC5zdG9yZS1wcm9kdWN0OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4uc3RvcmUtcHJvZHVjdDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45OTg3NWVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0IHtcbiAgICBtYXgtd2lkdGg6IDEyODBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuc3RvcmUtcHJvZHVjdCB7XG4gICAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0IHtcbiAgICBtYXJnaW46IDJyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3Qge1xuICAgIG1hcmdpbjogM3JlbSBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvcmUtcHJvZHVjdCB7XG4gICAgbWFyZ2luOiA2cmVtIGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0IHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0IHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3Qge1xuICAgIHBhZGRpbmc6IDAgNzBweDtcbiAgfVxufVxuXG4uc3RvcmUtcHJvZHVjdC1oZWFkZXIge1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0LWhlYWRlcl9fYnJhbmQge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0LWhlYWRlcl9fYnJhbmQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtcHJvZHVjdC1oZWFkZXJfX25hbWUge1xuICAgIG1hcmdpbjogMC4yNXJlbSAwIDAgMDtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3QtaGVhZGVyX19uYW1lIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gMCAwIDA7XG4gICAgZm9udC1zaXplOiAyLjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3QtaGVhZGVyX19uYW1lIHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtcHJvZHVjdC1oZWFkZXJfX2xlYWQge1xuICAgIG1hcmdpbjogMC41cmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0LWhlYWRlcl9fbGVhZCB7XG4gICAgbWFyZ2luOiAwLjc1cmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvcmUtcHJvZHVjdC1oZWFkZXJfX2xlYWQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvcmUtcHJvZHVjdC1zZWN0aW9uOjpiZWZvcmUsIC5zdG9yZS1wcm9kdWN0LXNlY3Rpb246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5zdG9yZS1wcm9kdWN0LXNlY3Rpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtcHJvZHVjdC1zZWN0aW9uX19tYWluIHtcbiAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc3RvcmUtcHJvZHVjdC1zZWN0aW9uX19tYWluIHtcbiAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0LXNlY3Rpb25fX21haW4ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA2NyU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgNDJweCAwIDA7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3Qtc2VjdGlvbl9fc3ViIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDMzJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc3RvcmUtcHJvZHVjdF9fcGhvdG9zID4gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3QtZm9ybV9fYnV5bm93IHtcbiAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0LWZvcm1fX2J1eW5vdyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDJyZW0gMCAwIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG59XG5cbi5zdG9yZS1wcm9kdWN0X19wcmljZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnN0b3JlLXByb2R1Y3RfX3ByaWNlID4gc21hbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uc3RvcmUtcHJvZHVjdF9fc29sZG91dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuc3RvcmUtcHJvZHVjdF9fc29sZG91dCB7XG4gIG91dGxpbmU6IDA7XG59XG4uc3RvcmUtcHJvZHVjdF9fc29sZG91dCwgLnN0b3JlLXByb2R1Y3RfX3NvbGRvdXQuZGlzYWJsZWQsIC5zdG9yZS1wcm9kdWN0X19zb2xkb3V0W2Rpc2FibGVkXSwgLnN0b3JlLXByb2R1Y3RfX3NvbGRvdXQuZGlzYWJsZWQ6aG92ZXIsIC5zdG9yZS1wcm9kdWN0X19zb2xkb3V0W2Rpc2FibGVkXTpob3ZlciwgLnN0b3JlLXByb2R1Y3RfX3NvbGRvdXQuZGlzYWJsZWQ6Zm9jdXMsIC5zdG9yZS1wcm9kdWN0X19zb2xkb3V0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk5ZTg7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnN0b3JlLXByb2R1Y3RfX3NvbGRvdXQ6aG92ZXIsIC5zdG9yZS1wcm9kdWN0X19zb2xkb3V0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE1ODNjYztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zdG9yZS1wcm9kdWN0LWRldGFpbCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3QtZGV0YWlsIHtcbiAgICBwYWRkaW5nOiAycmVtIDAgMCAwO1xuICB9XG59XG4uc3RvcmUtcHJvZHVjdC1kZXRhaWwgPiBoMiB7XG4gIG1hcmdpbjogMnJlbSAwIDEuNXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cbi5zdG9yZS1wcm9kdWN0LWRldGFpbCA+IGgyOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3Qtbm90YXRpb24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxLjNyZW0gMS41cmVtO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvYmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG4gIH1cbiAgLnN0b3JlLXByb2R1Y3Qtbm90YXRpb24gPiBoMiB7XG4gICAgbWFyZ2luOiAxLjVyZW0gMCAwLjc1cmVtIDA7XG4gICAgcGFkZGluZzogMS41cmVtIDAgMCAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG4gIC5zdG9yZS1wcm9kdWN0LW5vdGF0aW9uID4gaDI6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICAuc3RvcmUtcHJvZHVjdC1ub3RhdGlvbiA+ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b3JlLXByb2R1Y3Qtbm90YXRpb24gPiBoMiB7XG4gICAgbWFyZ2luOiAycmVtIDAgMC43NXJlbSAwO1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwIDAgMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzRmNGY0ZjtcbiAgfVxuICAuc3RvcmUtcHJvZHVjdC1ub3RhdGlvbiA+IGgyOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5zdG9yZS11cGdyYWRlLXRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG4uc3RvcmUtdXBncmFkZS10YWJsZSA+IHRib2R5IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uL2ltZy9iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcbn1cbi5zdG9yZS11cGdyYWRlLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLCAuc3RvcmUtdXBncmFkZS10YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtdXBncmFkZS10YWJsZSA+IHRib2R5ID4gdHIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzRmNGY0ZjtcbiAgfVxuICAuc3RvcmUtdXBncmFkZS10YWJsZSA+IHRib2R5ID4gdHIgPiB0aCwgLnN0b3JlLXVwZ3JhZGUtdGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLXVwZ3JhZGUtdGFibGUgPiB0Ym9keSA+IHRyID4gdGgsIC5zdG9yZS11cGdyYWRlLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIH1cbn1cbi5zdG9yZS11cGdyYWRlLXRhYmxlID4gdGZvb3QgdGgsIC5zdG9yZS11cGdyYWRlLXRhYmxlID4gdGZvb3QgdGQge1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvYmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG4gIGZvbnQtc2l6ZTogODcuNSU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBjb2xvcjogIzdjN2M3Yztcbn1cblxuLnN0b3JlLXVwZ3JhZGUtdGFibGVfX2l0ZW0tbmFtZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS11cGdyYWRlLXRhYmxlX19pdGVtLW5hbWUge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc3RvcmUtdXBncmFkZS10YWJsZV9faXRlbS1uYW1lLXN1ZmZpeCB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBjb2xvcjogIzk5OTtcbn1cblxuLnN0b3JlLXVwZ3JhZGUtdGFibGVfX2l0ZW0tZGVzY3JpcHRpb24ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zdG9yZS11cGdyYWRlLXRhYmxlX19pdGVtLXByaWNlIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtdXBncmFkZS10YWJsZV9faXRlbS1wcmljZSB7XG4gICAgcGFkZGluZzogMCAxcmVtIDAuNzVyZW0gMXJlbTtcbiAgfVxufVxuLnN0b3JlLXVwZ3JhZGUtdGFibGVfX2l0ZW0tYnV5IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtdXBncmFkZS10YWJsZV9faXRlbS1idXkge1xuICAgIHBhZGRpbmc6IDAgMXJlbSAwLjc1cmVtIDFyZW07XG4gIH1cbn1cbi5zdG9yZS11cGdyYWRlLXRhYmxlX19pdGVtLWJ1eSA+IGZvcm0gPiAuYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnN0b3JlLXVwZ3JhZGUtbm90YXRpb24ge1xuICBwYWRkaW5nOiAycmVtIDEuNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3YzdjN2M7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtdXBncmFkZS1ub3RhdGlvbiB7XG4gICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnN0b3JlLXVwZ3JhZGUtbm90YXRpb24ge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b3JlLXVwZ3JhZGUtbm90YXRpb24ge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLnN0b3JlLXVwZ3JhZGUtbm90YXRpb24gPiBoMiB7XG4gIG1hcmdpbjogMCAwIDEuMjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5zdG9yZS11cGdyYWRlLW5vdGF0aW9uID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnN0b3JlLXNpZ25pbi1mb3JtIHtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uc3RvcmUtc2lnbmluLWZvcm0gPiAuc3RvcmUtc2lnbmluLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zdG9yZS1zaWduaW4tZm9ybSA+IC5zdG9yZS1zaWduaW4taW5wdXQgPiBsYWJlbCB7XG4gIGNvbG9yOiAjZGZkZmRmO1xufVxuLnN0b3JlLXNpZ25pbi1mb3JtID4gLnN0b3JlLXNpZ25pbi1pbnB1dCA+IGlucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zdG9yZS1zaWduaW4tZm9ybSA+IC5zdG9yZS1zaWduaW4taW5wdXQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtc2lnbmluLWZvcm0gPiAuYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtc2lnbmluLWFsdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDEuNXJlbSAwIDAgMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1zaWduaW4tYWx0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMCAwIDdweDtcbiAgICBwYWRkaW5nOiA3cHggMTBweCA3cHggMTBweDtcbiAgfVxufVxuXG4uc3RvcmUtc2lnbmluX19lcnJvcnMge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgY29sb3I6ICNlYzU4NDA7XG59XG5cbi5zdG9yZS1jaGVja291dCB7XG4gIG1heC13aWR0aDogNzY4cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBtaW4taGVpZ2h0OiAzNjBweDtcbn1cblxuLnN0b3JlLWNoZWNrb3V0LXBheW1lbnQtY2Mge1xuICBtYXgtd2lkdGg6IDQyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3RvcmUtY2hlY2tvdXQtY29tcGxldGUge1xuICBtYXgtd2lkdGg6IDc2OHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0b3JlLWNoZWNrb3V0LWNvbXBsZXRlIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1jaGVja291dC1jb21wbGV0ZSB7XG4gICAgcGFkZGluZzogM3JlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvcmUtY2hlY2tvdXQtY29tcGxldGUge1xuICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICB9XG59XG5cbi5zdG9yZS1jaGVja291dC1vcHRpb25zIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnN0b3JlLWNoZWNrb3V0LW9wdGlvbnMgPiBwIHtcbiAgbWFyZ2luOiAwLjVyZW0gMCAwIDA7XG59XG4uc3RvcmUtY2hlY2tvdXQtb3B0aW9ucyBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjOTk5O1xufVxuLnN0b3JlLWNoZWNrb3V0LW9wdGlvbnMgc3BhbiArIGJyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0b3JlLWNoZWNrb3V0LWhlYWRlciB7XG4gICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc3RvcmUtY2hlY2tvdXQtaGVhZGVyIHtcbiAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIH1cbn1cblxuLnN0b3JlLWNoZWNrb3V0LWhlYWRlcl9fdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0b3JlLWNoZWNrb3V0LWhlYWRlcl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc3RvcmUtY2hlY2tvdXQtaGVhZGVyX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gIH1cbn1cblxuLnN0b3JlLWNoZWNrb3V0LWhlYWRlcl9fZGVzY3JpcHRpb24ge1xuICBtYXJnaW46IDAuNXJlbSAwIDAgMDtcbn1cblxuLnN0b3JlLWNvbmZpcm0tdGFibGUge1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0b3JlLWNvbmZpcm0tdGFibGUge1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWNvbmZpcm0tdGFibGUge1xuICAgIG1hcmdpbjogM3JlbSAwIDAgMDtcbiAgfVxufVxuLnN0b3JlLWNvbmZpcm0tdGFibGUgPiBjYXB0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAgMXJlbSAwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5zdG9yZS1jb25maXJtLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLFxuLnN0b3JlLWNvbmZpcm0tdGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLnN0b3JlLWNvbmZpcm0tdGFibGUgPiB0Ym9keSA+IHRyID4gdGgge1xuICBjb2xvcjogI2Q5ZDlkOTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1jb25maXJtLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMC43NXJlbSAwIDAuMjVyZW0gMDtcbiAgICB3aWR0aDogMTByZW07XG4gICAgZm9udC1zaXplOiA4Ny41JTtcbiAgICBjb2xvcjogIzdjN2M3YztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWNvbmZpcm0tdGFibGUgPiB0Ym9keSA+IHRyID4gdGgge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gICAgd2lkdGg6IDEycmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG59XG4uc3RvcmUtY29uZmlybS10YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1jb25maXJtLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDAuNzVyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzRmNGY0ZjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWNvbmZpcm0tdGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIH1cbn1cblxuLnN0b3JlLXJlbWlzZS1mb3JtIC5idXR0b24ge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uc3RvcmUtcHVyY2hhc2Uge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM3YzdjN2M7XG59XG5cbi5zdG9yZS1wdXJjaGFzZV9fcHJvZHVjdCB7XG4gIG1hcmdpbjogMDtcbn1cbi5zdG9yZS1wdXJjaGFzZV9fcHJvZHVjdCA+IGR0IHtcbiAgbWFyZ2luOiAwIDAgMC41cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4uc3RvcmUtcHVyY2hhc2VfX3Byb2R1Y3QgPiBkZCB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2JnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xufVxuXG4uc3RvcmUtcHJldmlldyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0ZjRmNGY7XG59XG4uc3RvcmUtcHJldmlldyBjYXB0aW9uIHtcbiAgbWFyZ2luOiAwIDAuN3JlbSAxcmVtIDAuN3JlbTtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cbi5zdG9yZS1wcmV2aWV3IHRyID4gdGgsXG4uc3RvcmUtcHJldmlldyB0ciA+IHRkIHtcbiAgcGFkZGluZzogMC43cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0ZjRmNGY7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xufVxuLnN0b3JlLXByZXZpZXcgdGgge1xuICB3aWR0aDogMTYwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvYmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG59XG5cbi5zdG9yZS1zaWdudXAtZm9ybSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMnJlbSAwIDAgMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0ZjRmNGY7XG59XG5cbi5zdG9yZS1jdXN0b21lciB7XG4gIG1heC13aWR0aDogNzY4cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtY3VzdG9tZXItbmF2IHtcbiAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWN1c3RvbWVyLW5hdiB7XG4gICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMCAxLjVyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzRmNGY0ZjtcbiAgfVxufVxuLnN0b3JlLWN1c3RvbWVyLW5hdiA+IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1jdXN0b21lci1uYXYgPiB1bCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvYmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIH1cbiAgLnN0b3JlLWN1c3RvbWVyLW5hdiA+IHVsID4gbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuc3RvcmUtY3VzdG9tZXItbmF2ID4gdWwgPiBsaTpudGgtY2hpbGQoMm4rMSk6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuc3RvcmUtY3VzdG9tZXItbmF2ID4gdWwgPiBsaTpudGgtY2hpbGQoMm4pIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cbiAgLnN0b3JlLWN1c3RvbWVyLW5hdiA+IHVsID4gbGk6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG4gIC5zdG9yZS1jdXN0b21lci1uYXYgPiB1bCA+IGxpIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjg1cmVtO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG4gIC5zdG9yZS1jdXN0b21lci1uYXYgPiB1bCA+IGxpIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICB9XG4gIC5zdG9yZS1jdXN0b21lci1uYXYgPiB1bCA+IGxpLmlzLWFjdGl2ZSBhIHtcbiAgICBjb2xvcjogIzY2NjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWN1c3RvbWVyLW5hdiA+IHVsID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICB9XG4gIC5zdG9yZS1jdXN0b21lci1uYXYgPiB1bCA+IGxpID4gYSB7XG4gICAgY29sb3I6ICNkZmRmZGY7XG4gIH1cbiAgLnN0b3JlLWN1c3RvbWVyLW5hdiA+IHVsID4gbGkgPiBhOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhM2EzYTtcbiAgfVxuICAuc3RvcmUtY3VzdG9tZXItbmF2ID4gdWwgPiBsaS5hY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhM2EzYTtcbiAgfVxufVxuXG4uc3RvcmUtcmVnaXN0ZXItbXlwcm9kdWN0IHtcbiAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zdG9yZS1teXByb2R1Y3Qge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzRmNGY0Zjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1teXByb2R1Y3Qge1xuICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMCAxLjVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLW15cHJvZHVjdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICB9XG59XG4uc3RvcmUtbXlwcm9kdWN0ID4gZGwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uc3RvcmUtbXlwcm9kdWN0ID4gZGw6OmJlZm9yZSwgLnN0b3JlLW15cHJvZHVjdCA+IGRsOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4uc3RvcmUtbXlwcm9kdWN0ID4gZGw6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtbXlwcm9kdWN0ID4gZGwgPiBkdCB7XG4gICAgbWFyZ2luOiAwLjc1cmVtIDAgMC4xMjVyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjN2M3YzdjO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbiAgLnN0b3JlLW15cHJvZHVjdCA+IGRsID4gZHQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLnN0b3JlLW15cHJvZHVjdCA+IGRsID4gZGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1teXByb2R1Y3QgPiBkbCA+IGR0IHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMC41cmVtIDAgMCAwO1xuICAgIHdpZHRoOiAyMiU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxuICAuc3RvcmUtbXlwcm9kdWN0ID4gZGwgPiBkZCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMCAwIDFyZW07XG4gICAgd2lkdGg6IDc4JTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB9XG59XG5cbi5zdG9yZS1teXByb2R1Y3RfX25hbWUge1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtbXlwcm9kdWN0X19uYW1lIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1teXByb2R1Y3RfX25hbWUge1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgfVxufVxuXG4uc3RvcmUtc3VydmV5LWl0ZW0ge1xuICBtYXJnaW46IDNyZW0gMCAxLjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zdG9yZS1zdXJ2ZXktaXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5zdG9yZS1zdXJ2ZXktaXRlbS1xdWVzdGlvbiB7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnN0b3JlLXN1cnZleS1pdGVtLW9wdGlvbnMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uc3RvcmUtc3VydmV5LWl0ZW0tb3B0aW9uczo6YmVmb3JlLCAuc3RvcmUtc3VydmV5LWl0ZW0tb3B0aW9uczo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLnN0b3JlLXN1cnZleS1pdGVtLW9wdGlvbnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc3RvcmUtc3VydmV5LWl0ZW0tb3B0aW9ucyA+IHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5zdG9yZS1zdXJ2ZXktaXRlbS1vcHRpb25zID4gdWwgPiBsaSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW0gMC41cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtc3VydmV5LWl0ZW0tb3B0aW9ucyA+IHVsID4gbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1zdXJ2ZXktaXRlbS1vcHRpb25zID4gdWwgPiBsaSB7XG4gICAgd2lkdGg6IDMzJTtcbiAgfVxufVxuLnN0b3JlLXN1cnZleS1pdGVtLW9wdGlvbnMgPiB1bCA+IGxpIGlucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zdG9yZS1zdXJ2ZXktaXRlbS1vcHRpb25zID4gdWwgPiBsaSA+IGxhYmVsIHtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnN0b3JlLW15cHJvZHVjdC1zdXBwb3J0aW5mby1oZWFkaW5nIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdG9yZS1teXByb2R1Y3Qtc3VwcG9ydGluZm8taGVhZGluZyB7XG4gICAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1teXByb2R1Y3Qtc3VwcG9ydGluZm8taGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbiAgLnN0b3JlLW15cHJvZHVjdC1zdXBwb3J0aW5mby1oZWFkaW5nICsgLnN0b3JlLW15cHJvZHVjdCB7XG4gICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gIH1cbn1cblxuLnN0b3JlLW15cHJvZHVjdC1zdXBwb3J0aW5mbyB7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMS41cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xufVxuLnN0b3JlLW15cHJvZHVjdC1zdXBwb3J0aW5mbyA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zdG9yZS1yZWdpc3Rlci1mb3JtIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycmVtIDAgMCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzRmNGY0Zjtcbn1cblxuLnN0b3JlLXNlbGVjdC1icmFuZHMtcHJvZHVjdHMgPiAuaGVscC10ZXh0IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnN0b3JlLXNlbGVjdC1icmFuZHMtcHJvZHVjdHNfYWx0aW5wdXQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjc1cmVtO1xufVxuXG4uc3RvcmUtYm9hcmQge1xuICBtYXgtd2lkdGg6IDM4MHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWJvYXJkIHtcbiAgICBtYXgtd2lkdGg6IDQxMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zdG9yZS1ib2FyZCB7XG4gICAgbWF4LXdpZHRoOiA0OTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0b3JlLWJvYXJkIHtcbiAgICBtYXJnaW46IDNyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWJvYXJkIHtcbiAgICBtYXJnaW46IDNyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b3JlLWJvYXJkIHtcbiAgICBtYXJnaW46IDVyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0b3JlLWJvYXJkIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdG9yZS1ib2FyZCB7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zdG9yZS1ib2FyZCB7XG4gICAgcGFkZGluZzogMCA3MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvcmUtYm9hcmQge1xuICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICB9XG59XG5cbi5zdG9yZS1ib2FyZF9faGVhZGVyIHtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3RvcmUtYWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc3RvcmUtYWQgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgY29sb3I6ICNkZmRmZGY7XG59XG4uc3RvcmUtYWQgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICNFQjlGMzc7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RvcmUtYWQgPiBhID4gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAwLjVyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0b3JlLWFkID4gYSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uL2ltZy9iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcbiAgfVxufVxuXG4uYXBwLXN1cHBvcnQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5hcHAtc3VwcG9ydDo6YmVmb3JlLCAuYXBwLXN1cHBvcnQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5hcHAtc3VwcG9ydDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtc3VwcG9ydCB7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc3VwcG9ydCB7XG4gICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuYXBwLXN1cHBvcnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtc3VwcG9ydCB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zdXBwb3J0IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDZyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc3VwcG9ydCB7XG4gICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA4cmVtO1xuICB9XG59XG4uYXBwLXN1cHBvcnQuaXMtZW50cnkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmFwcC1zdXBwb3J0X19oZWFkaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDAuNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnRfX2hlYWRpbmcge1xuICAgIG1hcmdpbjogMCAwIDEuMjVyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAuaXMtaW5kZXggLmFwcC1zdXBwb3J0X19oZWFkaW5nIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXN1cHBvcnRfX2hlYWRpbmcge1xuICAgIG1hcmdpbjogMCAzcmVtIDAgMDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuLmFwcC1zdXBwb3J0X19oZWFkaW5nID4gYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmFwcC1zdXBwb3J0X19oZWFkaW5nID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzYTNhM2E7XG59XG4uYXBwLXN1cHBvcnRfX21lbnUge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtc3VwcG9ydF9fbWVudSB7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc3VwcG9ydF9fbWVudSB7XG4gICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuYXBwLXN1cHBvcnRfX21lbnUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtc3VwcG9ydF9fbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG4gIC5pcy1pbmRleCAuYXBwLXN1cHBvcnRfX21lbnUge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxuICAuaXMtZW50cnkgLmFwcC1zdXBwb3J0X19tZW51IHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG4gIC5hcHAtc3VwcG9ydF9fbWVudSA+IHVsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMmQyZDJkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxuICAuYXBwLXN1cHBvcnRfX21lbnUgPiB1bCA+IGxpIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMyZDJkMmQ7XG4gIH1cbiAgLmFwcC1zdXBwb3J0X19tZW51ID4gdWwgPiBsaTpudGgtY2hpbGQoMm4rMSk6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuYXBwLXN1cHBvcnRfX21lbnUgPiB1bCA+IGxpOm50aC1jaGlsZCgybikge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuICAuYXBwLXN1cHBvcnRfX21lbnUgPiB1bCA+IGxpOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICAuYXBwLXN1cHBvcnRfX21lbnUgPiB1bCA+IGxpIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjg1cmVtO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG4gIC5hcHAtc3VwcG9ydF9fbWVudSA+IHVsID4gbGkgYTpob3ZlciB7XG4gICAgY29sb3I6ICNFQjlGMzc7XG4gIH1cbiAgLmFwcC1zdXBwb3J0X19tZW51ID4gdWwgPiBsaS5pcy1hY3RpdmUgYSB7XG4gICAgY29sb3I6ICM2NjY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnRfX21lbnUge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy41cmVtO1xuICB9XG4gIC5pcy1pbmRleCAuYXBwLXN1cHBvcnRfX21lbnUge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxuICAuaXMtZW50cnkgLmFwcC1zdXBwb3J0X19tZW51IHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG4gIC5hcHAtc3VwcG9ydF9fbWVudSA+IHVsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMmQyZDJkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxuICAuYXBwLXN1cHBvcnRfX21lbnUgPiB1bCA+IGxpIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuYXBwLXN1cHBvcnRfX21lbnUgPiB1bCA+IGxpOm50aC1jaGlsZCgzbisxKTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmQyZDJkO1xuICB9XG4gIC5hcHAtc3VwcG9ydF9fbWVudSA+IHVsID4gbGk6bnRoLWNoaWxkKDNuKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICB9XG4gIC5hcHAtc3VwcG9ydF9fbWVudSA+IHVsID4gbGk6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG4gIC5hcHAtc3VwcG9ydF9fbWVudSA+IHVsID4gbGkgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuODVyZW07XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbiAgLmFwcC1zdXBwb3J0X19tZW51ID4gdWwgPiBsaSBhOmhvdmVyIHtcbiAgICBjb2xvcjogI0VCOUYzNztcbiAgfVxuICAuYXBwLXN1cHBvcnRfX21lbnUgPiB1bCA+IGxpLmlzLWFjdGl2ZSBhIHtcbiAgICBjb2xvcjogIzY2NjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zdXBwb3J0X19tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tYm90dG9tOiA0LjVyZW07XG4gIH1cbiAgLmFwcC1zdXBwb3J0X19tZW51ID4gdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIH1cbiAgLmFwcC1zdXBwb3J0X19tZW51ID4gdWwgPiBsaSB7XG4gICAgbWFyZ2luOiAwIDIuNXJlbSAwIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuYXBwLXN1cHBvcnRfX21lbnUgPiB1bCA+IGxpID4gYSB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbiAgLmFwcC1zdXBwb3J0X19tZW51ID4gdWwgPiBsaSA+IGE6aG92ZXIge1xuICAgIGNvbG9yOiAjRUI5RjM3O1xuICB9XG4gIC5hcHAtc3VwcG9ydF9fbWVudSA+IHVsID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICM2NjY7XG4gIH1cbiAgLmFwcC1zdXBwb3J0X19tZW51ID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbi5hcHAtc3VwcG9ydF9fbWFpbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogMTAyNHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1zdXBwb3J0X19tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zdXBwb3J0X19tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5hcHAtc3VwcG9ydF9fbWFpbiB7XG4gICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgfVxufVxuLmFwcC1zdXBwb3J0X19mb3JtIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDI4cmVtO1xufVxuXG4vKiBAZ3JvdXAgbWVudSBkZWNvcmF0aW9uICovXG4vKiBAZW5kIGdyb3VwIG1lbnUgZGVjb3JhdGlvbiAqL1xuLmFwcC1zdXBwb3J0LWNhdGVnb3JpZXMgPiB1bCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2JnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi5hcHAtc3VwcG9ydC1jYXRlZ29yaWVzID4gdWwgPiBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC44NXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYXBwLXN1cHBvcnQtY2F0ZWdvcmllcyA+IHVsID4gbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xufVxuLmFwcC1zdXBwb3J0LWNhdGVnb3JpZXMgPiB1bCA+IGxpLmlzLWFjdGl2ZSBhIHtcbiAgY29sb3I6ICM2NjY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnQtY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICB9XG4gIC5hcHAtc3VwcG9ydC1jYXRlZ29yaWVzID4gdWwgPiBsaSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMmQyZDJkO1xuICB9XG4gIC5hcHAtc3VwcG9ydC1jYXRlZ29yaWVzID4gdWwgPiBsaTpudGgtY2hpbGQoMm4rMSk6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuYXBwLXN1cHBvcnQtY2F0ZWdvcmllcyA+IHVsID4gbGk6bnRoLWNoaWxkKDJuKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICB9XG4gIC5hcHAtc3VwcG9ydC1jYXRlZ29yaWVzID4gdWwgPiBsaTpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnQtY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIH1cbiAgLmFwcC1zdXBwb3J0LWNhdGVnb3JpZXMgPiB1bCA+IGxpIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzJkMmQyZDtcbiAgfVxuICAuYXBwLXN1cHBvcnQtY2F0ZWdvcmllcyA+IHVsID4gbGk6bnRoLWNoaWxkKDNuKzEpOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyZDJkMmQ7XG4gIH1cbiAgLmFwcC1zdXBwb3J0LWNhdGVnb3JpZXMgPiB1bCA+IGxpOm50aC1jaGlsZCgzbikge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuICAuYXBwLXN1cHBvcnQtY2F0ZWdvcmllcyA+IHVsID4gbGk6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXN1cHBvcnQtY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIH1cbiAgLmFwcC1zdXBwb3J0LWNhdGVnb3JpZXMgPiB1bCA+IGxpIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMyZDJkMmQ7XG4gIH1cbiAgLmFwcC1zdXBwb3J0LWNhdGVnb3JpZXMgPiB1bCA+IGxpOm50aC1jaGlsZCg0bisxKTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmQyZDJkO1xuICB9XG4gIC5hcHAtc3VwcG9ydC1jYXRlZ29yaWVzID4gdWwgPiBsaTpudGgtY2hpbGQoNG4pIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cbiAgLmFwcC1zdXBwb3J0LWNhdGVnb3JpZXMgPiB1bCA+IGxpOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uYXBwLXN1cHBvcnQtYXJ0aWNsZXMtbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5hcHAtc3VwcG9ydC1jYXRlZ29yaWVzICsgLmFwcC1zdXBwb3J0LWFydGljbGVzLWxpc3QgPiB1bCB7XG4gIGJvcmRlci10b3A6IDA7XG59XG4uYXBwLXN1cHBvcnQtYXJ0aWNsZXMtbGlzdCA+IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xufVxuLmFwcC1zdXBwb3J0LWFydGljbGVzLWxpc3QgPiB1bCA+IGxpIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzRmNGY0Zjtcbn1cbi5hcHAtc3VwcG9ydC1hcnRpY2xlcy1saXN0ID4gdWwgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC44cmVtIDAuNHJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYXBwLXN1cHBvcnQtYXJ0aWNsZXMtbGlzdCA+IHVsID4gbGkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuLmFwcC1zdXBwb3J0LWFydGljbGVzLWxpc3QgPiB1bCA+IGxpID4gYSA+IHNwYW4ge1xuICBtYXJnaW46IDAgMC4xMjVyZW07XG4gIGNvbG9yOiAjZDlkOWQ5O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5hcHAtc3VwcG9ydC1hcnRpY2xlcy1saXN0ID4gdWwgPiBsaS5pcy1pbXBvcnRhbnQgPiBhIHtcbiAgY29sb3I6ICNmYzY7XG59XG5cbi8qIEBncm91cCBjb250YWN0ICovXG4uYXBwLXN1cHBvcnQtZW50cnktd3JhcHBlci0tY29udGFjdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwIDNyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeS13cmFwcGVyLS1jb250YWN0IHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG59XG4uYXBwLXN1cHBvcnQtZW50cnktLWNvbnRhY3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIGh5cGhlbnM6IGF1dG87XG59XG4uYXBwLXN1cHBvcnQtZW50cnktLWNvbnRhY3Q6OmJlZm9yZSwgLmFwcC1zdXBwb3J0LWVudHJ5LS1jb250YWN0OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4uYXBwLXN1cHBvcnQtZW50cnktLWNvbnRhY3Q6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uYXBwLXN1cHBvcnQtZW50cnktLWNvbnRhY3QgOm5vdCgudmlkZW8tY29udGFpbmVyKTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4uYXBwLXN1cHBvcnQtZW50cnktLWNvbnRhY3QgaDEge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzRmNGY0Zjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeS0tY29udGFjdCBoMSB7XG4gICAgbWFyZ2luOiAzcmVtIDAgMS4zcmVtIDA7XG4gICAgcGFkZGluZzogMCAwIDFyZW0gMDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeS0tY29udGFjdCBoMSB7XG4gICAgbWFyZ2luOiA0cmVtIDAgMnJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMCAycmVtIDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBmb250LXNpemU6IDEuMzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuLmFwcC1zdXBwb3J0LWVudHJ5LS1jb250YWN0IGgxOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4uYXBwLXN1cHBvcnQtZW50cnktLWNvbnRhY3QgaDIge1xuICBtYXJnaW46IDJyZW0gMCAxLjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeS0tY29udGFjdCBoMiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnktLWNvbnRhY3QgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG4uYXBwLXN1cHBvcnQtZW50cnktLWNvbnRhY3QgcCB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5LS1jb250YWN0IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxLjlyZW07XG59XG5cbi8qIEBlbmQgZ3JvdXAgY29udGFjdCAqL1xuLmFwcC1zdXBwb3J0LWVudHJ5LWF0dHIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjOTk5O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zdXBwb3J0LWVudHJ5LWF0dHIge1xuICAgIG1hcmdpbjogMCAwIDAuNXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnktYXR0ciB7XG4gICAgbWFyZ2luOiAwIDAgMC4yNXJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMC40cmVtO1xuICB9XG59XG5cbi5hcHAtc3VwcG9ydC1lbnRyeS13cmFwcGVyIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzRmNGY0Zjtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeS10YXJnZXRzICsgLmFwcC1zdXBwb3J0LWVudHJ5LXdyYXBwZXIge1xuICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnktd3JhcHBlciB7XG4gICAgcGFkZGluZzogMnJlbSAwIDMuNXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnktd3JhcHBlciB7XG4gICAgcGFkZGluZzogMnJlbSAwLjRyZW0gNXJlbSAwLjRyZW07XG4gICAgbWluLWhlaWdodDogMThyZW07XG4gIH1cbn1cblxuLmFwcC1zdXBwb3J0LWVudHJ5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS43O1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5OjpiZWZvcmUsIC5hcHAtc3VwcG9ydC1lbnRyeTo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5ID4gOm5vdCgudmlkZW8tY29udGFpbmVyKTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnkgaDIge1xuICAgIG1hcmdpbjogMnJlbSAwIDEuM3JlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1zdXBwb3J0LWVudHJ5IGgyIHtcbiAgICBtYXJnaW46IDMuNXJlbSAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuLmFwcC1zdXBwb3J0LWVudHJ5IGgyOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSBoMyB7XG4gIG1hcmdpbjogMi41cmVtIDAgMS41cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnkgaDMge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1zdXBwb3J0LWVudHJ5IGgzIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSBoNCB7XG4gIG1hcmdpbjogMi41cmVtIDAgMS41cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnkgaDQge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeSBoNCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuLmFwcC1zdXBwb3J0LWVudHJ5IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDEuN3JlbTtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSBpbWcgKyBiciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYXBwLXN1cHBvcnQtZW50cnkgcCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG4uYXBwLXN1cHBvcnQtZW50cnkgcCA+IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSBibG9ja3F1b3RlIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMCAwIDEuNnJlbTtcbiAgcGFkZGluZzogMS41cmVtO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAsIDkwLCA5MCwgMC4xKTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBxdW90ZXM6IFwi4oCcXCIgXCLigJ1cIjtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSBibG9ja3F1b3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IG9wZW4tcXVvdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDIuNWVtO1xuICBsaW5lLWhlaWdodDogMC4xZW07XG4gIG1hcmdpbi1yaWdodDogMC4xMjVlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjNlbTtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSA+IGZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAxLjRyZW0gMDtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSA+IGZpZ3VyZSA+IGltZyB7XG4gIG1hcmdpbjogMDtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSA+IGZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMC43NXJlbSAwIDAuMjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFwcC1zdXBwb3J0LWVudHJ5ID4gZmlndXJlW3N0eWxlKj1cImZsb2F0OiByaWdodDtcIl0ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IDAuM3JlbSAwIDEuNHJlbSAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeSA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogbGVmdDtcIl0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMC4zcmVtIDEuMjVyZW0gMS40cmVtIDAgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFwcC1zdXBwb3J0LWVudHJ5ID4gZmlndXJlW3N0eWxlKj1cImZsb2F0OiByaWdodDtcIl0sIC5hcHAtc3VwcG9ydC1lbnRyeSA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogbGVmdDtcIl0ge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwLjNyZW0gYXV0byAxLjRyZW0gYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogNzAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zdXBwb3J0LWVudHJ5ID4gZmlndXJlW3N0eWxlKj1cImZsb2F0OiByaWdodDtcIl0sIC5hcHAtc3VwcG9ydC1lbnRyeSA+IGZpZ3VyZVtzdHlsZSo9XCJmbG9hdDogbGVmdDtcIl0ge1xuICAgIG1heC13aWR0aDogNDUlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnkgPiBmaWd1cmVbc3R5bGUqPVwiZmxvYXQ6IHJpZ2h0O1wiXSwgLmFwcC1zdXBwb3J0LWVudHJ5ID4gZmlndXJlW3N0eWxlKj1cImZsb2F0OiBsZWZ0O1wiXSB7XG4gICAgbWF4LXdpZHRoOiAzNyU7XG4gIH1cbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSA+IGZpZ3VyZVtzdHlsZSo9XCJtYXJnaW46IGF1dG87XCJdLCAuYXBwLXN1cHBvcnQtZW50cnkgPiBmaWd1cmVbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyO1wiXSB7XG4gIG1hcmdpbjogMC41cmVtIGF1dG8gMS40cmVtIGF1dG8gIWltcG9ydGFudDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeSA+IGZpZ3VyZVtzdHlsZSo9XCJtYXJnaW46IGF1dG87XCJdLCAuYXBwLXN1cHBvcnQtZW50cnkgPiBmaWd1cmVbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyO1wiXSB7XG4gICAgbWF4LXdpZHRoOiA3MCU7XG4gIH1cbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSBzdHJvbmcge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5IHN0cm9uZy5pcy1pbXBvcnRhbnQge1xuICBjb2xvcjogI2ZmMzM2NjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi5hcHAtc3VwcG9ydC1lbnRyeSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYXBwLXN1cHBvcnQtZW50cnkgdWwsXG4uYXBwLXN1cHBvcnQtZW50cnkgb2wge1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5IHVsID4gbGksXG4uYXBwLXN1cHBvcnQtZW50cnkgb2wgPiBsaSB7XG4gIG1hcmdpbjogMCAwIDAuNzVyZW0gMDtcbn1cblxuLmFwcC1zdXBwb3J0LWVudHJ5LXRhcmdldHMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNGY0ZjRmO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFwcC1zdXBwb3J0LWVudHJ5LXRhcmdldHMge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwLjRyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeS10YXJnZXRzIHtcbiAgICBwYWRkaW5nOiAycmVtIDAuNHJlbTtcbiAgfVxufVxuLmFwcC1zdXBwb3J0LWVudHJ5LXRhcmdldHMgPiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5LXRhcmdldHMgPiB1bCA+IGxpID4gYSB7XG4gIGNvbG9yOiAjY2NjO1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5LXRhcmdldHMgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xufVxuLmFwcC1zdXBwb3J0LWVudHJ5LXRhcmdldHMgPiB1bCA+IGxpIHNwYW4ge1xuICBtYXJnaW46IDAgMC4xMjVyZW07XG4gIGNvbG9yOiAjMzMzO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXBwLXN1cHBvcnQtaGVhZGVyIHtcbiAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc3VwcG9ydC1oZWFkZXIge1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgfVxuICAuaXMtZW50cnkgLmFwcC1zdXBwb3J0LWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuLmFwcC1zdXBwb3J0LWhlYWRlcl9fYmFjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAwLjI1cmVtIDA7XG4gIHBhZGRpbmc6IDAgMC40cmVtO1xufVxuLmFwcC1zdXBwb3J0LWhlYWRlcl9fYmFjayA+IGEge1xuICBjb2xvcjogI2Q5ZDlkOTtcbn1cbi5hcHAtc3VwcG9ydC1oZWFkZXJfX2JhY2sgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuLmFwcC1zdXBwb3J0LWhlYWRlcl9fdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcHAtc3VwcG9ydC1oZWFkZXJfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFwcC1zdXBwb3J0LWhlYWRlcl9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwIDAuNHJlbTtcbiAgfVxufVxuLmFwcC1zdXBwb3J0LWhlYWRlcl9fdGl0bGUgPiBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHdoaXRlO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5hcHAtc3VwcG9ydC1oZWFkZXJfX3RpdGxlID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5hcHAtc3VwcG9ydC1oZWFkZXJfX3RpdGxlIC5kaXZpZGVyIHtcbiAgbWFyZ2luOiAwIDAuMjVyZW07XG4gIGNvbG9yOiAjN2M3YzdjO1xufVxuLmFwcC1zdXBwb3J0LWhlYWRlcl9fZGVzY3JpcHRpb24ge1xuICBtYXJnaW46IDAuNXJlbSAwIDAgMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtc3VwcG9ydC1oZWFkZXJfX2Rlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMCAxcmVtO1xuICB9XG59XG4uYXBwLXN1cHBvcnQtaGVhZGVyX19jb250ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDAuMTI1cmVtIDA7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbi5hcHAtc3VwcG9ydC1lbnRyeS10YXJnZXRzX19oZWFkaW5nIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcHAtc3VwcG9ydC1lbnRyeS10YXJnZXRzX19oZWFkaW5nIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXBwLXN1cHBvcnQtZW50cnktdGFyZ2V0c19faGVhZGluZyB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cblxuLmFwcC1zdXBwb3J0LXByb2R1Y3RzIHtcbiAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7XG59XG4uYXBwLXN1cHBvcnQtcHJvZHVjdHMgPiBwIHtcbiAgcGFkZGluZzogMCAwLjRyZW07XG59XG4uYXBwLXN1cHBvcnQtcHJvZHVjdHMgPiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzRmNGY0Zjtcbn1cbi5hcHAtc3VwcG9ydC1wcm9kdWN0cyA+IHVsID4gbGkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGY0ZjRmO1xufVxuLmFwcC1zdXBwb3J0LXByb2R1Y3RzID4gdWwgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC44cmVtIDAuNHJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYXBwLXN1cHBvcnQtcHJvZHVjdHMgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5hcHAtc3VwcG9ydC1wcm9kdWN0cyA+IHVsID4gbGkgPiBhID4gc3BhbiB7XG4gIG1hcmdpbjogMCAwLjVyZW07XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKiBAZ3JvdXAgc2xpY2sgKi9cbi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uc2xpY2stbGlzdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uc2xpY2stbGlzdC5kcmFnZ2luZyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY3Vyc29yOiBoYW5kO1xufVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5zbGljay10cmFjazpiZWZvcmUsIC5zbGljay10cmFjazphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbltkaXI9cnRsXSAuc2xpY2stc2xpZGUge1xuICBmbG9hdDogcmlnaHQ7XG59XG4uc2xpY2stc2xpZGUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogU2xpZGVyICovXG4uc2xpY2stbG9hZGluZyAuc2xpY2stbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi4vaW1nL2FqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbn1cblxuLyogSWNvbnMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3NsaWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9zbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzNXB4O1xuICB3aWR0aDogMzVweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbi5zbGljay1uZXh0OmhvdmVyLFxuLnNsaWNrLW5leHQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLXByZXY6aG92ZXI6YmVmb3JlLCAuc2xpY2stcHJldjpmb2N1czpiZWZvcmUsXG4uc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsXG4uc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuLnNsaWNrLXByZXYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlLFxuLnNsaWNrLW5leHQuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4yNTtcbn1cbi5zbGljay1wcmV2OmJlZm9yZSxcbi5zbGljay1uZXh0OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gIGZvbnQtc2l6ZTogMzVweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgb3BhY2l0eTogMC43NTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogMTRweDtcbn1cbltkaXI9cnRsXSAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAtMjVweDtcbn1cbi5zbGljay1wcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oaQXCI7XG59XG5bZGlyPXJ0bF0gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLihpJcIjtcbn1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogMTRweDtcbn1cbltkaXI9cnRsXSAuc2xpY2stbmV4dCB7XG4gIGxlZnQ6IC0yNXB4O1xuICByaWdodDogYXV0bztcbn1cbi5zbGljay1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oaSXCI7XG59XG5bZGlyPXJ0bF0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLihpBcIjtcbn1cblxuLyogRG90cyAqL1xuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMzBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5zbGljay1kb3RzIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG4gIG1hcmdpbjogMCA1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgb3V0bGluZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc2xpY2stZG90cyBsaSBidXR0b246aG92ZXIsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgY29udGVudDogXCLigKJcIjtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICBjb2xvcjogd2hpdGU7XG4gIG9wYWNpdHk6IDAuNzU7XG59XG5cbi5zbGljay1zbGlkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1zbGlkZSA+IC5mbGV4LXZpZGVvLCAuc2xpY2stc2xpZGUgPiAudmlkZW8tY29udGFpbmVyLFxuLnNsaWNrLXNsaWRlID4gLm1lZGlhIHtcbiAgbWFyZ2luOiAwO1xuICB6LWluZGV4OiAwO1xufVxuLnNsaWNrLXNsaWRlID4gLm92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTA7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgxMzAsIDI3LCAyNywgMC4zKTtcbn1cblxuLyogQGVuZCBncm91cCBzbGljayAqL1xuLyohXG4gKiBQaWthZGF5XG4gKiBDb3B5cmlnaHQgwqkgMjAxNCBEYXZpZCBCdXNoZWxsIHwgQlNEICYgTUlUIGxpY2Vuc2UgfCBodHRwOi8vZGJ1c2hlbGwuY29tL1xuICovXG4ucGlrYS1zaW5nbGUge1xuICB6LWluZGV4OiA5OTk5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogI2NjYztcbiAgYmFja2dyb3VuZDogIzQ0NDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzQ0NDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzQ0NDtcbiAgZm9udC1mYW1pbHk6IFwic3RvbHpsXCIsIFwiQXZlbmlyXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBcIkhpcmFnaW5vIFNhbnNcIiwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cbi5waWthLXNpbmdsZS5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnBpa2Etc2luZ2xlLmlzLWJvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3gtc2hhZG93OiAwIDVweCAxNXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG4ucGlrYS1zaW5nbGUge1xuICAqem9vbTogMTtcbn1cbi5waWthLXNpbmdsZTpiZWZvcmUsIC5waWthLXNpbmdsZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cbi5waWthLXNpbmdsZTphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucGlrYS1sZW5kYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI0MHB4O1xuICBtYXJnaW46IDhweDtcbn1cblxuLnBpa2EtdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5waWthLXRpdGxlIHNlbGVjdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5OTk4O1xuICBtYXJnaW46IDA7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNXB4O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5waWthLWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAqZGlzcGxheTogaW5saW5lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNXB4IDNweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjYztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NDtcbn1cblxuLnBpa2EtcHJldixcbi5waWthLW5leHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgdGV4dC1pbmRlbnQ6IDIwcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDc1JSA3NSU7XG4gIG9wYWNpdHk6IDAuNTtcbiAgKnBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgKnRvcDogMDtcbn1cbi5waWthLXByZXY6aG92ZXIsXG4ucGlrYS1uZXh0OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5waWthLXByZXYuaXMtZGlzYWJsZWQsXG4ucGlrYS1uZXh0LmlzLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiAwLjI7XG59XG5cbi5waWthLXByZXYsXG4uaXMtcnRsIC5waWthLW5leHQge1xuICBmbG9hdDogbGVmdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCUUFBQUFlQ0FZQUFBQXNFajVyQUFBQVVrbEVRVlI0MnUzVk1Rb0FJQkFEUWY4UGdqK09EOWhHMkN0T05KQjJ5bVFrS2UwSGJ3QVAweHVjRGlRV0FSSVRJREVCRW5NZ01ROFM4K0FxQklsNmtLZ0hpWHFRcUFlSmVwQm8vejM4Si9VMHVBSGxhQmtCbDlJNEd3QUFBQUJKUlU1RXJrSmdnZz09XCIpO1xuICAqbGVmdDogMDtcbn1cblxuLnBpa2EtbmV4dCxcbi5pcy1ydGwgLnBpa2EtcHJldiB7XG4gIGZsb2F0OiByaWdodDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCUUFBQUFlQ0FZQUFBQXNFajVyQUFBQVUwbEVRVlI0MnUzVk93b0FNQWdFMGR3ZkFuTmpVMjZiWWtCQ0ZHd2ZpTDlWVldvTytCSjRHZjNndHNFS0tvRkJOVENvQ0FZVndhQWlHTlFHTVVITWtqR2JnamsybUlPTnVYbzBuQzhYbkNmMUpYZ0FyVklaQVFoNVRLWUFBQUFBU1VWT1JLNUNZSUk9XCIpO1xuICAqcmlnaHQ6IDA7XG59XG5cbi5waWthLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgKmRpc3BsYXk6IGlubGluZTtcbn1cblxuLnBpa2EtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cbi5waWthLXRhYmxlIHRoLFxuLnBpa2EtdGFibGUgdGQge1xuICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIHBhZGRpbmc6IDA7XG59XG4ucGlrYS10YWJsZSB0aCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ucGlrYS10YWJsZSBhYmJyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG4ucGlrYS1idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4O1xuICBjb2xvcjogI2RmZGZkZjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xufVxuLmlzLXRvZGF5IC5waWthLWJ1dHRvbiB7XG4gIGNvbG9yOiAjZmZjMDQ0O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5pcy1zZWxlY3RlZCAucGlrYS1idXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6ICMzM2FhZmY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuLmlzLWRpc2FibGVkIC5waWthLWJ1dHRvbiwgLmlzLW91dHNpZGUtY3VycmVudC1tb250aCAucGlrYS1idXR0b24ge1xuICBjb2xvcjogI2JiYjtcbiAgb3BhY2l0eTogMC41O1xufVxuLmlzLWRpc2FibGVkIC5waWthLWJ1dHRvbiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucGlrYS1idXR0b246aG92ZXIge1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZDogI2RkZDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuLnBpa2EtYnV0dG9uIC5pcy1zZWxlY3Rpb24tZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ucGlrYS13ZWVrIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5pcy1pbnJhbmdlIC5waWthLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICNENUU5Rjc7XG59XG5cbi5pcy1zdGFydHJhbmdlIC5waWthLWJ1dHRvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjNkNCMzFEO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5pcy1lbmRyYW5nZSAucGlrYS1idXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzMzYWFmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufSIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXNcbiAqIFZlcnNpb24gNi44LjFcbiAqIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIC0tLSBEZXBlbmRlbmNpZXMgLS0tXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZSxcbiAgJHh5LWdyaWQ6ICR4eS1ncmlkXG4pIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpZiAkeHktZ3JpZCB7XG4gICAgJHh5LWdyaWQ6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8vIEdsb2JhbCBzdHlsZXNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbiAgLy8gR3JpZHNcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHh5LWdyaWQge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICAvLyBCYXNpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuICAvLyBDb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICAvLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuXG4gIC8vIExheW91dCBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuXG4gIC8vIEhlbHBlcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuICBAaWYgJGZsZXggeyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlczsgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGlmICRwcm90b3R5cGUgeyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzOyB9XG59XG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDA7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZSBvdXRsaW5lIHdoZW4gaW50ZW50IGlzIGNsZWFybHkgbW91c2UgYW5kIHRvdWNoXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0ge1xuICAgICosICo6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlIGlPUyBjYWxsb3V0cyB3aGVuIGRyYWdnYWJsZSBpcyBmYWxzZVxuICBbZHJhZ2dhYmxlPWZhbHNlXSB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIFwicHJpbWFyeVwiOiAjMTc3OWJhLFxuICBcInNlY29uZGFyeVwiOiAjNzY3Njc2LFxuICBcInN1Y2Nlc3NcIjogIzNhZGI3NixcbiAgXCJ3YXJuaW5nXCI6ICNmZmFlMDAsXG4gIFwiYWxlcnRcIjogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHNhZmUgcGFkZGluZyBvbiB0aGUgYm9keSBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRldmljZXMgKGkuZS4gcGhvbmVzIHdpdGggbm90Y2hlcylcbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1zYWZlLXBhZGRpbmc6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpZiAoJGJvZHktc2FmZS1wYWRkaW5nKSB7XG4gICAgICAvLyB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gYWNjb3VudCBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRpc3BsYXlzIGUuZy4gcGhvbmVzIHdpdGggbm90Y2hlc1xuICAgICAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcbi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDYXJkXG4vLyAgMTUuIENsb3NlIEJ1dHRvblxuLy8gIDE2LiBEcmlsbGRvd25cbi8vICAxNy4gRHJvcGRvd25cbi8vICAxOC4gRHJvcGRvd24gTWVudVxuLy8gIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gIDIwLiBGb3Jtc1xuLy8gIDIxLiBMYWJlbFxuLy8gIDIyLiBNZWRpYSBPYmplY3Rcbi8vICAyMy4gTWVudVxuLy8gIDI0LiBNZXRlclxuLy8gIDI1LiBPZmYtY2FudmFzXG4vLyAgMjYuIE9yYml0XG4vLyAgMjcuIFBhZ2luYXRpb25cbi8vICAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAgMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAgMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vICAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAgMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vICA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAgNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAgNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vICA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAgNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vICA0Ny4gUmV2ZWFsXG4vLyAgNDguIFNsaWRlclxuLy8gIDQ5LiBTd2l0Y2hcbi8vICA1MC4gVGFibGVcbi8vICA1MS4gVGFic1xuLy8gIDUyLiBUaHVtYm5haWxcbi8vICA1My4gVGl0bGUgQmFyXG4vLyAgNTQuIFRvb2x0aXBcbi8vICA1NS4gVG9wIEJhclxuLy8gIDU2LiBYeSBHcmlkXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIDEuIEdsb2JhbFxuLy8gLS0tLS0tLS0tXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTkyMCk7XG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgICBwcmltYXJ5OiAjMjE5OWU4LFxuICAgIHNlY29uZGFyeTogIzc3Nzc3NyxcbiAgICBzdWNjZXNzOiAjMmEyYTJhLFxuICAgIHdhcm5pbmc6ICNGQThFMTMsXG4gICAgYWxlcnQ6ICNlYzU4NDAsXG4gICAgYW5jaG9yOiAjNzdkZGZmLFxuKTtcbiRsaWdodC1ncmF5OiAjZDlkOWQ5O1xuJG1lZGl1bS1ncmF5OiAjN2M3YzdjO1xuJGRhcmstZ3JheTogIzRmNGY0ZjtcbiRibGFjazogIzBhMGEwYTtcbiR3aGl0ZTogI2ZlZmVmZTtcbiRib2R5LWJhY2tncm91bmQ6ICRibGFjaztcbiRib2R5LWZvbnQtY29sb3I6ICNkZmRmZGY7XG4kYm9keS1mb250LWZhbWlseTogXCJzdG9semxcIiwgXCJBdmVuaXJcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFwiSGlyYWdpbm8gU2Fuc1wiLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJvZHktc2FmZS1wYWRkaW5nOiBmYWxzZTtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDA7XG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZTtcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0bztcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG4kcHJpbnQtaHJlZnM6IHRydWU7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICAgIHNtYWxsOiAwLFxuICAgIG1lZGl1bTogNjQwcHgsXG4gICAgbGFyZ2U6IDEwMjRweCxcbiAgICB4bGFyZ2U6IDEyMDBweCxcbiAgICB4eGxhcmdlOiAxNDQwcHgsXG4pO1xuJGJyZWFrcG9pbnRzLWhpZHBpOiAoXG4gICAgaGlkcGktMTogMSxcbiAgICBoaWRwaS0xLTU6IDEuNSxcbiAgICBoaWRwaS0yOiAyLFxuICAgIHJldGluYTogMixcbiAgICBoaWRwaS0zOiAzXG4pO1xuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlO1xuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogMTVweCxcbiAgbWVkaXVtOiAzMHB4XG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kZ3JpZC1jb2x1bW4tYWxpYXM6ICdjb2x1bW5zJztcbiRibG9jay1ncmlkLW1heDogODtcblxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlO1xuJGhlYWRlci1jb2xvcjogJHdoaXRlO1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDg3LjUlO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNTtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMS40cmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGVuYWJsZS1jb2RlLWlubGluZTogdHJ1ZTtcbiRhbmNob3ItY29sb3I6IGdldC1jb2xvcihhbmNob3IpOyAvLyRwcmltYXJ5LWNvbG9yO1xuJGFuY2hvci1jb2xvci1ob3ZlcjogI0VCOUYzNzsvL3NjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpOyAvL3NjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWU7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGNvZGUtYmxvY2stcGFkZGluZzogMXJlbTtcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXBsdXMtY29udGVudDogJ1xcMDAyQic7XG4kYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ6ICdcXDIwMTMnO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGw7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHg7XG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlO1xuXG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcblxuLy8gMTMuIENhbGxvdXRcbi8vIC0tLS0tLS0tLS0tXG5cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtc2l6ZXM6IChcbiAgc21hbGw6IDAuNXJlbSxcbiAgZGVmYXVsdDogMXJlbSxcbiAgbGFyZ2U6IDNyZW0sXG4pO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tei1pbmRleDogMTA7XG4kY2xvc2VidXR0b24tZGVmYXVsdC1zaXplOiBtZWRpdW07XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRtZWRpdW0tZ3JheTsvLyRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJHdoaXRlOy8vJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogIzMzMzsvLyR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJHdoaXRlOy8vJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAjMzMzOy8vJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICM0ZjRmNGY7Ly8kd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAwOy8vMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDA7Ly8xcHggc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1wYWRkaW5nOiBtYXRoLmRpdigkZm9ybS1zcGFjaW5nLCAyKTtcbiRpbnB1dC1zaGFkb3c6IG5vbmU7Ly9pbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiBub25lOy8vMCAwIDVweCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTGFiZWxcbi8vIC0tLS0tLS0tLVxuXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIyLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIzLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmU6ICRibGFjaztcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjYuIE9yYml0XG4vLyAtLS0tLS0tLS1cblxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNy4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG4kcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91czogJ1xcMDBBQic7XG4kcGFnaW5hdGlvbi1hcnJvdy1uZXh0OiAnXFwwMEJCJztcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKFxuICBkb3duLFxuICB1cCxcbiAgcmlnaHQsXG4gIGxlZnRcbik7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKFxuICBpbmxpbmUsXG4gIGlubGluZS1ibG9jayxcbiAgYmxvY2ssXG4gIHRhYmxlLFxuICB0YWJsZS1jZWxsXG4pO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoXG4gIGRpc2MsXG4gIGNpcmNsZSxcbiAgc3F1YXJlXG4pO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcbiAgdmlzaWJsZSxcbiAgaGlkZGVuLFxuICBzY3JvbGxcbik7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXG4gIHN0YXRpYyxcbiAgcmVsYXRpdmUsXG4gIGFic29sdXRlLFxuICBmaXhlZFxuKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpLCAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbik7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKFxuICBvdmVybGluZSxcbiAgdW5kZXJsaW5lLFxuICBsaW5lLXRocm91Z2gsXG4pO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxuICBsb3dlcmNhc2UsXG4gIHVwcGVyY2FzZSxcbiAgY2FwaXRhbGl6ZVxuKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiRzd2l0Y2gtb3BhY2l0eS1kaXNhYmxlZDogMC41O1xuJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuXG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgbWF0aC5kaXYoJHRhYmxlLWNvbG9yLXNjYWxlLCAyKSk7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiA0cHggc29saWQgJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAzMHB4LFxuICBtZWRpdW06IDQwcHgsXG4gIGxhcmdlOiA2MHB4LFxuICB4eGxhcmdlOiAxMDBweCxcbik7XG4kZ3JpZC1wYWRkaW5nLWd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGg7XG4keHktYmxvY2stZ3JpZC1tYXg6IDg7XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1icC12YWx1ZTogbnVsbDtcblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6IGRpdmlkZSgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycyksICRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMzIgMjRcIj48cG9seWdvbiBwb2ludHM9XCIwLDAgMzIsMCAxNiwyNFwiIHN0eWxlPVwiZmlsbDogI3skcmdifVwiPjwvcG9seWdvbj48L3N2Zz4nKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRpKSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogMXB4ICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogMXB4ICN7JGltcG9ydGFudH07XG4gIHBhZGRpbmc6IDAgI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgI3skaW1wb3J0YW50fTtcbiAgYm9yZGVyOiAwICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IHN0YXRpYyAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IHZpc2libGUgI3skaW1wb3J0YW50fTtcbiAgY2xpcDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoXG4gICRzbWFsbDogdHJ1ZSxcbiAgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbihhdXRvLCAtemYtYm9vbCgkc21hbGwpLCAtemYtYm9vbCgkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMpKSB7XG4gICAgQGNvbnRlbnRcbiAgfTtcbn1cblxuLy8vIEl0ZXJhdGVzIHdpdGggYEBjb250ZW50YCB0aHJvdWdoIHRoZSBnaXZlbiBsaXN0IG9mIGJyZWFrcG9pbnRzIGAkYnJlYWtwb2ludHNgLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TGlzdH0gJGJyZWFrcG9pbnRzIFthdXRvXSAtIEJyZWFrcG9pbnRzIHRvIGl0ZXJhdGVzIG9uLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufE51bGx9ICR6ZXJvLWJyZWFrcG9pbnQgW251bGxdIC0gV2hldGhlciB0aGUgemVyby1icmVha3BvaW50IChvZnRlbiBgc21hbGxgKSBtdXN0IGJlIGluY2x1ZGVkLiBJZiBgdHJ1ZWAsIGl0IHdpbGwgYWx3YXlzIGJlIGFkZGVkIHRvIHRoZSBsaXN0IGlmIG5vdCBhbHJlYWR5IHRoZXJlLiBJZiBgZmFsc2VgLCBpdCB3aWxsIGFsd2F5cyBiZSByZW1vdmVkLiBEb2VzIG5vdGhpbmcgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58S2V5d29yZH0gJG1lZGlhLXF1ZXJpZXMgW3RydWVdIC0gV2hldGhlciBtZWRpYS1xdWVyaWVzIG11c3QgYmUgZ2VuZXJhdGVkLiBJZiBgZm9yLWxpc3RzYCwgb25seSBnZW5lcmF0ZSBtZWRpYS1xdWVyaWVzIHdoZW4gYCRicmVha3BvaW50c2AgaXMgYSBsaXN0LlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oXG4gICRicmVha3BvaW50czogYXV0byxcbiAgJHplcm8tYnJlYWtwb2ludDogbnVsbCxcbiAgJG1lZGlhLXF1ZXJpZXM6IHRydWVcbikge1xuICAkLWxpc3Q6ICgpO1xuICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogdHJ1ZTtcblxuICAvLyBSZXRyaWV2ZSB0aGUgbGlzdCBvZiBicmVha3BvaW50KHMpIHRvIGl0ZXJhdGUgb24uXG4gIEBpZiAkYnJlYWtwb2ludHMgPT0gYXV0byB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnbGlzdCcge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnRzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnc3RyaW5nJyB7XG4gICAgJC1saXN0OiAoJGJyZWFrcG9pbnRzKTtcbiAgICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogZmFsc2U7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcIiRicmVha3BvaW50c1wiIGluIFwiLXpmLWVhY2gtYnJlYWtwb2ludC1pbigpXCIuIEdvdCBcIiN7JGJyZWFrcG9pbnRzfVwiICgje3R5cGUtb2YoJGJyZWFrcG9pbnRzKX0pLiBFeHBlY3RlZCBhIGJyZWFrcG9pbnQgbmFtZSwgYSBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIFwiYXV0b1wiJztcbiAgfVxuXG4gIC8vIEFkZCBvciByZW1vdmUgdGhlIHplcm8gYnJlYWtwb2ludCBhY2NvcmRpbmcgdG8gYCR6ZXJvLWJyZWFrcG9pbnRgXG4gIEBpZiAkemVyby1icmVha3BvaW50ID09IHRydWUge1xuICAgICQtbGlzdDogam9pbigoJC16Zi16ZXJvLWJyZWFrcG9pbnQpLCBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCkpO1xuICB9XG4gIEBlbHNlIGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gZmFsc2Uge1xuICAgICQtbGlzdDogc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gSXRlcmF0ZSBvbiBicmVha3BvaW50KHMpXG4gIEBlYWNoICRicCBpbiAkLWxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJGJwICFnbG9iYWw7XG5cbiAgICBAaWYgKCRtZWRpYS1xdWVyaWVzID09IHRydWUgb3IgKCRtZWRpYS1xdWVyaWVzID09ICdmb3ItbGlzdHMnIGFuZCAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdCkpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRicC12YWx1ZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgICAgQGlmICRicC12YWx1ZSAhPSBudWxsIHtcbiAgICAgICAgJG5hbWU6ICRicC12YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAqIDAuNSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nICogMC41ICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogJGlucHV0LWxpbmUtaGVpZ2h0KSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAmOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkLWZyb20taGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGQtZnJvbS1oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBVc2UgdGhlIGAuY29kZS1pbmxpbmVgIGNvbXBvbmVudCBhcyBkZWZhdWx0IGZvciBgPGNvZGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZW5hYmxlLWNvZGUtaW5saW5lOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFVzZSB0aGUgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQgYXMgZGVmYXVsdCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGVuYWJsZS1jaXRlLWJsb2NrOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBJbmxpbmUgQ2l0YXRpb25zXG4gIEBpZiAoJGVuYWJsZS1jaXRlLWJsb2NrID09IHRydWUpIHtcbiAgICBjaXRlIHtcbiAgICAgIC8vIEV4dGVuZGluZyBhIGNsYXNzIGlzIG5vdCByZWNvbW1lbmRlZC5cbiAgICAgIC8vIFRPRE86IEJyZWFrIHRoZSB0eXBvZ3JhcGh5LWJhc2UvdHlwb2dyYXBoeS1oZWxwZXJzIHNlcGFyYXRpb25cbiAgICAgIEBleHRlbmQgJWNpdGUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBAaWYgKCRlbmFibGUtY29kZS1pbmxpbmUgPT0gdHJ1ZSkge1xuICAgIGNvZGUge1xuICAgICAgQGV4dGVuZCAlY29kZS1pbmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIFBhdGNoIHRvIGZpeCBpc3N1ZSAjMTIwODBcbiQtemYtc2l6ZTogbnVsbDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBcInNtYWxsXCI6IDAsXG4gIFwibWVkaXVtXCI6IDY0MHB4LFxuICBcImxhcmdlXCI6IDEwMjRweCxcbiAgXCJ4bGFyZ2VcIjogMTIwMHB4LFxuICBcInh4bGFyZ2VcIjogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBIaURQSSBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcyBmb3IgcmVzb2x1dGlvbnMuXG4vLy8gVmFsdWVzIG11c3QgcmVwcmVzZW50IHRoZSBkZXZpY2UgcGl4ZWxzIC8gd2ViIHBpeGVscyByYXRpb24gYW5kIGJlIHVuaXRsZXNzIG9yIGluIERQUFguXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgXCJoaWRwaS0xXCI6IDEsXG4gIFwiaGlkcGktMS01XCI6IDEuNSxcbiAgXCJoaWRwaS0yXCI6IDIsXG4gIFwicmV0aW5hXCI6IDIsXG4gIFwiaGlkcGktM1wiOiAzXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFdlYiBzdGFuZGFyZCBQaXhlbHMgcGVyIGluY2guICgxZGRweCAvICRzdGQtd2ViLWRwaSkgPSAxZHBpXG4gIC8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXZhbHVlcy0zLyNhYnNvbHV0ZS1sZW5ndGhzXG4gICRzdGQtd2ViLWRwaTogOTY7XG5cbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBvZiB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnRcbiAgJGJwLW5leHQ6IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWluOiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWluLXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogbnVsbDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIElmIG5hbWVkLCBuYW1lIG9mIHRoZSBicmVha3BvaW50XG4gICRuYW1lOiBudWxsO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIEhpRFBJIGJyZWFrcG9pbnRcbiAgJGhpZHBpOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cblxuICAvLyBJZiBhIGJyZWFrcG9pbnQgbmFtZSBpcyBnaXZlbiwgZ2V0IGl0cyB2YWx1ZSBmcm9tIHRoZSAkYnJlYWtwb2ludHMvJGJyZWFrcG9pbnRzLWhpZHBpIG1hcC5cbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLWhpZHBpLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0LW51bWJlcigkYnJlYWtwb2ludHMtaGlkcGksICRicCk7XG4gICAgICAkaGlkcGk6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgYCRicmVha3BvaW50c2Agb3IgYCRicmVha3BvaW50cy1oaWRwaWAgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJG5hbWUgYW5kICRkaXIgPT0gJ29ubHknIHtcbiAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gT25seSAnb25seScgYW5kICd1cCcgaGF2ZSBhIG1pbiBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ3VwJyB7XG4gICAgJGJwLW1pbjogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgfVxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ2Rvd24nIGhhdmUgYSBtYXggbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSB2YWx1ZSwgdXNlIGl0IGFzIG1heCBsaW1pdC5cbiAgICBAaWYgbm90ICRuYW1lIHtcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gICAgfVxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIG5hbWVkLCB0aGUgbWF4IGxpbWl0IGlzIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludCAtIDFweC5cbiAgICBAZWxzZSBpZiAkYnAtbmV4dCB7XG4gICAgICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gICAgICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCAkYnAtbmV4dCAtIGRpdmlkZSgxLCAkc3RkLXdlYi1kcGkpLCAtemYtYnAtdG8tZW0oJGJwLW5leHQpIC0gMC4wMDEyNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJhdGUgdGhlIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIG1pbiBhbmQgbWF4IGxpbWl0cy5cbiAgQGlmICRoaWRwaSB7XG4gICAgLy8gR2VuZXJhdGUgdmFsdWVzIGluIERQSSBpbnN0ZWFkIG9mIERQUFggZm9yIGFuIElFOS0xMS9PcGVyYSBtaW5pIGNvbXBhdGliaWxpdHkuXG4gICAgLy8gU2VlIGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgICAkYnAtbWluLWRwaTogaWYoJGJwLW1pbiwgJGJwLW1pbiAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1taW4pO1xuICAgICRicC1tYXgtZHBpOiBpZigkYnAtbWF4LCAkYnAtbWF4ICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1heCk7XG4gICAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgsICctd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8nLCAnLXdlYmtpdC1tYXgtZGV2aWNlLXBpeGVsLXJhdGlvJyksXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLWRwaSwgJGJwLW1heC1kcGksICdtaW4tcmVzb2x1dGlvbicsICdtYXgtcmVzb2x1dGlvbicpLFxuICAgICAgJywgJyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCk7XG4gIH1cbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBhbmQgYCRicmVha3BvaW50cy1oaWRwaWAgbWFwcywgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIElmIG11bHRpcGxlIHZhbHVlcyBhcmUgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBnZW5lcmF0ZSBhIG1lZGlhIHF1ZXJ5IGZvciBlYWNoIG9mIHRoZW0gYXMgZGVzY3JpYmVkIGFib3ZlLlxuLy8vIFNpbmNlIHRoZSBjb250ZW50IGlzIGR1cGxpY2F0ZWQgZm9yIGVhY2ggYnJlYWtwb2ludCwgdGhpcyBtaXhpbiBzaG91bGQgb25seSBiZSB1c2VkIHdpdGggcHJvcGVydGllcyB0aGF0XG4vLy8gY2hhbmdlIGFjcm9zcyBicmVha3BvaW50cy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZXMuLi4gLSBCcmVha3BvaW50IG5hbWUgb3IgcHgvcmVtL2VtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZXMuLi4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHZhbHVlcykge1xuICAgICR2YWx1ZTogbnRoKCR2YWx1ZXMsICRpKTtcbiAgICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsIG50aCgkdmFsdWUsIDEpKTtcbiAgICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcbiAgICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAgICRkaXI6IGlmKGxlbmd0aCgkdmFsdWUpID4gMSwgbnRoKCR2YWx1ZSwgMiksIHVwKTtcblxuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAgIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAgIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICAgIC8vIGdlbmVyYXRlIHByaW50IGlmIHRoZSBicmVha3BvaW50IGFmZmVjdHMgdGhlIHByaW50LWJyZWFrcG9pbnQgKG9yIHNtYWxsZXIpLlxuICAgICAgLy8gVGhpcyBtZWFucyB0aGUgY3VycmVudCBjb25kaXRpb24gb25seSBuZWVkcyB0byBiZSBleHRlbmRlZCBzbyAnZG93bicgYWx3YXlzIGdlbmVyYXRlcyBwcmludC5cbiAgICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgKCRicCA8PSAkcGJwIG9yICRkaXIgPT0gZG93bikge1xuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBDb252ZXJ0cyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBudW1iZXIgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAkbnVtYmVyIC0gTnVtYmVyIHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgbnVtYmVyIGZvbGxvd2luZyBgJG51bWJlcmAsIGlmIGAkbnVtYmVyYCB3YXMgZm91bmQuIElmIGAkbnVtYmVyYCB3YXMgbm90IGZvdW5kLCBvciBgJG51bWJlcmAgd2FzIHRoZSBiaWdnZXN0IG51bWJlciBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQtbnVtYmVyKCRtYXAsICRudW1iZXIpIHtcblxuICAkbmV4dC1udW1iZXI6IG51bGw7XG5cbiAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgIEBpZiB0eXBlLW9mKCR2KSA9PSAnbnVtYmVyJyBhbmQgJHYgPiAkbnVtYmVyIGFuZCAoJG5leHQtbnVtYmVyID09IG51bGwgb3IgJHYgPCAkbmV4dC1udW1iZXIpIHtcbiAgICAgICRuZXh0LW51bWJlcjogJHY7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV4dC1udW1iZXI7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmQta2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kLWtleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmQta2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuLy8vIFJldHVybiB0aGUgYmVzdCBicmVha3BvaW50IHRvIHVzZSBhY2NvcmRpbmcgdG8gdGhlIGNhbGxpbmcgY29udGV4dC4gSXQgcmV0dXJucyBpbiBvcmRlcjpcbi8vLyAxLiB0aGUgZ2l2ZW4gYCR2YWx1ZWAgYXJndW1lbnQgaWYgaXQgaXMgbm90IG51bGwuXG4vLy8gMi4gdGhlIGdsb2JhbCBicmVha3BvaW50IGNvbnRleHQgYCQtemYtc2l6ZWAgaWYgaXQgaXMgbm90IG51bGwgKGxpa2UgaWYgY2FsbGVkIGluc2lkZSB0aGVuIGBicmVha3BvaW50KClgIG1peGluKVxuLy8vIDMuIHRoZSBnaXZlbiBgJGRlZmF1bHRgIGFyZ3VtZW50LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgaW4gcHJpb3JpdHkgaWYgbm9uLW51bGwuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGVmYXVsdCBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBieSBkZWZhdWx0IGlmIG5vIG90aGVyIHZhbHVlIGNhbiBiZSB1c2VkLlxuLy8vXG4vLy8gQHJldHVybiB7S2V5d29yZH0gVGhlIHJlc29sdmVkIGJyZWFrcG9pbnQuXG5AZnVuY3Rpb24gLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkdmFsdWU6IG51bGwsICRkZWZhdWx0OiBudWxsKSB7XG4gIEBpZiAoJHZhbHVlICE9IG51bGwpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuICBAZWxzZSBpZiAodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgIEByZXR1cm4gJC16Zi1zaXplO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICRkZWZhdWx0O1xuICB9XG59XG5cbi8vLyBSZXR1cm4gbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gdGhlIGdpdmVuIG1pbiBhbmQvb3IgbWF4IGxpbWl0cy5cbi8vLyBJZiBhIGxpbWl0IGlzIGVxdWFsIHRvIGBudWxsYCBvciBgMGAsIGl0IGlzIGlnbm9yZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1pbiBbMF0gLSBNaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggWzBdIC0gTWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWluLW5hbWUgWydtaW4td2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRlbGltaXRlciBbJ21heC13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gTWVkaWEgUXVlcnkgc3RyaW5nLlxuQGZ1bmN0aW9uIC16Zi1icC1qb2luKFxuICAkbWluOiAwLFxuICAkbWF4OiAwLFxuICAkbWluLW5hbWU6ICdtaW4td2lkdGgnLFxuICAkbWF4LW5hbWU6ICdtYXgtd2lkdGgnXG4pIHtcbiAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICBpZigkbWluIGFuZCAkbWluID4gMCwgJygjeyRtaW4tbmFtZX06ICN7JG1pbn0pJywgbnVsbCksXG4gICAgaWYoJG1heCBhbmQgJG1heCA+IDAsICcoI3skbWF4LW5hbWV9OiAjeyRtYXh9KScsIG51bGwpLFxuICAgICcgYW5kICcpO1xufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIHRoZSBgLmNvZGUtaW5saW5lYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiB0aGUgYC5jb2RlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtYmxvY2stcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiB1bmRlciB0aGUgYC5jb2RlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY29kZS1ibG9jay1tYXJnaW4tYm90dG9tOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBjaXRlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkY2l0ZS1jb2xvcjtcbiAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICB9XG59XG5cbi8vLyBBZGQgYmFzaWMgc3R5bGVzIGZvciBhIGNvZGUgaGVscGVyLlxuLy8vIFNlZSBgY29kZS1pbmxpbmVgIGFuZCBgY29kZS1ibG9ja2AgbWl4aW5zLlxuQG1peGluIGNvZGUtc3R5bGUge1xuICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xufVxuXG4vLy8gTWFrZSBjb2RlIGhlbHBlciBmcm9tIHRoZSBgY29kZS1zdHlsZWAgbWl4aW4gaW5saW5lLlxuLy8vIFVzZWQgdG8gZ2VuZXJhdGUgYC5jb2RlLWlubGluZWBcbkBtaXhpbiBjb2RlLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcbn1cblxuLy8vIE1ha2UgY29kZSBoZWxwZXIgZnJvbSB0aGUgYGNvZGUtc3R5bGVgIG1peGluIGEgYmxvY2suXG4vLy8gVXNlZCB0byBnZW5lcmF0ZSBgLmNvZGUtYmxvY2tgXG5AbWl4aW4gY29kZS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IHByZTtcblxuICBwYWRkaW5nOiAkY29kZS1ibG9jay1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkY29kZS1ibG9jay1tYXJnaW4tYm90dG9tO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgdWwsIG9sIHtcbiAgICAvLyBVc2UgdG8gcmVtb3ZlIG51bWJlcnMgZnJvbSBvcmRlcmVkIGxpc3QgJiBidWxsZXRzIGZyb20gdW5vcmRlcmVkIGxpc3RcbiAgICAmLm5vLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAlY2l0ZS1ibG9jayB7XG4gICAgQGluY2x1ZGUgY2l0ZS1ibG9jaztcbiAgfVxuXG4gIC5jaXRlLWJsb2NrIHtcbiAgICBAZXh0ZW5kICVjaXRlLWJsb2NrO1xuICB9XG5cbiAgJWNvZGUtaW5saW5lIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtaW5saW5lO1xuICB9XG5cbiAgLmNvZGUtaW5saW5lIHtcbiAgICBAZXh0ZW5kICVjb2RlLWlubGluZTtcbiAgfVxuXG4gIC5jb2RlLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtYmxvY2s7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIC8vIEVuc3VyZSBhIFwiYmxhY2stb24td2hpdGVcIiBwcmludCBieSByZW1vdmluZyBiYWNrZ3JvdW5kcyxcbiAgICAgIC8vIHVzaW5nIGJsYWNrIHRleHQgZXZlcnl3aGVyZSBhbmQgZm9yY2luZyB0aGUgYnJvd3NlciB0byBlY29ub21pemUgaW5rLlxuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICAgIHByaW50LWNvbG9yLWFkanVzdDogZWNvbm9teTtcbiAgICAgIH1cbiAgICAgIC8vIE90aGVyd2lzZSwgcHJldmVudCBhbnkgZWNvbm9teSBieSB0aGUgYnJvd3Nlci5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgIC8vIEhlbHBlciB0byByZS1hbGxvdyBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGNlcnRhaW4gZWxlbWVudHMgKGUuZy4gcHJlLCBibG9ja3F1b3RlLCB0cilcbiAgICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJhc2UtZ3JpZC1jbGFzc2VzIHtcblxuICAvLyBHcmlkIENvbnRhaW5lclxuICAuZ3JpZC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuXG4gICAgJi5mbHVpZCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlKTtcbiAgICB9XG5cbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSwgMCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICAuZ3JpZC14IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkO1xuICB9XG5cbiAgLmNlbGwge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoZnVsbCwgJGd1dHRlci10eXBlOiBub25lKTtcblxuICAgICYuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgfVxuXG4gICAgJi5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gIH1cbiAgLmdyaWQteCB7XG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICB9XG4gIH1cblxuICAvLyBBdXRvIHdpZHRoXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyAmIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAuZ3JpZC14IHtcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCI7XG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFJlc3BvbnNpdmUgXCJhdXRvXCIgbW9kaWZpZXJcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0bywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgd2lkdGggbW9kaWZpZXJzXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCB3aWR0aCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teGAgbm90IG9uIGAuZ3JpZC14YFxuICAuZ3JpZC1tYXJnaW4teDpub3QoLmdyaWQteCkgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAvLyBSZXNldCBoZWlnaHQgd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXlgIG5vdCBvbiBgLmdyaWQteWBcbiAgLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG5AbWl4aW4gLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCRjbGFzcy1icmVha3BvaW50LCAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbCkge1xuICAkcHJlZml4OiBpZigkY2xhc3MtYnJlYWtwb2ludCA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCwgJycsICcjeyRjbGFzcy1icmVha3BvaW50fS0nKTtcbiAgPiAuI3skcHJlZml4fWF1dG8ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gIH1cblxuICA+IC4jeyRwcmVmaXh9c2hyaW5rIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAkY2xhc3NuYW1lOiBpZigkdmVydGljYWwsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9Jyk7XG5cbiAgICA+ICN7JGNsYXNzbmFtZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBsZWZ0IHJpZ2h0LFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkd3JhcHBpbmctc2VsZWN0b3I6ICcuZ3JpZC1tYXJnaW4teCdcbil7XG4gICN7JHdyYXBwaW5nLXNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246ICRndXR0ZXItcG9zaXRpb24pO1xuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgkdmVydGljYWw6ICR2ZXJ0aWNhbCwgJG91dHB1dDogKHNpemUgZ3V0dGVycykpO1xuICAgIH1cblxuICAgIC8vIGJhc2Ugc3R5bGVzIG5lZWQgdG8gYWxsIGJlIGJlZm9yZSB0aGUgYXV0byBhbmQgc2hyaW5rIHN0eWxlc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpIGFuZCAkLXpmLXNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuY2VsbCB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbCgkdmVydGljYWw6ICR2ZXJ0aWNhbCwgJG91dHB1dDogKHNpemUgZ3V0dGVycykpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcblxuICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgIC8vIGZvciBhbGwgcHJpb3IgYnJlYWtwb2ludHMuXG4gICAgICAvLyBBcyB0aGVpciBndXR0ZXIgaXMgZGVmaW5lZCB3aXRoIHRoZWlyIHdpZHRoL2hlaWdodCwgZXZlbiBicmVha3BvaW50IHdpdGhvdXQgYSBuZXcgbWFyZ2luIG11c3QgYmVcbiAgICAgIC8vIGdlbmVyYXRlZCB0byBub3QgaGF2aW5nIHRoZWlyIHdpZHRoL2hlaWdodCBvdmVycmlkZWQgYnkgcmUtYWRqdXN0ZWQgc21hbGxlciBicmVha3BvaW50cy5cbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkpIHtcbiAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCRicCwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkLXpmLXNpemUsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUGFkZGluZyBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcyB7XG4gIC5ncmlkLXBhZGRpbmcteCB7XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgIC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBncmlkcyB3aXRoaW4gYGdyaWQtY29udGFpbmVyL2dyaWQtY29udGFpbmVyLmZsdWlkYFxuICAgIC8vIFRoaXMgYWxsb3dzIG1hcmdpbiBhbmQgcGFkZGluZyBncmlkcyB0byBsaW5lIHVwIHdpdGggZWFjaG90aGVyXG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAmIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEJsb2NrIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAgIC8vIGZvciBwcmlvciBicmVha3BvaW50cyBiYXNlZCBvbiB0aGUgcmVzcG9uc2l2ZSBndXR0ZXIuXG4gICAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkpIHtcbiAgICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICAgIEBpZihtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJGJwKSkge1xuICAgICAgICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyRicH0tdXAtI3skaX0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDb2xsYXBzZSBjbGFzc2VzXG5AbWl4aW4geHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAZWFjaCAkYnAgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgICAuI3skYnB9LW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBtYXJnaW4sICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgICAuI3skYnB9LXBhZGRpbmctY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogcGFkZGluZywgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBPZmZzZXQgY2xhc3Nlc1xuQG1peGluIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbywgJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgIH1cblxuICAgICAgLmdyaWQtbWFyZ2luLXggPiAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVmVydGljYWwgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKFxuICAkbWFyZ2luLWdyaWQ6IHRydWUsXG4gICRwYWRkaW5nLWdyaWQ6IHRydWVcbikge1xuXG4gIC8vIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gIC8vICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gICB9XG4gIC8vIH1cblxuICAuZ3JpZC15IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkKHZlcnRpY2FsLCBmYWxzZSk7XG5cblxuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1yZXNldCgpO1xuICAgIH1cblxuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgYW5kIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCI7XG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0bywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgd2lkdGggbW9kaWZpZXJzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogdG9wIGJvdHRvbSk7XG4gICAgICB9XG5cbiAgICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICAgID4gLmNlbGwge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGd1dHRlci1wb3NpdGlvbjogdG9wIGJvdHRvbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgfVxuXG59XG5cbkBtaXhpbiB4eS1mcmFtZS1ncmlkLWNsYXNzZXMoJHZlcnRpY2FsLWdyaWQ6IHRydWUsICRtYXJnaW4tZ3JpZDogdHJ1ZSkge1xuICAvLyBGcmFtZWQgZ3JpZCBzdHlsZXNcbiAgLmdyaWQtZnJhbWUge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gIH1cblxuICAuY2VsbCAuZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gIH1cblxuICAuY2VsbC1ibG9jayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICB9XG5cbiAgLmNlbGwtYmxvY2steSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jayh0cnVlKTtcbiAgfVxuXG5cbiAgLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICB9XG5cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG5cbiAgICAuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgICB9XG5cbiAgICAuY2VsbCAuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLXkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jayh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJHZlcnRpY2FsLWdyaWQge1xuICAgIC5ncmlkLXkge1xuICAgICAgJi5ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgICAgJi4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICAgIC5jZWxsIHtcbiAgICAgIC5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgICAgLmdyaWQteS4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJGluY2x1ZGUtYmFzZTogZmFsc2UpO1xuICAgIH1cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAuZ3JpZC1tYXJnaW4teS4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRmluYWwgY2xhc3Nlc1xuQG1peGluIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzKFxuICAkYmFzZS1ncmlkOiB0cnVlLFxuICAkbWFyZ2luLWdyaWQ6IHRydWUsXG4gICRwYWRkaW5nLWdyaWQ6IHRydWUsXG4gICRibG9jay1ncmlkOiB0cnVlLFxuICAkY29sbGFwc2U6IHRydWUsXG4gICRvZmZzZXQ6IHRydWUsXG4gICR2ZXJ0aWNhbC1ncmlkOiB0cnVlLFxuICAkZnJhbWUtZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICBAaWYoJGJhc2UtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJhc2UtZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBNYXJnaW4gZ3JpZFxuICBAaWYoJG1hcmdpbi1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gUGFkZGluZyBncmlkXG4gIEBpZigkcGFkZGluZy1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktcGFkZGluZy1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWRcbiAgQGlmKCRibG9jay1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBDb2xsYXBzZSBndXR0ZXJzXG4gIEBpZigkY29sbGFwc2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIE9mZnNldCBndXR0ZXJzXG4gIEBpZigkb2Zmc2V0KSB7XG4gICAgQGluY2x1ZGUgeHktb2Zmc2V0LWNlbGwtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gVmVydGljYWwgZ3JpZFxuICBAaWYoJHZlcnRpY2FsLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIEBpZiAoJGZyYW1lLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1mcmFtZS1ncmlkLWNsYXNzZXMoJHZlcnRpY2FsLWdyaWQsICRtYXJnaW4tZ3JpZClcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAqIDAuNTtcblxuICAgICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ251bWJlcicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVycykgKiAwLjU7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgbWF4IHdpZHRoIGNvbnRhaW5lciwgZGVzaWduZWQgdG8gaG91c2UgeW91ciBncmlkIGNvbnRlbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFskZ3JpZC1jb250YWluZXJdIC0gYSB3aWR0aCB0byBsaW1pdCB0aGUgY29udGFpbmVyIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJGdyaWQtY29udGFpbmVyLXBhZGRpbmddIC0gcGFkZGluZ3Mgb2YgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiB4eS1ncmlkLWNvbnRhaW5lcihcbiAgJHdpZHRoOiAkZ3JpZC1jb250YWluZXIsXG4gICRwYWRkaW5nOiAkZ3JpZC1jb250YWluZXItcGFkZGluZ1xuKSB7XG4gIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRwYWRkaW5nLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuXG4gIG1heC13aWR0aDogJHdpZHRoO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgeW91ciBmbGV4IGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtob3Jpem9udGFsXSAtIEVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsIGRpcmVjdGlvbiBvZiBjZWxscyB3aXRoaW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBJZiB0aGUgY2VsbHMgd2l0aGluIHNob3VsZCB3cmFwIG9yIG5vdC5cbkBtaXhpbiB4eS1ncmlkKFxuICAkZGlyZWN0aW9uOiBob3Jpem9udGFsLFxuICAkd3JhcDogdHJ1ZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gPT0gJ2hvcml6b250YWwnLCByb3csIGNvbHVtbik7XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6ICRkaXJlY3Rpb24gJHdyYXA7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gUmV0dXJucyB0aGUgYXBwcm9wcmlhdGUgQ1NTIGZsZXggdmFsdWUgZm9yIGEgY2VsbCBiYXNlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgLCBgZ3Jvd2AsIG9yIGFueSBvdGhlciB2YWx1ZSByZXByZXNlbnRpbmcgYSBjZWxsIHNpemUgKGl0IHdpbGwgYmUgdHJlYXRlZCBhcyBgc2hyaW5rYCkuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gVGhlIGNlbGwgZmxleCBwcm9wZXJ0eSB2YWx1ZS5cbkBmdW5jdGlvbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgQGlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICBAcmV0dXJuIDEgMSAwO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnZ3JvdycpIHtcbiAgICBAcmV0dXJuIDEgMCBhdXRvO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJyBvciAkc2l6ZSA9PSAnZnVsbCcgb3IgemYtaXMtZnJhY3Rpb24oJHNpemUsICRhbGxvdy1uby1kZW5vbWluYXRvcjogdHJ1ZSkpIHtcbiAgICBAcmV0dXJuIDAgMCBhdXRvO1xuICB9XG4gIEByZXR1cm4gbnVsbDtcbn1cblxuLy8vIENhbGN1bGF0ZSB0aGUgc2l6ZSBvZiBhIGNlbGwgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCByZXR1cm5zIHRoZSByZXNwb25zaXZlIGd1dHRlcnMgbWFwIGAkZ3V0dGVyc2AuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8TWFwfSBUaGUgY2VsbCBndXR0ZXIgc2l6ZSBvciB0aGUgcmVzcG9uc2l2ZSBndXR0ZXJzIG1hcC5cbkBmdW5jdGlvbiB4eS1jZWxsLWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGJyZWFrcG9pbnQ6IG51bGxcbikge1xuICAvLyBGb3IgYGF1dG9gLCByZXR1cm5zIHRoZSByZXNwb25zaXZlIG1hcCBgJGd1dHRlcnNgLlxuICBAaWYgKCRicmVha3BvaW50ID09ICdhdXRvJykge1xuICAgIEByZXR1cm4gJGd1dHRlcnM7XG4gIH1cblxuICAvLyBVc2UgdGhlIGNvbnRleHR1YWwgYnJlYWtwb2ludCBieSBkZWZhdWx0LlxuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCk7XG5cbiAgQGlmICgkYnJlYWtwb2ludCkge1xuICAgIEByZXR1cm4gLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi16ZXJvLWJyZWFrcG9pbnQpIG9yIDA7XG4gIH1cbn1cblxuLy8vIFJldHVybnMgdGhlIHBlcmNlbnRhZ2Ugc2l6ZSBvZiBhIGNlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkc2l6ZSBbJGdyaWQtY29sdW1uc10gLSBTaXplIHRvIG1ha2UgdGhlIGNlbGwuIFlvdSBjYW4gcGFzcyBhIHZhbHVlIGluIG11bHRpcGxlIGZvcm1hdHMsIHN1Y2ggYXMgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvM2AuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBTaXplIG9mIHRoZSBjZWxsIChpbiBwZXJjZW50KS5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiAkZ3JpZC1jb2x1bW5zXG4pIHtcbiAgQHJldHVybiBmcmFjdGlvbi10by1wZXJjZW50YWdlKCRzaXplLCAkZGVub21pbmF0b3I6ICRncmlkLWNvbHVtbnMpO1xufVxuXG4vLy8gUmV0dXJucyB0aGUgYXBwcm9wcmlhdGUgQ1NTIHZhbHVlIGZvciBhIGNlbGwgc2l6ZS5cbi8vL1xuLy8vIEd1dHRlcnMtcmVsYXRlZCBhcmd1bWVudHMgYXJlIHJlcXVpcmVkIGZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzIChieSBkZWZhdWx0KSBhcyB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCBvciBhbnkgZnJhY3Rpb24gbGlrZSBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgcmV0dXJucyBhIG1hcCBvZiBzaXplcyBhZGFwdGVkIHRvIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxTdHJpbmd8TWFwfSBUaGUgY2VsbCBzaXppbmcgcHJvcGVydHkgdmFsdWUsIG9yIGEgcmVzcG9uc2l2ZSBtYXAgb2YgdGhlbS5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUtY3NzKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGxcbikge1xuICAkbWFyZ2luLWd1dHRlcjogMDtcblxuICBAaWYgKCRzaXplID09ICdhdXRvJyBvciAkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgIEByZXR1cm4gYXV0bztcbiAgfVxuXG4gIC8vIEZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzLCB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkbWFyZ2luLWd1dHRlcjogeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICAgQGlmICgkbWFyZ2luLWd1dHRlciA9PSBudWxsKSB7XG4gICAgICBAZXJyb3IgJ3h5LWNlbGwtc2l6ZTogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCInO1xuICAgIH1cbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSB0aGUgY2VsbCBzaXplIChudW1iZXIpXG4gICRzaXplLXJhdzogaWYoJHNpemUgPT0gJ2Z1bGwnLCAxMDAlLCB4eS1jZWxsLXNpemUoJHNpemUpKTtcblxuICAvLyBDYWxjdWxhdGUgdGhlIGNlbGwgQ1NTIHNpemUgaW5jbHVkaW5nIGd1dHRlcnMgKHN0cmluZylcbiAgLy8gSWYgdGhlIGNlbGwgaGFzIHJlc3BvbnNpdmUgbWFyZ2luIGd1dHRlcnMsIHJldHVybiBhIHJlc3BvbnNpdmUgbWFwIG9mIHNpemVzLlxuICBAaWYgdHlwZS1vZigkbWFyZ2luLWd1dHRlcikgPT0gJ21hcCcge1xuICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogKCk7XG5cbiAgICBAZWFjaCAkYnAsICRtZyBpbiAkbWFyZ2luLWd1dHRlciB7XG4gICAgICAkbWdjOiByZW0tY2FsYygkbWcpO1xuICAgICAgQGlmICRtZ2MgPT0gMCB7XG4gICAgICAgICRtZ2M6IDByZW07XG4gICAgICB9XG4gICAgICAkc2l6ZS1jc3M6IGlmKCRtZyA9PSAwLCAkc2l6ZS1yYXcsIGNhbGMoI3skc2l6ZS1yYXd9IC0gI3skbWd9KSk7XG4gICAgICAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM6IG1hcC1tZXJnZSgkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXMsICgkYnA6ICRzaXplLWNzcykpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJHJlc3BvbnNpdmUtY3NzLXNpemVzO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIGEgc2luZ2xlIENTUyBzaXplLlxuICBAZWxzZSB7XG4gICAgLy8gTWFrZSBzdXJlIHRoYXQgMCBpcyB0cmFuc2xhdGVkIGluIDByZW0gZm9yIGNhbGMoKVxuICAgICRtZ2M6IHJlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKTtcbiAgICBAaWYgJG1nYyA9PSAwIHtcbiAgICAgICRtZ2M6IDByZW07XG4gICAgfVxuICAgICRjc3Mtc2l6ZTogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgJHNpemUtcmF3LCBjYWxjKCN7JHNpemUtcmF3fSAtICN7JG1nY30pKTtcbiAgICBAcmV0dXJuICRjc3Mtc2l6ZTtcbiAgfVxufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbkBtaXhpbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgJGJhc2U6IHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgZmxleDogI3skYmFzZX07XG5cbiAgLy8gU2V0IGJhc2Ugc3R5bGVzIGZvciBcImZ1bGxcIiBvbmx5XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gUmVzZXRzIGEgY2VsbHMgd2lkdGggKG9yIGhlaWdodCBpZiB2ZXJ0aWNhbCBpcyB0cnVlKSBhcyB3ZWxsIGFzIHN0cmlwcyBpdHMgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXJlc2V0KCR2ZXJ0aWNhbDogdHJ1ZSkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG4gICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIG1heC0jeyRkaXJlY3Rpb259OiBub25lO1xufVxuXG4vLy8gU2V0cyBzaXppbmcgcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBHdXR0ZXJzLXJlbGF0ZWQgYXJndW1lbnRzIGFyZSByZXF1aXJlZCBmb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycyAoYnkgZGVmYXVsdCkgYXMgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyBzaXplcyBhZGFwdGVkIGZvciByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zaXplKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkc2l6ZXM6IHh5LWNlbGwtc2l6ZS1jc3MoJHNpemUsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRicmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuXG4gIEBpZiAodHlwZS1vZigkc2l6ZXMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJHNpemVzKSB7XG4gICAgICAjeyRkaXJlY3Rpb259OiAkLXpmLWJwLXZhbHVlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgI3skZGlyZWN0aW9ufTogJHNpemVzO1xuICB9XG59XG5cbi8vLyBTZXRzIGd1dHRlcnMgcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBEaXJlY3Rpb24gb2YgdGhlIGd1dHRlcnMgdG8gb3V0cHV0LiBTZWUgYCRndXR0ZXItcG9zaXRpb25gLlxuQG1peGluIHh5LWNlbGwtZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAvLyBHZXQgdGhlIGRlZmF1bHQgZ3V0dGVyIHBvc2l0aW9uIGFjY29yZGluZyB0byBjZWxsIGRpcmVjdGlvblxuICBAaWYoJGd1dHRlci1wb3NpdGlvbiA9PSBudWxsKSB7XG4gICAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuICB9XG5cbiAgLy8gR2V0IHRoZSBndXR0ZXIgd2lkdGggZm9yIHRoaXMgYnJlYWtwb2ludFxuICAkZ3V0dGVyLXdpZHRoOiB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgQGlmICgkZ3V0dGVyLXdpZHRoID09IG51bGwpIHtcbiAgICBAZXJyb3IgJ3h5LWNlbGwtZ3V0dGVyczogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCInO1xuICB9XG5cbiAgQGlmICgkZ3V0dGVyLXR5cGUgYW5kICRndXR0ZXItdHlwZSAhPSBub25lKSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLXdpZHRoLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgY2VsbCBmb3IgeW91ciBncmlkLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW251bGxdIC0gW0RFUFJFQ0FURURdIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJG91dHB1dCBbKGJhc2Ugc2l6ZSBndXR0ZXJzKV0gLSBDZWxsIHBhcnRzIHRvIG91dHB1dC4gWW91IHdpbGwgbmVlZCB0byBnZW5lcmF0ZSBvdGhlcnMgcGFydHMgb2YgdGhlIGNlbGwgc2VwZXJhdGVseSwgaXQgbWF5IG5vdCB3b3JrIHByb3Blcmx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgLy8gRGVmYXVsdCBmb3IgJGd1dHRlci1vdXRwdXRcbiAgQGlmICgkZ3V0dGVyLW91dHB1dCAhPSBudWxsKSB7XG4gICAgQHdhcm4gJ3h5LWNlbGw6ICRndXR0ZXItb3V0cHV0IGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC4gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wJztcbiAgICBAaWYgKCRndXR0ZXItb3V0cHV0ID09IGZhbHNlKSB7XG4gICAgICAkb3V0cHV0OiBzbC1yZW1vdmUoJG91dHB1dCwgZ3V0dGVycyk7XG4gICAgfVxuICB9XG5cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBiYXNlKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG4gIH1cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBzaXplKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkc2l6ZSwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBndXR0ZXJzKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIGB4eS1jZWxsLXN0YXRpYygpYCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuXG4vLy8gVXNlIGB4eS1jZWxsKClgIGluc3RlYWQgd2l0aCBgJG91dHB1dDogKHNpemUgZ3V0dGVycylgIHRvIG5vdCBnZW5lcmF0ZSB0aGUgY2VsbCBiYXNlLlxuLy8vIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMFxuLy8vXG4vLy8gQGRlcHJlY2F0ZWQgdjYuNi4wXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy4gQWx3YXlzIGB0cnVlYCBmb3IgbWFyZ2luIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICBAd2FybiAneHktY2VsbC1zdGF0aWMoKSBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuIFVzZSBcInh5LWNlbGwoKVwiIGluc3RlYWQuIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMCc7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gICQtZ3V0dGVyLW91dHB1dDogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCB0cnVlLCAkZ3V0dGVyLW91dHB1dCk7XG4gICQtZ3V0dGVyLW1hcmdpbjogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCAkZ3V0dGVyLCAwKTtcblxuICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkLWd1dHRlci1tYXJnaW4sICR2ZXJ0aWNhbCk7XG4gIEBpZiAoJC1ndXR0ZXItb3V0cHV0KSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgY29ycmVjdGx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRuKSk7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwsICRvdXRwdXQpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgdG8gb2Zmc2V0IGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfSBUaGUgY2VsbCBvZmZzZXQgcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkc2l6ZTogeHktY2VsbC1zaXplKCRuKTtcblxuICAkb2Zmc2V0OiAkc2l6ZTtcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAvLyBNYWtlIHN1cmUgdGhhdCAwIGlzIHRyYW5zbGF0ZWQgaW4gMHJlbSBmb3IgY2FsYygpXG4gICAgJGd1dHRlcjogcmVtLWNhbGMoeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkYnJlYWtwb2ludCkpO1xuICAgIEBpZiAkZ3V0dGVyID09IDAge1xuICAgICAgJGd1dHRlcjogMHJlbTtcbiAgICB9XG4gICAgJG9mZnNldDogaWYoJGd1dHRlciA9PSAwLCAkc2l6ZSwgY2FsYygjeyRzaXplfSArICN7JGd1dHRlcn0gLyAyKSk7XG4gIH1cbiAgQHJldHVybiAkb2Zmc2V0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuIElmIGEgbGlzdCBpcyBnaXZlbiwgbWVkaWEtcXVlcmllcyB3aWxsIGJlIGdlbmVyYXRlZC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICAkbixcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCwgJGRlZmF1bHQ6ICQtemYtemVyby1icmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsLCAndG9wJywgJGdsb2JhbC1sZWZ0KTtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKCRicmVha3BvaW50LCAkbWVkaWEtcXVlcmllczogJ2Zvci1saXN0cycpIHtcbiAgICAkb2Zmc2V0OiB4eS1jZWxsLW9mZnNldCgkbiwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSk7XG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JG9mZnNldH07XG4gIH1cbn1cbiIsIi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4vLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IDAgaXMgdHJhbnNsYXRlZCBpbiAwcmVtIGZvciBjYWxjKClcbiAgICAgICAgQGlmICRndXR0ZXIgPT0gMCB7XG4gICAgICAgICAgJGd1dHRlcjogMHJlbTtcbiAgICAgICAgfVxuICAgICAgICBoZWlnaHQ6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCAwIGlzIHRyYW5zbGF0ZWQgaW4gMHJlbSBmb3IgY2FsYygpXG4gICAgICAgIEBpZiAkZ3V0dGVyID09IDAge1xuICAgICAgICAgICRndXR0ZXI6IDByZW07XG4gICAgICAgIH1cbiAgICAgICAgd2lkdGg6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgaGVpZ2h0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB3aWR0aDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNb2RpZmllcyBhIGNlbGwgdG8gZ2l2ZSBpdCBcImJsb2NrXCIgYmVoYXZpb3IgKG92ZXJmbG93IGF1dG8sIGluZXJ0aWFsIHNjcm9sbGluZylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuQG1peGluIHh5LWNlbGwtYmxvY2soXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkcHJvcGVydHk6IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCAnb3ZlcmZsb3cteScsICdvdmVyZmxvdy14Jyk7XG5cbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfSBAZWxzZSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4vLy8gQ29udGFpbmVyIGZvciBpbnNpZGUgYSBncmlkIGZyYW1lIGNvbnRhaW5pbmcgbXVsdGlwbGUgYmxvY2tzLiBUeXBpY2FsbHkgdXNlZFxuLy8vIGFzIGEgbW9kaWZpZXIgZm9yIGEgYC5jZWxsYCB0byBhbGxvdyB0aGUgY2VsbCB0byBwYXNzIGFsb25nIGZsZXggc2l6aW5nXG4vLy8gY29uc3RyYWludHMgLyBmcm9tIHBhcmVudHMgdG8gY2hpbGRyZW4uXG5AbWl4aW4geHktY2VsbC1ibG9jay1jb250YWluZXIoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG5cbiAgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIElnbm9yZWQgaWYgbnVsbCAoZGVmYXVsdClcbi8vLyBAdHlwZSBGb250LVdlaWdodFxuJGJ1dHRvbi1mb250LXdlaWdodDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBidXR0b25zLCB0cmFuc3BhcmVudCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1ib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGZvbnQtd2VpZ2h0OiAkYnV0dG9uLWZvbnQtd2VpZ2h0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBvciBjbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1maWxsLXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC4gYHNvbGlkYCBoYXMgbm8gZWZmZWN0cy5cbkBtaXhpbiBidXR0b24tZmlsbChcbiAgJGZpbGw6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gY2xlYXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jbGVhcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlcyBvZiBhIHNvbGlkL2hvbGxvdy9jbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW5zIGBidXR0b24tc3R5bGVgLCBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgYW5kIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciBlZmZlY3RzIG9mIHZpc3VhbCBzdHlsaW5nIHBhcmFtZXRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZmlsbCBbJGJ1dHRvbi1maWxsXSAtIFR5cGUgb2YgZmlsbGluZyBiZXR3ZWVuIGBob2xsb3dgIGFuZCBgY2xlYXJgLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSAtXG5AbWl4aW4gYnV0dG9uLWZpbGwtc3R5bGUoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGwsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkZmlsbCA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXItc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24taG9sbG93LXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBhbmQgYm9yZGVyIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGhvdmVyLWxpZ2h0bmVzcyBbJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXSAtIENvbG9yIGxpZ2h0bmVzcyBvbiBob3Zlci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYm9yZGVyLXdpZHRoIFskYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhdIC0gQm9yZGVyIHdpZHRoIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGNsZWFyIGJ1dHRvbi5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1jbGVhci1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24tY2xlYXIge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG5AbWl4aW4gYnV0dG9uLWNsZWFyLXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50IGFuZCByZXNldGluZyB0aGUgY3Vyc29yLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3BhY2l0eSBbJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXSAtIE9wYWNpdHkgb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWRcbikge1xuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJHN0eWxlKTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJHN0eWxlLCAkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCRzdHlsZTogbm9uZSk7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJHNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcuI3skZmlsbGluZ30nKTtcblxuICAgICAgJiN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRmaWxsaW5nKTtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kcHJpbWFyeS1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kd2FybmluZy1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRhbGVydC1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzdWNjZXNzLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6IGRpdmlkZSgkcmdiLCAyNTUpO1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsIGRpdmlkZSgkcmdiLCAxMi45MiksIHBvdyhkaXZpZGUoJHJnYiArIDAuMDU1LCAxLjA1NSksIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86IGRpdmlkZSgkbHVtaW5hbmNlMSwgJGx1bWluYW5jZTIpO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IGRpdmlkZSgxLCAkcmF0aW8pO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgKiAwLjE7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuICdDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fSc7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgei1pbmRleCBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tei1pbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gc2l6ZSB0byB1c2UgYXMgZGVmYXVsdFxuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBzZWUgJGNsb3NlYnV0dG9uLXNpemVcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbFxuLy8vIEBzZWUgJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbFxuJGNsb3NlYnV0dG9uLWRlZmF1bHQtc2l6ZTogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTaXplKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uIFVzZWQgdG8gZ2VuZXJhdGUgc2l6aW5nIG1vZGlmaWVycy5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkY2xvc2VidXR0b24tei1pbmRleDtcbiAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uIHtcbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgLy8gVXNlIGJ5IGRlZmF1bHQgdGhlIHBsYWNlaG9sZGVyIG9mIHRoZSBkZWZhdWx0IHNpemVcbiAgICBAZXh0ZW5kICV6Zi1jbG9zZS1idXR0b24tLSN7JGNsb3NlYnV0dG9uLWRlZmF1bHQtc2l6ZX07XG5cbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAvLyBHZW5lcmF0ZSBhIHBsYWNlaG9sZGVyIGFuZCBhIGNsYXNzIGZvciBlYWNoIHNpemVcbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGNsb3NlYnV0dG9uLXNpemUge1xuICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAlemYtY2xvc2UtYnV0dG9uLS0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAZXh0ZW5kICV6Zi1jbG9zZS1idXR0b24tLSN7JG5hbWV9O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhbGxvdXRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmYWRlIHZhbHVlIGZvciBjYWxsb3V0IGJhY2tncm91bmRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZSBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBDYWxsb3V0IHBhZGRpbmdzLlxuLy8vIEB0eXBlIE1hcFxuJGNhbGxvdXQtc2l6ZXM6IChcbiAgc21hbGw6IDAuNXJlbSxcbiAgZGVmYXVsdDogMXJlbSxcbiAgbGFyZ2U6IDNyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMsIGlmIHRoZSBjYWxsb3V0IGhhcyBhIGRhcmsgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQW1vdW50IHRvIHRpbnQgbGlua3MgdXNlZCB3aXRoaW4gY29sb3JlZCBwYW5lbHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlLlxuLy8vIEB0eXBlIE51bWJlciB8IEJvb2xlYW5cbiRjYWxsb3V0LWxpbmstdGludDogMzAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGEgY2FsbG91dCwgaW5jbHVkaW5nIHBhZGRpbmcgYW5kIG1hcmdpbi5cbkBtaXhpbiBjYWxsb3V0LWJhc2UoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkY2FsbG91dC1tYXJnaW47XG4gIHBhZGRpbmc6IG1hcC1nZXQoJGNhbGxvdXQtc2l6ZXMsIGRlZmF1bHQpO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gbWFwLXJlbW92ZSgkY2FsbG91dC1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgkcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsIGRlZmF1bHQpO1xuXG4gICAgQGVhY2ggJG5hbWUsICRyYXRpbyBpbiAkcmF0aW9zIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluICQtemYtZmxleC1qdXN0aWZ5IHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCJAZnVuY3Rpb24gLXpmLWZsZXgtanVzdGlmeSgkdGV4dC1kaXJlY3Rpb24pIHtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gMC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIDAuMDAxMjU7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRGFyayBNb2RlIFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIElFMTArIFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWllIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgLnNob3ctZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oaWRlLWZvci1pZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gU3RpY2t5IFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaXMtc3R1Y2sgLnNob3ctZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmlzLXN0dWNrIC5oaWRlLWZvci1zdGlja3kge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIlxuYSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5mbGV4LXZpZGVvIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogIzBkMGQwZDtcbiAgYmFja2dyb3VuZDogIzBkMGQwZCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xufSIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3N0b2x6bCc7XG4gIHNyYzogdXJsKCcjeyRhcHAtZm9udC1wYXRofXN0b2x6bC1ib29rLXdlYmZvbnQuZW90Jyk7XG4gIHNyYzogdXJsKCcjeyRhcHAtZm9udC1wYXRofXN0b2x6bC1ib29rLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICB1cmwoJyN7JGFwcC1mb250LXBhdGh9c3RvbHpsLWJvb2std2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoJyN7JGFwcC1mb250LXBhdGh9c3RvbHpsLWJvb2std2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgdXJsKCcjeyRhcHAtZm9udC1wYXRofXN0b2x6bC1ib29rLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgIHVybCgnI3skYXBwLWZvbnQtcGF0aH1zdG9semwtYm9vay13ZWJmb250LnN2ZyNzdG9semxib29rJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdzdG9semwnO1xuICBzcmM6IHVybCgnI3skYXBwLWZvbnQtcGF0aH1zdG9semwtYm9sZC13ZWJmb250LmVvdCcpO1xuICBzcmM6IHVybCgnI3skYXBwLWZvbnQtcGF0aH1zdG9semwtYm9sZC13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgdXJsKCcjeyRhcHAtZm9udC1wYXRofXN0b2x6bC1ib2xkLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgdXJsKCcjeyRhcHAtZm9udC1wYXRofXN0b2x6bC1ib2xkLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnI3skYXBwLWZvbnQtcGF0aH1zdG9semwtYm9sZC13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICB1cmwoJyN7JGFwcC1mb250LXBhdGh9c3RvbHpsLWJvbGQtd2ViZm9udC5zdmcjc3RvbHpsYm9sZCcpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cblxuQG1peGluIGFwcC1uYXZpZ2F0aW9uLWFuY2hvci1jb2xvcigpIHtcbiAgYSB7XG4gICAgY29sb3I6IHdoaXRlOyAvLyRhbmNob3ItY29sb3I7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYXBwLWFuY2hvci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwLWVudHJ5LXR5cG9ncmFwaHkoKSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuXG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgaHlwaGVuczogYXV0bztcbn1cbiIsImh0bWwge1xufVxuXG5ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogMTAwc3ZoO1xufSIsImJvZHkge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1wb3NpLmpwZyk7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcbn0iLCIuYXBwLWJvYXJkIHtcbiAgICBAaW5jbHVkZSBhcHAtY29udGVudC1sYXlvdXQoJHdpZHRoOiAobWVkaXVtOiA2NDBweCwgeGxhcmdlOiA3MjBweCksICRtYXJnaW46IChzbWFsbCBvbmx5OiAzcmVtIGF1dG8sIG1lZGl1bTogNXJlbSBhdXRvLCBsYXJnZTogN3JlbSBhdXRvKSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59IiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4kYXBwLWdsb2JhbC13aWR0aDogMTkyMHB4ICFkZWZhdWx0O1xuJGFwcC1sYXJnZS13aWR0aDogMTQ0MHB4ICFkZWZhdWx0O1xuJGFwcC1tZWRpdW0td2lkdGg6IDEyODBweCAhZGVmYXVsdDtcbiRhcHAtc21hbGwtd2lkdGg6IDkwMHB4ICFkZWZhdWx0O1xuXG4kYXBwLWd1dHRlcjogNjBweCAhZGVmYXVsdDtcbiRhcHAtZ3V0dGVyLS1zbWFsbDogMzBweCAhZGVmYXVsdDtcbiRhcHAtZ3V0dGVyLS14bGFyZ2U6IDE0MHB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gYXBwLWNvbnRlbnQtbGF5b3V0KCR3aWR0aDogKHhsYXJnZSBkb3duOiAkYXBwLW1lZGl1bS13aWR0aCwgeHhsYXJnZTogJGFwcC1sYXJnZS13aWR0aCksICRtYXJnaW46IDAgYXV0bywgJHBhZGRpbmc6IChzbWFsbCBvbmx5OiAwIG1hdGguZGl2KCRhcHAtZ3V0dGVyLS1zbWFsbCwgMiksIG1lZGl1bTogMCBtYXRoLmRpdigkYXBwLWd1dHRlciwgMiksIHhsYXJnZTogMCBtYXRoLmRpdigkYXBwLWd1dHRlci0teGxhcmdlLCAyKSkpIHtcblxuICAgIEBpZiB0eXBlLW9mKCR3aWR0aCk9PW1hcCB7XG4gICAgICAgIEBlYWNoICRxdWVyeSBpbiBtYXAta2V5cygkd2lkdGgpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5KSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBtYXAtZ2V0KCR3aWR0aCwgJHF1ZXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gICAgfVxuXG4gICAgQGlmIHR5cGUtb2YoJG1hcmdpbik9PW1hcCB7XG4gICAgICAgIEBlYWNoICRxdWVyeSBpbiBtYXAta2V5cygkbWFyZ2luKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogbWFwLWdldCgkbWFyZ2luLCAkcXVlcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46ICRtYXJnaW47XG4gICAgfVxuXG4gICAgQGlmIHR5cGUtb2YoJHBhZGRpbmcpPT1tYXAge1xuICAgICAgICBAZWFjaCAkcXVlcnkgaW4gbWFwLWtleXMoJHBhZGRpbmcpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogbWFwLWdldCgkcGFkZGluZywgJHF1ZXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgfVxuXG4gICAgQGNvbnRlbnQ7XG59XG5cbkBtaXhpbiBhcHAtaW1hZ2UtbGluay1ob3ZlcmVkKCkge1xuICAgIC8vIG9wYWNpdHk6IC44NTtcbn1cblxuQG1peGluIGFwcC1pbWFnZWhvdmVyKCkge1xuICAgICY6aG92ZXIge1xuXG4gICAgICAgIC8vIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICA+aW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFwcC1pbWFnZS1saW5rLWhvdmVyZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAmOmhvdmVyOmJlZm9yZSB7XG4gICAgLy8gICBjb250ZW50OiBcIlwiO1xuICAgIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICAgdG9wOiAwO1xuICAgIC8vICAgbGVmdDogMDtcbiAgICAvLyAgIGJvdHRvbTogMDtcbiAgICAvLyAgIHJpZ2h0OiAwO1xuICAgIC8vICAgei1pbmRleDogMTA7XG5cbiAgICAvLyAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjEwKTtcbiAgICAvLyB9XG59XG5cbkBtaXhpbiBhcHAtdGh1bWJuYWlsKCRtYXJnaW46IDAgMCAxLjVyZW0gMCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46ICRtYXJnaW47XG4gICAgcGFkZGluZzogMCAwIHBlcmNlbnRhZ2UobWF0aC5kaXYoOSwgMTYpKSAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICA+aW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG5AbWl4aW4gYXBwLWxpc3QoJG1hcmdpbjogKHNtYWxsIG9ubHk6IDAgLThweCwgbWVkaXVtOiAwICgkYXBwLWd1dHRlci0tc21hbGwgKiAtMC41KSksICRwYWRkaW5nOiAwLCAkY2VudGVyZWQ6IGZhbHNlKSB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIEBpZiAkY2VudGVyZWQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAaWYgdHlwZS1vZigkbWFyZ2luKT09bWFwIHtcbiAgICAgICAgQGVhY2ggJHF1ZXJ5IGluIG1hcC1rZXlzKCRtYXJnaW4pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBtYXAtZ2V0KCRtYXJnaW4sICRxdWVyeSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogJG1hcmdpbjtcbiAgICB9XG5cbiAgICBAaWYgdHlwZS1vZigkcGFkZGluZyk9PW1hcCB7XG4gICAgICAgIEBlYWNoICRxdWVyeSBpbiBtYXAta2V5cygkcGFkZGluZykge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcXVlcnkpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBtYXAtZ2V0KCRwYWRkaW5nLCAkcXVlcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICB9XG5cbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICBAY29udGVudDtcbn1cblxuQG1peGluIGFwcC1saXN0LWl0ZW0oJHNpemU6IChzbWFsbCBvbmx5OiA1MCUsIG1lZGl1bSBvbmx5OiAzMy4zMzMlLCBsYXJnZTogMjUlLCB4eGxhcmdlOiAyMCUpLCAkbWFyZ2luOiAwLCAkcGFkZGluZzogKHNtYWxsIG9ubHk6IDAgOHB4LCBtZWRpdW06IDAgbWF0aC5kaXYoJGFwcC1ndXR0ZXItLXNtYWxsLCAyKSkpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46ICRtYXJnaW47XG5cbiAgICBAaWYgdHlwZS1vZigkcGFkZGluZyk9PW1hcCB7XG4gICAgICAgIEBlYWNoICRxdWVyeSBpbiBtYXAta2V5cygkcGFkZGluZykge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcXVlcnkpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBtYXAtZ2V0KCRwYWRkaW5nLCAkcXVlcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICB9XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAgIEBlYWNoICRxdWVyeSBpbiBtYXAta2V5cygkc2l6ZSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSkge1xuICAgICAgICAgICAgd2lkdGg6IG1hcC1nZXQoJHNpemUsICRxdWVyeSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAY29udGVudDtcbn1cblxuQG1peGluIGFwcC1saXN0LWl0ZW0tcGhvdG8oJG1hcmdpbnM6IChzbWFsbCBvbmx5OiAwIDAgLjlyZW0gMCwgbWVkaXVtIG9ubHk6IDAgMCAuOXJlbSAwLCBsYXJnZTogMCAwIDFyZW0gMCksICRzbWFsbC1vZmY6IGZhbHNlKSB7XG5cbiAgICBAZWFjaCAkcXVlcnkgaW4gbWFwLWtleXMoJG1hcmdpbnMpIHtcbiAgICAgICAgQGlmIG5vdCAoc3RyLWluZGV4KCN7JHF1ZXJ5fSwgc21hbGwpIGFuZCAkc21hbGwtb2ZmPT10cnVlKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFwcC10aHVtYm5haWwoJG1hcmdpbjogbWFwLWdldCgkbWFyZ2lucywgJHF1ZXJ5KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJHNtYWxsLW9mZiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGFwcC1tYXRyaXgoJGJhY2tncm91bmQ6IHRydWUpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAaWYgJGJhY2tncm91bmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICAgIH1cblxuICAgIEBjb250ZW50O1xufVxuXG5AbWl4aW4gYXBwLW1hdHJpeC1ib3JkZXIoJGNvbE51bWJlciwgJGJvcmRlci1jb2xvcjogIzJkMmQyZCkge1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKG1hdGguZGl2KDEsICRjb2xOdW1iZXIpKTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXG4gICAgJjpudGgtY2hpbGQoI3skY29sTnVtYmVyfW4rMSkge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIC8vIHRvcDogMDtcblxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKCN7JGNvbE51bWJlcn1uKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxufVxuXG5AbWl4aW4gYXBwLW1hdHJpeC1pdGVtLWFuY2hvcigkYmFja2dyb3VuZDogdHJ1ZSkge1xuICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAuODVyZW07XG4gICAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgQGlmICRiYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUgYSB7XG4gICAgICAgIGNvbG9yOiAjNjY2O1xuICAgIH1cbn1cbiIsIi5hcHAtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uYXBwLWNvbnRhaW5lci1ibG9jayB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLy8gYm9yZGVyLXRvcDogM3B4IHNvbGlkICNmZmY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAvLyBib3JkZXItdG9wOiAxcHggc29saWQgIzY2NjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC8vIGJvcmRlci10b3A6IDFweCBzb2xpZCAjM2QzZDNkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEuNzVyZW0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIgLmFwLWRpc2NsYWltZXIge1xuICBtYXJnaW46IDAgMCA0cmVtIDA7XG5cbiAgPiBoMiB7XG4gICAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICB1bCwgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAgID4gbGkge1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIH1cbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogM3JlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAzcmVtIDAgMCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICRtZWRpdW0tZ3JheTtcbiAgfVxuIH0iLCIuYXAtZWRpdC1mbG9hdGwge1xuICAgICRwYXJlbnQ6ICY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuXG4gICAgLy8gYm9yZGVyOiAxcHggc29saWQgcmVkO1xuXG4gICAgJl9fbWltaWNsYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG4gICAgfVxuXG4gICAgbGFiZWwsXG4gICAgJl9fbWltaWNsYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAyLjEyNXJlbTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuXG4gICAgICAgIC8vIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuXG4gICAgICAgIC8vIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIC8vIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAvLyB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgIH1cblxuICAgIGxhYmVsLFxuICAgIGlucHV0W3R5cGU9dGV4dF0sXG4gICAgaW5wdXRbdHlwZT1lbWFpbF0sXG4gICAgaW5wdXRbdHlwZT1wYXNzd29yZF0sXG4gICAgdGV4dGFyZWEsXG4gICAgc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIC8vIGJvcmRlcjogMDtcbiAgICAgICAgLy8gYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLy8gYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICAvLyB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT10ZXh0XSxcbiAgICBpbnB1dFt0eXBlPWVtYWlsXSxcbiAgICBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbiAgICB0ZXh0YXJlYSxcbiAgICBzZWxlY3Qge1xuICAgICAgICAmLmFjdGl2ZSB7fVxuXG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgLy8gb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIC8vIGJvcmRlcjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KC5hY3RpdmUpK2xhYmVsIHtcbiAgICAgICAgICAgICYuLWludmlzaWJsZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bm90KC4taW52aXNpYmxlKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgc2NhbGUoMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZStsYWJlbCB7XG4gICAgICAgICAgICAmLi1pbnZpc2libGUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm5vdCguLWludmlzaWJsZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb20tZmxvYXRsLWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLjI1cmVtLCAtLjdyZW0pIHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgID5zcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kOyAvLyR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gZWRpdC9mbG9hdGxcbiRjb20tZmxvYXRsLWNvbG9yLWFjdGl2ZTogIzY2NDZEQjsiLCIuYXBwLWMtZW1iZWQge1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG5cbiAgPiAudmlkZW8tY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgPiBwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IC4zcmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IC42cmVtIDFyZW07XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcbiAgfVxufVxuXG4uYXBwLWMtZmlsZXMge1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgPiB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgPiBsaSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAuN3JlbSAwO1xuXG4gICAgICA+IGEge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYXBwLWMtZW50cnkge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIEBpbmNsdWRlIGFwcC1lbnRyeS10eXBvZ3JhcGh5O1xuXG4gID4gOm5vdCgudmlkZW8tY29udGFpbmVyKTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luOiAycmVtIDAgMS4zcmVtIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW46IDNyZW0gMCAycmVtIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgbWFyZ2luOiAycmVtIDAgMS41cmVtIDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEuOXJlbTtcbiAgfVxufSIsIi8vIHBhdGhcbiRhcHAtaW1nLXBhdGg6IFwiLi4vaW1nL1wiO1xuJGFwcC1mb250LXBhdGg6IFwiLi4vZm9udHMvXCI7XG5cbi8vIGxheW91dFxuJGFwcC1nbG9iYWwtd2lkdGg6IDE5MjBweDtcbiRhcHAtbWVkaXVtLXdpZHRoOiAxMjgwcHg7XG4kYXBwLXNtYWxsLXdpZHRoOiA5MDBweDtcblxuLy8gdHlwb2dyYXBoeVxuJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDogIzNhM2EzYTtcbiIsIiRhcHAtZm9vdGVyLWZvbnQtY29sb3I6ICNhYWFhYWEgIWRlZmF1bHQ7XG5cbi5hcHAtcGFnZXRvcCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBlYXNlLWluLW91dCAwO1xuXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAycmVtO1xuICAgIGJvdHRvbTogMnJlbTtcbiAgICB6LWluZGV4OiA5OTk7XG5cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogNDVweDtcbiAgICBoZWlnaHQ6IDQ1cHg7XG5cbiAgICA+YSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgIGhlaWdodDogNDVweDtcblxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofXBhZ2V0b3AucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIG9wYWNpdHk6IC40O1xuXG4gICAgICAgIHRleHQtaW5kZW50OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxufVxuXG4uYXBwLWZvb3Rlci1jb250YWluZXIge1xuXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcbiAgICBjb2xvcjogJGFwcC1mb290ZXItZm9udC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW46IDZyZW0gMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDVyZW0gMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDZyZW0gMCA0LjVyZW0gMDtcbiAgICB9XG59XG5cbi5hcHAtZm9vdGVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAvLyBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge31cbn1cblxuLmFwcC1mb290ZXJfX2NvbnRlbnQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB3aWR0aDogMzMuMzMzJTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMjAlO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLWZvb3Rlci1uYXZfX3RpdGxlIHtcblxuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMS4yNXJlbSAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgY29sb3I6ICRhcHAtZm9vdGVyLWZvbnQtY29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjhweCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMjhweCAwO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBjb2xvcjogJGFwcC1mb290ZXItZm9udC1jb2xvcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDAgMCAyOHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAyOHB4IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFwcC1mb290ZXItbmF2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICA+bGkge1xuICAgICAgICA+YSB7XG4gICAgICAgICAgICBjb2xvcjogJGFwcC1mb290ZXItZm9udC1jb2xvcjtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYTNhM2E7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG5cbiAgICAgICAgPmxpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC43NXJlbSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgPmxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE0cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgID5hIHt9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDogMTYxcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICB9XG59XG5cblxuLmFwcC1jaGFubmVscyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgPmxpIHtcbiAgICAgICAgPmEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBjb2xvcjogJGFwcC1mb290ZXItZm9udC1jb2xvcjtcblxuICAgICAgICAgICAgPmltZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIC44NzVyZW0gMCAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICAgIC8vIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cbiAgICAgICAgPmxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgPmxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcblxuICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgIC8vIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICA+bGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMS4yNXJlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLWNvcHlyaWdodCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gICAgY29sb3I6ICM2NjY7XG5cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge31cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHt9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICB9XG59XG4iLCIvLyBAZ3JvdXAgb3ZlcnJpZGUgZm91bmRhdGlvblxuXG5wLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmxlZ2VuZC5jb2x1bW5zIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cblxuLy8gQGVuZCBncm91cCBvdmVycmlkZSBmb3VuZGF0aW9uXG5cblxuLy8gQGdyb3VwIGVycm9yXG5cbi5oYXMtZXJyb3Ige1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgfVxuXG4gIGxlZ2VuZCxcbiAgbGFiZWwge1xuICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJyb3JzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogKCRmb3JtLXNwYWNpbmcgKiAtMC41KSAwICRmb3JtLXNwYWNpbmcgMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG5cbiAgKyAuZXJyb3JzIHtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNzU7XG4gIH1cbn1cblxuLy8gQGVuZCBncm91cCBlcnJvclxuXG5cbi8vIEBncm91cCBmb3JtIGxheW91dFxuXG4uc3RvcmUtZm9ybS10aXRsZSB7XG4gIHBhZGRpbmc6IDAgMCAxcmVtIDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luOiAycmVtIDAgMS41cmVtIDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbjogM3JlbSAwIDJyZW0gMDtcbiAgfVxufVxuXG4uc3RvcmUtZm9ybS1zZW5kIHtcbiAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vLyBAZW5kIGdyb3VwIGZvcm0gbGF5b3V0XG5cblxuLy8gQGdyb3VwIGZvcm0gY29udHJvbHNcblxuLnN0b3JlLWZvcm0tY29udHJvbC1sYWJlbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjsgLy8kbWVkaXVtLWdyYXk7XG4gICAgPiBsYWJlbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXG4gIH1cbn1cblxuLnN0b3JlLWZvcm0tY29udHJvbC1vcHRpb25zIHtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZyAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgPiBsaSB7XG4gICAgbWFyZ2luOiAwIDAgKCRmb3JtLXNwYWNpbmcgKiAwLjI1KSAwO1xuXG4gICAgaW5wdXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLnN0b3JlLWZvcm0tY29udHJvbC1oZWxwdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6ICRhbGVydC1jb2xvcjtcbn1cblxuLnN0b3JlLWZvcm0tY29udHJvbC1wcmV2aWV3IHtcbiAgPiBkdCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG4uc3RvcmUtZm9ybS1jb250cm9sLXBhc3N3b3JkIHtcbiAgbWF4LXdpZHRoOiAxNXJlbTtcbn1cblxuLnN0b3JlLWZvcm0taW5wdXQtc21hbGwge1xuICBtYXgtd2lkdGg6IDhyZW07XG59XG5cbi5zdG9yZS1mb3JtLWlucHV0LW1lZGl1bSB7XG4gIG1heC13aWR0aDogMTJyZW07XG59XG5cbi50b2dnbGVwYXNzd29yZCB7XG4gIG1hcmdpbjogKCRmb3JtLXNwYWNpbmcgKiAtMC43KSAwICRmb3JtLXNwYWNpbmcgMDtcblxuICA+IGxhYmVsID4gaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gQGVuZCBncm91cCBmb3JtIGNvbnRyb2xzIiwiLnZpZGVvLWNvbnRhaW5lcixcbi5tZWRpYSB7XG4gICAgQGV4dGVuZCAuZmxleC12aWRlbztcbiAgICBAZXh0ZW5kIC53aWRlc2NyZWVuO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNHJlbTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGlmcmFtZSxcbiAgICBvYmplY3QsXG4gICAgZW1iZWQsXG4gICAgdmlkZW8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG59IiwiLmFwcC1tZW51IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgei1pbmRleDogOTk5OTtcblxuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgICB9XG5cbiAgICA+dWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2sgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMmEyYTJhO1xuXG4gICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJhMmEyYTtcblxuICAgICAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCwgOTAsIDkwLCAuMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgLjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIuYXBwLW1lbnUtaWNvbiB7XG4gICAgJHBhcmVudDogJjtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vIHRvcDogMDtcbiAgICAvLyBib3R0b206IDA7XG4gICAgLy8gcmlnaHQ6IDFyZW07XG5cbiAgICAvLyBtYXJnaW46IGF1dG87XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgMCAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAvLyBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICZfX2luZGljYXRvciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgLjc1cmVtIDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgICAgICN7JHBhcmVudH1fX2luZGljYXRvciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCR3aGl0ZSAycHgsIHRyYW5zcGFyZW50IDJweCwgdHJhbnNwYXJlbnQgOXB4LCAkd2hpdGUgOXB4LCAkd2hpdGUgMTFweCwgdHJhbnNwYXJlbnQgMTFweCwgdHJhbnNwYXJlbnQgMThweCwgJHdoaXRlIDE4cHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICN7JHBhcmVudH1fX2luZGljYXRvciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICB9XG59IiwiLmFwcC1wb3N0LWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgQGluY2x1ZGUgYXBwLWVudHJ5LXR5cG9ncmFwaHk7XG5cbiAgICA+IDpub3QoLnZpZGVvLWNvbnRhaW5lcik6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG5cbiAgICAgICAgLy8gJjpiZWZvcmUge1xuICAgICAgICAvLyAgIGNvbnRlbnQ6IFwiIyNcIjtcbiAgICAgICAgLy8gICBtYXJnaW46IDAgLjVyZW0gMCAwO1xuICAgICAgICAvLyAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIC8vICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgICAgICAvLyAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAvLyB9XG5cbiAgICAgICAgLy8gJjphZnRlciB7XG4gICAgICAgIC8vICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC8vICAgY29udGVudDogXCJcIjtcbiAgICAgICAgLy8gICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLy8gICB3aWR0aDogNzUlO1xuICAgICAgICAvLyAgIC8vIGhlaWdodDogMXB4O1xuICAgICAgICAvLyAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMzMzO1xuICAgICAgICAvLyB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW46IDJyZW0gMCAxLjNyZW0gMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMS4xMjVyZW0gMCAwIDA7XG4gICAgICAgICAgICAgICAgLy8gd2lkdGg6IDc1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46IDNyZW0gMCAxLjVyZW0gMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMS4yNXJlbSAwIDAgMDtcbiAgICAgICAgICAgICAgICAvLyB3aWR0aDogNzUlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBtYXJnaW46IDJyZW0gMCAxLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAvLyAmOmJlZm9yZSB7XG4gICAgICAgIC8vICAgY29udGVudDogXCIjIyNcIjtcbiAgICAgICAgLy8gICBtYXJnaW46IDAgLjVyZW0gMCAwO1xuICAgICAgICAvLyAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIC8vICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgICAgICAvLyAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAvLyB9XG5cbiAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvLyAmOmFmdGVyIHtcbiAgICAgICAgLy8gICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gICBjb250ZW50OiBcIlwiO1xuICAgICAgICAvLyAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvLyAgIG1hcmdpbjogLjVyZW0gMCAwIDA7XG4gICAgICAgIC8vICAgd2lkdGg6IDUwJTtcbiAgICAgICAgLy8gICAvLyBoZWlnaHQ6IDFweDtcbiAgICAgICAgLy8gICBib3JkZXItdG9wOiAxcHggc29saWQgIzMzMztcbiAgICAgICAgLy8gfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjdyZW07XG5cbiAgICAgICAgK2JyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICAgICAgICA+aW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW46IDAgMCAxLjZyZW07XG4gICAgICAgIHBhZGRpbmc6IDEuNzVyZW0gMnJlbTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkwLCA5MCwgOTAsIC4xKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICBxdW90ZXM6IFwiXFwyMDFDXCJcIlxcMjAxRFwiO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLS41cmVtO1xuICAgICAgICAgICAgbGVmdDogLS41cmVtO1xuICAgICAgICAgICAgY29udGVudDogb3Blbi1xdW90ZTtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1yaWdodDogMC4xMjVlbTtcbiAgICAgICAgICAgIC8vIHdpZHRoOiAyLjI1cmVtO1xuICAgICAgICAgICAgLy8gaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogLjg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHt9XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgPio6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPmZpZ3VyZSxcbiAgICA+ZmlndXJlLmltYWdlIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIC8vIG1hcmdpbjogMCAwIDEuNHJlbSAwO1xuICAgICAgICBtYXJnaW46IC41cmVtIDAgMS40cmVtIDA7XG5cbiAgICAgICAgPmltZyB7XG4gICAgICAgICAgICAvLyBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IC43NXJlbSAwIC4yNXJlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAvLyBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmW3N0eWxlKj1cImZsb2F0OiByaWdodDtcIl0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAuM3JlbSAwIDEuNHJlbSAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmW3N0eWxlKj1cImZsb2F0OiBsZWZ0O1wiXSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLjNyZW0gMS4yNXJlbSAxLjRyZW0gMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJltzdHlsZSo9XCJmbG9hdDogcmlnaHQ7XCJdLFxuICAgICAgICAmW3N0eWxlKj1cImZsb2F0OiBsZWZ0O1wiXSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLjNyZW0gYXV0byAxLjRyZW0gYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0NSU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDM3JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZbc3R5bGUqPVwibWFyZ2luOiBhdXRvO1wiXSxcbiAgICAgICAgJltzdHlsZSo9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCJdIHtcbiAgICAgICAgICAgIG1hcmdpbjogLjVyZW0gYXV0byAxLjRyZW0gYXV0byAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgLy8gIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tZWRpYSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgJi5pcy1pbXBvcnRhbnQge1xuICAgICAgICAgICAgY29sb3I6ICNmZjMzNjY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmFwcC1wb3N0LWZvb3RlciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG59XG5cbi5hcHAtcG9zdC1mb290ZXItY29udGVudCB7XG4gICAgJi5pcy1ib3JkZXJlZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nOiAyLjVyZW0gMCAwIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogM3JlbSAwIDAgMDtcbiAgICB9XG59XG5cbi5hcHAtcG9zdC1mb290ZXJfX3RpdGxlIHtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDAgMCAyLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59IiwiLmFwcC1wcm9kdWN0cyB7XG4gICAgQGluY2x1ZGUgYXBwLWxpc3Q7XG59XG4iLCIuYXBwLXByb2R1Y3RzLWl0ZW0ge1xuICAgICRwYXJlbnQ6ICY7XG5cbiAgICBAaW5jbHVkZSBhcHAtbGlzdC1pdGVtKCRtYXJnaW46IDAgMCAzZW0gMCkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3Bob3RvIHtcbiAgICAgICAgQGluY2x1ZGUgYXBwLWxpc3QtaXRlbS1waG90bztcbiAgICB9XG5cbiAgICAmX19icmFuZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgMCAuMzVyZW0gMDtcbiAgICAgICAgY29sb3I6ICNmYzY7XG5cbiAgICAgICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAmX19uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAmX19hcHBlbmRpeCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IC4xMjVyZW0gMCAwIDA7XG4gICAgICAgIC8vIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBjb2xvcjogbGlnaHRlbigkbWVkaXVtLWdyYXksIDE1JSk7XG4gICAgfVxuXG4gICAgPmEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAjeyRwYXJlbnR9X19waG90byB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYXBwLWltYWdlLWxpbmstaG92ZXJlZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3skcGFyZW50fV9fbmFtZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5hcHAtc2hhcmUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE0cHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY2hhbm5lbHMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgICA+bGkge1xuICAgICAgICAgICAgLy8gZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI3cHg7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuLXR3aXR0ZXIge1xuICAgICAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCN7JGFwcC1pbWctcGF0aH1pY29uLXR3aXR0ZXIucG5nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuLWZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgjeyRhcHAtaW1nLXBhdGh9aWNvbi1mYWNlYm9vay5wbmcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5hcHAtdG9wYmFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2sgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjY2NjO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5hcHAtdG9wYmFyLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7IC8vKCR3aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICd4bGFyZ2UnKSk7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAkYXBwLXRvcGJhci1oZWlnaHQ7XG59XG4iLCIkYXBwLXRvcGJhci1oZWlnaHQ6IDc1cHg7IiwiXG4uYXBwLXRvcGJhci1zaXRlbmFtZSB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTM4cHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgPmEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICA+aW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5hcC13cmFwIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbn0iLCIuYXBwLWFib3V0IHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoJHdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJ2xhcmdlJykpO1xuXG4gIEBpbmNsdWRlIGFwcC1lbnRyeS10eXBvZ3JhcGh5O1xuXG4gIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogNnJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gIH1cblxuICA+IGgxIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAxcmVtIDA7XG4gICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAxcmVtIDA7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAycmVtIDA7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzYTNhM2E7XG4gICAgfVxuICB9XG5cbiAgPiB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgPiB0Ym9keSB7XG4gICAgICA+IHRyIHtcbiAgICAgICAgKiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgfVxuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICo6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAuMnJlbSAuNXJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdGgge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgjeyRhcHAtaW1nLXBhdGh9YmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgcGFkZGluZzogLjRyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICB3aWR0aDogMjYuNzU0Mzg2JTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIH1cblxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgcGFkZGluZzogLjRyZW0gLjRyZW0gLjRyZW0gNjBweDtcbiAgICAgICAgICAgIHdpZHRoOiA3My4yNDU2MTQlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5hcHAtYmxvZy1uYXZfX2NhdGVnb3JpZXMtaGVhZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDAgMnJlbTtcbiAgcGFkZGluZzogMDtcblxuICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogLTE4cHg7XG5cbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IDlweDtcbiAgICBoZWlnaHQ6IDlweDtcblxuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgd2hpdGU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gIH1cblxuICAmLm9wZW46YWZ0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB3aGl0ZTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgd2hpdGU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxufVxuXG4uYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0IG1hcmdpbi10b3AgbWFyZ2luLWJvdHRvbTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblxuICAmLm9wZW4ge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cbn1cblxuICAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzIHtcbiAgICBAaW5jbHVkZSBhcHAtbWF0cml4IHtcbiAgICAgIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIH1cblxuICAgID4gLmFwcC1ibG9nLW5hdl9fY2F0ZWdvcmllc19faXRlbSB7XG4gICAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgQGluY2x1ZGUgYXBwLW1hdHJpeC1ib3JkZXIoMik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgtYm9yZGVyKDMpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBhcHAtbWF0cml4LWJvcmRlcig0KTtcbiAgICAgIH1cblxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgQGluY2x1ZGUgYXBwLW1hdHJpeC1pdGVtLWFuY2hvcjtcblxuICAgICAgKyAuYXBwLWJsb2ctbmF2X19jYXRlZ29yaWVzX19pdGVtIHtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4uYXBwLWJsb2ctbmF2IHtcbiAgcGFkZGluZzogMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW46IDAgMCAuOHJlbSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIH1cblxuICBAaW5jbHVkZSBhcHAtbmF2aWdhdGlvbi1hbmNob3ItY29sb3I7XG59XG5cbiAgLmFwcC1ibG9nLW5hdi1zaG93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgICAuYXBwLWJsb2ctbmF2X190aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgPiBhIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gIC8vIEBzZWUgX2Jsb2ctYWNjb3JkaW9uLWNhdGVnb3JpZXMuc2Nzc1xuXG5cbi5hcHAtYmxvZy1zaG93LW1vcmUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDNyZW0gMCAwIDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICA+IGEge1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLmFwcC1ibG9nLXBhZ2luYXRpb24ge1xuICBtYXJnaW46IDNyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbiAgLmFwcC1ibG9nLXBhZ2luYXRpb25fX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuXG4gICAgPiBhIHtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbi5hcHAtYmxvZy1hbGVydCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS41cmVtIDAgMCAwO1xuXG4gIGNvbG9yOiAjZmM2O1xuXG4gIDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbi5hcHAtbm9lbnRyaWVzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xufVxuXG5cblxuXG4vKiBAZ3JvdXAgc3RvcnkgKi9cblxuLmFwcC1zdG9yaWVzIHtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgbWFyZ2luOiAwIC0xMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbjogMCAtMjBweDtcbiAgfVxufVxuXG5AbWl4aW4gYXBwLXN0b3J5LWJveCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBkaXNwbGF5OiBibG9jaztcblxuICA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgPiAuYXBwLXN0b3J5X19jb3ZlciB7XG4gICAgICAgIEBpbmNsdWRlIGFwcC1pbWFnZS1saW5rLWhvdmVyZWQ7XG4gICAgICB9XG4gICAgICA+IC5hcHAtc3RvcnlfX3RpdGxlID4gc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgICA+IC5hcHAtc3RvcnlfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGNvbnRlbnQ7XG59XG5cbi5hcHAtc3Rvcnkge1xuICBAaW5jbHVkZSBhcHAtc3RvcnktYm94IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgbWFyZ2luOiAwIDAgNXJlbSAwO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW46IDAgMCA1cmVtIDA7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICB3aWR0aDogMzMuMzMzJTtcbiAgICB9XG4gIH1cbn1cblxuICAuYXBwLXN0b3J5X19jb3ZlciB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIGFwcC10aHVtYm5haWwoJG1hcmdpbjogMCAwIDFyZW0gMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgQGluY2x1ZGUgYXBwLXRodW1ibmFpbDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBhcHAtdGh1bWJuYWlsO1xuICAgIH1cbiAgfVxuXG4gIC5hcHAtc3RvcnlfX2NhdGVnb3J5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgY29sb3I6ICNmZmNjNjY7XG4gIH1cblxuICAuYXBwLXN0b3J5X190aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBtYXJnaW46IC41cmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luOiAuNXJlbSAwIDFyZW0gMDtcbiAgICB9XG4gIH1cblxuICAuYXBwLXN0b3J5X19kZXNjcmlwdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuLyogQGVuZCBncm91cCBzdG9yeSAqL1xuXG4uYXBwLWJsb2ctcG9zdC1wZW9wbGUge1xuICBtYXJnaW46IDNyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5hcHAtYmxvZy1wb3N0LXBlcnNvbiB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS41cmVtIDA7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gIH1cblxuICBib3JkZXItdG9wOiAxcHggZGFzaGVkICRkYXJrLWdyYXk7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLy8gYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAkZGFyay1ncmF5O1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICB9XG5cbiAgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuICAuYXBwLWJsb2ctcG9zdC1wZXJzb25fX25hbWUge1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5hcHAtYmxvZy1wb3N0LXBlcnNvbl9fcGhvdG8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogMjQwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwIDEuMnJlbSAuNXJlbSAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDAgMS4ycmVtIC41cmVtIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgIH1cblxuICAgID4gaW1nIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH0iLCIuYXBwLWJsb2cge1xuICBwYWRkaW5nOiAwIDMwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luOiAycmVtIGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbjogM3JlbSBhdXRvO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbjogNnJlbSBhdXRvO1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBwYWRkaW5nOiAwIDcwcHg7XG4gICAgbWF4LXdpZHRoOiAxMDI0cHg7XG4gIH1cbn1cblxuLmFwcC1ibG9nLWhlYWRlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbjogMnJlbSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgIG1hcmdpbjogM3JlbSAxMHB4IDIuNXJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46IDZyZW0gMTBweCAzcmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtYXJnaW46IDZyZW0gMCAzcmVtIDA7XG4gIH1cblxuICAmOm5vdCguaXMtY2F0ZWdvcnkpIHtcbiAgICAuYXBwLWJsb2ctbmF2X190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYXBwLWJsb2ctaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JheTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICB9XG59XG5cbiAgLmFwcC1ibG9nLWl0ZW1fX3RpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAuNzVyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG4gICAgPiBhIHtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFwcC1ibG9nLWl0ZW1fX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW46IDAgMCAuMjVyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmFwcC1ibG9nLWl0ZW1fX2RhdGUge1xuICAgIGNvbG9yOiAjNjY2O1xuICB9XG5cbiAgLmFwcC1ibG9nLWl0ZW1fX2NhdGVnb3J5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6ICNmZmNjNjY7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cblxuLmFwcC1ibG9nLWNhdGVnb3J5LW5hbWUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gID4gYSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJGRhcmstZ3JheTtcbiAgICAvLyBiYWNrZ3JvdW5kOiAkYXBwLWFuY2hvci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICBzcGFuIHtcbiAgICBtYXJnaW46IDAgLjI1cmVtO1xuICAgIGNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG4uYXBwLWJsb2ctc3ViY2F0ZWdvcmllcyB7XG4gIG1hcmdpbjogLjVyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgPiB1bCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgPiBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogLjc1cmVtIDEuNXJlbSAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICA+IGEge1xuICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vKiBAZ3JvdXAgc3RvcmllcyAqL1xuXG4uYXBwLXN0b3JpZXMtLWJsb2dpbmRleCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBtYXJnaW46IDAgLTEwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbjogMCAtMTBweCAwO1xuXG4gICAgPiAuYXBwLXN0b3J5IHtcbiAgICAgIC8vIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtYXJnaW46IDAgLTIwcHggMDtcbiAgICAvLyBwYWRkaW5nOiAwIDAgMnJlbSAwO1xuICB9XG59XG5cblxuLmFwcC1zdG9yeS0tZnVsbCB7XG4gIEBpbmNsdWRlIGFwcC1zdG9yeS1ib3gge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luOiAwIDAgM3JlbSAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICBtYXJnaW46IDAgMCA0cmVtIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAvLyBtaW4taGVpZ2h0OiAzMzhweDtcblxuICAgICAgPiBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgLy8ganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAuYXBwLXN0b3J5X19jb3ZlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhcHAtaW1hZ2UtbGluay1ob3ZlcmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYXBwLXN0b3J5X190aXRsZSA+IHNwYW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmFwcC1zdG9yeV9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5hcHAtc3RvcnktLWZ1bGxfX2ltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgd2lkdGg6IDY2LjY2NjclO1xuICAgICAgICBtaW4taGVpZ2h0OiAzMzhweDtcbiAgICAgIH1cblxuICAgICAgLmFwcC1zdG9yeS0tZnVsbF9fY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICB3aWR0aDogMzMuMzMzJTtcbiAgICAgIH1cblxuICAgICAgLmFwcC1zdG9yeV9fY292ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAuYXBwLXN0b3J5X19jYXRlZ29yeSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLmFwcC1zdG9yeV9fdGl0bGUge1xuICAgICAgICBtYXJnaW46IC41cmVtIDAgMXJlbSAwO1xuICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICB9XG5cbiAgICAgIC5hcHAtc3RvcnlfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogMCAwIDVyZW0gMDtcblxuICAgICAgLmFwcC1zdG9yeS0tZnVsbF9faW1hZ2Uge1xuICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgICAgIH1cblxuICAgICAgLmFwcC1zdG9yeV9fY2F0ZWdvcnkge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgfVxuXG4gICAgICAuYXBwLXN0b3J5X190aXRsZSB7XG4gICAgICAgIG1hcmdpbjogLjVyZW0gMCAxcmVtIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIH1cblxuICAgICAgLmFwcC1zdG9yeV9fZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIEBlbmQgZ3JvdXAgc3RvcmllcyAqLyIsIi5hcHAtYmxvZy1wb3N0LWhlYWRlciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoJHdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJ3h4bGFyZ2UnKSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIC8vIG1heC13aWR0aDogODAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDogJGFwcC1tZWRpdW0td2lkdGg7XG4gICAgfVxufVxuXG4uYXBwLWJsb2ctcG9zdC1uYXYge31cblxuXG4uYXBwLWJsb2ctcG9zdC1jb3ZlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcblxuICAgID5pbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBtYXgtd2lkdGg6ICRhcHAtZ2xvYmFsLXdpZHRoO1xufVxuXG4uYXBwLWJsb2ctcG9zdC1ib2R5IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigkd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAnbGFyZ2UnKSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICA+LmFwcC1ibG9nLXBvc3Qtc2lkZWJhciB7XG4gICAgICAgICAgICBtYXJnaW46IDIuNXJlbSAwIDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIuNXJlbSAwIDAgMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAuYXBwLXNoYXJlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAwIGF1dG87XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcblxuICAgICAgICA+LmFwcC1ibG9nLXBvc3Qtc2lkZWJhciB7XG4gICAgICAgICAgICBtYXJnaW46IDIuNXJlbSAwIDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIuNXJlbSAwIDAgMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuXG4gICAgICAgID4uYXBwLWJsb2ctcG9zdC1tYWluIHt9XG5cbiAgICAgICAgPi5hcHAtYmxvZy1wb3N0LXNpZGViYXIge1xuICAgICAgICAgICAgbWFyZ2luOiAyLjVyZW0gMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAyLjVyZW0gMCAwIDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhcmstZ3JheTtcblxuICAgICAgICAgICAgLmFwcC1zaGFyZSB7fVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLWJsb2ctcG9zdC1jb3ZlcisuYXBwLWJsb2ctcG9zdC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAwO1xufVxuXG5cbi5hcHAtYmxvZy1wb3N0X190aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge31cbn1cblxuLmFwcC1ibG9nLXBvc3RfX2xlYWQge1xuICAgIG1hcmdpbjogMXJlbSAwIDAgMDtcbiAgICBAaW5jbHVkZSBhcHAtZW50cnktdHlwb2dyYXBoeTtcbiAgICBjb2xvcjogI2NjYztcbn1cblxuLmFwcC1ibG9nLXBvc3RfX2RhdGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDFyZW0gMCAwIDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGNvbG9yOiAjOTk5O1xufVxuXG4uYXBwLWJsb2ctcG9zdF9fY2F0ZWdvcnkge1xuICAgIGNvbG9yOiAjZmZjYzY2O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICB9XG59XG5cbi5hcHAtYmxvZy1wb3N0X19wcm9kdWN0cyB7XG5cbiAgICAvLyBsaW5lLWhlaWdodDogMS40O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgID5saSB7XG4gICAgICAgID5hIHtcbiAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIC41cmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgLjI1cmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5hcHAtYmxvZy1wb3N0LXJlbGF0ZWQge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKCR3aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICdsYXJnZScpKTtcblxuICAgID51bCB7XG4gICAgICAgIEBpbmNsdWRlIGFwcC1uYXZpZ2F0aW9uLWFuY2hvci1jb2xvcjtcblxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcblxuICAgICAgICAvLyBAaW5jbHVkZSBhcHAtbmF2aWdhdGlvbi1hbmNob3ItY29sb3I7XG5cbiAgICAgICAgPmxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuN3JlbSAuNzVyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyMjI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC43cmVtIC43NXJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzIyMjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC43cmVtIDEuNXJlbTtcblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLWJsb2ctcG9zdC1yZWxhdGVkX190aXRsZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gLjc1cmVtO1xuXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMXJlbSAuNzVyZW07XG5cbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMS41cmVtIDFyZW0gMS41cmVtO1xuICAgIH1cbn0iLCIuYXBwLWJyYW5kIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAycmVtIDAgNHJlbSAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiA1cmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDdyZW0gMCA2cmVtIDA7XG4gICAgfVxuXG4gICAgJl9fbmFtZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgID5pbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMjU1cHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW46IDJyZW0gYXV0byAwIGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuYXBwLWNvbnRhY3Qge1xuXHRAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigkd2lkdGg6IDY0MHB4KTtcblxuXHQuaGVscC10ZXh0IHtcblx0ICBkaXNwbGF5OiBibG9jaztcblx0ICBtYXJnaW4tdG9wOiAuMjVyZW07XG5cdCAgbGluZS1oZWlnaHQ6IDEuNDtcblx0fVxuXG5cdHRleHRhcmVhIHtcblx0XHQmOjotd2Via2l0LXJlc2l6ZXIge1xuXHRcdCAgZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHRzZWxlY3Qge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1heC13aWR0aDogMzAwcHg7XG5cdH1cblxuXHQmLnNlbnQge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdCAgbWFyZ2luLXRvcDogM3JlbTtcblx0XHQgIG1hcmdpbi1ib3R0b206IDRyZW07XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHQgIG1hcmdpbi10b3A6IDNyZW07XG5cdFx0ICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0ICBtYXJnaW4tdG9wOiA2cmVtO1xuXHRcdCAgbWFyZ2luLWJvdHRvbTogOHJlbTtcblx0XHR9XG5cdH1cbn1cblxuLmFwcC1jb250YWN0X190cmFja2luZ251bSB7XG5cdGZvbnQtc2l6ZTogMS4xMjVyZW07XG5cdD4gc3Ryb25nIHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG59XG5cbi5mcm0tcm93IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuXHRwYWRkaW5nOiAwO1xuXG5cdGlucHV0LFxuXHRzZWxlY3QsXG5cdHRleHRhcmVhIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59XG5cbi5mcm0tcmVxdWlyZWQge1xuXHRmb250LXNpemU6IC44cmVtO1xuXHRjb2xvcjogJHdhcm5pbmctY29sb3I7XG59XG5cbi8qIEBncm91cCBlcnJvciBtZXNzYWdlICovXG5cbi5mcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAuMjVyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICR3YXJuaW5nLWNvbG9yO1xuXG4gICsgLmZybS1lcnJvciB7XG4gICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICB9XG5cbiAgLmZybS1mb3JtLXJvdyArICYge1xuICAgIG1hcmdpbi10b3A6IC0uNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbnVsLmZybS1lcnJvciB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLyogQGVuZGdyb3VwIGVycm9yIG1lc3NhZ2UgKi9cblxuLmZybS1pbnN0cnVjdGlvbiB7XG5cdG1hcmdpbjogMXJlbSAwIDAgMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRmb250LXNpemU6IC44NzVyZW07XG5cdGNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cblx0PiBsaSB7XG5cdFx0bWFyZ2luLXRvcDogLjI1cmVtO1xuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0fVxufVxuXG4uZnJtLXJhZGlvcyB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHQ+IGxpIHtcblx0XHRtYXJnaW4tdG9wOiAuMjVyZW07XG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXHR9XG5cblx0aW5wdXQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn1cblxuLmZybS1ocGZpZWxkIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLmZybS1hY3Rpb24ge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0bWFyZ2luOiAycmVtIDAgMCAwO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRtYXJnaW46IDJyZW0gMCAwIDA7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdG1hcmdpbjogMnJlbSAwIDAgMDtcblx0fVxufSIsIi5hcHAtZ2VucmUge1xuICAgICZfX25hbWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMnJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgbWFyZ2luOiA1cmVtIDAgMi41cmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDdyZW0gMCAzLjVyZW0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgID5zbWFsbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbSAwIDAgMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZmlsdGVyIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAycmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA0cmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMnJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNHJlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDMuNXJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG5cbiAgICAgICAgPnVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAuNXJlbSAxcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMXJlbSAxcmVtIDFyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxcmVtIC41cmVtIDFyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZjNjtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogQGdyb3VwIGxheW91dCAqL1xuXG4ubC1pbmRleC1ibG9jayB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5sLWluZGV4LWJsb2NrX19pbm5lciB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgICAgICBwYWRkaW5nOiA0cmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgcGFkZGluZzogNC41cmVtIDA7XG4gICAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIGxheW91dCAqL1xuXG5cbi8qIEBncm91cCB0b3Atc3RvcnkgKi9cblxuLmFwcC10b3Atc3Rvcnkge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogJGFwcC1nbG9iYWwtd2lkdGg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA3cmVtO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRhcHAtZ2xvYmFsLXdpZHRoKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQycHg7XG4gICAgICAgIHBhZGRpbmc6IDAgNDJweDtcbiAgICB9XG5cbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uYXBwLXRvcC1zdG9yeV9fY292ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMi41cmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDUzNXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgID5pbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDY0MHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRhcHAtZ2xvYmFsLXdpZHRoKSB7XG4gICAgICAgIGhlaWdodDogNzI4cHg7XG4gICAgfVxuXG4gICAgLy8gQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGFwcC1nbG9iYWwtd2lkdGggKyAxcHgpIHtcbiAgICAvLyAgbWFyZ2luLXRvcDogNDJweDtcbiAgICAvLyB9XG5cbiAgICBAaW5jbHVkZSBhcHAtaW1hZ2Vob3Zlcjtcbn1cblxuLmFwcC10b3Atc3RvcnlfX2Rlc2NyaWJlcyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgIH1cblxuICAgIG1heC13aWR0aDogNzI4cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYXBwLXRvcC1zdG9yeV9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDIxcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICAgICAgZm9udC1zaXplOiAyLjNyZW07XG4gICAgfVxuXG4gICAgPmEge1xuICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcHAtdG9wLXN0b3J5X19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cbn1cblxuLyogQGVuZCBncm91cCB0b3Atc3RvcnkgKi9cblxuXG4vKiBAZ3JvdXAgc2Vjb25kLXN0b3J5ICovXG5cbi5hcHAtc2Vjb25kLXN0b3J5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgID5hIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICA+LmFwcC1zZWNvbmQtc3RvcnlfX2NvdmVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhcHAtaW1hZ2UtbGluay1ob3ZlcmVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+LmFwcC1zZWNvbmQtc3RvcnlfX3RpdGxlPnNwYW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4uYXBwLXNlY29uZC1zdG9yeV9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLXNlY29uZC1zdG9yeV9fY292ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAxLjdyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7fVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge31cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLy8gbWFyZ2luOiAwIDAgM3JlbSAwO1xuICAgICAgICAvLyB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA1MzVweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICA+aW1nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiA2NDBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYXBwLWdsb2JhbC13aWR0aCkge1xuICAgICAgICBoZWlnaHQ6IDcyOHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGFwcC1pbWFnZWhvdmVyO1xufVxuXG4uYXBwLXNlY29uZC1zdG9yeV9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvIDFyZW0gYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICB9XG59XG5cbi5hcHAtc2Vjb25kLXN0b3J5X19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIHNlY29uZC1zdG9yeSAqL1xuXG5cbi8qIEBncm91cCBoZWFkbGluZSBzdG9yaWVzICovXG5cblxuXG4vKiBAZW5kIGdyb3VwIGhlYWRsaW5lIHN0b3JpZXMgKi9cblxuXG5cbi8qIEBncm91cCBpbmZvcm1hdGlvbiwgZGVhbHMsIGV2ZW50cyAqL1xuXG4uYXBwLWRlYWxzLWFuZC1ldmVudHMge1xufVxuXG4uYXBwLW5ld3Mge1xuICAgIG1hcmdpbjogMCBhdXRvIDNyZW0gYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1heC13aWR0aDogNzY4cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuNXJlbTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjVyZW07XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcHAtbmV3c19faW5kZXgge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgID5saSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMTRweCA3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAkZGFyay1ncmF5O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICRkYXJrLWdyYXk7XG4gICAgICAgIH1cblxuICAgICAgICA+YSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYXBwLWFuY2hvci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIGluZm9ybWF0aW9uLCBkZWFscywgZXZlbnRzICovXG5cblxuLmFwcC1ibG9jay10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS43NXJlbSAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDRyZW0gMDtcbiAgICB9XG5cbiAgICBzcGFuOmxhc3QtY2hpbGQge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogN3B4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYXBwLWFuY2hvci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjFweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYXBwLWFuY2hvci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi8qIEBncm91cCB2aWRlb3MgKi9cblxuLmFwcC1zdG9yaWVzLmFwcC12aWRlb3Mge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCAtMTVweDtcbiAgICB9XG5cbiAgICA+LmFwcC1zdG9yeSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+LmZsZXgtdmlkZW8ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLW1vcmUtdmlkZW9zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAzcmVtIDAgMCAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW46IDRyZW0gMCAwIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDVyZW0gMCAwIDA7XG4gICAgfVxuXG4gICAgPmEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDVweCAwO1xuICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR3aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICA+aW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gLjc1cmVtIGF1dG87XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogQGVuZCBncm91cCB2aWRlb3MgKi9cblxuXG4vKiBAZ3JvdXAgbWVkaWEgaW5mb3JtYXRpb24gKi9cblxuLmFwcC1tZWRpYS1pbmZvcyB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjhweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG59XG5cbi5hcHAtbWVkaWEtaW5mbyB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcblxuICAgIG1heC13aWR0aDogNzI4cHg7XG4gICAgZmxleC1iYXNpczogNzY4cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICYueDI6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJi54MiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLW1lZGlhLWluZm9fX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjFweCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDAgMjhweCA3cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB3aWR0aDogMTYwcHg7XG59XG5cbi5hcHAtbWVkaWEtaW5mb19fZGVzY3JpYmVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTg4cHg7XG4gICAgfVxufVxuXG4uYXBwLW1lZGlhLWluZm9fX3RpdGxlIHtcbiAgICBtYXJnaW46IDAgMCAyMXB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLmFwcC1tZWRpYS1pbmZvX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICA+KjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIG1lZGlhIGluZm9ybWF0aW9uICovIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuLyogQGdyb3VwIG5ldyBlbnRyeSAqL1xuXG4uYXBwLXAtZW50cnkge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYXBwLWVudHJ5LXR5cG9ncmFwaHk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIH1cblxuICAgID4qOmxhc3QtY2hpbGQge1xuICAgICAgICAvLyA+IDpub3QoLnZpZGVvLWNvbnRhaW5lcik6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLmFwcC1wLWhlYWRpbmctLWwge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogMi41cmVtIDAgMS43NXJlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG4gICAgICAgICYuYm9yZGVyZWQge1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAwIDAgMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAyLjVyZW0gMCAyLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBmb250LXNpemU6IDEuNTVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxuICAgICAgICAmLmJvcmRlcmVkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIuNXJlbSAwIDAgMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFwcC1wLWZpZ3MtY29udGFpbmVyLmNlbnRlcismLFxuICAgICAgICAuYXBwLXAtZmlncy1jb250YWluZXIuZnVsbCsmIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJi5uYXJyb3cge1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxufVxuXG4uYXBwLXAtaGVhZGluZy0tbSB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAycmVtIDAgMS4zcmVtIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAyLjVyZW0gMCAxLjNyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgICAgICAgLmFwcC1wLWZpZ3MtY29udGFpbmVyLmNlbnRlcismLFxuICAgICAgICAuYXBwLXAtZmlncy1jb250YWluZXIuZnVsbCsmIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJi5uYXJyb3cge1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLXAtZmlncy1jb250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgLy8gd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6IC4zNXJlbSAwIDEuNHJlbSAwO1xuXG4gICAgICAgICYuY2VudGVyLFxuICAgICAgICAmLmxlZnQsXG4gICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cbiAgICAgICAgJi5sZWZ0LFxuICAgICAgICAmLnJpZ2h0IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgJi5jZW50ZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNlbnRlcixcbiAgICAgICAgJi5mdWxsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAxLjhyZW0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZnVsbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubGVmdCxcbiAgICAgICAgJi5yaWdodCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuMzVyZW0gMCAxLjVyZW0gMDtcblxuICAgICAgICAgICAgaW1nIHt9XG4gICAgICAgIH1cblxuICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblxuICAgICAgICAmLmxlZnQsXG4gICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNCU7XG5cbiAgICAgICAgICAgICZbZGF0YS1lbmFibGUtc2xpZGVyPXRydWVdIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZbZGF0YS1lbmFibGUtc2xpZGVyPWZhbHNlXSB7XG4gICAgICAgIC5hcHAtcC1maWdzIHtcbiAgICAgICAgICAgIC5hcHAtcC1maWdzX19pdGVtIHtcbiAgICAgICAgICAgICAgICAmKy5hcHAtcC1maWdzX19pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmNlbnRlciB7XG4gICAgICAgICAgICAuYXBwLXAtZmlncyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC5hcHAtcC1maWdzX19pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmW2RhdGEtZW5hYmxlLXNsaWRlcj10cnVlXSB7XG4gICAgICAgIC5hcHAtcC1maWdzIHtcbiAgICAgICAgICAgIC5hcHAtcC1maWdzX19pdGVtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFwcC1wLWZpZ3Mge1xuICAgIC5hcHAtcC1maWdzX19pdGVtIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICYuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IC41cmVtIDAgLjI1cmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGNvbG9yOiAjYmJiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLXAtc2V0IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJi5uYXJyb3cge1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXBwLXAtdGFibGUge1xuICAgIG1hcmdpbjogMCAwIDEuNHJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuXG4gICAgPnRib2R5IHtcbiAgICAgICAgPnRyIHtcblxuICAgICAgICAgICAgPnRoLFxuICAgICAgICAgICAgPnRkIHtcbiAgICAgICAgICAgICAgICA+KjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAkZGFyay1ncmF5O1xuXG4gICAgICAgID50Ym9keSB7XG4gICAgICAgICAgICA+dHIge1xuXG4gICAgICAgICAgICAgICAgPnRoLFxuICAgICAgICAgICAgICAgID50ZCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+dGgge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAuNzVyZW0gMCAuMTI1cmVtIDA7XG4gICAgICAgICAgICAgICAgICAgIC8vIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJG1lZGl1bS1ncmF5LCAxNSUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID50ZCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAuNzVyZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkZGFyay1ncmF5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgPnRib2R5IHtcbiAgICAgICAgICAgID50ciB7XG5cbiAgICAgICAgICAgICAgICA+dGgsXG4gICAgICAgICAgICAgICAgPnRkIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID50aCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3JlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICRkYXJrLWdyYXk7XG5cbiAgICAgICAgPnRib2R5IHtcbiAgICAgICAgICAgID50ciB7XG5cbiAgICAgICAgICAgICAgICA+dGgsXG4gICAgICAgICAgICAgICAgPnRkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICRkYXJrLWdyYXk7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPnRoIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogLjc1cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID50ZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IC43NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgJGRhcmstZ3JheTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgID50Ym9keSB7XG4gICAgICAgICAgICA+dHIge1xuXG4gICAgICAgICAgICAgICAgPnRoLFxuICAgICAgICAgICAgICAgID50ZCB7fVxuXG4gICAgICAgICAgICAgICAgPnRoIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogQGVuZCBncm91cCBuZXcgZW50cnkgKi9cblxuLmFwcC1wcm9kdWN0X19jb3ZlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogJGFwcC1nbG9iYWwtd2lkdGg7XG5cbiAgICAuYXBwLXByb2R1Y3RfX2NvdmVycGhvdG9zIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmFwcC1wcm9kdWN0X19jb3ZlcnBob3Rvc19faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiA1MzVweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuYXBwLXByb2R1Y3RfX2NvdmVycGhvdG9zX19pdGVtIHtcbiAgICAgICAgICAgIGhlaWdodDogNTM1cHg7XG5cbiAgICAgICAgICAgID5pbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDY0MHB4O1xuXG4gICAgICAgIC5hcHAtcHJvZHVjdF9fY292ZXJwaG90b3NfX2l0ZW0ge1xuICAgICAgICAgICAgaGVpZ2h0OiA2NDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRhcHAtZ2xvYmFsLXdpZHRoKSB7XG4gICAgICAgIC8vIG1hcmdpbi10b3A6IDQycHg7XG4gICAgICAgIHBhZGRpbmc6IDAgNDJweDtcblxuICAgICAgICBoZWlnaHQ6IDcyOHB4O1xuXG4gICAgICAgIC5hcHAtcHJvZHVjdF9fY292ZXJwaG90b3NfX2l0ZW0ge1xuICAgICAgICAgICAgaGVpZ2h0OiA3MjhweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi8qIEBncm91cCBoZWFkZXIgKi9cblxuLmFwcC1wcm9kdWN0X19oZWFkZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogM3JlbSAwIDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuYXBwLXByb2R1Y3RfX2NvdmVyKyYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMi41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBtYXJnaW46IDRyZW0gMCAxLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuYXBwLXByb2R1Y3RfX2NvdmVyKyYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiA1cmVtIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5hcHAtcHJvZHVjdF9fY292ZXIrJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcHAtcHJvZHVjdF9faGVhZGVyLWlubmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigkd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAneHhsYXJnZScpKTtcbn1cblxuLmFwcC1wcm9kdWN0X19uYW1lZ3JvdXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIC41cmVtIGF1dG87XG5cbiAgICAgICAgJi4tY292ZXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMCBhdXRvO1xuXG4gICAgICAgICYuLWNvdmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDAgYXV0bztcblxuICAgICAgICAmLi1jb3ZlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAgICAgJi4tY292ZXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFwcC1wcm9kdWN0X19icmFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICA+YSB7XG4gICAgICAgIGNvbG9yOiAjY2NjO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFwcC1wcm9kdWN0X19uYW1lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogLjM1cmVtIGF1dG8gMCBhdXRvO1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IC41cmVtIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBmb250LXNpemU6IDIuNjVyZW07XG4gICAgfVxufVxuXG4uYXBwLXByb2R1Y3RfX25hbWUtYXBwZW5kaXgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAvLyB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAuNXJlbSAwIDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IC41cmVtIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLyogQGVuZCBncm91cCBoZWFkZXIgKi9cblxuLyogQGdyb3VwIG5hdiAqL1xuXG4uYXBwLXByb2R1Y3QtbmF2IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5hcHAtc2hhcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAycmVtIGF1dG87XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAvLyBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgLy8gZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICAvLyBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgbWFyZ2luOiAzcmVtIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgM3JlbSAwO1xuXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgICAgIC5hcHAtc2hhcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAycmVtIGF1dG87XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcHAtcHJvZHVjdF9fbWVudSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5hcHAtcHJvZHVjdF9fbWVudS0tY2F0YWxvZyB7XG4gICAgQGluY2x1ZGUgYXBwLW5hdmlnYXRpb24tYW5jaG9yLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIH1cblxuICAgICAgICA+bGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYXBwLW1hdHJpeC1ib3JkZXIoMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBhcHAtbWF0cml4LWl0ZW0tYW5jaG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+bGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDEuNXJlbSAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAuNnJlbSAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nOiAuOHJlbSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB9XG59XG5cbi8qIEBlbmQgZ3JvdXAgbmF2ICovXG5cblxuLyogQGdyb3VwIGJvZHkgKi9cblxuLmFwcC1wcm9kdWN0X19jb250ZW50IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigkd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAneHhsYXJnZScpKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgfVxufVxuXG4uYXBwLWNoYXB0ZXItaW5kZXgge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byAzcmVtIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgID5saSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgNDJweCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjJweDtcblxuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ0ZDRkO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE1ZGVnKSB0cmFuc2xhdGVZKC0ycHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzlmOWY5ZjtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBAZ3JvdXAgdGFicGFuZWwgKi9cblxuLmFwcC1wcm9kdWN0X19wYW5lbCB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICZbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLmFwcC1wcm9kdWN0X19wYW5lbF9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBmb250LXNpemU6IDEuMzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgM3JlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbn1cblxuLyogQGVuZCBncm91cCB0YWJwYW5lbCAqL1xuXG4vKiBAZW5kIGdyb3VwIGJvZHkgKi9cblxuLyogQGdyb3VwIGJhbm5lciAqL1xuXG4uYXBwLXByb2R1Y3RfX2Zvb3RlciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG59XG5cbi5hcHAtcHJvZHVjdF9fZm9vdGVyX19oZWFkaW5nIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAyLjVyZW0gMCAxLjc1cmVtIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtIDAgMCAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDIuNXJlbSAwIDIuNXJlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZzogMi41cmVtIDAgMCAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcHAtcHJvZHVjdF9fYmFubmVycyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAwICgkYXBwLWd1dHRlci0tc21hbGwgKiAtMC4yNSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAwICgkYXBwLWd1dHRlci0tc21hbGwgKiAtMC41KTtcbiAgICB9XG59XG5cbi5hcHAtcHJvZHVjdF9fYmFubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG5cbiAgICAvLyBAaW5jbHVkZSBhcHAtaW1hZ2Vob3ZlcjtcblxuICAgID5pbWcge1xuICAgICAgICBtYXJnaW46IDAgMCAuNXJlbSAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgPnNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYXBwLWFuY2hvci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgbWF0aC5kaXYoJGFwcC1ndXR0ZXItLXNtYWxsLCA0KTtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAwIG1hdGguZGl2KCRhcHAtZ3V0dGVyLS1zbWFsbCwgMik7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG59XG5cbi8qIEBlbmQgZ3JvdXAgYmFubmVyICovXG5cblxuLyogQGdyb3VwIHByaWNlICovXG5cbi5hcHAtcHJvZHVjdC1wcmljZSB7fVxuXG4uYXBwLXByb2R1Y3QtcHJpY2VfX3Bob3RvIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uYXBwLXByb2R1Y3QtcHJpY2VfX25hbWUge1xuICAgIG1hcmdpbjogMCAwIDEuMjVyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYXBwLXByb2R1Y3QtcHJpY2VfX3RhZyB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmFwcC1wcm9kdWN0LXByaWNlX19kZXNjcmlwdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLmFwcC1wcm9kdWN0LXByaWNlX19zdG9yZXMge1xuICAgIG1hcmdpbjogMS41cmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICA+ZHQge1xuICAgICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAjZmM2O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgID5kZCB7XG4gICAgICAgID51bCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhcHAtbmF2aWdhdGlvbi1hbmNob3ItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLjdyZW0gMCAwIDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMThweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWFycm93LnBuZykgbm8tcmVwZWF0IDAgNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAuYXBwLXByb2R1Y3QtcHJpY2Uge1xuICAgICAgICBtYXJnaW46IDJyZW0gMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMCAwIDA7XG5cbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgLmFwcC1wcm9kdWN0LXByaWNlIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMnJlbSAwO1xuXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFwcC1wcm9kdWN0LXByaWNlX19waG90byB7XG4gICAgICAgIC8vIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvLyBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgLy8gbWFyZ2luOiAwIDAgMCAxLjVyZW07XG4gICAgICAgIC8vIHdpZHRoOiAyNzBweDtcbiAgICB9XG5cbiAgICAuYXBwLXByb2R1Y3QtcHJpY2VfX25hbWUge1xuICAgICAgICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgICB9XG5cbiAgICAuYXBwLXByb2R1Y3QtcHJpY2VfX3ByaWNlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICAuYXBwLXByb2R1Y3QtcHJpY2VfX3N0b3JlcyB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIC5hcHAtcHJvZHVjdC1wcmljZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgbWFyZ2luOiAwIDAgM3JlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgM3JlbSAzMDBweDtcbiAgICAgICAgbWluLWhlaWdodDogMTUycHg7XG5cbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYXBwLXByb2R1Y3QtcHJpY2VfX3Bob3RvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMjcwcHg7XG5cbiAgICAgICAgPmltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcHAtcHJvZHVjdC1wcmljZV9fbmFtZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuXG5cbn1cblxuLyogQGVuZCBncm91cCBwcmljZSAqL1xuXG4uYXBwLXByb2R1Y3RfX2RlYWxzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuYXBwLXByb2R1Y3RfX2NvdmVyKyYge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAkYXBwLWdsb2JhbC13aWR0aDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYXBwLWdsb2JhbC13aWR0aCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCA0MnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPmEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAuNzVyZW0gMTVweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuXG4gICAgICAgIGJhY2tncm91bmQ6ICMzM2FjZjU7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNHJlbTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigjMzNhY2Y1LCAxNSUpO1xuICAgICAgICB9XG5cbiAgICAgICAgPnNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCN7JGFwcC1pbWctcGF0aH1yaWJib24ucG5nKSBuby1yZXBlYXQgMCA1MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+dWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXgtd2lkdGg6ICRhcHAtZ2xvYmFsLXdpZHRoO1xuXG4gICAgICAgID5saSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuNXJlbSAxNXB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIuYXBwLXByb2R1Y3RJbmRleCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG59XG4iLCIuYXBwLXByb2R1Y3RJbmRleC1ibG9jayB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgcGFkZGluZzogNHJlbSAwIDFyZW0gMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICBwYWRkaW5nOiA0LjVyZW0gMCAycmVtIDA7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxLjc1cmVtIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCA0cmVtIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNC41cmVtIDA7XG4gICAgICAgICAgfVxuICAgICAgfVxuICB9IiwiLmFwcC1wcm9kdWN0SW5kZXgtY2F0ZWdvcmllcyB7XG4gICAgQGluY2x1ZGUgYXBwLWxpc3QoJG1hcmdpbjogKHNtYWxsIG9ubHk6IDAsIG1lZGl1bTogMCAtMTVweCkpO1xufSIsIi5hcHAtcHJvZHVjdEluZGV4LWNhdGVnb3J5IHtcbiAgICAkcGFyZW50OiAmO1xuXG4gICAgQGluY2x1ZGUgYXBwLWxpc3QtaXRlbSgpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID5hIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDA7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgjeyRhcHAtaW1nLXBhdGh9YmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgI3skcGFyZW50fV9faW1hZ2Uge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFwcC1pbWFnZS1saW5rLWhvdmVyZWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICN7JHBhcmVudH1fX25hbWUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIEBpbmNsdWRlIGFwcC1saXN0LWl0ZW0tcGhvdG8oJHNtYWxsLW9mZjogdHJ1ZSk7XG4gICAgfVxuXG4gICAgJl9fbmFtZSB7fVxufSIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLmFwcC1zZWFyY2gge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW46IDNyZW0gMCAzLjVyZW0gMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogNXJlbSAwIDNyZW0gMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogN3JlbSAwIDVyZW0gMDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX25vdGZvdW5kIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2Zvcm0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDIwcmVtO1xuXG4gICAgICAgICYuLWluZGV4IHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMy41cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMy41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLmFwcC1zZWFyY2gtZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IG1hdGguZGl2KCRmb3JtLXNwYWNpbmcsIDIpIG1hdGguZGl2KCRmb3JtLXNwYWNpbmcsIDIpIG1hdGguZGl2KCRmb3JtLXNwYWNpbmcsIDIpIDA7XG4gICAgYmFja2dyb3VuZDogIzIzMjMyMztcblxuICAgICZfX2lucHV0IHtcbiAgICAgICAgZmxleDogMTtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPXNlYXJjaF0sXG4gICAgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHt9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHt9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge31cblxuICAgICAgICAvLyAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG4gICAgICAgIC8vIGhlaWdodDogKC44NzVyZW0gKiB1bml0bGVzcy1jYWxjKDEuNCkpICsgKC41cmVtICsgLjVyZW0pIC0gcmVtLWNhbGMoMSk7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgPmlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAgICR0bXAtbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgICAgICAgJHRtcC1wYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG5cbiAgICAgICAgJGJ1dHRvbi1tYXJnaW46IDAgMCAwIDAgIWdsb2JhbDtcbiAgICAgICAgJGJ1dHRvbi1wYWRkaW5nOiAuNnJlbSAuNzVyZW0gIWdsb2JhbDtcblxuICAgICAgICBAaW5jbHVkZSBidXR0b24oJGJhY2tncm91bmQ6ICRibGFjaywgJGJhY2tncm91bmQtaG92ZXI6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzKTtcbiAgICAgICAgZm9udC1zaXplOiAuOTM3NXJlbSAhaW1wb3J0YW50O1xuXG4gICAgICAgICRidXR0b24tbWFyZ2luOiAkdG1wLW1hcmdpbiAhZ2xvYmFsO1xuICAgICAgICAkYnV0dG9uLXBhZGRpbmc6ICR0bXAtcGFkZGluZyAhZ2xvYmFsO1xuICAgIH1cbn0iLCIuc3RvcmUge1xuICBAaW5jbHVkZSBhcHAtY29udGVudC1sYXlvdXQoJHdpZHRoOiAkYXBwLWdsb2JhbC13aWR0aCwgJG1hcmdpbjogKHNtYWxsIG9ubHk6IDNyZW0gYXV0bywgbWVkaXVtOiAzcmVtIGF1dG8sIGxhcmdlOiA1cmVtIGF1dG8pKTtcbn1cblxuLnN0b3JlLWhlYWRlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbiAgLnN0b3JlLXRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC8vIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgID4gc21hbGwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IC4zcmVtIDAgMCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgIH1cblxuICAgID4gYSB7XG4gICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4zKTtcbiAgICAgIH1cblxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgbWFyZ2luOiAwIC41cmVtO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3RvcmUtaGVhZGVyX19tZW51IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogZGFya2VuKCRoZWFkZXItY29sb3IsIDMwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgge1xuICAgICAgICBtYXJnaW46IDJyZW0gMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIH1cblxuICAgICAgPiBsaSB7XG4gICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgtYm9yZGVyKDEpO1xuICAgICAgICBAaW5jbHVkZSBhcHAtbWF0cml4LWl0ZW0tYW5jaG9yO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC8vIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgICAgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDAgLjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbi5zdG9yZS1wcm9kdWN0LWxpc3QtLXN0b3JlIHtcbiAgQGluY2x1ZGUgYXBwLWxpc3QoJGNlbnRlcmVkOiBmYWxzZSlcbn1cblxuLnN0b3JlLXByb2R1Y3QtY2F0ZWdvcmllcyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC8vIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gID4gdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgPiBsaSB7XG4gICAgICAvLyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDFyZW0gLjc1cmVtIDFyZW07XG5cbiAgICAgID4gYSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICAgICAgLy8gYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYXBwLWFuY2hvci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBAZ3JvdXAgcHJvZHVjdFxuXG4uc3RvcmUtcHJvZHVjdCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBAaW5jbHVkZSBhcHAtY29udGVudC1sYXlvdXQoJG1hcmdpbjogKHNtYWxsIG9ubHk6IDJyZW0gYXV0bywgbWVkaXVtOiAzcmVtIGF1dG8sIGxhcmdlOiA2cmVtIGF1dG8pKTtcbn1cblxuLnN0b3JlLXByb2R1Y3QtaGVhZGVyIHtcbiAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc3RvcmUtcHJvZHVjdC1oZWFkZXJfX2JyYW5kIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG59XG5cbi5zdG9yZS1wcm9kdWN0LWhlYWRlcl9fbmFtZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbjogLjI1cmVtIDAgMCAwO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgbWFyZ2luOiAuMjVyZW0gMCAwIDA7XG4gICAgZm9udC1zaXplOiAyLjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4uc3RvcmUtcHJvZHVjdC1oZWFkZXJfX2xlYWQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW46IC41cmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICBtYXJnaW46IC43NXJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cblxuXG5cbi5zdG9yZS1wcm9kdWN0LXNlY3Rpb24ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cblxuLnN0b3JlLXByb2R1Y3Qtc2VjdGlvbl9fbWFpbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDY3JTtcblxuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDQycHggMCAwO1xuICB9XG59XG5cbi5zdG9yZS1wcm9kdWN0LXNlY3Rpb25fX3N1YiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMzMlO1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnN0b3JlLXByb2R1Y3RfX3Bob3RvcyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICA+IGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gIH1cbn1cblxuLnN0b3JlLXByb2R1Y3QtZm9ybV9fYnV5bm93IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnJlbSAwIDAgMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gIH1cbn1cblxuLnN0b3JlLXByb2R1Y3RfX3ByaWNlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgPiBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cblxuLnN0b3JlLXByb2R1Y3RfX3NvbGRvdXQge1xuICBAaW5jbHVkZSBidXR0b24oJGV4cGFuZDogdHJ1ZSk7XG4gIC8vIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICAvLyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xufVxuXG4uc3RvcmUtcHJvZHVjdC1kZXRhaWwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiAycmVtIDAgMCAwO1xuICB9XG5cbiAgPiBoMiB7XG4gICAgbWFyZ2luOiAycmVtIDAgMS41cmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLnN0b3JlLXByb2R1Y3Qtbm90YXRpb24ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEuM3JlbSAxLjVyZW07XG5cbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuXG4gICAgPiBoMiB7XG4gICAgICBtYXJnaW46IDEuNXJlbSAwIC43NXJlbSAwO1xuICAgICAgcGFkZGluZzogMS41cmVtIDAgMCAwO1xuXG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhcmstZ3JheTtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgID4gaDIge1xuICAgICAgbWFyZ2luOiAycmVtIDAgLjc1cmVtIDA7XG4gICAgICBwYWRkaW5nOiAxLjVyZW0gMCAwIDA7XG5cbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQGVuZCBncm91cCBwcm9kdWN0XG5cbi8vIEBncm91cCB1cGdyYWRlXG5cbi5zdG9yZS11cGdyYWRlLXRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICBib3JkZXItc3BhY2luZzogMDtcblxuICA+IHRib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuXG4gICAgPiB0ciB7XG4gICAgICA+IHRoLCA+IHRkIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICA+IHRoLCA+IHRkIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgPiB0aCwgPiB0ZCB7XG4gICAgICAgICAgcGFkZGluZzogLjc1cmVtIDFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IHRmb290IHtcbiAgICB0aCwgdGQge1xuICAgICAgcGFkZGluZzogLjc1cmVtIDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICAgICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgICB9XG4gIH1cbn1cblxuLnN0b3JlLXVwZ3JhZGUtdGFibGVfX2l0ZW0tbmFtZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgcGFkZGluZzogLjc1cmVtIDFyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnN0b3JlLXVwZ3JhZGUtdGFibGVfX2l0ZW0tbmFtZS1zdWZmaXgge1xuICBwYWRkaW5nLWxlZnQ6IC41cmVtO1xuICBjb2xvcjogIzk5OTtcbn1cblxuLnN0b3JlLXVwZ3JhZGUtdGFibGVfX2l0ZW0tZGVzY3JpcHRpb24ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zdG9yZS11cGdyYWRlLXRhYmxlX19pdGVtLXByaWNlIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgcGFkZGluZzogMCAxcmVtIC43NXJlbSAxcmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgfVxufVxuXG4uc3RvcmUtdXBncmFkZS10YWJsZV9faXRlbS1idXkge1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAvLyBkaXNwbGF5OiBibG9jaztcbiAgICAvLyBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZzogMCAxcmVtIC43NXJlbSAxcmVtO1xuICAgIC8vIHdpZHRoOiA0MCU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICB9XG5cbiAgPiBmb3JtIHtcbiAgICA+IC5idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLnN0b3JlLXVwZ3JhZGUtbm90YXRpb24ge1xuICBwYWRkaW5nOiAycmVtIDEuNXJlbTtcbiAgLy8gYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gIC8vIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgjeyRhcHAtaW1nLXBhdGh9YmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICA+IGgyIHtcbiAgICBtYXJnaW46IDAgMCAxLjI1cmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICA+ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBAZW5kIGdyb3VwIHVwZ3JhZGVcblxuXG4vLyBAZ3JvdXAgc2lnbmluXG5cbi5zdG9yZS1zaWduaW4tZm9ybSB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuXG4gID4gLnN0b3JlLXNpZ25pbi1pbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICA+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIH1cblxuICAgID4gaW5wdXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgID4gLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIH1cbiAgfVxufVxuXG4uc3RvcmUtc2lnbmluLWFsdGVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7XG4gICAgLy8gcGFkZGluZzogN3B4IDEwcHggN3B4IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMCA3cHg7XG4gICAgcGFkZGluZzogN3B4IDEwcHggN3B4IDEwcHg7XG4gIH1cbn1cblxuLy8gaHIge1xuLy8gICBtYXJnaW46IDEuNXJlbSAwO1xuLy8gICBwYWRkaW5nOiAwO1xuLy8gICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JheTtcbi8vIH1cblxuLnN0b3JlLXNpZ25pbl9fZXJyb3JzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xufVxuXG4vLyBAZW5kIGdyb3VwIHNpZ25pblxuXG5cbi8vIEBncm91cCBvcmRlclxuXG4uc3RvcmUtY2hlY2tvdXQge1xuICBAaW5jbHVkZSBhcHAtY29udGVudC1sYXlvdXQoJHdpZHRoOiA3NjhweCwgJG1hcmdpbjogMCBhdXRvLCAkcGFkZGluZzogMCk7XG4gIG1pbi1oZWlnaHQ6IDM2MHB4O1xufVxuXG4uc3RvcmUtY2hlY2tvdXQtcGF5bWVudC1jYyB7XG4gIEBpbmNsdWRlIGFwcC1jb250ZW50LWxheW91dCgkd2lkdGg6IDQyMHB4LCAkbWFyZ2luOiAwIGF1dG8sICRwYWRkaW5nOiAwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3RvcmUtY2hlY2tvdXQtY29tcGxldGUge1xuICBAaW5jbHVkZSBhcHAtY29udGVudC1sYXlvdXQoJHdpZHRoOiA3NjhweCwgJG1hcmdpbjogMCBhdXRvLCAkcGFkZGluZzogKHNtYWxsIG9ubHk6IDFyZW0gMCwgbWVkaXVtOiAzcmVtIDApKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgfVxufVxuXG4uc3RvcmUtY2hlY2tvdXQtb3B0aW9ucyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICA+IHAge1xuICAgIG1hcmdpbjogLjVyZW0gMCAwIDA7XG4gIH1cblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzk5OTtcblxuICAgICYgKyBiciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uc3RvcmUtY2hlY2tvdXQtaGVhZGVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIH1cbn1cblxuLnN0b3JlLWNoZWNrb3V0LWhlYWRlcl9fdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG59XG5cbi5zdG9yZS1jaGVja291dC1oZWFkZXJfX2Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luOiAuNXJlbSAwIDAgMDtcbn1cblxuLnN0b3JlLWNvbmZpcm0tdGFibGUge1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcblxuICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46IDNyZW0gMCAwIDA7XG4gIH1cblxuICA+IGNhcHRpb24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgMXJlbSAwO1xuICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIC8vIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgjeyRhcHAtaW1nLXBhdGh9YmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG4gIH1cblxuICA+IHRib2R5IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgLy8gbWFyZ2luOiAwO1xuICAgICAgICAvLyBwYWRkaW5nOiAuNzVyZW0gMXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIH1cblxuICAgICAgPiB0aCB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogLjc1cmVtIDAgLjI1cmVtIDA7XG4gICAgICAgICAgd2lkdGg6IDEwcmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogLjc1cmVtIDA7XG4gICAgICAgICAgd2lkdGg6IDEycmVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgID4gdGQge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAuNzVyZW0gMDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IC43NXJlbSAxcmVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zdG9yZS1yZW1pc2UtZm9ybSB7XG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbn1cblxuLnN0b3JlLXB1cmNoYXNlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gIC8vIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgjeyRhcHAtaW1nLXBhdGh9YmctbmVnYS5qcGcpIHJlcGVhdCAwIDA7XG59XG5cbi5zdG9yZS1wdXJjaGFzZV9fcHJvZHVjdCB7XG4gIG1hcmdpbjogMDtcbiAgLy8gcGFkZGluZzogMnJlbTtcbiAgLy8gYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcblxuICA+IGR0IHtcbiAgICBtYXJnaW46IDAgMCAuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxuXG4gID4gZGQge1xuICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICB9XG59XG5cbi5zdG9yZS1wcmV2aWV3IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG5cbiAgLy8gYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gIGNhcHRpb24ge1xuICAgIG1hcmdpbjogMCAuN3JlbSAxcmVtIC43cmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG5cbiAgdGJvZHkgPiB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgdHIge1xuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBwYWRkaW5nOiAuN3JlbTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgIH1cbiAgfVxuXG4gIHRoIHtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgLy8gY29sb3I6ICMzMzM7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7XG4gIH1cbn1cblxuLy8gQGVuZCBncm91cCBvcmRlclxuXG5cbi8vIEBncm91cCBzaWdudXBcblxuLnN0b3JlLXNpZ251cC1mb3JtIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycmVtIDAgMCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhcmstZ3JheTtcbn1cblxuLy8gQGVuZCBncm91cCBzaWdudXBcblxuXG4vLyBAZ3JvdXAgY3VzdG9tZXJcblxuLnN0b3JlLWN1c3RvbWVyIHtcbiAgQGluY2x1ZGUgYXBwLWNvbnRlbnQtbGF5b3V0KCR3aWR0aDogNzY4cHgsICRtYXJnaW46IDAgYXV0bywgJHBhZGRpbmc6IDApO1xufVxuXG4uc3RvcmUtY3VzdG9tZXItbmF2IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luOiAwIDAgM3JlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgMS41cmVtIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gIH1cblxuICA+IHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSBhcHAtbWF0cml4IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICB9XG5cbiAgICAgID4gbGkge1xuICAgICAgICBAaW5jbHVkZSBhcHAtbWF0cml4LWJvcmRlcigyKTtcbiAgICAgICAgQGluY2x1ZGUgYXBwLW1hdHJpeC1pdGVtLWFuY2hvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC8vIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhcHAtYW5jaG9yLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEBncm91cCBsaWNlbnNlXG5cbi5zdG9yZS1yZWdpc3Rlci1teXByb2R1Y3Qge1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIC8vIHBhZGRpbmc6IDAgMCAxLjVyZW0gMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3RvcmUtbXlwcm9kdWN0IHtcblxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JheTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgMS41cmVtIDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMDtcbiAgfVxuXG4gID4gZGwge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICA+IGR0IHtcbiAgICAgICAgbWFyZ2luOiAuNzVyZW0gMCAwLjEyNXJlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgPiBkZCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgID4gZHQge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogLjVyZW0gMCAwIDA7XG4gICAgICAgIHdpZHRoOiAyMiU7XG4gICAgICAgIC8vIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgLy8gdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG5cbiAgICAgID4gZGQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogLjVyZW0gMCAwIDFyZW07XG4gICAgICAgIHdpZHRoOiA3OCU7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3RvcmUtbXlwcm9kdWN0X19uYW1lIHtcblxuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIH1cbn1cblxuLy8gQGVuZCBncm91cCBsaWNlbnNlXG5cbi8vIEBlbmQgZ3JvdXAgY3VzdG9tZXJcblxuLy8gQGdyb3VwIHN1cnZleVxuXG4uc3RvcmUtc3VydmV5LWl0ZW0ge1xuICAgIG1hcmdpbjogM3JlbSAwIDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cblxuLnN0b3JlLXN1cnZleS1pdGVtLXF1ZXN0aW9uIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnN0b3JlLXN1cnZleS1pdGVtLW9wdGlvbnMge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICA+IHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogLjVyZW0gLjc1cmVtIC41cmVtIDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gbGFiZWwge1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBAZW5kIGdyb3VwIHN1cnZleVxuXG4vLyBAZ3JvdXAgc3VwcG9ydCBpbmZvcm1hdGlvblxuXG4uc3RvcmUtbXlwcm9kdWN0LXN1cHBvcnRpbmZvLWhlYWRpbmcge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuXG4gICAgJiArIC5zdG9yZS1teXByb2R1Y3Qge1xuICAgICAgcGFkZGluZy10b3A6IC43NXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnN0b3JlLW15cHJvZHVjdC1zdXBwb3J0aW5mbyB7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMS41cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gID4gKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIEBlbmQgZ3JvdXAgc3VwcG9ydCBpbmZvcm1hdGlvblxuXG5cbi8vIEBncm91cCByZWdpc3RlclxuXG4uc3RvcmUtcmVnaXN0ZXItZm9ybSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMnJlbSAwIDAgMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG59XG5cbi5zdG9yZS1zZWxlY3QtYnJhbmRzLXByb2R1Y3RzIHtcbiAgPiAuaGVscC10ZXh0IHtcbiAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uc3RvcmUtc2VsZWN0LWJyYW5kcy1wcm9kdWN0c19hbHRpbnB1dCB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMS43NTtcbn1cblxuLy8gQGVuZCBncm91cCByZWdpc3RlclxuXG5cbi5zdG9yZS1ib2FyZCB7XG4gIEBpbmNsdWRlIGFwcC1jb250ZW50LWxheW91dCgkd2lkdGg6IChzbWFsbDogMzgwcHgsbWVkaXVtOiA0MTBweCwgeGxhcmdlOiA0OTBweCksICRtYXJnaW46IChzbWFsbCBvbmx5OiAzcmVtIGF1dG8sIG1lZGl1bTogM3JlbSBhdXRvLCBsYXJnZTogNXJlbSBhdXRvKSk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICB9XG59XG5cbi5zdG9yZS1ib2FyZF9faGVhZGVyIHtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3RvcmUtYWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICBwYWRkaW5nOiAwO1xuICAvLyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAuNzVyZW0gMS4yNXJlbTtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgPiBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gLjVyZW0gYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCN7JGFwcC1pbWctcGF0aH1iZy1uZWdhLmpwZykgcmVwZWF0IDAgMDtcbiAgICB9XG4gIH1cbn0iLCIuYXBwLXN1cHBvcnQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHJlbTtcbiAgICB9XG5cbiAgICAmLmlzLWVudHJ5IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwIC40cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAvLyAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgICAgLy8gICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIC8vIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxLjI1cmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgIC5pcy1pbmRleCAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDNyZW0gMCAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICA+YSB7XG4gICAgICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGFwcC1hbmNob3ItaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21lbnUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigkd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAnbGFyZ2UnKSk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICAgICAgLmlzLWluZGV4ICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmlzLWVudHJ5ICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID51bCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzJkMmQyZDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgoJGJhY2tncm91bmQ6IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgtYm9yZGVyKDIpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhcHAtbWF0cml4LWl0ZW0tYW5jaG9yKCRiYWNrZ3JvdW5kOiBmYWxzZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMuNXJlbTtcblxuICAgICAgICAgICAgLmlzLWluZGV4ICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmlzLWVudHJ5ICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID51bCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzJkMmQyZDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgoJGJhY2tncm91bmQ6IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgtYm9yZGVyKDMpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhcHAtbWF0cml4LWl0ZW0tYW5jaG9yKCRiYWNrZ3JvdW5kOiBmYWxzZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNC41cmVtO1xuXG4gICAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMi41cmVtIDAgMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKCR3aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICdsYXJnZScpKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAvLyBtYXJnaW46IDA7XG4gICAgICAgICAgICAvLyBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZm9ybSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAyOHJlbTtcbiAgICB9XG59XG5cblxuLyogQGdyb3VwIG1lbnUgZGVjb3JhdGlvbiAqL1xuXG4vKiBAZW5kIGdyb3VwIG1lbnUgZGVjb3JhdGlvbiAqL1xuXG5cbi5hcHAtc3VwcG9ydC1jYXRlZ29yaWVzIHtcbiAgICA+dWwge1xuICAgICAgICBAaW5jbHVkZSBhcHAtbWF0cml4IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICB9XG5cbiAgICAgICAgPmxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgtaXRlbS1hbmNob3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuXG4gICAgICAgID51bCB7XG4gICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFwcC1tYXRyaXgtYm9yZGVyKDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcblxuICAgICAgICA+dWwge1xuICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhcHAtbWF0cml4LWJvcmRlcigzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG5cbiAgICAgICAgPnVsIHtcbiAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYXBwLW1hdHJpeC1ib3JkZXIoNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcHAtc3VwcG9ydC1hcnRpY2xlcy1saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5hcHAtc3VwcG9ydC1jYXRlZ29yaWVzKyYge1xuICAgICAgICA+dWwge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID51bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhcmstZ3JheTtcblxuICAgICAgICA+bGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjhyZW0gLjRyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuMyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPnNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgLjEyNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtaW1wb3J0YW50IHtcbiAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmM2O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiBAZ3JvdXAgY29udGFjdCAqL1xuXG4uYXBwLXN1cHBvcnQtZW50cnktd3JhcHBlci0tY29udGFjdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAzcmVtIDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHt9XG59XG5cbi5hcHAtc3VwcG9ydC1lbnRyeS0tY29udGFjdCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBhcHAtZW50cnktdHlwb2dyYXBoeTtcblxuICAgIDpub3QoLnZpZGVvLWNvbnRhaW5lcik6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW46IDNyZW0gMCAxLjNyZW0gMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAxcmVtIDA7XG5cbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luOiA0cmVtIDAgMnJlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDJyZW0gMDtcblxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAycmVtIDAgMS41cmVtIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjlyZW07XG4gICAgfVxufVxuXG4vKiBAZW5kIGdyb3VwIGNvbnRhY3QgKi8iLCIuYXBwLXN1cHBvcnQtZW50cnktYXR0ciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBjb2xvcjogIzk5OTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgLjVyZW0gMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIC4yNXJlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwIC40cmVtO1xuICAgIH1cbn1cblxuLmFwcC1zdXBwb3J0LWVudHJ5LXdyYXBwZXIge1xuICAgIG1hcmdpbjogMDtcblxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgLmFwcC1zdXBwb3J0LWVudHJ5LXRhcmdldHMrJiB7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IGRhc2hlZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMCAzLjVyZW0gMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAycmVtIC40cmVtIDVyZW0gLjRyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE4cmVtO1xuICAgICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICB9XG59XG5cbi5hcHAtc3VwcG9ydC1lbnRyeSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBhcHAtZW50cnktdHlwb2dyYXBoeTtcblxuICAgID4gOm5vdCgudmlkZW8tY29udGFpbmVyKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgaDIge1xuXG4gICAgICAgIC8vICY6YmVmb3JlIHtcbiAgICAgICAgLy8gICBjb250ZW50OiBcIiMjXCI7XG4gICAgICAgIC8vICAgbWFyZ2luOiAwIC41cmVtIDAgMDtcbiAgICAgICAgLy8gICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAvLyAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgICAgICAgLy8gICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgLy8gfVxuICAgICAgICAvLyAmOmFmdGVyIHtcbiAgICAgICAgLy8gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vICAgY29udGVudDogXCJcIjtcbiAgICAgICAgLy8gICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLy8gICBtYXJnaW46IC41cmVtIDAgMCAwO1xuICAgICAgICAvLyAgIHdpZHRoOiA3NSU7XG4gICAgICAgIC8vICAgLy8gaGVpZ2h0OiAxcHg7XG4gICAgICAgIC8vICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMzMzM7XG4gICAgICAgIC8vIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMnJlbSAwIDEuM3JlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luOiAzLjVyZW0gMCAycmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBtYXJnaW46IDIuNXJlbSAwIDEuNXJlbSAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAvLyBjb2xvcjogIzk5OTtcbiAgICAgICAgLy8gJjpiZWZvcmUge1xuICAgICAgICAvLyAgIGNvbnRlbnQ6IFwiIyMjXCI7XG4gICAgICAgIC8vICAgbWFyZ2luOiAwIC41cmVtIDAgMDtcbiAgICAgICAgLy8gICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAvLyAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgICAgICAgLy8gICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiAyLjVyZW0gMCAxLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLy8gY29sb3I6ICM5OTk7XG4gICAgICAgIC8vICY6YmVmb3JlIHtcbiAgICAgICAgLy8gICBjb250ZW50OiBcIiMjIyNcIjtcbiAgICAgICAgLy8gICBtYXJnaW46IDAgLjVyZW0gMCAwO1xuICAgICAgICAvLyAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIC8vICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgICAgICAvLyAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAvLyB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjdyZW07XG5cbiAgICAgICAgK2JyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICAgICAgICA+aW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS42cmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCwgOTAsIDkwLCAuMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAvLyBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgIC8vIHF1b3RlczogXCJcXDIwMUNcIlwiXFwyMDFEXCIgXCJcXDIwMThcIlwiXFwyMDE5XCI7XG4gICAgICAgIHF1b3RlczogXCJcXDIwMUNcIlwiXFwyMDFEXCI7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogb3Blbi1xdW90ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjFlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC4xMjVlbTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAtMC4zZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIC8vIGNvbnRlbnQ6IGNsb3NlLXF1b3RlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPmZpZ3VyZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgMCAxLjRyZW0gMDtcblxuICAgICAgICA+aW1nIHtcbiAgICAgICAgICAgIC8vIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogLjc1cmVtIDAgLjI1cmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIC8vIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICAgICAgfVxuXG4gICAgICAgICZbc3R5bGUqPVwiZmxvYXQ6IHJpZ2h0O1wiXSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC4zcmVtIDAgMS40cmVtIDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZbc3R5bGUqPVwiZmxvYXQ6IGxlZnQ7XCJdIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAuM3JlbSAxLjI1cmVtIDEuNHJlbSAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmW3N0eWxlKj1cImZsb2F0OiByaWdodDtcIl0sXG4gICAgICAgICZbc3R5bGUqPVwiZmxvYXQ6IGxlZnQ7XCJdIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAuM3JlbSBhdXRvIDEuNHJlbSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQ1JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzclO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJltzdHlsZSo9XCJtYXJnaW46IGF1dG87XCJdLFxuICAgICAgICAmW3N0eWxlKj1cInRleHQtYWxpZ246IGNlbnRlcjtcIl0ge1xuICAgICAgICAgICAgbWFyZ2luOiAuNXJlbSBhdXRvIDEuNHJlbSBhdXRvICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAvLyAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICYuaXMtaW1wb3J0YW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmYzMzY2O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdWwsXG4gICAgb2wge1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgID5saSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAuNzVyZW0gMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFwcC1zdXBwb3J0LWVudHJ5LXRhcmdldHMge1xuICAgIG1hcmdpbjogMDtcblxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gLjRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAycmVtIC40cmVtO1xuICAgIH1cblxuICAgID51bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAvLyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoI3skYXBwLWltZy1wYXRofWJnLW5lZ2EuanBnKSByZXBlYXQgMCAwO1xuXG4gICAgICAgID5saSB7XG4gICAgICAgICAgICAvLyBAaW5jbHVkZSBhcHAtbWF0cml4LWl0ZW0tYW5jaG9yO1xuXG4gICAgICAgICAgICAvLyBib3JkZXItdG9wOiAxcHggc29saWQgIzJkMmQyZDtcbiAgICAgICAgICAgIC8vICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgLy8gICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjY2NjO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYXBwLWFuY2hvci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIC4xMjVyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmFwcC1zdXBwb3J0LWhlYWRlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG5cbiAgICAgICAgLmlzLWVudHJ5ICYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JhY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDAgLjI1cmVtIDA7XG4gICAgICAgIHBhZGRpbmc6IDAgLjRyZW07XG5cbiAgICAgICAgPmEge1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuXG4gICAgICAgICAgICAvLyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgLjRyZW07XG4gICAgICAgICAgICAvLyBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgID5hIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuXG4gICAgICAgICAgICAvLyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC4yNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kZXNjcmlwdGlvbiB7XG4gICAgICAgIG1hcmdpbjogLjVyZW0gMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgMCAuMTI1cmVtIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgfVxufVxuXG5cbi5hcHAtc3VwcG9ydC1lbnRyeS10YXJnZXRzX19oZWFkaW5nIHtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB9XG5cbiAgICAvLyBjb2xvcjogI2NjYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufSIsIi5hcHAtc3VwcG9ydC1wcm9kdWN0cyB7XG4gICAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7XG5cbiAgICA+cCB7XG4gICAgICAgIHBhZGRpbmc6IDAgLjRyZW07XG4gICAgfVxuXG4gICAgPnVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuXG4gICAgICAgID5saSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG5cbiAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuOHJlbSAuNHJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4zKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+c3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkBjaGFyc2V0ICd1dGYtOCc7XG5cbkBpbXBvcnQgJ2luaXRhcHAnO1xuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5AaW1wb3J0ICdmb3VuZGF0aW9uJztcbi8vIEBpbXBvcnQgJ21vdGlvbi11aSc7XG5cbi8vIEdsb2JhbCBzdHlsZXNcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbi8vIEdyaWRzIChjaG9vc2Ugb25lKVxuQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcblxuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbi8vIEJhc2ljIGNvbXBvbmVudHNcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuLy8gQ29udGFpbmVyc1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuLy8gSGVscGVyc1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3Nlcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG5cbi8vIE1vdGlvbiBVSVxuLy8gQGluY2x1ZGUgbW90aW9uLXVpLXRyYW5zaXRpb25zO1xuLy8gQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XG5cbkBpbXBvcnQgJ2dsb2JhbC9faW1wb3J0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvX2ltcG9ydCc7XG5AaW1wb3J0ICdwYWdlcy9faW1wb3J0JztcblxuXG4vKiBAZ3JvdXAgc2xpY2sgKi9cblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuLi9mb250cy9cIjtcbiRzbGljay1mb250LWZhbWlseTogXCJzbGlja1wiO1xuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4uL2ltZy9cIjtcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGU7XG4kc2xpY2stZG90LWNvbG9yOiB3aGl0ZTtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yO1xuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcMjE5MFwiO1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcMjE5MlwiO1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCI7XG4kc2xpY2stZG90LXNpemU6IDE0cHg7XG4kc2xpY2stb3BhY2l0eS1kZWZhdWx0OiAwLjc1O1xuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDE7XG4kc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlOiAwLjI1O1xuXG5AaW1wb3J0ICdzbGljay5zY3NzJztcbkBpbXBvcnQgJ3ZlbmRvci9zbGljay9zbGljay10aGVtZS5zY3NzJztcblxuLyogQGVuZCBncm91cCBzbGljayAqL1xuXG4vLyBAZ3JvdXAgcGlrYWRheVxuXG4vLyBDb2xvdXJzXG4kcGQtdGV4dC1jb2xvcjogI2NjYztcbiRwZC10aXRsZS1jb2xvcjogI2NjYztcbiRwZC10aXRsZS1iZzogIzQ0NDtcbiRwZC1waWNrZXItYmc6ICM0NDQ7XG4kcGQtcGlja2VyLWJvcmRlcjogIzQ0NDtcbiRwZC1waWNrZXItYm9yZGVyLWJvdHRvbTogIzQ0NDtcbi8vICRwZC1waWNrZXItc2hhZG93OiByZ2JhKDAsMCwwLC41KSAhZGVmYXVsdDtcbiRwZC10aC1jb2xvcjogd2hpdGU7XG4kcGQtZGF5LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHBkLWRheS1iZzogIzQ0NDtcbiRwZC1kYXktaG92ZXItY29sb3I6ICMzMzM7XG4kcGQtZGF5LWhvdmVyLWJnOiAjZGRkO1xuJHBkLWRheS10b2RheS1jb2xvcjogI2ZmYzA0NDtcbi8vICRwZC1kYXktc2VsZWN0ZWQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4vLyAkcGQtZGF5LXNlbGVjdGVkLWJnOiAjMzNhYWZmICFkZWZhdWx0O1xuJHBkLWRheS1zZWxlY3RlZC1zaGFkb3c6IHRyYW5zcGFyZW50O1xuJHBkLWRheS1kaXNhYmxlZC1jb2xvcjogI2JiYjtcbi8vICRwZC13ZWVrLWNvbG9yOiAjOTk5ICFkZWZhdWx0O1xuXG4vLyBGb250XG4kcGQtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXG5AaW1wb3J0ICd2ZW5kb3IvcGlrYWRheSc7XG4vLyBAZW5kIGdyb3VwIHBpa2FkYXkiLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stZm9udC1wYXRoOiBcIi4vZm9udHMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICB9XG59XG5cbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gIH1cbn1cblxuLyogSWNvbnMgKi9cbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxufVxuXG4vKiBBcnJvd3MgKi9cblxuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzVweDtcbiAgd2lkdGg6IDM1cHg7XG4gIGxpbmUtaGVpZ2h0OiAwcHg7XG4gIGZvbnQtc2l6ZTogMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRvcDogNTAlO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgIH1cbiAgfVxuICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIH1cbn1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAxNHB4O1xuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IC0yNXB4O1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICB9XG4gIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogMTRweDtcbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBsZWZ0OiAtMjVweDtcbiAgICByaWdodDogYXV0bztcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgfVxuICB9XG59XG5cbi8qIERvdHMgKi9cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMzBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgIH1cbiAgfVxufVxuXG5cbi5zbGljay1zbGlkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3V0bGluZTogbm9uZTtcblxuICA+IC5mbGV4LXZpZGVvIHtcbiAgICBtYXJnaW46IDA7XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gID4gLm92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDEzMCwgMjcsIDI3LCAuMyk7XG4gIH1cbn0iLCIvKiFcbiAqIFBpa2FkYXlcbiAqIENvcHlyaWdodCDCqSAyMDE0IERhdmlkIEJ1c2hlbGwgfCBCU0QgJiBNSVQgbGljZW5zZSB8IGh0dHA6Ly9kYnVzaGVsbC5jb20vXG4gKi9cblxuLy8gVmFyaWFibGVzXG4vLyBEZWNsYXJlIGFueSBvZiB0aGVzZSB2YXJpYWJsZXMgYmVmb3JlIGltcG9ydGluZyB0aGlzIFNDU1MgZmlsZSB0byBlYXNpbHkgb3ZlcnJpZGUgZGVmYXVsdHNcbi8vIFZhcmlhYmxlcyBhcmUgbmFtZXNwYWNlZCB3aXRoIHRoZSBwZCAocGlrYWRheSkgcHJlZml4XG5cbi8vIENvbG91cnNcbiRwZC10ZXh0LWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJHBkLXRpdGxlLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJHBkLXRpdGxlLWJnOiAjZmZmICFkZWZhdWx0O1xuJHBkLXBpY2tlci1iZzogI2ZmZiAhZGVmYXVsdDtcbiRwZC1waWNrZXItYm9yZGVyOiAjY2NjICFkZWZhdWx0O1xuJHBkLXBpY2tlci1ib3JkZXItYm90dG9tOiAjYmJiICFkZWZhdWx0O1xuJHBkLXBpY2tlci1zaGFkb3c6IHJnYmEoMCwwLDAsLjUpICFkZWZhdWx0O1xuJHBkLXRoLWNvbG9yOiAjOTk5ICFkZWZhdWx0O1xuJHBkLWRheS1jb2xvcjogIzY2NiAhZGVmYXVsdDtcbiRwZC1kYXktYmc6ICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcGQtZGF5LWhvdmVyLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHBkLWRheS1ob3Zlci1iZzogI2ZmODAwMCAhZGVmYXVsdDtcbiRwZC1kYXktdG9kYXktY29sb3I6ICMzM2FhZmYgIWRlZmF1bHQ7XG4kcGQtZGF5LXNlbGVjdGVkLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHBkLWRheS1zZWxlY3RlZC1iZzogIzMzYWFmZiAhZGVmYXVsdDtcbiRwZC1kYXktc2VsZWN0ZWQtc2hhZG93OiAjMTc4ZmU1ICFkZWZhdWx0O1xuJHBkLWRheS1kaXNhYmxlZC1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRwZC13ZWVrLWNvbG9yOiAjOTk5ICFkZWZhdWx0O1xuXG4vLyBGb250XG4kcGQtZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuXG4ucGlrYS1zaW5nbGUge1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkcGQtdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiAkcGQtcGlja2VyLWJnO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwZC1waWNrZXItYm9yZGVyO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwZC1waWNrZXItYm9yZGVyLWJvdHRvbTtcbiAgICBmb250LWZhbWlseTogJHBkLWZvbnQtZmFtaWx5O1xuXG4gICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuaXMtYm91bmQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggLTVweCAkcGQtcGlja2VyLXNoYWRvdztcbiAgICB9XG59XG5cbi8vIGNsZWFyIGNoaWxkIGZsb2F0IChwaWthLWxlbmRhciksIHVzaW5nIHRoZSBmYW1vdXMgbWljcm8gY2xlYXJmaXggaGFja1xuLy8gaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG4ucGlrYS1zaW5nbGUge1xuICAgICp6b29tOiAxO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHsgY2xlYXI6IGJvdGggfVxufVxuXG4ucGlrYS1sZW5kYXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNDBweDtcbiAgICBtYXJnaW46IDhweDtcbn1cblxuLnBpa2EtdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogOTk5ODtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuLnBpa2EtbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAqZGlzcGxheTogaW5saW5lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDVweCAzcHg7XG4gICAgZm9udC1zaXplOiAuODc1cmVtOyAvLzE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRwZC10aXRsZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGQtdGl0bGUtYmc7XG59XG5cbi5waWthLXByZXYsXG4ucGlrYS1uZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHRleHQtaW5kZW50OiAyMHB4OyAvLyBoaWRlIHRleHQgdXNpbmcgdGV4dC1pbmRlbnQgdHJpY2ssIHVzaW5nIHdpZHRoIHZhbHVlIChpdCdzIGVub3VnaClcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNzUlIDc1JTtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICAqcG9zaXRpb246IGFic29sdXRlO1xuICAgICp0b3A6IDA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmLmlzLWRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICB9XG59XG5cbi5waWthLXByZXYsXG4uaXMtcnRsIC5waWthLW5leHQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCUUFBQUFlQ0FZQUFBQXNFajVyQUFBQVVrbEVRVlI0MnUzVk1Rb0FJQkFEUWY4UGdqK09EOWhHMkN0T05KQjJ5bVFrS2UwSGJ3QVAweHVjRGlRV0FSSVRJREVCRW5NZ01ROFM4K0FxQklsNmtLZ0hpWHFRcUFlSmVwQm8vejM4Si9VMHVBSGxhQmtCbDlJNEd3QUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgKmxlZnQ6IDA7XG59XG5cbi5waWthLW5leHQsXG4uaXMtcnRsIC5waWthLXByZXYge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQlFBQUFBZUNBWUFBQUFzRWo1ckFBQUFVMGxFUVZSNDJ1M1ZPd29BTUFnRTBkd2ZBbk5qVTI2YllrQkNGR3dmaUw5VlZXb08rQko0R2YzZ3RzRUtLb0ZCTlRDb0NBWVZ3YUFpR05RR01VSE1rakdiZ2prMm1JT051WG8wbkM4WG5DZjFKWGdBclZJWkFRaDVUS1lBQUFBQVNVVk9SSzVDWUlJPScpO1xuICAgICpyaWdodDogMDtcbn1cblxuLnBpa2Etc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgKmRpc3BsYXk6IGlubGluZTtcbn1cblxuLnBpa2EtdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NzE0Mjg2JTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB0aCB7XG4gICAgICAgIGNvbG9yOiAkcGQtdGgtY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07IC8vMTJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IC8vYm9sZDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIGFiYnIge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBjdXJzb3I6IGhlbHA7XG4gICAgfVxufVxuXG4ucGlrYS1idXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGNvbG9yOiAkcGQtZGF5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbTsgLy8xMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRwZC1kYXktYmc7XG5cbiAgICAuaXMtdG9kYXkgJiB7XG4gICAgICAgIGNvbG9yOiAkcGQtZGF5LXRvZGF5LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAuaXMtc2VsZWN0ZWQgJiB7XG4gICAgICAgIGNvbG9yOiAkcGQtZGF5LXNlbGVjdGVkLWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYmFja2dyb3VuZDogJHBkLWRheS1zZWxlY3RlZC1iZztcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4ICRwZC1kYXktc2VsZWN0ZWQtc2hhZG93O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgfVxuXG4gICAgLmlzLWRpc2FibGVkICYsXG4gICAgLmlzLW91dHNpZGUtY3VycmVudC1tb250aCAmIHtcbiAgICAgICAgY29sb3I6ICRwZC1kYXktZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIG9wYWNpdHk6IC41O1xuICAgIH1cblxuICAgIC5pcy1kaXNhYmxlZCAmIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwZC1kYXktaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwZC1kYXktaG92ZXItYmc7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB9XG5cbiAgICAuaXMtc2VsZWN0aW9uLWRpc2FibGVkIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG59XG5cbi5waWthLXdlZWsge1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbTsgLy8xMXB4O1xuICAgIGNvbG9yOiAkcGQtd2Vlay1jb2xvcjtcbn1cblxuLmlzLWlucmFuZ2UgLnBpa2EtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjRDVFOUY3O1xufVxuXG4uaXMtc3RhcnRyYW5nZSAucGlrYS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICM2Q0IzMUQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5pcy1lbmRyYW5nZSAucGlrYS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICMzM2FhZmY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59Il19 */
